Learn everything you need to use Claude Code well, one small step at a time, with Pip cheering you on.
Claude Code Quest is a learning app that opens in your browser beside Claude Code. It shows you one step, you try it in your own practice copy, and it checks your work and cheers when you get it right. Three levels take you from your first session to a setup your team shares.
Start in 3 steps · The three levels · Meet Pip · Everything in the guide
Pass a step, and Pip cheers with you.
Start where you are and climb. Each level ends with a capstone that puts it all together. Not sure where to start? Each level page opens with a "You're ready for this level if you can" list.
You'll learn to start Claude Code safely, plan before it changes things, take one change from request to commit, and give your project a memory.
You'll finish by fixing a reported bug, from plan to commit.
5 lessons · a capstone · 3 Electives · about 2½ hours
Start Beginner
You'll learn to shape Claude Code to your own project with skills, memory, permissions, hooks, subagents, MCP servers and plugins.
You'll finish by getting a repository ready for a new teammate.
8 lessons · a capstone · 4 Electives · about 4 hours
Start Intermediate
You'll learn to run sessions in parallel, run Claude Code unattended in scripts and CI, share a setup with your team, and keep autonomous runs within limits you set.
You'll finish by adding CI review your team can share.
7 lessons · a capstone · 5 Electives · about 4 hours, plus run time
Start Advanced
Finish a level, and Pip celebrates under confetti.
You need a Claude subscription (Pro, Max, Ultra, Team or Enterprise), a Claude Console account, or access through a supported cloud provider (Quickstart), plus Node.js LTS and git.
-
Make your practice copy: open claude-code-practice, select Use this template > Create a new repository, and clone your copy. Or open your copy in a Codespace.
-
In your copy, start the app:
npm run learn
-
Claude Code Quest opens in your browser (in a Codespace, open the address it prints). Keep a terminal beside it: Claude Code Quest tells you what to type there and checks each step.
Claude Code Quest has no AI in it and changes none of your work. Prefer to read? Every lesson works from its page alone.
Already have a practice copy?
If you made your copy before the app moved to the browser, run these in your copy's folder, in a terminal or in PowerShell. The fetch saves the template's latest version as FETCH_HEAD, and --no-overlay replaces checks/, capstone/ and learn/ as wholes:
git fetch https://github.com/wesammustafa/claude-code-practice main
git checkout --no-overlay FETCH_HEAD -- checks capstone learn
git checkout FETCH_HEAD -- .github/workflows/progress.yml .gitattributes
node checks/upgrade.mjsThe template's progress.yml workflow and .gitattributes replace yours. Your work moves into project/, with every file's contents kept (an untracked file left in checks/, capstone/ or learn/ moves to .practice/upgrade-kept/), and your saved progress stays where it is, so npm run learn opens where you left off. Run checks from project/ now: cd project, then npm run check -- b-1. Review the change with git status, then commit it.
Pip works beside you. He cheers your wins, and the help gets lighter as you get the hang of each skill, until you do it on your own.
Every page, by level
Beginner: Level index · Install, sign in and look around · Permission modes and plan mode · Your first change, from request to commit · Keep a session on track · Project memory with CLAUDE.md · Capstone
Beginner Electives: IDE extensions · Screenshots and images · The built-in teachers
Intermediate: Level index · Turn a repeated workflow into a skill · Organize project memory and see what loaded · Pick the model and effort · Permissions, settings scopes and the sandbox · Enforce a rule with a hook · Delegate to a custom subagent · Connect a tool with MCP · Install and manage plugins · Capstone
Intermediate Electives: Skill patterns · Claude in Chrome · The status line · Fast mode
Advanced: Level index · Parallel sessions with worktrees · Choose an orchestration pattern · Run and save a dynamic workflow · Script Claude Code with claude -p · GitHub Actions · Share your setup with a team · Put bounds on autonomous runs · Capstone · Beyond this guide
Advanced Electives: Agent teams · Agent view · /loop and cloud scheduled tasks · Testing and publishing a plugin · Dev containers
Topics: All topics · Permissions and safety · Memory and context · Models, effort and cost · Skills · Hooks · Subagents and parallel work · MCP · Plugins · Automation
Reference: Reference index · Models and effort · Commands by level · Feature map · Further learning · Glossary · Changelog
Examples: How to use the examples
How the guide stays current
- Every lesson page carries a Stamp: the Claude Code
stableversion its claims were checked against, and the date (The stamp). - The checks are tested too: CI builds a fresh practice copy from this repo and shows every check failing on it and passing after a full replay of the lessons (Guide checks).
- Scheduled checks keep watch between editions: external links and new
stablereleases weekly, and expiry markers daily. Each opens a tracking issue (Maintainer routine). - The examples are inert until you copy them into a project, and they follow a safety contract: local only (apart from the MCP lesson's pinned server), least privilege, and a smoke test that runs without Claude.
Found something stale? Report it with a source. Stuck on a lesson? Use the link at the bottom of that lesson. Independent community guide, not affiliated with or endorsed by Anthropic.
If Claude Code Quest helped you, a star helps other learners find it.
PolyForm Noncommercial License 1.0.0 · Contributing · Changelog · Security
Followed a link from an earlier edition?
The previous edition's README sections moved:
- SDLC, what LLMs and Claude Code are, setup, install, sign-in and your first prompt: moved to Install, sign in and look around.
- Prompt engineering, explore-plan-code-commit and test-driven work: moved to Your first change, from request to commit.
- Generating a CLAUDE.md: moved to Project memory with CLAUDE.md.
- Visual iteration with screenshots: moved to Give Claude a screenshot.
- The model lineup: moved to Models and effort.
- Effort levels: moved to Pick the model and effort.
- Commands and day-one essentials: moved to Commands by level.
- Custom slash commands and skills: moved to Turn a repeated workflow into a skill.
- The skills reference and skills in a workflow: moved to Turn a repeated workflow into a skill, which shows how to run a skill. The catalog of this repo's own skills and its workflow recipes were removed in edition v2026.10: see the CHANGELOG.
- Skills troubleshooting and best practices: moved to Skill patterns.
- Hooks: moved to Enforce a rule with a hook.
- General-purpose and specialized subagents: moved to Delegate to a custom subagent. The drop-in role prompts were removed in edition v2026.10: see the CHANGELOG.
- AI agents and running agents in parallel: moved to Choose an orchestration pattern.
- Git worktrees: moved to Parallel sessions with worktrees.
- Agent teams: moved to Agent teams.
- Dynamic workflows: moved to Run and save a dynamic workflow.
- The automation surface: moved to Feature map.
- Model Context Protocol (MCP): moved to Connect a tool with MCP.
- Fast mode: moved to Fast mode.
- The skills ecosystem: moved to Install and manage plugins. The skills ecosystem catalog was removed in edition v2026.10: see the CHANGELOG.
- MCP server lists: moved to Connect a tool with MCP. The MCP server tables were removed in edition v2026.10: see the CHANGELOG.
- Super Claude and the BMAD method: removed in edition v2026.10: listings no lesson uses. See the CHANGELOG.
- Updates and deprecations: removed in edition v2026.10: the guide's summaries of Claude Code releases. See the CHANGELOG.
- FAQ: moved to FAQ, which says where each answer went.
- References: moved to Further learning.
- Steal this setup: moved to Share your setup with a team.
- When to use what: moved to When to use what.
