Logo Vincent
返回文章列表

Claude Code /plan 详解:先想清楚再动手

Claude
Claude Code /plan 详解:先想清楚再动手

为什么需要 /plan

用 Claude Code 做开发,最怕的不是 Claude 写不出代码,而是它写了一堆代码,方向却是错的。

一个涉及十几个文件的重构任务,Claude 二话不说就开始改。改到一半你发现思路不对,但文件已经被改了七八个了。回退?代价太大。继续?越改越乱。

还有一种场景:你想让 Claude 帮你理一理代码架构,看看哪里可以优化。但你一开口,它就开始动手改代码了——你只是想聊聊方案,还没说开始呢。

问题的根源是:Claude 默认就是”干活模式”,不会先停下来想一想。

这时候你需要 /plan

/plan 是什么

/plan 是 Claude Code 的只读规划模式。进入这��模式后,Claude 只能读代码、搜代码、分析代码,但不能写文件、不能改代码、不能执行命令

在交互模式下输入:

/plan

或者按两次 Shift+Tab,底部状态栏会显示 ⏸ plan mode on,表示已进入规划模式。

在这个模式下,Claude 会:

  • 分析代码库:阅读文件、搜索关键字、理解项目结构
  • 制定实施方案:把方案写成 Markdown 文件,保存到计划目录
  • 等待你确认:方案确认后才退出规划模式,开始执行

简单说,/plan 回答的是一个问题:该怎么做,而不是直接去做。

如何进入和退出 Plan Mode

进入 Plan Mode 有三种方式:

方式一:Shift+Tab 快捷键

在 Claude Code 交互界面中:

  • 第一次按 Shift+Tab:进入自动接受模式(⏵⏵ accept edits on
  • 第二次按 Shift+Tab:进入规划模式(⏸ plan mode on

方式二:/plan 命令

直接输入斜杠命令:

/plan

效果和快捷键一样,适合记不住快捷键的时候用。

方式三:启动参数

启动 Claude Code 时直接进入规划模式:

claude --permission-mode plan

也可以在无头模式下使用:

claude --permission-mode plan -p "分析认证系统,给出优化建议"

如何退出

再按一次 Shift+Tab 即可退出规划模式。退出时,Claude 会额外确认一次接下来要执行的任务——这是一个安全机制,确保你真的准备好了再动手。

Plan Mode 工作流 —— 先规划后执行的完整生命周期

Plan Mode 可用的工具

规划模式的核心原则是只读不写。以下是工具的可用情况:

可用工具(只读类)

工具作用
Read读取文件内容
Glob按模式搜索文件
Grep搜索文件内容
WebSearch搜索网络信息
WebFetch获取网页内容
TodoWrite管理任务列表
Agent派出子 Agent 做调研

被禁用的工具(写入类)

工具原因
Edit不能编辑文件
Write不能创建文件
Bash不能执行命令
NotebookEdit不能修改 Notebook

为什么要这么设计? 因为规划阶段就不应该有任何副作用。你让 Claude 分析问题、制定方案,它就只做这件事。想清楚了,确认了,退出规划模式再执行。

Plan Mode 工具权限 —— 规划模式下可用和禁用的工具对比

计划文件的存储与管理

Plan Mode 生成的方案不是一次性的——它会被保存成 Markdown 文件,持久化存储。

默认存储位置

计划文件默认存在:

~/.claude/plans/

文件名是随机生成的,比如 dreamy-orbiting-quokka.md。每个文件就是一份完整的实施方案。

计划文件的特点

  • 跨会话持久化:关闭 Claude Code 再打开,计划文件还在
  • 不受上下文压缩影响:即使对话被压缩,计划文件也不会丢失
  • 可人工编辑:你可以直接打开 Markdown 文件,加批注、改方案

自定义存储目录

如果你想把计划文件放进项目仓库,方便团队协作和版本管理,可以在 settings.json 里配置:

{
  "plansDirectory": "./plans"
}

这样计划文件会保存在项目根目录的 plans/ 文件夹下,可以:

  • 提 PR 时附带方案:团队成员在代码审查前先看方案
  • 跨会话保留批注:不依赖上下文压缩,批注永远在
  • 多人协作编辑:把计划文件当作活的技术文档

实际使用场景

场景一:大型重构前的规划

要重构认证系统,涉及十几个文件。先进规划模式让 Claude 理清楚:

/plan
重构认证系统,从 session 迁移到 JWT,列出需要改动的所有文件和步骤

Claude 会读遍相关代码,输出一份详细的实施方案:哪些文件要改、改什么、先后顺序是什么。你确认方案没问题,再退出规划模式开始执行。

场景二:代码审计与架构分析

不想改代码,只想让 Claude 帮你看看代码质量:

/plan
分析项目的错误处理模式,找出不一致的地方,给出改进建议

Plan Mode 天然适合这种场景——只读分析,输出报告,不碰任何代码。

场景三:多人协作的方案对齐

团队要做一个大功能,先让 Claude 出方案,存进项目仓库:

{
  "plansDirectory": "./plans"
}
/plan
设计消息推送功能的技术方案,包括架构选型、数据模型、API 设计

方案生成后,团队成员可以在 Markdown 文件上直接加批注,多轮迭代,达成共识后再动手。

场景四:不熟悉的代码库快速上手

接手一个陌生项目,先用 Plan Mode 让 Claude 帮你摸清全貌:

/plan
分析这个项目的整体架构,核心模块有哪些,数据流是怎么走的

Claude 会系统地阅读代码、搜索关键文件,给你一份项目全景图。比你自己翻代码效率高得多。

实用技巧

技巧一:善用 Opus Plan Mode

/model 命令中选择第 4 项:「Use Opus in plan mode, Sonnet 4.6 otherwise」。这样规划阶段用 Opus(更强的推理能力),执行阶段用 Sonnet(更快的速度)。想的时候用大脑,干的时候用手速。

技巧二:把计划文件放进仓库

配置 plansDirectory 为项目相对路径,让计划文件跟着代码走。好处是方案可以提 PR 审查、可以 Git 追踪变更历史、可以多人批注迭代。

技巧三:多轮迭代批注

计划文件生成后不要急着确认。打开 Markdown 文件,在你觉得不对的地方加批注,然后让 Claude 根据批注更新方案。三轮迭代下来,一个泛泛的方案就能变成完全贴合项目的实施计划。

技巧四:注意 7 文件法则

经验表明,涉及 7 个以上文件的计划,执行质量会下降。因为上下文窗口在执行阶段会被大量代码填满。如果方案涉及太多文件,考虑拆分成多个小计划分步执行。

写在最后

/plan 解决的问题很简单:让 Claude 先想清楚再动手。

用 Claude Code 做开发,最大的效率杀手不是 Claude 写代码慢,而是方向错了要返工。一个复杂任务,如果一上来就让 Claude 开干,改到一半发现不对,前面的工作全白费。

先进规划模式,让 Claude 把代码读透、方案理清、你确认没问题再开始。慢就是快,想清楚就是最大的效率。

一个命令,让每次改动都心中有数。

相关推荐

AI-first 创业公司,为什么只需要一种编程语言?

技术架构越简单 = AI Coding 效率越高。从 Java 的"防人"设计到 TypeScript 全栈通吃,聊聊 AI 时代创业公司的编程语言选择。

cc-ping:一行命令 Ping 所有 Claude Code 配置

用多个 Claude Code API Key 或中继?cc-ping 帮你管理配置、一键切换,还能并行 Ping 所有节点比速度。

震惊!程序员用这个工具,4分钟干完95分钟的活!效率暴涨24倍

躺床上发3条消息,4分钟搞定3个项目。传统方式需要95分钟,这就是冷兵器和热兵器的差距。

CCBot - 研发提效 24 倍

通过 IM 机器人控制 Claude Code,3 个项目 4 分钟全部搞定。传统编程需要 95 分钟,效率提升 24 倍。

Claude Code /add-dir:被低估的 Monorepo 神器

Claude Code 默认只能看到当前目录。/add-dir 打破这个限制——分享我每天跨 5 个仓库使用的经验。

Claude Code 省 Token 小技巧:感叹号的妙用

一个简单却容易被忽略的技巧——用感叹号直接执行命令,省 token、提速度、更可控。

我做了个机器人,让团队在飞书里用 Claude Code

CCBot 让你的团队在飞书群聊里直接用 Claude Code——不需要终端、不需要 SSH。开源、自部署、五分钟搞定。

Claude Code /btw 命令详解:不打扰主线的快问快答

详细介绍 Claude Code 的 /btw 命令——它是什么、怎么用、什么时候该用,以及它和子代理、/compact 的区别。

Claude Code /compact:释放上下文,不丢进度

任务做到一半上下文满了?/compact 帮你压缩对话继续干活——和 /clear、/rewind 的区别一次讲清。

Claude Code /config:一文搞懂所有可调设置

用 Claude Code 却从没打开过 /config?这篇带你逐项拆解——从权限模式到自动压缩,从主题切换到通知配置,帮你打造最顺手的 AI 编程环境。

Claude Code /context:你的上下文都被什么吃了?

对话到一半 Claude Code 说上下文不够了?/context 用一张可视化网格告诉你:上下文被什么占了、占了多少、怎么优化。

Claude Code /diff:这次对话改了什么,一目了然

Claude Code 帮你改了一堆文件,但你不确定到底改了什么?/diff 用交互式界面展示所有改动——既有 git 视角的全量 diff,也有按对话轮次拆分的逐步 diff。

Claude Code /fast:同样的 Opus,两倍速——值不值?

/fast 不会降级模型,还是 Opus,只是更快。什么时候该开、什么时候该关,以及实际体验差异。

Claude Code 引用外部知识的最佳实践:GitHub MCP + Context7

用 GitHub MCP 和 Context7 MCP 两个工具组合,解决 Claude Code 知识过时导致的代码错误问题。

Claude Code /hooks:让 AI 按你的规矩办事

想在 Claude Code 执行命令前自动检查?想在任务完成后自动通知?/hooks 让你用脚本、AI 甚至 HTTP 请求,在关键节点插入自定义逻辑。

Claude Code /init:10 秒自动生成 CLAUDE.md

别再手写 CLAUDE.md 了。看看 /init 自动生成的效果、怎么自定义输出,以及一个让 Claude Code 效率翻倍的小技巧。

Claude Code MCP:让 AI 连接 GitHub、数据库等一切工具

MCP 把 Claude Code 从代码阅读器升级为全栈 Agent。哪些 MCP 服务器值得装、配置怎么写,实测分享。

Claude Code /memory 详解:让 AI 真正记住你的项目

详细介绍 Claude Code 的 /memory 命令和记忆系统——CLAUDE.md 手动指令、Auto Memory 自动记忆、模块化规则,让 Claude 跨会话记住项目规范和个人偏好。

Claude Code /model:Opus、Sonnet、Haiku 怎么选?

不是每个任务都需要 Opus。怎么切换模型、哪个场景用哪个、怎么省 token 又不掉质量。

Claude Code /permissions:谁能干什么,你说了算

每次 Claude Code 要跑命令都弹窗问你?嫌烦又不敢全放开?/permissions 帮你精细控制每个工具的权限——该放的放,该拦的拦。

Claude Code + Playwright MCP:AI 终于能"看见"页面了

一个 Modal 溢出的 bug,Claude Code 反复修了 5 次都没搞定。直到接入 Playwright MCP 让它真正看到页面,一次定位,一次修复。

Claude Code /resume 命令详解:别让对话白聊

详细介绍 Claude Code 的 /resume 命令——恢复历史对话、管理会话、实用技巧,让你的每一轮对话都不浪费。

Claude Code /review:让 AI 帮你做 Code Review

提了 PR 没人看?想在合并前多一道把关?/review 让 Claude Code 像一个资深开发者一样审查你的代码——还有 /ultrareview 和 /security-review 两个进阶选择。

Claude Code Skills 详解:打造你的专属命令库

详细介绍 Claude Code 的 Skills 功能——创建自定义斜杠命令、复用提示词模板、共享团队最佳实践,让 AI 编程更高效更一致。

Claude Code /stats:看看 AI 到底帮你写了多少代码

好奇 Claude Code 到底写了多少行代码?/stats 给你完整数据——token、编辑次数、工具调用,教你怎么看。

Claude Code /status 命令详解:一眼看清会话全貌

详细介绍 Claude Code 的 /status 命令——它是什么、怎么用、能看到哪些信息,以及它在日常工作流中的实际价值。

Claude Code /tasks 命令详解:后台任务尽在掌控

详细介绍 Claude Code 的 /tasks 命令——查看后台任务、管理并行 Agent、掌控长时间运行的进程,让多任务开发井井有条。

Claude Code /usage 命令详解:你的额度还剩多少

详细介绍 Claude Code 的 /usage 命令——查看用量、了解限额、避免突然被限速,让你对自己的额度心中有数。

Claude Code /vim:在 AI 编程助手里用 Vim 键位

习惯了 Vim 的操作方式?/vim 让你在 Claude Code 的输入框里用 hjkl 移动、dd 删行、ciw 替换单词——不用改变肌肉记忆。

Claude Code 使用指南:从安装到实战,一篇就够(2026)

用了半年 Claude Code 的经验总结——5 分钟安装配置、最常用的命令、CLAUDE.md 编写技巧,以及没人告诉你的实战心得。

Claude 全家桶:从聊天到写代码到自动办公,一文讲清楚

一篇文章带你了解 Anthropic 的 Claude 全家桶——Claude.ai、Claude Code、Claude Cowork,以及 Opus、Sonnet、Haiku 三大模型家族。

Claude Code /agents 详解:自定义 AI 子代理,各司其职

详细介绍 Claude Code 的 /agents 命令——查看、管理和创建自定义 Agent,让不同任务由专门的 AI 角色来执行,从代码探索到架构规划各司其职。

Claude Code /doctor 详解:一键诊断你的开发环境

详细介绍 Claude Code 的 /doctor 命令——自动检测安装状态、API 连接、MCP 配置、上下文用量等问题,帮你快速定位和修复环境故障。

Claude Code /effort 详解:控制 AI 思考的深度

详细介绍 Claude Code 的 /effort 命令——调节 Claude 的推理努力程度,在速度和质量之间找到最佳平衡点,让每一次对话都恰到好处。

Claude Code /cost 详解:你的 AI 编程到底花了多少钱

详细介绍 Claude Code 的 /cost 命令——实时查看会话 API 成本,了解各模型定价和 Token 消耗明细,让每一分钱都花得明明白白。

Claude Code /export 详解:把 AI 对话带走

详细介绍 Claude Code 的 /export 命令——将对话导出为文件或复制到剪贴板,方便分享、存档和复盘,让每一次有价值的对话都不浪费。

Claude Code /rewind 详解:AI 改错了?一键回退

详细介绍 Claude Code 的 /rewind 命令——将代码和对话回退到任意历史节点,支持只回退代码、只回退对话、或两者同时回退,是你和 AI 协作时的后悔药。

Claude Code /plugin 详解:给你的 AI 编程助手装插件

详细介绍 Claude Code 的 /plugin 命令——管理插件的安装、启用、禁用和更新,通过插件扩展 Claude Code 的命令、技能、Agent 和 Hook,打造你专属的 AI 编程工具链。

Claude Code /theme 详解:给你的终端换个好看的皮肤

详细介绍 Claude Code 的 /theme 命令——6 种预设主题 + 自动模式,支持深色/浅色、色盲友好、ANSI 兼容,60+ 色值覆盖终端全部 UI 元素。

Claude Code /insights 详解:用 AI 分析你自己用 AI 的方式

详细介绍 Claude Code 的 /insights 命令——五阶段数据分析流水线、七大洞察章节、多维度会话统计,用 Claude Opus 生成专属 HTML 使用报告。

Claude Code /rename 详解:给你的会话取个有意义的名字

详细介绍 Claude Code 的 /rename 命令——手动命名、AI 自动生成(Haiku 模型)、启动参数命名、Plan 模式自动命名,以及双标题系统与 Bridge 同步机制。

Claude Code settings.json 配置详解:5 层优先级、3 种文件路径,一篇搞懂

Claude Code 的 settings.json 到底放哪里?用户级、项目级、本地级有什么区别?什么是 managed-settings.json?一篇讲清 5 层配置的优先级规则、合并逻辑和实际使用场景。

Claude Code settings.json 详解(二):permissions 权限系统全解析

深入解析 Claude Code 的 permissions 配置——allow/deny/ask 三类规则、通配符语法、MCP 工具权限、defaultMode 各模式含义,以及 additionalDirectories 的作用。

Claude Code settings.json 详解(三):hooks 钩子全解析

深入解析 Claude Code 的 hooks 配置——四种钩子类型、核心事件(PreToolUse/PostToolUse/Stop/Notification)、stdin/stdout 协议、exit code 语义,以及实用配置示例。

Claude Code settings.json 配置模板:env、模型、认证等实用字段速查

Claude Code settings.json 常用字段速查表:env 环境变量、模型切换、apiKeyHelper 动态认证、Git 署名、思考深度、语言与界面、自动更新等,附可直接复制的配置示例。

Claude Code Agent Loop:拆解 AI 编程助手的心脏

Claude Code 是怎么一步步理解你的需求、调用工具、自我修复的?从源码角度拆解 Agent Loop 的核心架构——流式响应、并行工具执行、自动压缩、错误恢复,一次讲透。

© 2026 vincentqiao.com . 保留所有权利。