Guide · Agentic engineering

Stop typing the work. Climb the ladder.

Getting good at Claude Code is one move: hand more of the doing to agents and keep more of your attention for judgment. We call the path the delegation ladder — six rungs from doing it yourself to running an autonomous fleet. Play with the ladder below, walk the two tracks, then steal the artifacts that get you up a rung.

Interactive Copyable artifacts ~20 min No signup
00 — The mindset

You are the lead, not the typist.

A capable agent takes your task, plans it, and does the work. When the task is big, a lead agent breaks it into parts, hands each to a teammate agent working in its own isolated context, and merges the results. Some run in parallel. Some run while you sleep. You sit above the whole thing — specifying intent, setting constraints, reviewing output.

This is the design, not a metaphor. Claude Code is deliberately low-level and unopinionated: it hands you primitives and expects you to compose the workflow. Everything here is either a way to brief the team better, a way to add a specialist, or a way to let the team run without you. One question runs through all of it: am I doing work a well-briefed agent could do, or am I doing the briefing and the reviewing? The second is the job.

01 — The delegation ladder

Climb a rung. Watch the leverage.

Every rung hands more of the doing to agents and frees more of your attention for judgment — but each one asks for more setup and more earned trust. Higher is not automatically better. Pick a rung to see the trade.

×10
Constrained specialists
Relative throughput×10
Your attention per task35%
Time to ship 12 tasks≈6 units
Agents working at once3
What it takes
A tight CLAUDE.md plus subagents scoped to narrow jobs. See the artifacts →
The trade: isolation keeps the noise out of your main session; narrow tools keep each specialist reliable.

Illustrative — the shape of the trade-off, not a benchmark. The rungs are real; the numbers just show which way each dial moves as you climb.

02 — Track one (rungs 00–02)

Zero to hero, no setup required.

You need a GitHub account and a Claude subscription — no terminal, no local checkout. Every module works from a browser or the Claude mobile app. That is the point: you can build on the go.

01 Start from GitHub, in the cloud Connect a repo and describe a task — Claude does the rest on Anthropic's infrastructure.
Claude Code on the web runs at claude.ai/code. Connect your GitHub account, pick a repository, and describe what you want in plain language. Claude clones the repo into an isolated cloud environment, does the work, and opens a pull request. Nothing runs on your machine. Currently a research preview for Pro, Max, and Team users. See the web quickstart.
02 Build on the go — sessions follow you Start at your desk, approve from your phone, teleport to your terminal later.
A session keeps running if you close the browser, and you can monitor and steer it from the Claude iOS app. Pull the same session into your terminal with claude --teleport when you are back at a keyboard. The work lives in the cloud; you check in from anywhere.
03 Plan before you build Make Claude propose the plan without editing — catch mistakes while they're cheap.
In plan mode, Claude explores the codebase and proposes what it intends to do without touching a file. Read the plan, correct it, then let it execute. Describe the outcome, not the implementation — the plan is the cheap place to be wrong. This single habit is the highest-leverage move a beginner can make, and it is rung 02 of the ladder.
04 Ship it live — pick one host and stop shopping Git-driven hosts redeploy on every push. Or just run it locally.
For sites and front-ends, Vercel, Netlify, and Cloudflare Pages connect to your repo and redeploy automatically on every push. For back-end services, Railway and Fly.io do the same for containers; for plain static sites, GitHub Pages publishes straight from the repo. All can be driven by CLI (vercel, netlify deploy, flyctl deploy) or GitHub Actions — which matters higher up the ladder, when an agent deploys for you. Only need it on your own machine? python -m http.server, npx http-server, or your framework's npm run dev.
05 The simple toolkit — the 20% that does 80% Five moves get you shipping real things without writing code.
Describe tasks in plain language; always plan before executing; review the pull request instead of reading every line; approve steps from your phone; let a Git-connected host handle deployment. That is the whole beginner loop, and it lives on the bottom three rungs. Stop here and you can still build and ship.
03 — Track two (rungs 03–05)

The advanced course: running the team.

The rest of the value comes from turning one agent into a team you have configured deliberately — and letting it run without you. In order of leverage.

01 Context is the highest-leverage lever A tight CLAUDE.md is the difference between an agent that guesses and one that knows your project.
The most important thing you write is not code — it is the instructions. A CLAUDE.md at your repo root is read at the start of every session: conventions, architecture, preferred libraries, build and test commands, pre-commit checks. Keep it short and concrete — a shorter file is followed more reliably and costs less context. Scope it at the user, project, or local level. Claude also builds its own memory across sessions. Steal a starter CLAUDE.md →
02 Package repeatable work as skills Turn your best-honed procedures into one-word slash commands.
Skills package a repeatable workflow behind a name you invoke as a slash command, like /review-pr or /deploy-staging, shared with your team through the repo. Loaded on demand, so they keep standing context lean. Every recurring task you encode as a skill is judgment you only capture once.
03 Add specialists, run them in parallel Subagents in isolated contexts — the team, made real on your screen.
A subagent is a specialist — researcher, reviewer, debugger — running in its own context with its own tools and permissions, returning only a summary. Two payoffs: isolation keeps noisy work out of the main conversation, and specialisation plus constraint (a review agent that can only read) raises reliability. A lead can spawn several at once and merge the results; background agents let you watch many full sessions from one screen. Steal a reviewer subagent →
04 Connect your tools with MCP An open standard that lets agents reach your database, tracker, browser, and more.
The Model Context Protocol connects Claude to external systems. Add a server once and its capabilities become tools: query Postgres, update Jira, pull from Slack, drive a browser with Playwright, look up an exception in Sentry. It is a standard, not a plugin store — point it at your own internal tooling too. Each server costs some context, so add the ones that earn their place. Start with the MCP quickstart.
05 Make behaviour deterministic with hooks Rules the system enforces, not guidance the model may forget.
Hooks run your shell commands at fixed points in the agent's lifecycle — before or after a tool, at session start, after an edit. Auto-format after every edit, lint before a commit, block an action you never want taken. Where CLAUDE.md is guidance the model follows, a hook is a rule the system enforces. Steal a format-on-edit hook →
06 Let the team run without you Loops, routines, and headless mode — work that happens while you do something else.
Three tiers. /loop repeats a prompt in a running session for quick polling. Routines run on Anthropic-managed infrastructure on a schedule or a trigger — even when your computer is off — created from the web, desktop app, or /schedule. And headless mode (claude -p) runs Claude inside any script or pipeline. Steal a routine and a headless one-liner →
07 Build your own agents with the SDK When a workflow outgrows the CLI, productise it in Python or TypeScript.
The Claude Agent SDK gives you the same agentic loop and tools — editing, running commands, subagents, MCP, hooks — as a library. A bug-fix bot in CI, a reviewer on every pull request, an agent embedded in your own app, with full control over orchestration and permissions. The CLI does the work; the SDK productises it.
04 — Steal these

Four artifacts that get you up a rung.

Enough theory. Paste these into a repository today — each is a concrete version of a lever above. They are deliberately small; the point is the shape, not the length. Copy, then adapt to your stack.

Rung 03 · CLAUDE.md (repo root)
# Project: acme-web

## Stack
- Next.js (App Router) + TypeScript + Tailwind. Postgres via Prisma.

## Conventions
- Two-space indent. Named exports only, no default exports.
- Server components by default; add "use client" only when you need it.
- Prefer editing an existing component over creating a new one.

## Commands
- Install: npm ci
- Dev: npm run dev
- Test: npm test   # run before every commit
- Lint + format: npm run lint && npm run format

## Guardrails
- Never hand-edit anything under db/migrations/.
- Never commit secrets. Config comes from .env (see .env.example).

The context every session reads. This is the single highest return on the least effort in the whole tool.

Rung 03 · .claude/agents/reviewer.md
---
name: reviewer
description: Reviews a diff for correctness and security. Read-only.
tools: Read, Grep, Glob
model: sonnet
---
You are a senior reviewer. Given a diff, surface only real defects:
correctness bugs, security holes, missing error handling. Skip style.
Return findings most-severe first, each with file:line and a one-line fix.
If you find nothing, say so — never invent issues.

A specialist you delegate to, scoped to the minimum tools. Specialisation plus constraint is what makes a fleet reliable.

Rung 04 · .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command", "command": "npm run format --silent" }
        ]
      }
    ]
  }
}

Formats every file the moment it is edited — a rule the system enforces, not guidance the model may forget. The kind of guardrail a parallel fleet needs.

Rung 05 · Routine — weekday PR triage · 08:00
Every weekday at 08:00, for each open pull request:
- summarise what changed and flag anything risky,
- run the test suite and post failures as review comments,
- label the ones that are ready to merge.
Do not merge anything yourself.

An agent that runs on a schedule while your computer is off. Create it from the web, the desktop app, or /schedule.

Bonus · Headless, in a pipe
tail -200 app.log | claude -p "Slack me if you see any anomalies"

The whole philosophy in one line: Claude Code pipes, scripts, and chains like any other command-line tool.

05 — What actually makes it different

Simple tool, sophisticated operator.

Strip away the feature list and the differentiators Anthropic keeps returning to are consistent. The tool is intentionally thin so that you can be sophisticated.

Primitive
Unopinionated
Close to the raw model. It hands you primitives, not a prescribed workflow, and trusts you to compose something better than any default.
Composable
Terminal-native
It pipes, scripts, and chains like any command-line tool, living inside the toolchain you already have rather than a walled-off app.
Bet
Model-forward
The wager is that the general model keeps getting more capable, so the tool stays thin and lets that capability through.
Leverage
Context & orchestration
The value comes from the instructions you write and the team of agents you run — far more than from any single clever prompt.
06 — Biggest bang for your buck

If you do only five things.

In this order. Each one returns more than the effort it costs — and each moves you up a rung.

07 — Go deeper

Read the full guide, then the source.

This page is the map. The newsletter article walks the whole route in prose, and the official documentation is always the current source of truth.

Read the full guide → Official docs →