Skip to content

3.1 The real production tools

You just built a working harness — durability, sandboxing, memory, routing, supervision, and human-in-the-loop — from scratch. The point was never to ship that code. The point was so that when you open the docs for a real framework, nothing is a black box. You’ll recognize every piece, because you built the toy version of it.

Here’s the map from what you built to what the industry ships.

Concept → production tool → when to reach for it

Section titled “Concept → production tool → when to reach for it”
What you built Industry name Real tools Reach for it when…
Event log + checkpoint/resume (2.1) Durable execution Temporal, DBOS, Inngest, Restate Your agent does real, irreversible work and must survive crashes without repeating it
Policy gate + isolated runner (2.2) Sandboxing / code execution e2b, Firecracker, Cloudflare Sandbox, Daytona The model writes or runs code, or calls tools that could do damage
History / state / context split (2.3) Context engineering / memory Vector DBs (Pinecone, pgvector), LangMem, mem0 Tasks run long enough that “send everything” gets slow, costly, or forgetful
Router + typed handoffs (2.4) Orchestration / routing LangGraph, Mastra, OpenAI Agents SDK, CrewAI One agent is juggling too many tools or intents and picking wrong
Supervisor + parallel fan-out (2.5) Multi-agent orchestration LangGraph, Mastra, CrewAI, AutoGen A task splits into independent sub-tasks, or you need resilience to partial failure
Suspend / resume for approval (2.6) Human-in-the-loop / durable signals Temporal signals, Inngest waitForEvent, LangGraph interrupts An action needs a person’s sign-off, or the workflow must wait on an external event

Notice how often the same names recur — Temporal and LangGraph especially. That’s not coincidence: the two hardest problems are durability (surviving time and crashes) and orchestration (coordinating multiple steps and agents), and the big frameworks are organized around one or the other.

Almost every tool above falls into one of two camps — and it’s the same split this whole guide is built on:

  • Execution / durability (Temporal, DBOS, Inngest): they own how a workflow runs — checkpointing, retries, resuming, waiting. They don’t care that there’s an LLM inside.
  • Agent orchestration (LangGraph, Mastra, CrewAI): they own how agents coordinate — routing, handoffs, sub-agents, shared state.

The most serious production setups use both: an orchestration framework for the agent logic, running on top of a durable-execution engine for the guarantees. Which is exactly the harness you built — the agent decides, the durable runtime executes.

Open the docs for anything — LangGraph, Mastra, the OpenAI Agents SDK — and ask five questions. You now know what each one means and why it matters:

  1. What happens when the process crashes mid-run? (durability — 2.1)
  2. What can a tool do, and what stops it? (policy + sandbox — 2.2)
  3. What does it actually send the model each step? (context — 2.3)
  4. How does work get to the right agent? (routing/handoffs — 2.4)
  5. Can it run things in parallel and survive one failing? (supervision — 2.5)
  6. How does it wait for a human or an event? (suspend/resume — 2.6)

A framework’s real quality is in its answers to those six questions — not its demo.

© 2026 Clifford Bernard · Content CC BY 4.0 · Code MIT ·Source