谋定而后动:Claude Code 的 /plan 与 /task 深度实战指南
一、/plan:动手前的“沙盘推演”
1. 核心理念
/plan 强制 Claude 只思考不行动。它会生成一份详细的执行计划,但在你明确批准之前,不会修改任何一个文件、不会执行任何一条命令。它解决的是 AI 代理最大的信任问题:“你怎么知道它不会乱来?”
2. 触发方式与基础示例
直接在交互会话中输入:
/plan 将 user 表的密码字段从 MD5 迁移到 bcrypt,保留向后兼容
Claude 会返回类似:
## Plan: Migrate password hashing from MD5 to bcrypt 1. 分析现有代码库中引用 `user.password` 的所有位置。 2. 设计一个兼容层:添加 `password_hash` 字段和 `password_version` 标记。 3. 编写数据迁移脚本,使用事务批量更新。 4. 修改认证逻辑,优先用 bcrypt 验证,失败时回退 MD5 并自动升级哈希。 5. 更新相关单元测试和集成测试。 6. 生成回滚方案。 --- 我会停在这里,等你确认或修改计划。
3. 高阶使用技巧
技巧一:指定计划的详细程度
默认计划可能比较概括。你可以要求:
-
“给出每一步需要执行的 Shell 命令”
-
“以表格形式列出每个步骤的风险等级和预估耗时”
-
“用 Mermaid 流程图展示步骤依赖关系”
技巧二:约束计划的边界
在 /plan 之后加上严格限制,防止范围蔓延:
/plan 优化首页加载速度,只涉及前端代码,不要动后端 API,不引入新的第三方库
技巧三:多方案对比
让 Claude 产出两到三个可选方案,并附上优缺点:
/plan 实现用户通知系统,给我两个方案:轮询 vs WebSocket,并列出各自的优缺点和适用场景
你可以根据输出的对比进行决策,然后锁定一个方案继续。
技巧四:结合 /task 批量导入
计划生成后,可以直接说“将上述计划分解成任务并导入 /task 列表”,Claude 会自动执行 /task add 命令,将计划条目转化为可追踪的任务。
技巧五:用于学习与技术评估
即使你最终不打算让 Claude 动手,/plan 也是极佳的免费技术顾问。例如:
/plan 为这个开源项目设计一个基于 Redis 的分布式锁,给出接口设计和竞态条件处理方式
这能快速获得一份高质量的技术方案草稿。
4. /plan 的安全机制
-
绝不自动执行:即使你的指令中含有“然后执行”,
/plan仍会停在计划阶段。 -
可中断审查:你可以逐条批准,也可以一次全部批准。批准后 Claude 才会开始真正的文件操作。
-
计划版本化:如果你多次调整计划,每版计划都保留在对话历史中,可随时回溯。
二、/task:把大目标拆成“待办清单”
1. 核心逻辑
/task 将复杂需求拆解为有明确状态的子任务(todo / in_progress / done),让 Claude 按清单逐项执行并汇报进度。它把开放式对话变成了项目管理的敏捷看板。
2. 完整的子命令集
| 子命令 | 效果 | 示例 |
|---|---|---|
add |
创建新任务 | /task add "编写 user 模块单元测试" |
list |
列出所有任务及状态 | /task list |
start |
开始执行指定编号的任务 | /task start 2 |
done |
标记任务为完成 | /task done 2 |
remove |
删除某个任务 | /task remove 3 |
clear |
清空所有任务 | /task clear |
3. 实战流演示
场景:将单体应用中的认证模块拆分为微服务
第一步,先用 /plan 生成宏观路径,确认无误后让 Claude 直接导入:
/task add "分析现有认证模块的所有接口和依赖" /task add "设计新服务的 API 契约(OpenAPI 规范)" /task add "编写数据库迁移脚本(用户与权限表)" /task add "实现新认证服务核心逻辑" /task add "改造旧单体应用,通过 HTTP 调用新服务" /task add "编写端到端集成测试" /task add "生成迁移文档与部署清单"
第二步,开始逐项推进:
/task start 1
Claude 会自动进入执行模式,完成后标记 done,并提示下一个任务。
第三步,随时查看全局进度:
/task list
输出类似:
[1] 分析现有认证模块的所有接口和依赖 - done [2] 设计新服务的 API 契约 - in_progress [3] 编写数据库迁移脚本 - todo ...
4. 高阶用法
并行任务支持
如果任务之间没有依赖,你可以直接说“任务 3 和 4 没有依赖,同时执行”。Claude Code 会根据依赖关系智能调度。
插入紧急任务
即使已有任务清单,你也可以随时 /task add 插入一个紧急需求,然后立刻 /task start 对应编号。清单会动态调整,不会丢失原有进度。
任务备注与细化
在创建任务时附加更多上下文:
/task add "处理 OAuth2 刷新令牌逻辑,需兼容 Google 和 GitHub 两种 Provider,注意 PKCE 流程"
Claude 在执行时会记住这些约束。
与 /state 联动/state 会直接显示当前激活的任务和计划步数,是 /task 的天然搭档。你甚至不需要频繁敲 /task list。
三、两者组合的黄金工作流
/plan 负责 “对的事”,/task 负责 “把事情做对”。推荐的标准流程是:
-
需求阶段:用自然语言描述目标,让 Claude 用
/plan输出 2-3 版可选方案。 -
决策对齐:选择方案,微调步骤,与团队或自己确认边界和风险。
-
任务拆解:命令“把最终计划转化为
/task条目”,自动导入。 -
执行监控:
/task start 1,配合/state、/cost全程把控。 -
收尾归档:全部完成后,用
/save将整个规划与执行过程存为一篇高质量的技术实施文档。
一句话总结:/plan 是事前思考的沙盘,让 AI 先交答卷再行动;/task 是事中执行的清单,让复杂工程变得有序、透明、可交付。两者结合,你便拥有了一个既会思考又能干活的 AI 工程师。

更多推荐
所有评论(0)