Claude Code 交互模式与快捷键详解

举报
chunkj 发表于 2026/11/05 22:58:21 2026/11/05
【摘要】 Claude Code 交互模式与快捷键详解Claude Code 的交互体验很大程度上取决于你是否熟悉它的快捷键和命令体系。本文系统梳理交互模式中最常用的快捷键、斜杠命令、活跃前缀、排队消息机制以及终端配置要点,帮助你更高效地使用 Claude Code。 先记住这 8 个键如果只记 8 个快捷键,建议记以下这些:键作用典型场景Esc打断当前回复发现方向错了,立即停止Esc Esc空输入...

Claude Code 交互模式与快捷键详解

Claude Code 的交互体验很大程度上取决于你是否熟悉它的快捷键和命令体系。本文系统梳理交互模式中最常用的快捷键、斜杠命令、活跃前缀、排队消息机制以及终端配置要点,帮助你更高效地使用 Claude Code。

先记住这 8 个键

如果只记 8 个快捷键,建议记以下这些:

键 作用 典型场景
Esc 打断当前回复 发现方向错了,立即停止
Esc Esc 空输入时打开回滚菜单 回到之前的某一步
Shift+Tab 循环切换权限模式 减少权限确认弹窗
Ctrl+C 第一次清空输入 / 第二次退出 重新输入或退出程序
Ctrl+D ×2 退出 结束当前会话
Ctrl+O 展开/收起工具调用详情 查看 Claude 正在执行什么
Ctrl+G 用外部编辑器写提示词 需要输入大段文本时
@ 引用文件 让 Claude 读取指定文件

通用控制快捷键

快捷键 说明
Ctrl+C 中断正在运行的操作。没有操作在运行时:第一次清空输入框,第二次退出。清掉的草稿可以用 ↑ 找回(v2.1.288+)
Ctrl+X Ctrl+K 停掉本会话所有后台子代理,并关闭 artifact 自动回复。3 秒内按两次确认
Ctrl+D 第一次显示确认提示,800ms 内再按一次退出。输入框有内容时,Ctrl+D 变为删除光标后的字符
Ctrl+G / Ctrl+X Ctrl+E 在默认文本编辑器里编辑提示词。在 /config 里打开 Show last response in external editor 后,Claude 的上一条回复会以 # 注释形式出现在上方,保存时会被剥掉
Ctrl+L 重绘屏幕。显示错乱或半空白时使用,输入和对话历史都保留
Ctrl+O 切换 transcript viewer:显示详细工具调用、每次调用的时间戳和模型;展开默认折叠的行(如 MCP 调用显示成一行 Called slack 3 times)
Ctrl+R 反向搜索命令历史
Ctrl+V / Cmd+V(iTerm2) / Alt+V(Windows/WSL) 从剪贴板粘贴图片,插入 [Image #N] 标记
Ctrl+B 把正在运行的任务放到后台(tmux 用户按两次)
Ctrl+T 显示/隐藏 Claude 的待办清单
Ctrl+S 暂存/恢复输入框内容(连同光标位置、粘贴内容、输入模式)
Ctrl+Z 挂起(Unix),fg 恢复
← / → 在权限对话框和菜单里切换 tab
Tab 接受自动补全建议;在权限提示的 Yes/No 上打开备注框
↑ / ↓ 或 Ctrl+P / Ctrl+N 在输入框内移动光标;到首/末行后再按则翻命令历史
Esc 打断当前回复/工具调用(已完成的工作保留)。有对话框时关闭对话框。在权限提示上等同于选 No
Esc Esc 输入框有内容时:清空并存入历史(↑ 可找回)。输入框为空时:打开回滚菜单
Ctrl+Enter / Ctrl+X Ctrl+S 立刻发送排队的消息(v2.1.275+)。终端不报告扩展键时 Ctrl+Enter 等于普通 Enter,用 Ctrl+X Ctrl+S
Shift+Tab 循环权限模式:default → acceptEdits → plan →(可用时)bypassPermissions → auto → 回到 default
Option+P / Alt+P 切换模型,不清空输入框
Option+T / Alt+T 开关扩展思考(对 Opus 5.5 / Sonnet 5.5 / Haiku 5.5 / Fable 无效,它们始终开启)
Option+O / Alt+O 开关 fast mode

macOS 用户注意:Alt+B、Alt+F、Alt+D、Alt+Y、Alt+P 这些 Option 组合键需要先把终端的 Option 配置成 Meta。Option+T 例外,无需配置。

文本编辑快捷键(readline 风格)

快捷键 说明
Ctrl+A / Ctrl+E 行首 / 行尾
Ctrl+K 删到行尾(删掉的文本可粘贴)
Ctrl+U 删到行首
Ctrl+W 向前删除到上一个空白(一次删掉整个路径或 --flag=value)
Ctrl+Y 粘贴刚才删掉的文本
Alt+Y 粘贴后循环剪贴环(需 Option as Meta)
Alt+B / Alt+F 按词左右移动
Alt+D 删除到词尾
Ctrl+_ / Ctrl+Shift+- 撤销上一次输入编辑

词边界规则:Alt+B、Alt+F、Alt+D、Option+Delete、Ctrl+Backspace 把字母和数字的连续串当作一个词,所以 _、.、/ 都是分隔符。例如 src/utils/foo.ts 连按 Alt+B 会依次停在 ts、foo、utils、src。而 Ctrl+W 不同:它忽略标点,删到上一个空白,一次删掉整个 src/utils/foo.ts。对于中文/日文这类无空格文本,Alt+B 等会一次移动或删除一个字。

多行输入

方法 快捷键 说明
最快 \ 然后 Enter 所有终端都支持
Option Option+Enter macOS 需先启用 Option as Meta
Shift Shift+Enter iTerm2、WezTerm、Ghostty、Kitty、Warp、Apple Terminal、Windows Terminal 原生支持
控制序列 Ctrl+J 任何终端免配置
粘贴 直接粘贴 适用于代码块、日志

\ + Enter 是最保险的方式——不依赖终端配置,SSH 远程连接使用也一样。

活跃前缀:/、@、!

/ —— 命令与技能

输入 / 打开命令列表,继续打字过滤。列表里包含内置命令、自定义 skills、插件贡献的命令和 MCP 服务器贡献的命令。

命令可以写在句子中间,例如 先跑测试,然后 /com 会补全 /compact。但只有命令出现在消息开头时才会被执行。在句子中间按 Tab 也可以补全或打开列表。

/tmp/notes.md 这种路径不会触发命令列表,因为命令名必须以那些字母开头,可以放心使用。

@ —— 引用文件

输入 @ 触发文件路径补全,选中后 Claude 会先读这个文件再回答。

检查 @src/auth/session.ts 的 token 刷新逻辑

@ 比口头描述文件位置精确得多,而且省了 Claude 自己找文件的几步。知道文件在哪,就用 @。

在启用了跨会话消息的会话里,@ 后面输入至少一个字母还会建议本机其他活跃会话,可以直接让 Claude 给它们发消息(v2.1.232+)。

! —— shell 模式

直接执行命令,不经过 Claude 决策:

! npm test
! git status
! ls -la

主要特点:

  • 命令和输出都进入对话上下文
  • 实时显示进度
  • 支持 Ctrl+B 放后台
  • 不需要 Claude 批准
  • 支持历史补全(打一半按 Tab)
  • 支持路径补全(输入含 / 的片段,如 ./src/ 或 ~/)
  • Esc / Backspace / Ctrl+U 在空提示时退出 shell 模式
  • 往空输入框粘贴以 ! 开头的内容会自动进入 shell 模式

输出落地后 Claude 会自动回应,所以 ! npm test 之后你不用再问"这些失败是什么意思"。这个回应和普通提问成本一样。只想把输出放进上下文、不要回应,在 settings.json 设 respondToBashCommands: false。

shell 模式绕过了沙箱(沙箱只约束 Claude 执行的命令),即使你开了沙箱。你自己敲的命令后果自负。

# —— 已移除

v2.0.70 起,# 快速写记忆的快捷方式被删掉了。现在要加记忆就直接说:

记住:这个项目用 pnpm,不要用 npm
把「构建前先跑 lint」加到 CLAUDE.md

前者进 auto memory,后者明确进 CLAUDE.md。也可以在 /memory 里直接编辑文件。

: —— emoji

输入完整的 :name: 插入 emoji,输入两个以上字符给建议(v2.1.217+)。

空输入时按 ?

打开快捷键帮助面板。输入框有内容时,? 就是普通的问号。

排队消息:不打断也能纠偏

在 Claude 工作时,直接打字按 Enter——消息会排队,不会打断当前这一轮。排队期间,消息以灰色显示在对话里,你能看清哪些它还没开始处理。

发出时机

排的内容 发出时机
普通消息 如果排队时它在跑工具调用,工具调用一结束就在同一轮内读到;如果这一轮结束了还有排队,会按你输入的顺序自动发出
命令 / ! shell 命令 等这一轮结束,然后一条一条执行

想立刻发出去:Ctrl+Enter(或 Ctrl+X Ctrl+S)。

改主意

  • Esc:打断这一轮,保留排队内容并立刻发出。
  • 从输入框第一行按 ↑:把排队内容收回输入框,一行一条,可以编辑后重新排队。

排队消息是 Claude Code 最被低估的交互设计。传统做法是"Esc 打断 → 打字 → 重发",会丢掉它已经做完的一半工作。排队相当于温和纠偏:让它把手头的工具调用做完,再读你的新指示。推荐大部分纠偏都用排队,只在方向彻底错误时才用 Esc。

三个立即生效的命令

/model、/effort、/fast 不会排队,发送即执行:

命令 生效时机
/model 确认缓存警告后,本轮下一次请求就用新模型
/effort 同上
/fast 本轮保持开始时的设置,下一轮才生效

后台 Bash 命令

长时间任务(dev server、watch、大构建)不该卡住对话。两种放后台的方式:

把 npm run dev 放到后台跑

或对正在运行的命令按 Ctrl+B(tmux 用户两次)。

行为要点:

  • 返回一个后台任务 ID
  • 输出写到文件,Claude 用 Read 工具读取
  • Claude Code 退出时自动清理
  • 输出超过 5 GB 自动终止
  • macOS/Linux 上,如果会话已空闲 ≥30 分钟且无任务在运行,系统报告严重内存压力时会停掉后台任务(CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP=1 可关闭)
  • 前台命令超时会自动转后台,而不是被杀(sleep 开头的除外)

查看后台任务:/tasks(这跟 Ctrl+T 的待办清单不是一回事)。

命令历史

  • 历史按工作目录存储
  • ↑ 能翻到同一项目之前会话的提示词
  • /clear 后是新会话,回忆时先列新会话的,再列更早的
  • 连续提交两次相同的提示词只记一条
  • 回忆含粘贴内容的提示词时,会重新发送完整的粘贴内容
  • ! 的历史展开默认关闭
  • Ctrl+R 交互式反向搜索

找回清掉的草稿:刚用 Ctrl+C 清掉时,立刻在空输入框按 ↑ 即可。如果已经发了别的消息,↑ 往回翻,会话保留最近 10 个清掉的草稿(含粘贴文本和图片),退出时丢弃。

Vim 模式

通过 /config → Editor mode → vim 开启。

最常用的命令:

命令 动作
Esc / Ctrl+[ 回 NORMAL
i / a / A / I / o / O 进入 INSERT 的各种方式
h j k l 移动
w / b / e 词移动
0 / ^ / $ 行首 / 首个非空字符 / 行尾
gg / G 输入开头 / 最后一行开头
f{char} / F{char} / t{char} / T{char} 行内跳转,; , 重复
% 跳到匹配的括号(v2.1.301+)
x / r{char} / dd / D / dw / cw / cc / C 编辑
yy / p / P 复制粘贴
>> / << / J 缩进 / 合并行
u / . 撤销 / 重复上次修改
v / V 字符/行可视选择
iw aw i" a" i( a( i{ a{ … 文本对象

把 jj 映射成 Esc:

{
  "editorMode": "vim",
  "vimInsertModeRemaps": { "jj": "<Esc>" }
}

vimInsertModeRemaps 只从用户设置、--settings、managed settings 读取,项目里的 .claude/settings.json 会被忽略——防止别人 checkout 你的仓库就改掉你的按键。

注意:Ctrl+V 块选择不支持(它被占用为粘贴图片)。不喜欢 vim 也没关系,但装一个终端级别的 vi 键位(如 zsh 的 bindkey -v)会跟 Claude Code 的输入框冲突,二选一。

斜杠命令列表

按用途分组。完整列表随时看:输入 / 或 /help。

会话与上下文

命令 作用
/clear 清空对话历史,重置上下文
/compact [焦点] 压缩对话;可指定保留重点
/context 查看上下文占用分类明细
/rewind 打开回滚/总结菜单(同 Esc Esc)
/btw <问题> 边角问题,答案不进上下文
/autocompact <auto|100k–1M> 设置自动压缩阈值
/export 导出会话
/resume 切换到其他会话
/rename 重命名当前会话
/branch 从当前点分叉出新会话
/exit 退出

配置与账户

命令 作用
/config 打开设置界面(模型、主题、编辑器模式、自动更新通道等)
/model 切换模型
/effort 设置推理力度
/fast 开关 fast mode
/permissions 管理权限规则、目录白名单
/sandbox 沙箱设置
/hooks 浏览已配置的 hooks
/mcp 管理 MCP 服务器
/plugin 浏览/安装插件
/skills 查看已安装 skills
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。