Module 3: Working with ProjectsLesson 5 of 6
0%
Lesson 5ยท4 min

Plan Mode for Complex Tasks

Think through big tasks before coding

Plan Mode for Complex Tasks

For big tasks, planning first prevents wasted effort. Claude's Plan Mode helps you think before building.

When to Use Plan Mode

Use Plan Mode when:

  • Building a new feature from scratch
  • Refactoring existing code
  • Making architectural decisions
  • Tasks that touch many files
  • You're unsure about the approach

Tip

Plan Mode is like getting a quote before hiring a tradie. Review the plan, then approve the work.

Enabling Plan Mode

Terminal
> /plan
Plan mode enabled. I'll outline my approach before making changes.
> Build a user authentication system with email/password
Claude: Here's my plan for the auth system:
## ๐Ÿ“‹ Plan: User Authentication
### Phase 1: Database Schema
- [ ] Create users table (email, password_hash, created_at)
- [ ] Add sessions table for JWT tokens
### Phase 2: API Routes
- [ ] POST /api/auth/register
- [ ] POST /api/auth/login
- [ ] POST /api/auth/logout
- [ ] GET /api/auth/me
### Phase 3: Frontend Components
- [ ] LoginForm.tsx
- [ ] RegisterForm.tsx
- [ ] AuthProvider context
### Files to Create
- src/lib/auth.ts
- src/app/api/auth/[...route]/route.ts
- src/components/auth/LoginForm.tsx
- src/components/auth/RegisterForm.tsx
- src/contexts/AuthContext.tsx
### Dependencies Needed
- bcrypt (password hashing)
- jose (JWT tokens)
---
Should I proceed with this plan? You can:
- Say "proceed" to start building
- Ask me to modify the plan
- Ask questions about any part
โ–Œ

Reviewing the Plan

Before proceeding, you can:

Terminal
> Use Supabase Auth instead of custom auth
Claude: Updated plan - I'll use Supabase Auth...
> What's the security consideration for JWT tokens?
Claude: Good question. For JWTs we should...
> Add password reset functionality to the plan
Claude: Added Phase 4 - Password Reset...
โ–Œ

Proceeding with the Plan

Terminal
> Proceed
Claude: Starting Phase 1: Database Schema...
Creating src/lib/supabase/schema.sql...
[Asks for permission]
โ–Œ

Aussie Note

Plan Mode is like having a project manager. They organise the work, you give the green light! ๐Ÿ“‹

Planning Complex Features

Terminal
> /plan
> Add a complete e-commerce checkout flow for an Australian store
Claude: ## ๐Ÿ“‹ Plan: E-commerce Checkout (AU)
### Requirements Identified
- AUD currency formatting
- GST breakdown (10%)
- Australian address validation
- Shipping zones (metro/regional/remote)
- Stripe integration (AU)
### Phase 1: Cart System
...
### Phase 2: Checkout Flow
...
### Phase 3: Payment Integration
...
### Australian Compliance
- [ ] GST-inclusive pricing display
- [ ] Tax invoice generation
- [ ] ACL compliant refund policy
โ–Œ

Disabling Plan Mode

Terminal
> /plan off
Plan mode disabled. Back to immediate execution.
โ–Œ

Best Practices

  1. Use for 10+ file changes - Small edits don't need planning
  2. Review the plan - Don't just say "proceed" immediately
  3. Ask questions - Clarify anything unclear
  4. Iterate - Modify the plan until you're happy
  5. Break into phases - Approve phase by phase for big tasks

Warning

Plan Mode doesn't execute anything until you say "proceed". You can spend as long as you need refining the plan.

Key Takeaways

  • Enable with /plan
  • Claude outlines approach before coding
  • Review and modify the plan
  • Say "proceed" when ready
  • Great for complex, multi-file tasks