Claude Code 交互模式
与网页版 Claude 不同,Claude Code 并不是一个单纯的聊天工具,而是一个具备工程上下文、权限控制和执行能力的开发协作系统。
因此,它在处理任务时,引入了三种核心的思维模式:
- Ask(询问)
- Plan(规划)
- Edit(编辑)
理解这三种模式的边界与职责,是高效、安全使用 Claude Code 的关键。
终端执行其实不用手动切换,Claude 会自动切换,在 VS Code 插件中可以手动切换模式:

三大交互模式详解
在终端中使用 Claude Code 时,你不需要手动切换模式开关,Claude 会根据你的指令内容,自动判断当前应进入哪一种模式。
不过,作为使用者,你必须在 Prompt 中清楚表达自己的意图,否则 Claude 很容易做出与你预期不一致的行为。
1、Ask 模式:只看不动(只读分析)
Ask 模式是 Claude Code 的默认安全模式。
使用场景
当你处于以下状态时,应优先使用 Ask 模式:
- 看不懂现有代码
- 刚接手一个新项目
- 想定位 Bug 的原因,但还没想好怎么修
- 想确认某段逻辑是否合理
模式特点
- Claude 可以读取代码
- 可以进行分析、解释、推理
- 绝对不会修改任何文件
- 不会执行任何 Shell 命令
你可以把 Ask 模式理解为:
一位经验丰富、但双手放在背后的高级工程师。
示例指令
解释一下 src/auth.ts 里的 JWT 验证流程
在这个项目里,数据库连接是在哪里初始化的?
这段代码为什么在高并发下可能出问题?
专业建议:
不确定要不要改代码时,一律先 Ask。
2、Plan 模式:谋定而后动(只规划,不执行)
Plan 模式是 Claude Code 中最像架构师思维的模式。
使用场景
当你面对的是复杂或影响范围较大的改动时,应该使用 Plan 模式,例如:
- 新增一个核心模块
- 重构已有接口或业务流程
- 引入新技术(缓存、中间件、鉴权方案等)
- 涉及多个文件、多个层级的修改
模式特点
- Claude 不会直接改代码
- 会先给出完整的实施方案
- 通常以步骤列表(TODO List)的形式呈现
- 你确认方案后,才进入 Edit 阶段执行
Plan 模式的核心价值在于:
把先写代码变成先达成共识。
示例指令
我想给现有的 API 增加一个 Redis 缓存层,请先给我一个实施方案
计划一下如何把这个项目的样式从 CSS 改为 Tailwind CSS
如果要拆分这个模块,合理的步骤应该是什么?
实战建议:
Plan 模式用得越多,返工概率就越低。
3、Edit 模式:直接执行(可写代码)
Edit 模式是 Claude Code 真正动手的阶段。
使用场景
当你已经明确知道:
- 要改哪
- 改成什么
- 改动风险可控
此时就可以直接进入 Edit 模式。
模式特点
- Claude 会定位相关文件
- 生成精确的 Diff(差异修改)
- 可能会请求执行测试、构建等命令
- 所有写入操作都需要你确认
Edit 模式下,你的角色是:
代码的最终审查者,而不是旁观者。
示例指令
把登录接口的响应码从 200 改为 201
修复 main.py 第 45 行的类型错误
在不改变现有行为的前提下,重构这个函数的可读性
专业习惯:
描述越具体,Claude 改得越安全。
核心斜杠命令(/)
斜杠命令用于控制 Claude Code 的会话状态和行为,而不是写业务代码。
在终端中输入 / 即可触发。

| 命令 | 用途 | 专家提示 |
|---|---|---|
/help |
查看所有命令 | 第一次使用必看 |
/cost |
查看当前会话消耗 | 防止无意识烧 Token |
/compact |
压缩上下文 | 对话变长、变慢时使用 |
/reset |
重置会话 | 切换任务时非常重要 |
/docs |
索引文档 | 让 Claude 参考指定文档 |
/review |
代码审查 | 检查 Git 暂存区改动 |
建议:
/cost 和 /compact 是长期使用者的高频命令。
一个典型的交互流程示例
真实开发中,三种模式往往是连续使用的。
示例流程
1、Ask
为什么我的注册接口一直返回 400 错误?
Claude 分析代码和日志,指出是缺少 email 校验。
2、Plan
我想添加 email 格式校验,并把错误信息规范化,你打算怎么做?
Claude 给出步骤:修改校验逻辑 → 更新测试 → 调整返回结构。
3、Edit
按计划执行吧
Claude 修改文件,并展示 Diff 供你确认。
Ask 是搞清楚问题,Plan 是避免走弯路,Edit 是谨慎执行。
交互中的权限确认机制
Claude Code 对系统操作非常克制,任何有风险的行为都会请求你的确认。
常见权限确认
-
写入文件
会展示代码 Diff,你需要确认后才能写入。 -
执行命令
例如npm test、pnpm build,都会明确询问是否允许。
重要提醒:
永远不要在没看 Diff 的情况下直接确认。
Claude 很强,但依然可能产生错误或幻觉。
点我分享笔记