learning path
Tutorials
Hands-on builds with runnable code, grouped by level. Want the full curriculum — tutorials, decision guides and playbooks in one order with progress tracking? Follow a learning track.
Beginner
New to agents, or used ChatGPT but never built one. Understand what an agent really is, then build one that works — a tool server, an agent loop, and an agentic coding workflow.
- 01 How an AI agent actually works: build the loop behind every framework Every agent framework wraps the same ~40-line loop: model decides, tool runs, result feeds back. Build it in plain Python and the whole ecosystem stops being magic. ⏱ 40 min
- 02 MCP vs. A2A vs. AG-UI: the agent protocol stack, explained with one diagram The three agent protocols solve three different problems — agent-to-tools, agent-to-agent, and agent-to-user. Learn which layer each owns and when you need more than one. ⏱ 25 min read
- 03 How to build your first MCP server, step by step (Python and TypeScript) Build a working Model Context Protocol server with tools and resources, connect it to a real client, and understand what actually happens on the wire. ⏱ 45–60 min
- 04 Claude Code from zero: an agentic coding workflow, step by step Install Claude Code, learn the core loop, and build up to a disciplined agentic workflow: CLAUDE.md, plan mode, custom skills, hooks, and MCP servers. ⏱ 50 min
- 05 How to write Agent Skills (SKILL.md) that work across coding agents A skill is a folder with a SKILL.md file that a coding agent loads only when it needs it. Build a working release-notes skill with a bundled script, put it where Claude Code, Codex, Copilot, Cursor and Gemini CLI can all find it, and fix it when it does not trigger. ⏱ 30 min
- 06 How to build a personal AI agent for daily productivity (note and task triage) Build an agent that triages your notes into tasks, references, and archives — runnable today with zero API keys, upgradeable to any LLM, and scalable from personal to team use. ⏱ 40 min
Intermediate
You’ve built a demo agent and want it to be reliable. Structured outputs, real integrations, memory, multi-agent orchestration, and evals — the engineering that turns a demo into a system.
- 01 Structured outputs for agents: make models emit JSON you can actually trust Agents break where prose meets code. Build the validate-and-retry loop that turns flaky model JSON into a reliable contract — in plain Python, runnable without an API key. ⏱ 35 min
- 02 How to wrap a REST API in an MCP server (without handing the agent the whole API) Turn any REST API into agent-safe MCP tools: a narrow allowlist instead of a proxy, PII redaction before the model sees data, and a fake API so you can test the whole thing offline. ⏱ 45 min
- 03 How to migrate an MCP server to the stateless 2026 spec (mcp v2 and TypeScript SDK v2) `pip install mcp` now gives you mcp 2.x and your FastMCP import breaks. Move a working MCP server to the stateless 2026-07-28 spec in Python and TypeScript, without locking out the clients that still use the old protocol. ⏱ 45 min
- 04 Agent memory patterns: vector stores, knowledge graphs, and context engineering Why agents forget, the four memory patterns that fix it, and a working retrieval loop you can run in plain Python before you buy a vector database. ⏱ 40 min
- 05 Multi-agent orchestration explained: build an orchestrator and sub-agents from scratch Build the agent harness pattern in ~80 lines of plain Python — an orchestrator that plans, delegates to specialist sub-agents, and synthesizes — with a mock model so you can run it instantly. ⏱ 50 min
- 06 How to evaluate an AI agent: build a golden-task eval harness from scratch Agents without evals break silently on every prompt tweak. Build a small golden-task harness in plain Python — tasks, checks, scoring, and a regression gate you can run in CI. ⏱ 60 min
Advanced
You run agents for a team or company — or will soon. Security, human oversight, observability, cost control, and governance for agents doing real work in production.
- 01 How to trace AI agents with OpenTelemetry (agent, LLM, and tool spans) Instrument a small Python agent loop with the OpenTelemetry GenAI semantic conventions: one invoke_agent span per run, a chat span per model call, an execute_tool span per tool call, plus token usage and errors. Then use the trace to explain what a run cost and where its time went. ⏱ 45 min
- 02 Run agents locally: LLM serving plus MCP on your own hardware Serve an open-weights model with llama.cpp on your own machine (ARM64 included), expose an OpenAI-compatible endpoint, and wire a local agent loop to MCP tools — no cloud required. ⏱ 60–90 min
newsletter
One practical agentic-AI guide in your inbox. No news, no hype.
Tutorials and decision frameworks as they ship. Unsubscribe anytime.