The permission modes
Until now we’ve talked as if every action gets a prompt. That’s only one mode — the default. There are several, and each one moves a slider between speed and safety in a different direction. Four of them cover almost everything you’ll actually do.
The four that matter most
1. Default (ask). Every action that changes the world gets a prompt. This is where you started. It’s the right mode for unfamiliar work, unfamiliar codebases, anything you’d be sorry to redo.
2. Accept edits. Claude can edit files without asking, but still asks before running commands or hitting the network. Useful when you’re refactoring or doing a long edit-heavy session and you trust your git status to be the safety net. The prompts on commands and network calls still fire.
3. Plan mode. Claude can read and explore all it wants, but it can’t change anything — no edits, no commands that touch your system. All it hands back is a proposed plan. Useful at the start of a big task: get the plan right on paper, then drop into a more permissive mode to execute. (Level 7 lives here.)
4. Bypass permissions (“YOLO” mode). Every prompt is auto-approved. Claude does whatever it decides to do. This exists for specific contexts — a throwaway container, a sandbox, a CI job — and is dangerous everywhere else. Treat it like driving without a seatbelt: you might survive, you might not.
Those four are the ones you’ll cycle between. Claude Code also has a couple of newer modes built for power users and unattended runs:
- Auto mode — Claude works without prompts, but a separate safety check vets every action first and blocks the genuinely dangerous ones (a deploy, a force-push, code piped off the internet). Think bypass with a seatbelt. It has some account and model requirements, so it isn’t always available.
- Don’t-ask mode — the mirror image: it auto-denies anything you haven’t pre-approved. Built for locked-down automation like CI, where you spell out exactly what Claude may do (you’ll meet that world in Level 11).
You don’t need either one yet — just know the list runs to more than four.
How to choose
The rule is short:
Pick the slowest mode you can tolerate for the task in front of you.
Not the fastest mode you can get away with. The slowest one that doesn’t drive you crazy. The slower mode catches more of Claude’s mistakes; the faster mode trades that catch rate for momentum. Most of the time, the catch rate is worth more than the momentum.
A rough field guide:
| Situation | Mode |
|---|---|
| New repo, new task, unfamiliar code | Default |
| Long refactor, you trust your tests | Accept edits |
| Starting a multi-step task you don’t fully understand yet | Plan |
| Throwaway sandbox or a Claude job running unattended in CI | Bypass |
| Production code, anything shared, anything with money attached | Default |
The pull of the fast mode
Bypass mode feels great for about three minutes. It’s why people reach for it, and it’s why most of the bad Claude stories start with someone in bypass mode in the wrong directory.
If you find yourself reaching for it because the prompts are noisy, the next lesson has a better fix: instead of disabling all the prompts, disable only the boring ones.
What’s next
Modes are the broad lever. There’s also a precise lever — telling Claude exactly which boring commands it can run without ever asking. That’s the next lesson, and it’s the one that pays off forever.