交互模式
Claude Code 会话中键盘快捷键、输入模式和交互功能的完整参考。
Claude Code 会话中键盘快捷键、输入模式和交互功能的完整参考。
键盘快捷键
注意
键盘快捷键可能因平台和终端而异。按 ? 查看适合您的环境的可用快捷方式。
macOS 用户:Option/Alt 快捷键(Alt+B、Alt+F、Alt+Y、Alt+M、Alt+P)需要在终端中将 Option 配置为 Meta:
- iTerm2:设置 → 配置文件 → 键 → 将左/右选项键设置为“Esc+”
- Terminal.app:设置→配置文件→键盘→选中“使用选项作为元键”
- VS Code:设置 → 配置文件 → 键 → 将左/右选项键设置为“Esc+”
详情请参见终端配置。
一般控制|快捷方式 |描述 |背景 |
| :------------------------------------------------ | :------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------- |
| Ctrl+C |取消当前输入或生成 |标准中断|
| Ctrl+F |杀死所有后台特工。 3秒内按两次确认 |后台代理控制|
| Ctrl+D |退出 Claude Code 会话 | EOF信号|
| Ctrl+G |在默认文本编辑器中打开 |在默认文本编辑器中编辑提示或自定义响应 |
| Ctrl+L |清除终端屏幕 |保留对话历史记录 |
| Ctrl+O |切换详细输出 |显示详细的工具使用和执行 |
| Ctrl+R |反向搜索命令历史记录 |以交互方式搜索以前的命令 |
| Ctrl+V 或 Cmd+V (iTerm2) 或 Alt+V (Windows) |从剪贴板粘贴图像 |粘贴图像或图像文件的路径 |
| Ctrl+B |后台运行任务|后台 bash 命令和代理。 Tmux 用户按两次 |
| Ctrl+T |切换任务列表|在终端状态区显示或隐藏任务列表 |
| Left/Right arrows |循环浏览对话框选项卡 |在权限对话框和菜单中的选项卡之间导航 |
| Up/Down arrows |导航命令历史记录 |调用之前的输入 || Esc + Esc |倒带或总结 |将代码和/或对话恢复到之前的点,或从选定的消息中进行总结 |
| Shift+Tab 或 Alt+M(某些配置)|切换权限模式 |在自动接受模式、Plan Mode 和正常模式之间切换。 |
| Option+P (macOS) 或 Alt+P (Windows/Linux) |切换模型|无需清除提示即可切换模型 |
| Option+T (macOS) 或 Alt+T (Windows/Linux) |切换扩展思维 |启用或禁用扩展思维模式。首先运行 /terminal-setup 以启用此快捷方式 |### 文本编辑
| 快捷方式 | 描述 | 背景 |
|---|---|---|
Ctrl+K | 删除至行尾 | 存储删除的文本以进行粘贴 |
Ctrl+U | 删除整行 | 存储删除的文本以进行粘贴 |
Ctrl+Y | 粘贴删除的文本 | 粘贴用 Ctrl+K 或 Ctrl+U 删除的文本 |
Alt+Y(Ctrl+Y 之后) | 循环粘贴历史 | 粘贴后,循环浏览之前删除的文本。需要 macOS 上的 选项作为元 |
Alt+B | 将光标向后移动一个字 | 词导航。需要 macOS 上的 选项作为元 |
Alt+F | 将光标向前移动一个字 | 词导航。需要 macOS 上的 选项作为元 |
主题和显示
|快捷方式|描述 |背景 |
| :----- | :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------ |
| Ctrl+T |切换代码块的语法突出显示 |仅适用于 /theme 选择器菜单。控制 Claude 响应中的代码是否使用语法着色 |
注意
语法突出显示仅在 Claude Code 的本机版本中可用。
多行输入
|方法|快捷方式|背景 |
| :-------------- | :------------- | :------------------------------------------------------ |
|快速逃脱| \ + Enter |适用于所有航站楼 |
| macOS 默认 | Option+Enter | macOS 上的默认设置 |
| Shift+Enter | Shift+Enter |在 iTerm2、WezTerm、Ghostty、Kitty 中开箱即用 |
|控制顺序| Ctrl+J |多行换行符 |
|粘贴模式 |直接粘贴|对于代码块,日志 |
提示
Shift+Enter 在 iTerm2、WezTerm、Ghostty 和 Kitty 中无需配置即可工作。对于其他终端(VS Code、Alacritty、Zed、Warp),运行 /terminal-setup 以安装绑定。
快速命令|快捷方式 |描述 |笔记|
| :---------- | :---------------- | :-------------------------------------------------------------------------------- |
| / 开始 |命令或技能 |请参阅内置命令 和技能 |
| ! 开始 |重击模式 |直接运行命令并将执行输出添加到会话中 |
| @ |文件路径提及|触发文件路径自动完成 |
语音输入
|快捷方式 |描述 |笔记|
| :---------- | :-------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|持有 Space |一键通听写 |需要启用语音听写。文字记录插入到光标处。 可重新绑定 |
内置命令
在 Claude Code 中键入 / 以查看所有可用命令,或键入 / 后跟要过滤的任何字母。 / 菜单像 /simplify 一样显示内置命令和捆绑技能。并非所有命令对每个用户都可见,因为有些命令取决于您的平台或计划。
有关内置命令的完整列表,请参阅命令参考。要创建您自己的命令,请参阅技能。
Vim 编辑器模式
使用 /vim 命令启用 vim 式编辑或通过 /config 进行永久配置。
模式切换
| 命令 | 行动 | 从模式 |
|---|---|---|
Esc | 进入正常模式 | 插入 |
i | 在光标前插入 | 正常 |
I | 在行首插入 | 正常 |
a | 在光标后插入 | 正常 |
A | 在行尾插入 | 正常 |
o | 打开下面的行 | 正常 |
O | 上面开线 | 正常 |
导航(正常模式)|命令 |行动|
| :-------------- | :-------------------------------------------------- |
| h/j/k/l |向左/下/上/右移动 |
| w |下一个字 |
| e |词末|
| b |上一个字 |
| 0 |行首 |
| $ |行尾|
| ^ |第一个非空白字符 |
| gg |输入开始 |
| G |输入结束 |
| f{char} |跳转到下一个出现的字符 |
| F{char} |跳转到上一个出现的字符 |
| t{char} |跳转到下一个出现的字符之前 |
| T{char} |跳转到上一个出现的字符之后 |
| ; |重复最后的 f/F/t/T 动作 |
| , |反向重复最后一个 f/F/t/T 动作 |
注意
在 vim 正常模式下,如果光标位于输入的开头或结尾并且无法进一步移动,则使用箭头键导航命令历史记录。
编辑(正常模式)
| 命令 | 行动 |
|---|---|
x | 删除字符 |
dd | 删除行 |
D | 删除至行尾 |
dw/de/db | 删除单词/结束/返回 |
cc | 换线 |
C | 更改为行尾 |
cw/ce/cb | 更改单词/结束/返回 |
yy/Y | 复制(复制)线 |
yw/ye/yb | 猛拉单词/结束/返回 |
p | 在光标后粘贴 |
P | 在光标前粘贴 |
>> | 缩进线 |
<< | 下凹线 |
J | 加入线路 |
. | 重复上次更改 |
文本对象(正常模式)
文本对象可与 d、c 和 y 等运算符配合使用:|命令 |行动|
| :-------- | :---------------------------------------- |
| iw/aw |内/周围字 |
| iW/aW |内部/周围 WORD(空格分隔)|
| i"/a" |内部/周围双引号 |
| i'/a' |内部/周围单引号 |
| i(/a( |内/括号 |
| i[/a[ |内/周围括号 |
| i{/a{ |内/周围牙套 |
命令历史
Claude Code 维护当前会话的命令历史记录:
- 输入历史记录按工作目录存储
- 当您运行
/clear开始新会话时,输入历史记录会重置。先前会话的对话将被保留并可以恢复。 - 使用向上/向下箭头进行导航(请参阅上面的键盘快捷键)
- 注意:历史扩展(
!)默认禁用
使用 Ctrl+R 反向搜索
按 Ctrl+R 以交互方式搜索命令历史记录:
- 开始搜索:按
Ctrl+R激活反向历史搜索 - 键入查询:输入要在之前命令中搜索的文本。搜索词在匹配结果中突出显示
- 导航比赛:再次按
Ctrl+R循环浏览较旧的比赛 - 接受匹配:
- 按
Tab或Esc接受当前匹配并继续编辑 - 按
Enter立即接受并执行命令
- 按
- 取消搜索:
- 按
Ctrl+C取消并恢复原始输入 - 在空搜索上按
Backspace取消
- 按
搜索会显示匹配的命令,并突出显示搜索词,以便您可以查找并重复使用以前的输入。
后台 bash 命令
Claude Code 支持在后台运行 bash 命令,允许您在执行长时间运行的进程时继续工作。
背景如何工作
当 Claude Code 在后台运行命令时,它会异步运行该命令并立即返回后台任务 ID。 Claude Code 可以响应新的提示,同时命令继续在后台执行。
要在后台运行命令,您可以:
- 提示Claude Code在后台运行命令
- 按 Ctrl+B 将常规 Bash 工具调用移至后台。 (由于 tmux 的前缀键,Tmux 用户必须按 Ctrl+B 两次。)
主要特点:
- 输出被缓冲,Claude 可以使用 TaskOutput 工具检索它
- 后台任务有唯一的ID用于跟踪和输出检索
- Claude Code退出时自动清理后台任务
- 如果输出超过 5GB,后台任务将自动终止,并在 stderr 中注释解释原因
要禁用所有后台任务功能,请将 CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 环境变量设置为 1。有关详细信息,请参阅环境变量。
常用后台命令:* 构建工具(webpack、vite、make)
- 包管理器(npm、yarn、pnpm)
- 测试运行程序(jest、pytest)
- 开发服务器
- 长时间运行的进程(docker、terraform)
带有 ! 前缀的 Bash 模式
通过在输入中添加 ! 前缀,直接运行 bash 命令,无需经过 Claude:
! npm test
! git status
! ls -la
Bash 模式:
- 将命令及其输出添加到对话上下文中
- 显示实时进度和输出
- 支持长时间运行命令的相同
Ctrl+B后台 - 不需要 Claude 来解释或批准该命令
- 支持基于历史记录的自动完成:键入部分命令并按 Tab 以完成当前项目中先前的
!命令 - 在出现空提示时使用
Escape、Backspace或Ctrl+U退出
这对于快速 shell 操作同时维护对话上下文非常有用。
提示建议
当您首次打开会话时,提示输入中会出现一个灰显的示例命令,以帮助您入门。 Claude Code 从您项目的 git 历史记录中选择此文件,因此它反映了您最近处理过的文件。
Claude 响应后,会根据您的对话历史记录继续显示建议,例如多部分请求的后续步骤或工作流程的自然延续。
- 按 Tab 接受建议,或按 Enter 接受并提交
- 开始输入以关闭它
该建议作为后台请求运行,重用父对话的提示缓存,因此额外成本很小。当缓存处于冷状态时,Claude Code 会跳过建议生成,以避免不必要的成本。
在非交互模式和计划模式下,第一次对话后会自动跳过建议。
要完全禁用提示建议,请设置环境变量或切换 /config 中的设置:
export CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=false
/btw 的附带问题
使用 /btw 快速询问有关您当前工作的问题,而无需添加到对话历史记录。当您想要快速得到答案但又不想使主要上下文混乱或使 Claude 从长时间运行的任务中脱轨时,这非常有用。
/btw what was the name of that config file again?
附带问题可以全面了解当前对话,因此您可以询问 Claude 已阅读的代码、其之前做出的决定或会话中的任何其他内容。问题和答案是短暂的:它们出现在可忽略的覆盖层中,并且永远不会进入对话历史记录。
- 在 Claude 工作时可用:即使 Claude 正在处理响应,您也可以运行
/btw。支线问题独立运行,不中断主线转弯。 - 无法访问工具:附带问题仅根据上下文中已有的内容进行回答。 Claude 在回答附带问题时无法读取文件、运行命令或搜索。
- 单一响应:没有后续回合。如果您需要来回询问,请使用普通提示。
- 低成本:支线问题重用了父对话的提示缓存,因此额外的成本最小。
按 Space、Enter 或 Escape 忽略答案并返回提示。/btw 是子代理 的反面:它可以看到您的完整对话,但没有工具,而子代理具有完整的工具,但从空上下文开始。使用 /btw 询问 Claude 从本次会话中已经知道的内容;使用子代理去寻找新的东西。
任务列表
当处理复杂、多步骤的工作时,Claude 会创建一个任务列表来跟踪进度。任务显示在终端的状态区域中,并带有显示待处理、正在进行或已完成的任务的指示器。
- 按
Ctrl+T切换任务列表视图。显示屏一次最多显示 10 个任务 - 要查看或清除所有任务,请直接询问 Claude:“显示所有任务”或“清除所有任务”
- 任务在上下文压缩中持续存在,帮助 Claude 在大型项目中保持组织性
- 要跨会话共享任务列表,请将
CLAUDE_CODE_TASK_LIST_ID设置为使用~/.claude/tasks/中的命名目录:CLAUDE_CODE_TASK_LIST_ID=my-project claude
PR审核状态
在处理具有开放拉取请求的分支时,Claude Code 在页脚中显示可单击的 PR 链接(例如“PR #446”)。该链接有一条彩色下划线,指示审核状态:
- 绿色:已批准
- 黄色:待审核
- 红色:请求更改
- 灰色:草稿
- 紫色:合并
Cmd+click (Mac) 或 Ctrl+click (Windows/Linux) 用于在浏览器中打开拉取请求的链接。状态每 60 秒自动更新一次。
注意
PR 状态需要安装 gh CLI 并进行身份验证 (gh auth login)。