DaleSchool

Solving Complex Problems

Advanced20min

Learning Objectives

  • Understand the difference between Plan mode and normal mode
  • Use Plan mode for complex tasks
  • Improve Claude's reasoning quality with Think mode

Working Code

Let's tackle a complex task with Plan mode. Press Shift+Tab to switch to Plan mode:

[Plan mode]
> Create a plan to migrate this Express app to NestJS.

Claude only presents a plan without changing any code:

Migration Plan:

Step 1: Set up NestJS project structure
  - Add @nestjs/core, @nestjs/common, etc.
  - Create module/controller/service directory structure

Step 2: Convert routes to controllers
  - GET /api/users → UsersController.findAll()
  - POST /api/users → UsersController.create()
  ...

Step 3: Convert middleware to Guards/Interceptors
  ...

If the plan looks good, switch back to normal mode (Shift+Tab):

> Execute step 1 of the plan above

Try It Yourself

Try Think mode. Include "think" in your prompt to make Claude reason more deeply:

> Analyze the performance bottleneck in this code. Think about it carefully (think).
> @src/api/search.ts

For stronger reasoning:

> Analyze the problems in this architecture and suggest improvements.
> Think about it very carefully (think hard).
> @src/

Compare the depth between a normal response and a Think mode response.

"Why?" — Think Before You Act

Jumping straight into execution on complex tasks can send things in the wrong direction. Plan mode is a safe space for planning without touching code.

Plan Mode vs Normal Mode

| Aspect | Plan Mode | Normal Mode | | ----------------- | ----------- | ----------------- | | File editing | Not allowed | Allowed | | Command execution | Not allowed | Allowed | | Analysis/planning | Optimized | Execution-focused | | How to switch | Shift+Tab | Shift+Tab |

Think Mode Intensity

| Prompt | Intensity | Use Case | | -------------- | --------- | ------------------------------------- | | "think" | Basic | General analysis | | "think hard" | Enhanced | Complex architecture decisions | | "think harder" | Maximum | Subtle bugs, performance optimization |

When to Use Plan Mode

  • Architecture changes (framework migration, structural redesign)
  • Uncertain direction (multiple possible approaches)
  • Impact analysis before large-scale refactoring
  • Tech stack selection (comparing pros and cons)

Deep Dive

Can you save plans from Plan mode?

Plans from Plan mode are part of the conversation history, so /compact may summarize them away. For important plans:

  1. Ask Claude to "save this plan as a PLAN.md file."
  2. Or switch to normal mode and create a plan file.

Saving plans as files lets you reference them in future sessions.

  1. In Plan mode, create an architecture improvement plan for your project.
  2. Ask the same question in normal mode and "think hard" mode — compare the depth of responses.
  3. Pick one step from the plan and execute it in normal mode.

Q1. What can Claude Code NOT do in Plan mode?

  • A) Code analysis
  • B) File modification
  • C) Architecture explanation
  • D) Migration planning

Further Reading