Guide: Which Mode to Use
After using Claude Code for months, these are the rules I follow to choose the right mode without thinking.
The Decision Flowchart
┌─────────────────────────────────────────────────────┐
│ What type of task are you doing? │
└─────────────────────────────────────────────────────┘
│
┌──────────────┼──────────────┐
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ EXPLORE │ │ EXECUTE │ │ PLAN │
│ DEBUG │ │ FEATURE │ │ REFACTOR │
└──────────┘ └──────────┘ └──────────┘
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ DEFAULT │ │ AUTO │ │ PLAN │
│ MODE │ │ MODE │ │ MODE │
└──────────┘ └──────────┘ └──────────┘
Simple Rules
Use DEFAULT Mode When:
| Situation | Why |
|---|---|
| Debugging an error | You need to see each step |
| Exploring new code | You want to understand before changing |
| Asking about code | It won't modify anything |
| Quick fix (1-2 files) | Full control over changes |
| You're not sure what to do | Start conservative |
Summary: When you want CONTROL step by step.
Use AUTO Mode When:
| Situation | Why |
|---|---|
| Clear new feature | Defined scope, let it work |
| Repetitive boilerplate | Don't need to approve each file |
| Simple refactors | Rename, move files |
| You have a feature branch | Easy to revert |
| Test generation | Tests are safe to generate |
Summary: When you want SPEED and scope is clear.
Use PLAN Mode When:
| Situation | Why |
|---|---|
| Complex feature | Need a plan before coding |
| Change touches many files | Want to see scope first |
| Don't know how to implement | Claude proposes options |
| Architecture decisions | Evaluate before committing |
| New PRD or requirements | Plan the implementation |
Summary: When you want STRATEGY before action.
Quick Reference Table
| Task | Mode | Reason |
|---|---|---|
| "Why is this test failing?" | Default | Exploration |
| "Fix the login bug" | Default | Quick fix |
| "Create a new Button component" | Auto | Clear feature |
| "Add tests for all utils" | Auto | Boilerplate |
| "Refactor the auth module" | Plan | Big change |
| "Implement new checkout" | Plan | Complex feature |
| "What does this function do?" | Default | Question |
| "Rename User to Account everywhere" | Auto | Simple refactor |
| "Update dependencies" | Default | Risk of breaking |
| "Create the products API" | Plan | Multiple files |
Common Mistakes by Mode
Default Mode Mistakes
Error: Approving every change without reading.
Consequence: Bugs slip through that you would have caught.
Solution: If you're going to approve everything without reading, better to use Auto mode with a branch.
Auto Mode Mistakes
Error: Using it on main or without a branch.
Consequence: Changes you can't easily revert.
Solution: ALWAYS git checkout -b feature/x before Auto mode.
Plan Mode Mistakes
Error: Not reviewing the plan before executing.
Consequence: Claude implements something you didn't want.
Solution: Read the full plan. Ask questions if something isn't clear.
My Daily Workflow
# 1. Start the day, explore what needs doing
claude # Default mode
> "What issues are open?"
# 2. Pick a complex feature
> Shift+Tab # Switch to Plan mode
> "Implement the notification system per the PRD"
> [Review plan, adjust if needed]
> "Execute the plan"
# 3. Simple feature or boilerplate
git checkout -b feature/add-tests
> Shift+Tab # Switch to Auto mode
> "Add tests for all components in /components"
# 4. Bug report comes in
git checkout main
claude # Default mode
> "Login fails when email has +. Investigate and fix"Change Modes Without Restarting
Use Shift + Tab to cycle between modes without closing Claude:
Default → Auto → Plan → Default → ...
The indicator in the terminal shows you the current mode.
When I Break My Own Rules
Auto Mode for Debugging
Sometimes I use Auto mode for debugging when:
- The bug is clear and specific
- I'm on a feature branch
- I trust Claude knows how to fix it
Plan Mode for Simple Features
Sometimes I use Plan mode for simple features when:
- I want to document the decision
- I'm going to share the approach with the team
- I'm not 100% sure about the approach
The rules are guides, not laws.
Challenge: Try This
For the next week, keep a log:
| Task | Mode Used | Did it work? |
|---|---|---|
| ... | ... | Yes/No |
After 10 tasks, you'll have your own intuition for which mode to use.
Summary
- Default: Control, debugging, exploration
- Auto: Speed, clear features, boilerplate
- Plan: Strategy, complex features, architecture
When in doubt, start with Default. You can always switch.
Next Step
Now that you know which mode to use, let's dive deeper into maintaining memory between sessions with CLAUDE.md.