learnaiwithrafa
ClaudeSetup

The 7 Levels of Claude Code — Find Yours, Climb One

Most engineers stall at level 3, treating Claude Code like a smarter terminal. Here's the ladder from chat to agent teams — with the exact file or command that moves you up each rung.

5 min read2 sources
  • #claude-code
  • #setup
  • #agents

I run engineering at a US startup, and the gap between people who get real leverage from Claude Code and people who don't isn't talent — it's which rung they're stuck on. Most stall at level 3. Here's the ladder. Find where you are, then take the single step that lifts you a rung. Each one is a file or a command you can paste today.

Install first if you haven't: curl -fsSL https://claude.ai/install.sh | bash, then cd your-project && claude.

Level 1 — Prompting

You type, it answers. Claude as a smarter search box. Running claude "write tests for the auth module and fix them until they pass" is still level 1 if you babysit every keystroke. The move up is to stop feeding it context by hand.

Level 2 — Context (CLAUDE.md)

A CLAUDE.md at your project root loads automatically whenever a session begins, which is how you stop re-explaining your stack. This is the highest-payoff ten minutes on the whole ladder. Drop this in, edit every bracket:

# CLAUDE.md — the file Claude reads first, every session

## Stack
[Languages, framework, package manager, and the exact command to run tests.]

## Conventions
[Naming, error handling, the patterns you actually use — not the aspirational ones.]

## Boundaries (ask before touching)
[Migrations, auth, billing, anything in production. Name the files or folders.]

## Commands
- build: [exact command]
- lint: [exact command]
- test: [exact command]

## Lessons
[Leave this here. Every time Claude gets something wrong, append one line: "Don't X, do Y."]

Level 3 — Tools

On your machine, Claude opens files, creates new ones, executes commands, and runs its own web searches — no copy-paste. It does instead of suggests. Most people camp here. To climb, give it reach beyond your repo.

Level 4 — MCP

Level 3 gave it hands on your machine; MCP gives it keys to everything else — your inbox, your task board, your database. Add one server for the tool you touch daily:

# remote server over HTTP
claude mcp add --transport http linear https://mcp.linear.app/mcp
# local server via a package
claude mcp add sqlite -- npx -y @modelcontextprotocol/server-sqlite ./dev.db

Commit a project .mcp.json to share the setup with your team. Start with exactly one — the tool you'd otherwise alt-tab to.

Level 5 — Skills (SKILL.md)

A .claude/skills/<name>/SKILL.md is a playbook Claude loads automatically when the task matches. Only the description is scanned at startup, so it costs nothing until it fires. Anthropic's team lives by one rule here: repeat a task even twice in a day, and it should be a skill. Save this as .claude/skills/pr-description/SKILL.md:

---
name: pr-description
description: Writes a PR description in our house format. Use when I open a PR or ask for a PR summary.
---

Produce the PR description. Follow this exactly.

## Inputs
Read the branch diff and the commit messages. If a linked ticket is mentioned, pull its title.

## Format
1. **What & why** — two sentences, plain language, no filler.
2. **Changes** — bullets, each starting with a verb.
3. **Risk & rollback** — what could break and how to revert.
4. **How I tested** — the exact commands or steps.

## Bar
Before finishing: would a reviewer have to ask an obvious question? If yes, answer it in the description first.

Level 6 — Subagents

A .claude/agents/<name>.md defines a specialized worker with its own context and tool permissions. The one to start with is a read-only reviewer that sees everything and changes nothing. Save this as .claude/agents/reviewer.md, then say "run the reviewer over this before it ships":

---
name: reviewer
description: Independent second opinion before shipping. Read-only.
tools: Read, Grep, Glob
---

You are a demanding senior reviewer. Read anything; edit nothing; run nothing.

For the work given:
1. Check it against the goals in CLAUDE.md.
2. Hunt the three usual failures: it contradicts the spec, it quietly skipped something, or it would embarrass us with a user.
3. Report as BLOCKER / SHOULD-FIX / NIT — one line each, with file and line.
4. End with a verdict: ship, or fix the blockers first.

No praise, no padding.

Add "use subagents" to any big task and Claude fans the work out to parallel workers by itself.

Level 7 — Agent teams

Multiple full Claude sessions coordinating on shared work, each in an isolated worktree. This is where "using AI" becomes "managing an AI team." Run parallel work without collisions:

claude --worktree feature-auth   # isolated copy; short form: -w
claude --worktree "#1234"        # branch straight from a PR

Keep one session whose only job is reviewing the others' output. Most work never reaches this rung — get levels 4 through 6 solid and you're already past almost every engineer.

The habit that pays off later

Whenever Claude gets something wrong, close the correction with: "note this in CLAUDE.md so it never happens again." Two weeks of that and it stops repeating your specific mistakes. The skills that matter at level 7 — clear specs, good context hygiene, verification habits — are the ones you build climbing the lower rungs.

Do this today

Find your rung honestly, then do its one step. At level 1 or 2, paste the CLAUDE.md above into your most active repo and fill it in. Climbing one level a week puts you ahead of nearly every engineer you work with by next month.

Sources