DARINORCold Lab
← All writing

// Field note

Agentic Systems Aren't Apps With Extra Steps

By
2 min read
#ai architecture#agentic systems

Most teams ship their first agent the way they'd ship a feature flag: wrap a model in a loop, hand it a few tools, call it done. Then it fails in ways a normal endpoint never would — it retries a side-effecting call, it wanders past its own stop condition, it does three of five steps and quietly stops. None of that is a model problem. It's an architecture problem wearing an AI costume. An agent loop with tool calls behaves like a distributed system — partial failure, retries, non-idempotent actions — not like request/response. Treat it like the latter and the failure modes will find you in production.

The parts people skip

  • State boundaries. What persists across turns versus what's thrown away after one — undefined, until a bug makes it very defined.
  • Tool permission scoping. The same least-privilege problem as indirect prompt injection, but self-inflicted: an agent doesn't need write access to everything it can theoretically reach.
  • Idempotency on side-effecting calls. The model will retry a step after a timeout. If "send the email" isn't safe to run twice, that's not the model's bug to catch.
  • An explicit stop condition. Loops don't end gracefully on their own — something outside the loop has to decide "done" or "give up."

What actually helps

  • Treat the tool layer as an API boundary, not a suggestion. Validate inputs and outputs the way you would for any external caller, because that's what the model is.
  • Log the reasoning trace, not just the final action. You'll want it for the incident you haven't had yet, and you won't be able to reconstruct it after the fact.
  • Design for partial completion as the common case. "It did three of five steps then failed" isn't an edge case worth a TODO — it's the shape most multi-step runs eventually take.

The interesting architecture question was never "can the model figure it out." It's "what happens when it's confidently wrong halfway through a multi-step action" — and that answer has to live in your system, not in the prompt.

This site uses minimal cookies and local storage to keep features like the chat widget and games working. We do not use third-party tracking cookies. Privacy Policy