Aklman · Library

02 / 第二章

循环 · 计划、动手、验收.

多数人对着 Claude Code 一句接一句地聊,让它边想边改 —— 然后奇怪它为什么跑偏。它真正的用法是一个循环:先在计划模式里让它把打算怎么做讲给你听、你批准,再放它动手改文件、跑命令,最后你审那份 diff。权限模式决定它哪些能自己做、哪些要问你;checkpoint 让你随时倒回。这一章把这个「计划 → 动手 → 验收」循环讲透 —— 它是你从「自己写」过渡到「派活」的第一步,也是全书其余章节的地基。


多数人对着 Claude Code 一句接一句地聊:说一个想法,看它边想边改,不对再补一句。三十分钟后 diff 大得没法看,你也说不清它是在哪一步拐错的。问题不在模型,在没有节奏 —— 它真正的用法是一个循环:先计划,你批准;再动手,权限定自由度;最后验收,不对就倒回。这一章把这个循环装进你的手里。

I

先计划:方案没批,一个字不许改.

计划模式是循环的第一格。进入之后,Claude 只做三件事:读文件、跑只读的探索命令、写出一份「我打算怎么做」—— 在你批准这份计划之前,任何编辑都被挡在门外。1注 1Claude Code Docs · Permission modes —— 计划模式:让 Claude 调研、提方案,但不动手改源码;读文件、跑只读探索命令、写出计划,批准前编辑一律被挡。Shift+Tab 或 /plan 进入,Ctrl+G 在编辑器里直接改计划;批准时可选「手动逐个批」或切自动模式。模式表:default(只读免批)、acceptEdits(文件编辑与常见文件系统命令免批)、plan(只读)、auto(分类器盯着放行一切、拦越界)、dontAsk(只跑预批准项)、bypassPermissions(全放行,仅限隔离环境)。截至 2026-07-17。进入方式有三种:会话里按 Shift+Tab 循环切换,或在单条 prompt 前加 /plan,或启动时 claude --permission-mode plan。计划出来后别急着点头:按 Ctrl+G 能把它整份丢进你的编辑器,删掉过度设计的那段、补上它漏掉的边界情况,再让它照改好的版本动手。1注 1Claude Code Docs · Permission modes —— 计划模式:让 Claude 调研、提方案,但不动手改源码;读文件、跑只读探索命令、写出计划,批准前编辑一律被挡。Shift+Tab 或 /plan 进入,Ctrl+G 在编辑器里直接改计划;批准时可选「手动逐个批」或切自动模式。模式表:default(只读免批)、acceptEdits(文件编辑与常见文件系统命令免批)、plan(只读)、auto(分类器盯着放行一切、拦越界)、dontAsk(只跑预批准项)、bypassPermissions(全放行,仅限隔离环境)。截至 2026-07-17。 这份被你改过、批过的计划,不只是开工许可 —— 它是第 9 章验收时的基线:活交回来,diff 就对着它逐条核。所以计划请求本身值得写好:说清目标,更要说清验收标准和禁区。
提示词计划请求模板
/plan 我要做:<一句话目标>。
先读 <相关目录或文件>,把打算怎么做写成计划,包括:要改哪些文件、为什么。
验收标准:<能检验的标准,做完要能通过>。
禁区:<不许动的目录 / 不许引的依赖 / 不许做的重构>。
拿不准的地方列成问题问我,别自己猜。
/plan 我要做:给登录接口加限流。
先读 src/middleware/ 和 src/auth/,把打算怎么做写成计划,包括:要改哪些文件、为什么。
验收标准:同一 IP 一分钟内第 6 次请求返回 429,已有登录测试全部仍然通过。
禁区:不动数据库 schema,不新引限流库,用项目里已有的 Redis 客户端。
拿不准的地方列成问题问我,别自己猜。
计划也有成本,别处处开。官方的判断尺很好用:方案不确定、改动跨多个文件、代码不熟 —— 值得计划;一句话能说清那个 diff 的活,直接干2注 2Claude Code Docs · Best practices —— 推荐工作流:探索、计划、实现、提交四步;计划在方案不确定、改动跨多文件、代码不熟时最值,「如果一句话能说清那个 diff,跳过计划」。跑偏时尽早纠:Esc 打断、同一问题纠正两次仍不对就 /clear 带着教训重开。截至 2026-07-17。改个错字还要走审批,是把仪式当成了纪律。

II

再动手:权限模式定自由度.

批准计划后它开始动手,而「动手时哪些事要问你」由权限模式决定。六档从紧到松:
模式不问就能做适合
default只读操作敏感代码、刚上手
acceptEdits文件编辑 + 常见文件系统命令你事后看 diff 的日常活
plan只读操作动手前的调研
auto几乎全部,分类器在后台拦越界方向可信的长任务
dontAsk只有预批准的工具锁死的 CI 与脚本
bypassPermissions一切只在隔离容器 / VM 里用
日常的甜点位是 acceptEdits:文件随它改,你看最终 diff —— 逐个批编辑的第十次点击之后,你其实已经不在审了。要走得更远用 auto:不是全放行,而是有一个独立的分类器在每个动作前把关,拦下越权范围、生产部署、危险删除这类动作,常规工作不再弹窗。1注 1Claude Code Docs · Permission modes —— 计划模式:让 Claude 调研、提方案,但不动手改源码;读文件、跑只读探索命令、写出计划,批准前编辑一律被挡。Shift+Tab 或 /plan 进入,Ctrl+G 在编辑器里直接改计划;批准时可选「手动逐个批」或切自动模式。模式表:default(只读免批)、acceptEdits(文件编辑与常见文件系统命令免批)、plan(只读)、auto(分类器盯着放行一切、拦越界)、dontAsk(只跑预批准项)、bypassPermissions(全放行,仅限隔离环境)。截至 2026-07-17。原则一句话:信方向,就松档;信不过的那几个点,用规矩钉死 —— 怎么钉,第 7 章的 hooks。

III

随时倒回:checkpoint 是你敢放手的底气.

循环的最后一格是验收,而验收敢严,是因为错了能倒回。你每发一条 prompt,Claude Code 就自动存一个 checkpoint(会话保留最近 100 个);按两次 Esc 或输入 /rewind 打开菜单,可以只恢复对话、只恢复代码、或两者一起倒回任一节点,还能把跑偏的那段对话压成摘要腾出上下文。3注 3Claude Code Docs · Checkpointing —— 每条用户 prompt 自动创建一个 checkpoint,会话保留最近 100 个,checkpoint 随会话保存、续开后仍可倒回。Esc Esc 或 /rewind 打开菜单:恢复代码与对话、只恢复对话、只恢复代码、从此处起摘要、摘要至此处。界限写得明白:只追踪 Claude 文件编辑工具的改动,Bash 命令与外部修改不在内,「补充而非替代版本控制」。截至 2026-07-17。这改变的不只是安全感,是策略:一个激进方案,试错成本从「手工收拾残局」降到「按两下 Esc」,你就敢让它先试再说。 倒回之外还有两个更轻的纠偏动作:Esc 随时打断它、补一句再继续;同一个问题纠正两次还不对,说明上下文里已经堆满失败尝试 —— /clear 清场,把学到的教训写进新的第一句,几乎总比在旧会话里继续拉扯更快。2注 2Claude Code Docs · Best practices —— 推荐工作流:探索、计划、实现、提交四步;计划在方案不确定、改动跨多文件、代码不熟时最值,「如果一句话能说清那个 diff,跳过计划」。跑偏时尽早纠:Esc 打断、同一问题纠正两次仍不对就 /clear 带着教训重开。截至 2026-07-17。

IV

循环连起来,就是最小的派活单元.

把三格连起来看:计划,是你在定义这件活和它的验收标准;权限模式,是你在决定盯多紧;diff 加倒带,是你在收活。这正是第 1 章说的那个切换的最小版本 —— 你已经不是在写代码,是在派一件活、收一件活。后面的章节只是把这个循环放大:记忆让你不用每次重新交代(第 3 章),subagent 让循环并行开好几个(第 5 章),headless 让循环在没有你的地方转(第 8 章)。顺带一个第 10 章的预告:opusplan 模型档专为这个循环而设 —— 计划阶段用 Opus 想,执行阶段换 Sonnet 干。4注 4Claude Code Docs · Model configuration —— opusplan 模型别名:计划模式用 Opus,退出计划、进入执行切到 Sonnet。截至 2026-07-17。 动手 · 用一件真实的活跑一遍完整循环:
01

用 /plan 起手,亲手改一次计划

挑一件跨几个文件的中等改动,用上面的模板请求计划。计划出来按 Ctrl+G,至少删掉或改写其中一条 —— 感受「审方案」和「审代码」的差别。
02

切到 acceptEdits,数你被打断几次

批准计划后用 acceptEdits 放它做完,只在结尾看 diff。数一数这一轮你被问了几次 —— 那几次就是该进第 7 章 hooks 或权限规则的候选。
03

故意 /rewind 一次

随便挑一个节点倒回代码再重做,确认这条退路真的存在。敢试的底气,来自亲手验证过的退路。

先批方案,再收结果, 中间的键盘留给它.

Approve the plan, collect the result — leave the keys in between to it.

Aklman Library

讨论

讨论.

评论区初始化中…