Use Plan Mode for Complex Tasks
For large features or refactors, use plan mode to get Claude to think before it acts. Press Shift+Tab to toggle plan mode, or type /plan.
In plan mode, Claude operates with read-only tools — it can explore your codebase, read files, and research the problem space, but it won't write or modify anything until you give the go-ahead.
This is especially useful when building a new feature that touches multiple files, refactoring architecture, or when you want to review the approach before any code is written.
"I need to add two-factor authentication to the settings page.
Go into plan mode and figure out the best approach first."
Claude will explore the relevant files and lay out its proposed approach directly in the conversation. You can then discuss, refine, or redirect the plan before committing to anything.
Once you're happy with the direction, toggle plan mode off with Shift+Tab and Claude will begin implementing.
# A practical workflow
1. Describe a complex task
2. Shift+Tab → Claude explores and proposes an approach
3. Ask questions, push back, refine the plan in conversation
4. Shift+Tab again → Claude executes with confidence
Plan mode is where you catch misunderstandings — before they become messy diffs.
Log in to leave a comment.
Set up Claude Code as an automated reviewer in your CI pipeline — on every pull request, it reads the diff, checks for bugs, security issues, missing tests, and convention violations, then posts its findings as a PR comment. Your human reviewers get a head start because the obvious issues are already flagged before they look.
Before deploying, tell Claude to read your project — migrations, environment variables, queue workers, scheduled tasks, caching, third-party integrations — and generate a deployment checklist that's specific to your app. Not a generic "did you run migrations?" list, but one that knows YOUR infrastructure and catches the things YOUR deploy can break.
Instead of writing a README from memory or copying a template, tell Claude to read your project and generate one that's actually accurate — real setup instructions from your config, real architecture from your directory structure, real API examples from your routes, and real prerequisites from your dependency files.