# Labs — Apply the Playbook Each module ships with a dedicated lab file containing 4–5 hands-on exercises that take a concept from the module out of the text and into your actual project, terminal, and team. **Every lab is sized to fit in 15–20 minutes** — a single focused block, not an afternoon. A full module's lab set runs ~70–95 minutes. The depth scales beyond that via *Stretch* goals; the labs themselves stay short. The labs are **cumulative** but **modular**: doing them in order is the intended path, but each lab can also stand alone if you already have the prerequisites it lists. ## How a lab is structured Every lab in this directory follows the same shape so you always know what's coming: - **Objective** — one sentence, measurable. - **Prerequisites** — what you need set up before you start. - **Estimated time** — wall-clock, assuming a single distraction-free block. - **Setup** — the few commands or files that get you to a clean start state. - **Steps** — numbered, atomic, written so an agent could also execute them if you wanted to hand them off. - **Deliverable** — the artifact you should be able to point at when you're done. - **Success criteria** — the checks that prove you got there. If your artifact can't pass these, the lab isn't finished. - **Reflection** — 2–3 questions to answer in your own words. This is where the lab pays off; skipping it is skipping the lesson. - **Stretch goals** — optional extensions that take the same scaffolding somewhere harder. ## The lab files | Module | Lab file | Labs | |--------------------------------------------------------------------------|---------------------------------------------------------------------|------| | [1 — Foundations](../modules/01-foundations.md) | [01-foundations-labs.md](01-foundations-labs.md) | 4 | | [2 — Spec-Driven Development](../modules/02-spec-driven-development.md) | [02-spec-driven-development-labs.md](02-spec-driven-development-labs.md) | 5 | | [3 — Agentic CLI Tools](../modules/03-agentic-cli-tools.md) | [03-agentic-cli-tools-labs.md](03-agentic-cli-tools-labs.md) | 4 | | [4 — Extending Intelligence](../modules/04-extending-intelligence.md) | [04-extending-intelligence-labs.md](04-extending-intelligence-labs.md) | 4 | | [5 — Memory Orchestration](../modules/05-memory-orchestration.md) | [05-memory-orchestration-labs.md](05-memory-orchestration-labs.md) | 4 | | [6 — Meta-Agent Factory](../modules/06-meta-agent-factory.md) | [06-meta-agent-factory-labs.md](06-meta-agent-factory-labs.md) | 5 | | [7 — Human-in-the-Loop](../modules/07-human-in-the-loop.md) | [07-human-in-the-loop-labs.md](07-human-in-the-loop-labs.md) | 4 | ## How to work the labs - **Use a real repository.** Toy examples teach nothing. Use a project whose pain you actually feel. - **Save your artifacts.** Each lab produces something — a config file, a memory entry, a CI workflow, a scorecard. Commit them, even to a scratch branch, so you can diff them against your "before" state. - **Capture costs.** Every lab session is also a chance to read `/cost` and learn what a task type actually costs you. Write the number in your reflection. - **Pair the labs with a teammate when you can.** The reflection questions are sharper when you have to defend your answer to someone else. ## When to skip ahead Skip a lab if **all three** are true: 1. You've already shipped something equivalent in production. 2. You can explain the reflection questions without notes. 3. You have a recent (≤30 days) example you can point at. Otherwise, do the lab. The cost is an evening; the cost of skipping is a weak link in a workflow you'll rely on for years.