What you will be able to do
- Record which Claude build path an architecture uses, and what that choice makes the engineering team responsible for
- Document trust boundaries and hard constraints so the team can act on them, not just read them
- Write implementation guidance that is specific enough for an engineer, or an agent, to follow and check
- Keep architecture documents and guidance up to date as the solution and the models change
Key concept
Architecture in three sentences — A good architecture document says briefly what the major pieces are, how they talk to each other, and which constraints must never be broken. Everything else in the implementation guidance hangs off that core, and a document that loses it in detail stops being useful.
1.Start the document with the build-path decision
Discovery and stakeholder conversations produce a decision. The architecture document is where that decision gets written down in a form an engineering team can build from. For a Claude solution, the first decision to record is usually the build path. It matters more than anything else in the document because it decides what the team has to own. If you write your own agent loop, the team owns retries, tool execution, hosting and state. If Anthropic hosts the loop, the team owns configuration and integration instead. So an architecture document that names the components but leaves out the build path leaves the most important question unanswered: who runs what.
| Build path | Who runs the agent loop and tools | What the implementation guidance must then cover |
|---|---|---|
| Messages API | You write the agent loop and run your own tools and infrastructure | Loop design, tool execution, hosting and failure handling are all the team's to specify |
| Claude Agent SDK | The SDK provides the agent loop and tool execution, in a process you operate | The process the team operates: where it runs, what it may touch, how it is deployed |
| Claude Managed Agents | Anthropic hosts the agent loop, tool execution, and runtime | The configuration the team owns and the integration points to the hosted runtime |
Record the reason for the choice next to the choice. Anthropic's own guidance on agentic systems is to find the simplest solution that works and add complexity only when it is needed. That gives you a useful test for the document itself: does it explain why a simpler design was not enough? A reviewer who reads 'multi-agent orchestration on a hosted runtime' should be able to find the sentence that explains why a single well-prompted call, or a fixed workflow, would not have done the job. Without that sentence, the next team to touch the system cannot tell whether the complexity is load-bearing or accidental.
A platform team is documenting the architecture for a new production agent that must run entirely on their own infrastructure, operate directly on files and git repositories checked out on their servers, and call custom in-process functions as tools. Which implementation approach should the architecture document recommend?
Correct answer: B — Use the Agent SDK as a library embedded in the service so the agent loop, filesystem access, and custom tools all run inside the team's own process.
- A. Incorrect. The Client SDK requires the team to implement the tool-execution loop themselves, which adds unnecessary engineering work when the Agent SDK already provides that loop.
- B. Correct. The Agent SDK runs as a library inside the team's own process, giving direct access to the local filesystem and git repositories along with in-process custom tools, matching every stated requirement.
- C. Incorrect. Managed Agents runs the agent in an Anthropic-managed sandbox rather than the team's own infrastructure, which conflicts with the requirement to operate directly on locally checked-out files.
- D. Incorrect. The MCP connector only provides remote tool connectivity to the Messages API; it does not supply the agent loop, filesystem access, or in-process custom tool execution the scenario requires.
2.Document boundaries and hard constraints explicitly
Once the build path is fixed, the next thing the document must make clear is where the trust boundaries sit. Protocol specifications show what this looks like when it is written down properly. The Model Context Protocol architecture states plainly that servers are isolated from each other and from the full conversation, and that the host process enforces those boundaries. That kind of statement is worth copying into your own documents. Every integration should come with a line saying what data it receives, what it can never see, and which component enforces that.
Hard constraints come from the platform too, not only from the customer's policies. Compliance properties of the chosen build path are a common example. The Managed Agents documentation says the product is stateful by design and, because of that, is not currently eligible for certain retention and healthcare agreements. A document that recommends a hosted, stateful runtime for a regulated workload without saying so hands the engineering team a problem they will only find in a security review. Put constraints like this in a named section, and link each one to the requirement it came from in discovery.
Engineers build from the architecture document, not from discovery notes. If the constraint is not next to the design choice it limits, someone will eventually 'simplify' the design in a way that breaks it. Writing the constraint beside the component it governs turns a stakeholder requirement into something the team can check.
An implementation guide must describe how to let Claude Code browse a company's Confluence and Jira instances using an existing open-source connector, launched locally by the agent process rather than hosted as a network service. Which pattern should the guide document?
Correct answer: A — Deploy an MCP server that exposes Confluence and Jira operations as tools, and configure the agent to launch it locally over stdio.
- A. Correct. MCP servers can be launched locally over the stdio transport, letting the agent connect to the existing Confluence and Jira server without exposing a network endpoint, exactly matching the requirement.
- B. Incorrect. Reimplementing the integrations as client-side tools discards the existing MCP server and duplicates work the connector already does.
- C. Incorrect. Extended thinking blocks are for reasoning transparency, not for routing external API calls; the Messages API has no mechanism to invoke REST endpoints through them.
- D. Incorrect. The Files API manages uploaded documents for reference, not live, interactive access to ticket and page data through tool calls.
3.Write implementation guidance that can be followed and checked
Implementation guidance fails in a predictable way: it tells people to do vaguely good things. 'Test your changes' and 'keep files organized' feel responsible, but nobody can check whether they were followed. Anthropic's guidance on writing instructions for Claude Code makes the same point, and it applies just as well to guidance for human engineers. Give the exact command, the exact directory and the exact rule. Specific guidance can be verified in review. Vague guidance only gets discussed.
Copy `.env.example` to `.env` before running anything. Tests and the dev server fail without it.
Write database queries with the Knex query builder. Never put raw SQL strings in route handlers.
Never edit a migration after it has merged. Add a new migration instead.Notice what each line does. It either says what goes wrong if you skip it, or it pairs the prohibition with the thing to do instead. The same source lists what belongs in guidance (commands, conventions, a short architecture summary, hard constraints, known gotchas). It also lists what does not: full API documentation the reader can get from the code, changelogs, and aspirational rules the team does not actually follow. That last one matters most for an architect. Guidance that describes an ideal nobody practises teaches engineers that the whole document is optional.
A support-tooling architect is writing implementation guidance for a high-volume ticket triage service that classifies incoming tickets, needs strong reasoning, and must stay within a tight latency and cost budget. Which model recommendation should the guidance document?
Correct answer: A — Recommend Claude Haiku 4.5, noting its near-frontier reasoning at the most economical price point suits high-volume, latency-sensitive classification.
- A. Correct. Claude Haiku 4.5 is described as delivering near-frontier performance with strong reasoning at the most economical price point, which directly fits high-volume, cost-sensitive, latency-sensitive classification.
- B. Incorrect. Opus 4.8 is positioned for complex agentic coding and enterprise engineering work, not lightweight high-volume classification, and its cost profile does not fit a tight budget.
- C. Incorrect. Raising the effort parameter trades latency and cost for additional intelligence; it increases response time rather than cutting it, so it does not serve a latency-sensitive requirement.
- D. Incorrect. Fast mode is a research preview at premium pricing, not a generally available, cost-reducing feature, so it does not fit a tight cost budget.
4.Treat the documents as part of the system's lifecycle
An architecture document is written at design time but read during the pilot, in production, and when the solution is eventually retired. It only stays accurate if updating it is part of the normal change process. The practical rule from Anthropic's large-codebase guidance is to review documentation edits in pull requests like any other change, so that the conventions change when the code does. A design change that ships without a matching documentation change should look incomplete to a reviewer.
AI systems add a second reason for documents to go stale: the model underneath improves. Guidance often includes workarounds, such as 'split this task into single-file steps' or 'always add this extra validation pass', that exist only because an earlier model struggled. After a major model release, those instructions can become overhead with no benefit. So a mature architecture document marks which guidance is a workaround for a model limitation and which is a real business or security constraint. Then it is clear which lines to test and possibly delete after an upgrade, and which ones must never be touched.
Sources7
Exam traps
Each one states something that sounds right. Open it to see what is actually true.
1.Choosing a hosted, stateful agent runtime makes the architecture suitable for any regulated workload, because Anthropic operates the infrastructure.Why is that wrong?
Who operates the runtime says nothing about its compliance eligibility. Managed Agents stores session state server-side, and its documentation states it is not currently eligible for these agreements. That constraint has to appear in the architecture document.
Covered in Document boundaries and hard constraints explicitly
2.The most complete implementation guide is the best one, so it should reproduce full API documentation and the change history.Why is that wrong?
Guidance should hold what the reader cannot get elsewhere: commands, conventions, constraints and gotchas. Full API reference and changelogs are explicitly listed as not worth including, because they add bulk without adding direction.
Covered in Write implementation guidance that can be followed and checked
3.Once implementation guidance has been validated in production, its instructions are permanent and should not be revisited.Why is that wrong?
Instructions that work around a model's weaknesses have a shelf life. After a model upgrade they should be re-tested and removed if the newer model no longer needs them.
Covered in Treat the documents as part of the system's lifecycle
Sources
Every claim above is drawn from one of these pages, quoted as it was written on the date shown.
- 1.
“The three paths for building with Claude differ in how much control you keep and how much of the implementation you offload to Anthropic.”
↩︎ Start the document with the build-path decision - 2.https://www.anthropic.com/engineering/building-effective-agentsSecondary source
“we recommend finding the simplest solution possible, and only increasing complexity when needed.”
↩︎ Start the document with the build-path decision - 3.
“Servers should not be able to read the whole conversation, nor “see into” other servers”
↩︎ Document boundaries and hard constraints explicitly - 4.
“Managed Agents is not currently eligible for Zero Data Retention or HIPAA Business Associate Agreement (BAA) coverage.”
↩︎ Document boundaries and hard constraints explicitly“Managed Agents is not currently eligible for Zero Data Retention or HIPAA Business Associate Agreement (BAA) coverage.”
↩︎ Exam trap 1 - 5.https://code.claude.com/docs/en/memoryOfficial docs
““Run npm test before committing” instead of “Test your changes””
↩︎ Write implementation guidance that can be followed and checked - 6.https://support.claude.com/en/articles/14553240-give-claude-context-claude-md-and-better-promptsOfficial docs
“Aspirational rules the team does not actually follow.”
↩︎ Write implementation guidance that can be followed and checked“Architecture in three sentences — what the major pieces are and how they communicate.”
↩︎ Key concept“Full API documentation (Claude can read the code directly).”
↩︎ Exam trap 2 - 7.https://code.claude.com/docs/en/large-codebasesOfficial docs
“Review in pull requests: treat CLAUDE.md edits like any other documentation change so conventions track the code”
↩︎ Treat the documents as part of the system's lifecycle“instructions that worked around an older model’s limitation may become overhead once a newer model handles the case on its own”
↩︎ Exam trap 3