Skip to content

# Labs Overview ​

13 hands-on labs covering the full agentic engineering stack. Each lab has a `starter.py` (fill in the blanks) and `solution.py` (reference answer).

## Lab Index ​

Lab | Module | Topic | Est. Time
--- | --- | --- | ---
L1: First Agent | M1 | Single-tool agent from scratch | 60 min
L2a: Multi-Tool Agent | M2 | File ops + web search | 75 min
L2b: Context-Aware | M2 | Sliding window + summarization | 60 min
L3a: Whitelist Hook | M3 | L4 security implementation | 60 min
L3b: Verifier Agent | M3 | Read-only verification | 75 min
L4a: Agent Chain | M4 | YAML pipeline | 60 min
L4b: Multi-Team | M4 | Team config + domain locking | 90 min
L5a: Observability | M5 | SQLite tool tracing | 60 min
L5b: CI/CD | M5 | Golden dataset + regression gate | 60 min
L6a: Eval Harness | M6 | pass@k evaluation | 60 min
L6b: Cost Optimization | M6 | Cascade routing | 45 min
L7a: Autoresearch | M7 | Self-improving experiment loop | 75 min
L7b: Meta-Agent | M7 | Agent that builds agents | 60 min

## Running Labs ​

bash

    cd course/labs/L1-first-agent/

    # Without API key (uses mock LLM automatically):
    python starter.py test.txt "What is this file about?"

    # With API key:
    export ANTHROPIC_API_KEY="sk-ant-..."
    python starter.py test.txt "What is this file about?"

    # Check solution after attempting:
    python solution.py test.txt "What is this file about?"

## Lab Structure ​

Each lab has:

- `starter.py` — Code skeleton with TODO markers
- `solution.py` — Complete reference implementation
- No additional files needed — all labs are self-contained

## Offline Mode ​

All labs include automatic mock LLM fallback. No API keys required. The mock client returns realistic, deterministic responses so you can verify your code logic without paying for API calls.