Whetstone.
Sign in
All courses
langchainIntermediate

Building Agents

Ground school taught you StateGraph, reducers, nodes, edges and Command routing. That is the runtime underneath an agent, not the agent. This course is the harness layer: create_agent and its parameter surface, deepagents and what it actually adds, the six middleware hooks and their execution order, the context-engineering thresholds for long-running agents, SKILL.md against always-loaded memory, and sandboxing with its fail-open permission trap. Build is exactly 10 of the 40 exam questions, and this is where they come from.

13 lessons 277 min
BACrash course
Curriculum

13 lessons across 5 modules

Capstone

Assemble a deep agent on paper, then justify every default you kept

You have finished the harness layer. Now prove you can assemble it without the defaults doing your thinking for you.

The task

On paper, in a scratch file, no cloud account required. Specify an agent that ingests a large research corpus, runs unattended for hours, executes generated code, and hands off subtasks. Then write the justification for every single choice.

What the specification must contain

  1. The layer. create_agent or create_deep_agent, and one sentence saying what you would have to hand-assemble if you picked the lower one. If your answer is "nothing, it is only defaults", you have understood the module.
  2. The middleware list, in array order, with a trace of when each hook fires. Include at least one wrap_tool_call and say what it wraps.
  3. The context strategy. Which of offloading, summarization, context editing and call limits you turned on, with the actual thresholds you set and why you moved them off the defaults if you did.
  4. The knowledge split. What goes in a SKILL.md and what goes in always-loaded memory, with the reason expressed as a token-cost argument rather than a taste argument.
  5. The execution boundary. Which backend, which shell policy, and a written statement of what the sandbox does not protect you against.
  6. The permission rules, in declaration order, ending with an explicit catch-all. If you cannot say why the catch-all is mandatory, reread module 5.

The bar

Every number in the document is either a documented default you can name, or a deliberate override with a reason attached. No number appears because it sounded about right.

That is the whole discipline. The exam tests whether you know which layer owns which concern and what happens when a default is left alone. The capstone is the same question, asked once, about a system you designed.

Your progress0%

0 of 13 lessons complete

langchain
deepagents
middleware
agents
lcae