从 Planning 到 Auto Mode:Claude Code 推理自主性进化深度解析
坦白说,Claude Code 早已不再是那个“你说一句,它动一下”的被动执行工具。从 2025 年底到 2026 年中,它沿着一条清晰的进化路径不断升级:先规划后执行(Planning Mode)→ 云端异步规划(Ultraplan)→ 深度推理(Extended Thinking)→ 多智能体编排(Dynamic Workflows)→ 自主决策执行(Auto Mode)。

本文将串联这五大特性,帮助你全面理解 Claude Code 在“推理自主性”这一维度上的进化程度,并明确每个特性的最佳适用场景。
Permission Modes:先看全景
在深入每个特性之前,我们先建立一张全局地图。目前 Claude Code 提供 6 种 Permission Mode,它们构成了清晰的“自主性光谱”:
| Mode | 自主程度 | 行为 |
|---|---|---|
plan | ★☆☆☆☆ | 只读模式,仅分析不执行 |
default | ★★☆☆☆ | 读取文件自动放行,其他操作逐条确认 |
acceptEdits | ★★★☆☆ | 读写文件免问,执行命令需确认 |
auto | ★★★★☆ | 背景分类器自动审批,危险操作拦截 |
dontAsk | ★★★★☆ | 只执行预批准工具,其余全部拒绝 |
bypassPermissions | ★★★★★ | 全部免问(仅限沙盒) |
Shift+Tab 快速切换模式
搞懂了这条光谱,后面每个特性的故事,其实就是它们在这条光谱上找到自身定位的过程。
Planning Mode:先想再做
是什么
Planning Mode 本质上是一个两阶段流程:
Phase 1: Planning — Claude 分析任务,生成详细实施计划
Phase 2: Implementation — 你批准后,Claude 执行计划
怎么用
有三种方式可以激活它:
# 1. 键盘快捷键循环到 plan 模式
Shift+Tab
# 2. 斜杠命令
/plan
# 3. CLI 标志
claude --permission-mode plan
适用场景
Planning Mode 最适合那些你尚未决定是否要执行的探索性场景:
- Code Review:用 plan 模式让 Claude 只看不改,输出建议
- 架构探索:让 Claude 先分析可选方案,再决定走哪条路
- 团队对齐:将 Claude 生成的计划作为讨论文档
关键限制
Plan 模式下 Claude 不能编辑文件,只能读取代码、进行分析并生成计划文本。想动手就必须切换到 default 或更高自主性的模式。
Ultraplan:云端异步规划
是什么
/ultraplan 把规划任务从本地终端“甩”到 Claude Code on the Web 的云端 session。Cloud session 会在后台克隆你的仓库、研究代码并撰写计划,而你的终端可以空闲出来继续写代码。
/ultraplan migrate the auth service from sessions to JWTs
三种启动方式
| 方式 | 说明 |
|---|---|
/ultraplan | 显式调用 |
在 prompt 里写 ultraplan | Claude 自动识别并路由到云端 |
| 本地 plan 完成后选“Refine with Ultraplan” | 从本地计划升级到云端深度研究 |
状态指示器
◇ ultraplan — Claude 正在研究代码库并起草计划
◇ ultraplan needs your input — 有问题需要你在浏览器里回答
◆ ultraplan ready — 计划写好了,打开浏览器链接查看
执行路径
计划 ready 之后有两条路可以走:
路径 A: 在浏览器里点 Approve → 云端执行 → 自动开 PR
路径 B: 选 "Teleport back to terminal" → 本地执行
├── Implement here(当前 session)
├── Start new session(新 session)
└── Cancel(保存计划到文件)
什么时候用 Ultraplan 而不是本地 /plan
- 需要更好的 review 界面:浏览器支持 inline comments、emoji reactions、大纲侧边栏
- 想 hands-off:交给云端研究,你继续在终端写代码
- 需要团队 review:一个可分享的 URL 比贴终端 scrollback 好得多
限制
- 需要 GitHub repo(云端 session 要 clone 你的仓库)
- Bedrock / Vertex / Foundry 不支持
- 和 Remote Control 互斥(两者共享 claude.ai/code 界面)
Extended Thinking:让 Agent 想得更深
是什么
Extended Thinking 让 Claude 花费更多 token 在“内心推理”上——分解复杂问题、考虑多种方案、评估边界情况,然后才输出结论。
Effort Levels
这是最核心的配置维度。不同模型支持不同的 effort level:
| Effort | 图标 | 支持模型 | 说明 |
|---|---|---|---|
low | ○ | Opus 4.8/4.7/4.6, Sonnet 4.6 | 快速回答,最少推理 |
medium | ◐ | 同上 | 适度推理 |
high | ● | 同上(默认 on Opus 4.8) | 深度推理 |
xhigh | - | Opus 4.8, Opus 4.7(默认 on Opus 4.7) | 超深推理 |
max | - | Opus 4.8/4.7/4.6, Sonnet 4.6 | 最大推理预算(session-only) |
# 环境变量
export CLAUDE_CODE_EFFORT_LEVEL=high
# CLI 标志
claude --effort high "complex architectural review"
# 斜杠命令
/effort high
# 键盘快捷键
Option+T (macOS) / Alt+T (Windows/Linux) — 开关 thinking
ultrathink 关键词
在 prompt 里写 ultrathink 会激活深度推理模式:
User: ultrathink Should we use microservices or a monolith for our e-commerce platform?
ultracode:推理 + 编排
/effort → 选择 ultracode
ultracode 不是一个 effort level——它是 xhigh effort 加上自动编排 Dynamic Workflows 的组合。选择后,Claude 不仅深度思考,还会自动把复杂任务拆成多 Agent 工作流。
1M Context Window
Opus 4.8 和 Opus 4.7 拥有 1M token 的原生 context window。另一项优化(v2.1.129):/context 的 ASCII 可视化不再泄漏到对话 context 中(节省约 1.6k tokens),可以放心频繁调用。
Lean System Prompt(v2.1.154)
实践建议
| 场景 | 推荐 effort |
|---|---|
| 快速修改已知 bug | low 或 medium |
| 新功能实现 | high(默认即可) |
| 架构决策 / 系统设计 | xhigh 或 max |
| 需要多 Agent 并行的大工程 | ultracode |
Dynamic Workflows:编排多 Agent 的确定性脚本
是什么
Dynamic Workflows(v2.1.154)让 Claude 编排“几十到几百个” background subagent,以确定性脚本(fan-out、pipeline、parallel stages)而非模型即兴发挥来执行复杂任务。
单 Agent = 一个 context window
Dynamic Workflow = 把任务拆到多 Agent + 组合结果
什么时候用
- 全面覆盖:审计或 review 多个文件/维度(并行 fan-out)
- 高置信度:生成独立观点 → 对抗验证 → 再 commit
- 超出单 context 的规模:大规模迁移、广泛扫描
如何启动和查看
启动:要求 Claude 为任务创建 workflow (例如 "run a workflow to review every file in src/")
查看:/workflows — 显示运行中和已完成的 workflow,含实时进度
触发:/effort → ultracode(自动编排 workflow + xhigh thinking)
与 Subagent 的关系
Dynamic Workflows 建立在 Subagent 模型之上。每个 workflow step 本质上就是一个 scoped subagent。
和 Superpowers 的 Subagent-Driven Development 对比
| 维度 | Superpowers SDD | Claude Code Dynamic Workflows |
|---|---|---|
| 编排方式 | Coordinator prompt(模型驱动) | 确定性脚本(代码驱动) |
| Review 机制 | Spec Reviewer + Quality Reviewer | 对抗验证 |
| 适用场景 | 功能开发(spec → implement → review) | 大规模审计/迁移/并行覆盖 |
| 粒度 | 每个 task 一个 subagent | 几十到几百个 subagent |
Auto Mode:让 Agent 自己决定做不做
是什么
Auto Mode(2026 年 3 月,Research Preview)是 Claude Code 目前最高自主性的 production-safe 模式。它通过一个背景安全分类器(基于 Sonnet 4.6)来审查每个 action——批准安全的动作,拦截危险的操作。
你不需要逐条审批 → 分类器帮你审
分类器拿不准 → 退回让你人工决定
分类器决策顺序
1. Allow/deny rules — 显式权限规则优先
2. Read-only/edits auto-approved — 文件读写自动通过
3. Classifier — 背景分类器审查
4. Fallback — 连续 3 次或累计 20 次 block 后,退回人工
默认 Block 和 Allow
默认拦截的:
| 操作 | 示例 |
|---|---|
| Pipe-to-shell 安装 | curl | bash |
| 发送敏感数据 | API keys 通过网络外传 |
| 生产环境部署 | Deploy commands targeting production |
| 大规模删除 | rm -rf on large directories |
| IAM 变更 | Permission and role modifications |
| Force push to main | git push --force origin main |
默认允许的:
| 操作 | 示例 |
|---|---|
| 本地文件操作 | 读写编辑项目文件 |
| 声明式依赖安装 | npm install、pip install(from manifest) |
| 只读 HTTP | curl 获取文档 |
| Push 到当前分支 | git push origin feature-branch |
配置进化:$defaults 和 hard_deny
v2.1.118 之前——自定义规则会覆盖内置默认值:
{
"autoMode": {
"allow": ["Bash(gh pr list:*)"] // ← 这会替换掉所有内置 allow 规则!
}
}
v2.1.118 之后——用 "$defaults" token 来扩展:
{
"autoMode": {
"allow": ["$defaults", "Bash(gh pr list:*)"],
"soft_deny": ["$defaults", "Bash(kubectl delete:*)"],
"environment": ["$defaults", "trusted-ci.internal"]
}
}
v2.1.136——hard_deny 无条件拦截:
{
"autoMode": {
"hard_deny": ["Bash(rm -rf /:*)", "Bash(git push --force*)"]
}
}
hard_deny 和 soft_deny 的区别:soft_deny 可以被分类器的“推断用户意图”推翻;hard_deny 无论如何都拦截。
没有 Team Plan 的替代方案
Auto Mode 需要 Team / Enterprise / API plan。如果你使用 Pro/Max,或者就是想要类似效果,可以使用 claude-howto 提供的权限基线脚本:
# 预览(不写入)
python3 09-advanced-features/setup-auto-mode-permissions.py --dry-run
# 应用保守基线
python3 09-advanced-features/setup-auto-mode-permissions.py
# 按需扩展
python3 09-advanced-features/setup-auto-mode-permissions.py --include-edits --include-tests
python3 09-advanced-features/setup-auto-mode-permissions.py --include-git-write --include-packages
这个脚本本质上是利用 settings.json 的 allowedTools 来模拟 Auto Mode 的效果——安全操作预批准,危险操作(rm -rf、sudo、force push、DROP TABLE、terraform destroy)被有意排除。
Fallback Beha vior
连续 3 次 block → fallback 到人工审批
累计 20 次 block → fallback 到人工审批
最新版本支持(v2.1.158)
全景:推理自主性光谱
将这五个特性放到一条进化轴上:
手动确认每步←──────────────────────────→完全自主
│ │
plan default acceptEdits auto bypassPermissions
│ │ │ │
│ │ │ │
▼ ▼ ▼ ▼
Planning Planning Ultraplan Dynamic Auto Mode
Mode只读 Mode+手动 (async) Workflows (classifier)
确认执行 (orchestrate)
│ │
│ │
← Extended Thinking (调节思考深度,横跨所有模式) →
实践决策树
你的任务是什么?
│
├── "我想先看看方案,不动手" → /plan + Extended Thinking (high)
│
├── "任务复杂,要研究后再定方案" → /ultraplan(云端异步)
│
├── "方案定了,一步步执行" → default 或 acceptEdits
│
├── "大规模并行工作(审计/迁移)" → ultracode (Dynamic Workflows)
│
└── "日常开发,信任 Claude 自动处理" → auto mode + $defaults 扩展
版本变更速查
| 版本 | 变更 |
|---|---|
| v2.1.91 | Ultraplan 上线(Research Preview) |
| v2.1.101 | Ultraplan 自动创建云端环境 |
| v2.1.112 | Auto Mode 不再需要 --enable-auto-mode 标志 |
| v2.1.117 | 1M context 修复;Pro/Max effort 默认提升到 high |
| v2.1.118 | $defaults token 支持扩展规则 |
| v2.1.129 | /context 不再泄漏 ASCII viz 到 context |
| v2.1.133 | worktree.baseRef 设置 |
| v2.1.136 | autoMode.hard_deny 上线 |
| v2.1.154 | Dynamic Workflows + Lean system prompt + ultracode |
| v2.1.158 | Auto Mode 支持 Bedrock/Vertex/Foundry |
| v2.1.160 | "workflow" 关键词不再触发,改为 ultracode |
总结
Claude Code 的推理自主性在过去半年里发生了质变:
Planning Mode 让它“先想再做”——你能 review 计划再放行。Ultraplan 让规划异步化——云端研究代码,你继续工作。Extended Thinking 让它“想得更深”——effort level 从 low 到 max 的细粒度控制。Dynamic Workflows 让它“编排多 Agent 想”——几十到几百个 subagent 确定性协作。Auto Mode 让它“自己决定做不做”——背景分类器在安全和效率之间找平衡。
核心判断:不要使用 bypassPermissions,请选用 Auto Mode。前者如同拆除安全气囊,后者则是安装好安全气囊后放手让 Agent 驾驶。如果你没有 Team Plan 也想要类似效果,可以使用 setup-auto-mode-permissions.py 脚本设定权限基线。
下一篇我们将关注 Claude Code 的另一条进化线:从单线程终端工具走向多端协同自动化平台。
