50 lines
2.1 KiB
Markdown
50 lines
2.1 KiB
Markdown
# 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](/labs/l1-first-agent) | M1 | Single-tool agent from scratch | 60 min |
|
|
| [L2a: Multi-Tool Agent](/labs/l2-multi-tool) | M2 | File ops + web search | 75 min |
|
|
| [L2b: Context-Aware](/labs/l2-context) | M2 | Sliding window + summarization | 60 min |
|
|
| [L3a: Whitelist Hook](/labs/l3-whitelist-hook) | M3 | L4 security implementation | 60 min |
|
|
| [L3b: Verifier Agent](/labs/l3-verifier) | M3 | Read-only verification | 75 min |
|
|
| [L4a: Agent Chain](/labs/l4-agent-chain) | M4 | YAML pipeline | 60 min |
|
|
| [L4b: Multi-Team](/labs/l4-multi-team) | M4 | Team config + domain locking | 90 min |
|
|
| [L5a: Observability](/labs/l5-observability) | M5 | SQLite tool tracing | 60 min |
|
|
| [L5b: CI/CD](/labs/l5-cicd) | M5 | Golden dataset + regression gate | 60 min |
|
|
| [L6a: Eval Harness](/labs/l6-eval-harness) | M6 | pass@k evaluation | 60 min |
|
|
| [L6b: Cost Optimization](/labs/l6-cost-optimization) | M6 | Cascade routing | 45 min |
|
|
| [L7a: Autoresearch](/labs/l7-autoresearch) | M7 | Self-improving experiment loop | 75 min |
|
|
| [L7b: Meta-Agent](/labs/l7-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.
|