What a deep agent is, and how the pieces assemble
The thing itself: your autonomy engine rebuilt on everything you learned. The module 3 dice graph, checkpointed (module 4), wild rolls gated by your approval (module 5), streamed live (module 6), executed by a worker subgraph (module 7), traced end-to-end (module 8), deployed on kinto behind Reception. Visible and safe enough to trust with more.
A deep agent is an agent with a filesystem, memory, and skills. deepagents packages the pattern: an agent that reads persistent memory files, has a working filesystem, and loads reusable skills, on top of the loop you already know.
For the capstone, createDeepAgent is the shell that executes the rolled face: when the dice lands on continue/personal/wild, a deep agent with your memory and skills does the actual work.
Assembly is the lesson. Nothing here is new; this module is wiring the seven pieces into one system:
- Module 3: the dice StateGraph is the core, sense to modulate to roll to route.
- Module 4: a PostgresSaver under it, so a roll survives a kinto restart.
- Module 5: wild rolls hit an interrupt(); you approve from Discord or the groundschool panel before the wild action fires.
- Module 6: config.writer events and graph.stream push the whole run into the learning cockpit live.
- Module 7: the face node dispatches a worker subgraph (the deep agent) that executes the rolled action, with Command.PARENT handoff back.
- Module 8: LANGSMITH_TRACING=true plus wrapAnthropic on the deep agent's SDK calls; every decision traced.
Try it yourself
What the worker subgraph gains from being a deep agent
Both options have tools and a system prompt. The difference is what survives between invocations.
What specifically does memory + skills give the worker that a plain createAgent lacks?