Build an AI agent stack, layer by layer.

Every agent is the same ten decisions. Which harness runs the loop. Which model thinks. What stops it when a stranger feeds it a poisoned email. Make the choices here — or describe what you’re building and let the advisor make them — and leave with a setup script, a compose file and an AGENTS.md. A new agent, not a shortlist.

88 components · 10 layers · 59 open source · benchmark scores sourced and labelled · no account, no API key
· Your stack / defaults — change anything
01HarnessClaude CodeRUN
02Model providerAnthropicRUN
03FrameworkLangGraphRUN
04MemoryMem0KNOW
05RetrievalpgvectorKNOW
06Web groundingExaKNOW
07Tools & integrationsMCP (Model Context Protocol)ACT
08SecurityLlama GuardCONTAIN
09Observability & evalsLangfuseOPERATE
10Runtime & deployDocker ComposeOPERATE
· Advisor / Describe it

Say what you’re building.

The advisor reads your description for the constraints that actually change the answer — regulated data, untrusted input, code execution, long-running work — and makes all ten choices. It is deterministic: no model call, no API key, and it will never invent a component that does not exist. Change anything it gets wrong.

[01] Harness · required/ What thinks

The loop that runs your agent. Take one off the shelf, or skip it and write the loop yourself.

[02] Model provider · required/ What thinks

Where the tokens come from. A frontier API, a gateway you control, or your own GPUs.

[03] Framework / What thinks

The library you write orchestration in, when an off-the-shelf harness is not enough.

[04] Memory / What it knows

What the agent still knows tomorrow.

[05] Retrieval / What it knows

Your own corpus, made searchable.

[07] Tools & integrations / What it touches

How the agent acts inside other people's software, and who holds the token when it does.

[08] Security · required/ What stops it · pick several

Two halves, and you want both. Guardrails decide what the agent may say and do — injection defence, PII redaction, identity. Containment decides what holds when the guardrails do not: a kernel boundary around code it wrote, a default-deny boundary around everything it can reach. Egress control does not stop prompt injection; it removes the payout.

Guardrails — what it may say and do
Containment — what holds when they fail
[09] Observability & evals · required/ How you run it

Traces of what it did, and a score for whether that was any good.

[10] Runtime & deploy · required/ How you run it

Where it runs, and whether it survives a restart.

· What you leave with / 5 files
# Agent stack build sheet

Generated by newagent.build — 10 of 10 layers chosen.

| Layer | Choice | Why it's here | Pricing |
| --- | --- | --- | --- |
| Harness | [Claude Code](https://claude.com/claude-code) | Anthropic's coding agent — terminal, IDE and SDK, with hooks, skills and MCP built in. | paid |
| Model provider | [Anthropic](https://docs.claude.com/en/docs/about-claude/models) | Claude Opus, Sonnet and Haiku. Strong tool use and long-horizon agentic work. | usage-based |
| Framework | [LangGraph](https://langchain-ai.github.io/langgraph/) | Graph-shaped orchestration with checkpointing, interrupts and human-in-the-loop. | open-source |
| Memory | [Mem0](https://mem0.ai/) | Extracts durable facts from conversations and recalls them on the next turn. | freemium |
| Retrieval | [pgvector](https://github.com/pgvector/pgvector) | Vector search inside the Postgres you already run. | open-source |
| Web grounding | [Exa](https://exa.ai/) | Embeddings-native web search built for agents, with full-content retrieval. | freemium |
| Tools & integrations | [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) | The open protocol for exposing tools and data to agents. The default answer. | open-source |
| Security | [Llama Guard](https://www.llama.com/docs/model-cards-and-prompt-formats/llama-guard-3/) | Open-weight classifier for input and output safety. Runs wherever you run it. | open-source |
| Observability & evals | [Langfuse](https://langfuse.com/) | Open-source tracing, prompt management and evals. Self-hostable in one compose file. | freemium |
| Runtime & deploy | [Docker Compose](https://docs.docker.com/compose/) | One file, one box, everything local. The honest starting point. | open-source |

## Notes worth keeping

- **Claude Code** — Configure via .claude/settings.json; drop reusable procedures in .claude/skills/.
- **Anthropic** — Enable prompt caching on the system prompt and tool definitions — it is the single biggest cost lever.
- **pgvector** — Correct default under roughly ten million vectors. Reach for a dedicated store when it stops being.
- **MCP (Model Context Protocol)** — Write your integrations as MCP servers and every harness on this page can use them unchanged.
- **Llama Guard** — Cheap first line: classify the user turn before it reaches the expensive model.
- **Docker Compose** — The generated docker-compose.yml below is runnable as-is.
the stack, as a table you can paste into a doc
· A new agent, in one line / The stack is a URL
curl -fsSL "https://newagent.build/api/stack?harness=claude-code&model=anthropic&framework=langgraph&memory=mem0&retrieval=pgvector&search=exa&tools=mcp&security=llama-guard&observability=langfuse&runtime=docker-compose&format=sh" | sh
· For agents/ This page, machine-readable

Every page here answers to Accept: text/markdown and returns the same content at roughly a tenth the tokens. No separate site, no toggle — same URL.

curl -s -H "Accept: text/markdown" https://newagent.build/