A self-study course on the systems you build around an LLM to turn it into a dependable product. A frontier model is a capability, not a system. The harness around it is what makes it reliable, governed and observable: how context is assembled, the tool interfaces, control flow, memory, evaluation, guardrails and telemetry. This course treats that harness as the main thing you engineer.
It is written for a working engineer who has tried LLM and agent APIs but hasn't yet built a production agent system. The reference stack is Google ADK at the API level, with models served through LiteLLM (Azure OpenAI, DeepSeek, Claude). Model training, fine-tuning and basic prompt engineering are out of scope.
| If you want to… | Go to |
|---|---|
| See the full plan, outcomes and conventions | syllabus.md |
| Learn from the beginning, in order | M1 · What Is a Harness → M17 |
| See every layer combined into one design | M17 · End-to-End Harness Design |
| Understand why agents fail and which layer is at fault | M2 · Model Failure Science |
| Compare ADK with LangGraph, CrewAI, AutoGen and others | frameworks/README.md |
17 modules in 6 parts. Each module opens with a concrete scenario, follows three threads throughout (failure modes, the tradeoff ledger, and ADK at a glance), and ends with a design exercise.
| Part | # | Module | Question it answers |
|---|---|---|---|
| Foundations | M1 | What Is a Harness | What exactly is the engineering artifact we're designing? |
| M2 | Model Failure Science | What does the model actually get wrong, and why? | |
| M3 | Harness Architecture & ADK | What are the parts of a harness, and how do we record architecture decisions? | |
| Cognitive layer | M4 | Context Engineering I: Assembly & Budgets | What goes into the context window, in what form, and what does it cost? |
| M5 | Context Engineering II: Retrieval & Grounding | How do the right facts get into context, and how do we know they're right? | |
| M6 | The Instruction Layer | How is the agent's standing policy written, versioned and tested? | |
| M7 | Memory & State | What does the agent remember, for how long, and how is it kept correct? | |
| Action layer | M8 | Tool Interfaces | How do we give the model a safe, correct, debuggable API to the world? |
| M9 | Tool Platforms: MCP | How do tools become a platform that is discovered, versioned and governed? | |
| M10 | Orchestration I: Control Flow | How much autonomy should this agent have, and how is that encoded? | |
| M11 | Orchestration II: Multi-Agent | When is one agent not enough, and when do more agents just add failure modes? | |
| Verification layer | M12 | Evaluation Harnesses | How do we know the harness works, and keep knowing it? |
| M13 | Reliability Engineering | How does an agent degrade gracefully instead of failing hard? | |
| Governance layer | M14 | Security & Injection Defense | How do we stop the environment from turning the model against us? |
| M15 | Guardrails, Safety & Governance | Who decides what the agent may do, and how is that enforced and audited? | |
| Operational layer | M16 | Observability & LLMOps | When a run goes wrong, can you reconstruct exactly what happened? |
| Synthesis | M17 | End-to-End Harness Design | How do all the layers fit into one coherent, defensible design? |
- discussions/: three deep-dives that grew out of questions while writing the course: telling derivable claims from interpretive ones when attributing failures, whether injecting memory into a cached prefix breaks prompt caching, and whether MCP tool definitions sit inside the cached prefix.
- frameworks/: 17 open-source agent frameworks, each checked for licence and source, and mapped to the modules its components cover (and the ones they don't).
- ADK-conventions/: practical ADK rules, starting with the right way to update session state.
mindmaps/: an interactive revision atlas, currently covering M4. Openmindmaps/index.htmlin a browser after cloning.- Code examples: runnable ADK agents in M1 and an instruction-layer experiment in M6.
- All 17 modules are written, but they are a first draft that hasn't had a full review pass yet.
- There is no lab infrastructure. Exercises are design exercises done on paper, and code appears only where it illustrates a concept.
- ADK-specific claims were checked against the official ADK docs when written. ADK changes quickly, so check an API against the current docs before relying on it.
- The PDFs in
downloaded-papers/folders are third-party research papers, kept for reference. Their copyright belongs to their authors and publishers.
syllabus.md course blueprint: outcomes, module map, conventions, decisions
modules/01..17/ the course, one README per module, plus supporting notes,
code examples and reference papers where a module has them
discussions/ deep-dives on questions raised while writing
frameworks/ open-source agent frameworks mapped to modules
ADK-conventions/ ADK usage rules
mindmaps/ interactive revision atlas (index.html)
