Lessons
About this phase
An agent is a language model placed inside a loop: it reads the state of the world, reasons, acts through tools, observes the result and repeats until the job is done. This phase turns everything you learned about LLMs (8.1 The LLM lifecycle and model landscape–8.7 Evaluating LLMs) and retrieval (9.1 Why RAG, and the canonical pipeline–9.11 Project: a cited RAG assistant over your own documents, with evals) into systems that do things: call APIs, write and run code, browse, remember across sessions and coordinate with other agents. You will build the loop by hand, study the planning and memory techniques that make it reliable, learn the protocols that connect agents to tools and to each other (MCP, Agent Skills, A2A), and treat evaluation and security as first-class engineering — because an agent that is right 95% of the time per step is wrong most of the time after twenty steps. The phase ends with a research agent you design, instrument and evaluate yourself.
By the end you can
- Implement a tool-using agent loop from scratch against a frontier model API and explain every message in the transcript
- Choose between workflows, single agents and multi-agent systems using cost, reliability and verifiability arguments — and defend the choice
- Design memory and context strategies (compaction, notes, just-in-time retrieval, long-term stores) for long-running tasks
- Build and connect an MCP server, package procedural knowledge as Skills, and reason about the security of tools and protocols
- Evaluate agents with trajectory-level harnesses, pass@k vs pass^k, and compounding-error math, and harden them against prompt injection and the lethal trifecta
- Ship a production-grade agent with explicit state, durable execution, observability, budgets and human-in-the-loop controls