Agents give fluent, confident-looking output even when it's wrong
An agent can hallucinate a fact, skip a step, or misuse a tool and still return a fluent, confident-looking answer; nothing in the output signals that it's wrong. Deciding where…
Agent engineering
Everything here orbits one job: keeping an agent alive in production. Each planet is a problem you will eventually hit — memory, cost, evals, security — linked to the solutions the field actually uses. Every claim is grounded in source articles already in the feed — one shared structure, no hype.
14 obstacles·11 solutions·13 areas
The newest developments added across every topic. Each links to its dated entry, with sources.
Every planet is a problem you eventually hit in production; the satellites circling it are the pages that show how the field handles it. Tour planet by planet with ‹ › · drag to orbit · scroll or pinch to zoom · click a planet to see what lives there. What you read dims — remembered only in this browser.
An agent can hallucinate a fact, skip a step, or misuse a tool and still return a fluent, confident-looking answer; nothing in the output signals that it's wrong. Deciding where…
An agent's working memory is its context window, which is finite and resets between runs. On long-horizon tasks it forgets earlier steps, repeats work, and loses the user's…
Give an agent a goal that takes ten steps and it will often take the wrong ones: charge ahead on an ambiguous request instead of asking, follow a plan that drifts, get stuck in a…
An agent is only as useful as the tools it can call, but every integration has historically been bespoke: hand-written wrappers around REST APIs, brittle schemas the model…
A fluent agent answer isn't the same as a grounded one: the model will answer past what it actually retrieved unless the retrieval was current, the right slice, and cheap enough…
A chatbot is graded on its final answer; an agent has to be graded on what it *did* — the multi-step trajectory of tool calls, retries, and decisions that led there. Outputs are…
Splitting a job across several agents promises specialization and parallelism, but every handoff is a lossy interface and each added agent multiplies the ways the system can…
A chatbot turn costs a predictable number of tokens; an agent can loop, re-read its whole context every step, spawn sub-agents, and call a model to grade its own work. The bill…
Calculating the true return on investment (ROI) for agent systems is blocked by the difficulty of measuring time savings, tracking per-task token usage, and accounting for hidden…
A chatbot waits on one model call; an agent waits on *many*, in sequence: plan, call a tool, read the result, decide again. The wall-clock a user feels is per-step latency…
When an agent does the wrong thing, the run behind it is a long, non-deterministic chain of model calls, tool results, and intermediate decisions, and most of it is invisible…
An agent treats whatever it reads — a web page, a tool result, a file, another agent's message — as instructions it might follow. Prompt injection turns that into an attack:…
A single agent is a serving problem; a fleet of agents is a distributed-systems problem. Every agent that spins up a sandbox, holds a serving slot, or opens a session adds…
An agent is built on a substrate you don't control and that moves faster than your app: the model gets upgraded or deprecated, the agent SDK and framework ship several releases a…