A free playbook, as a PDF and an EPUB

The Claude Code playbook

Set up CLAUDE.md, permissions, skills, subagents, hooks and a plugin on one real repo, and measure the change.

The PDF opens in a new tab. Your details go to learnwithparam only. This does not subscribe you to the newsletter.

Look insidePages from the PDF, as they print.

  1. Page 2: Contents
    Page 2: Contents
  2. Page 3: Each chapter adds one part of the setup.
    Page 3: Each chapter adds one part of the setup.
  3. Page 14: CLAUDE.md files stack from the broadest scope to the closest folder.
    Page 14: CLAUDE.md files stack from the broadest scope to the closest folder.
  4. Page 24: Write it down in .claude/settings.json.
    Page 24: Write it down in .claude/settings.json.
  5. Page 41: A never-do line in CLAUDE.md is a request, not a guard.
    Page 41: A never-do line in CLAUDE.md is a request, not a guard.
  6. Page 68: Every file, what it is for and when it loads.
    Page 68: Every file, what it is for and when it loads.

What the playbook covers

  1. 1

    The setup this playbook builds

    Acme is a made up company. Its support team runs an AI agent that sorts customer emails, and the code lives in a repo called acme-triage. One bug runs through this playbook: the agent files a refund email as spam. You fix it with Claude Code twice, before the setup and after it.

  2. 2

    Why Claude Code drifts on a long task

    Most advice for Claude Code traces back to one limit. The context window fills, quality falls as it fills, and a rule written in a file is still only a request.

  3. 3

    Measure one real ticket before you change anything

    Before the first file, run one ticket the way you work today and write down what it cost. Without that number you will not know whether the setup helped.

  4. 4

    Write a CLAUDE.md that Claude follows

    The ticket stalls because Claude does not know the repo: which test runs the classifier, that prompts live in prompts/, that labels come from one enum. CLAUDE.md fixes that, if it stays short.

  5. 5

    Let it run without prompts, and never touch prod

    On the baseline run every prompt was approved unread, and nothing stopped an edit in infra/prod/. Permissions move that judgment into a file.

  6. 6

    Turn the team's repeated workflow into a skill

    Each engineer on the triage team fixes a mislabel a different way, and pastes the same steps into chat each time. A skill writes the best way down once and loads only when it is used.

  7. 7

    Send research and review to subagents

    On the baseline run, reading old tickets filled the main window before the fix began. A subagent reads in its own context and hands back a summary.

  8. 8

    Block risky edits with hooks, not instructions

    CLAUDE.md asks Claude to leave .env and infra/prod/ alone, and the deny rules miss git push written another way. A hook runs every time its event fires, whatever Claude decides.

  9. 9

    Package it, run it everywhere, and measure again

    The setup works on one laptop. A plugin carries it to every teammate, the same files drive VS Code and GitHub Actions, and the ticket runs again against the baseline.

  10. 10

    Keep the setup current after you hand it over

    The files stay useful only if someone keeps pruning them. Anthropic's own regression was found by users before its evals, so the baseline ticket becomes a standing check.

  11. 11

    Cheatsheet

    Every file now in acme-triage and every command ticket 4812 used.

Keep it on your deskIt comes with a one-page cheatsheet to print and pin up.

Get the playbook