文档索引
在此处获取完整文档索引:https://code.claude.com/docs/llms.txt 使用此文件发现所有可用页面,然后再进一步探索。
交互模式
Claude Code 会话中键盘快捷键、输入模式和交互功能的完整参考。
键盘快捷键
键盘快捷键可能因平台和终端而异。在全屏渲染模式下,在转录查看器中按 ? 可查看该处可用的快捷键。
macOS 用户:Option/Alt 键快捷键(Alt+B、Alt+F、Alt+Y、Alt+M、Alt+P)需要在终端中将 Option 配置为 Meta:
- iTerm2:设置 → 配置文件 → 键 → 常规 → 将左/右 Option 键设置为 "Esc+"
- Apple Terminal:设置 → 配置文件 → 键盘 → 勾选"将 Option 键用作 Meta 键"
- VS Code:在 VS Code 设置中设置
"terminal.integrated.macOptionIsMeta": true
详见终端配置。
常规控制
| 快捷键 | 描述 | 上下文 |
|---|---|---|
Ctrl+C | 中断或清除输入 | 中断正在运行的操作。如果没有正在运行的操作,第一次按会清除提示输入,第二次按会退出 Claude Code |
Ctrl+X Ctrl+K | 终止此会话中所有正在运行的后台子代理。3 秒内按两次确认 | 子代理控制 |
Ctrl+D | 退出 Claude Code 会话 | EOF 信号 |
Ctrl+G 或 Ctrl+X Ctrl+E | 在默认文本编辑器中打开 | 在默认文本编辑器中编辑提示或自定义响应。Ctrl+X Ctrl+E 是 readline 原生绑定。在 /config 中开启"在外部编辑器中显示最后一条响应"可将 Claude 的上一条回复作为 # 注释上下文添加到提示上方;保存时注释块会被移除 |
Ctrl+L | 重绘屏幕 | 强制完全重绘终端。保留输入和对话历史。当显示变得混乱或部分空白时使用此快捷键恢复 |
Ctrl+O | 切换转录查看器 | 显示详细的工具使用和执行信息。还会展开 MCP 调用,MCP 调用默认折叠为单行(如"Called slack 3 times") |
Ctrl+R | 反向搜索命令历史 | 交互式搜索之前的命令 |
Ctrl+V 或 Cmd+V(iTerm2)或 Alt+V(Windows) | 从剪贴板粘贴图片 | 在光标处插入一个 [Image #N] 芯片,以便在提示中按位置引用 |
Ctrl+B | 后台运行任务 | 将 bash 命令和代理放入后台。Tmux 用户按两次 |
Ctrl+T | 切换任务列表 | 在终端状态区域显示或隐藏任务列表 |
左/右方向键 | 循环切换对话框标签页 | 在权限对话框和菜单中的标签页之间导航 |
上/下方向键 或 Ctrl+P/Ctrl+N | 移动光标或导航命令历史 | 在多行输入中,首先在提示内移动光标。当光标已在顶部或底部边缘时,再次按会导航命令历史 |
Esc | 中断 Claude | 在当前回合中停止当前响应或工具调用,以便你可以重定向。Claude 保留到目前为止已完成的工作 |
Esc + Esc | 清除输入草稿或回退 | 当提示输入包含文本时,双击 Esc 会清除它并将草稿保存到历史中,以便 Up 可以调出它。当输入为空时,双击 Esc 会打开回退菜单以恢复或总结之前的代码和对话 |
Shift+Tab 或 Alt+M(某些配置) | 循环切换权限模式 | 循环切换 default、acceptEdits、plan 以及你已启用的任何模式,如 auto 或 bypassPermissions。参见权限模式 |
Option+P(macOS)或 Alt+P(Windows/Linux) | 切换模型 | 在不清除提示的情况下切换模型 |
Option+T(macOS)或 Alt+T(Windows/Linux) | 切换扩展思考 | 启用或禁用扩展思考模式。自 v2.1.132 起,此快捷键在 macOS 上无需将 Option 配置为 Meta 即可使用 |
Option+O(macOS)或 Alt+O(Windows/Linux) | 切换快速模式 | 启用或禁用快速模式 |
文本编辑
| 快捷键 | 描述 | 上下文 |
|---|---|---|
Ctrl+A | 移动光标到当前行首 | 在多行输入中,移动到当前逻辑行的开头 |
Ctrl+E | 移动光标到当前行尾 | 在多行输入中,移动到当前逻辑行的末尾 |
Ctrl+K | 删除到行尾 | 存储已删除的文本以供粘贴 |
Ctrl+U | 从光标删除到行首 | 存储已删除的文本以供粘贴。重复以在多行输入中跨行清除。在 macOS 上,包括 iTerm2 和 Terminal.app 在内的终端模拟器将 Cmd+Backspace 映射为此快捷键 |
Ctrl+W | 删除前一个单词 | 存储已删除的文本以供粘贴。在 Windows 上,Ctrl+Backspace 也删除前一个单词 |
Ctrl+Y | 粘贴已删除的文本 | 粘贴使用 Ctrl+K、Ctrl+U 或 Ctrl+W 删除的文本 |
Alt+Y(在 Ctrl+Y 之后) | 循环粘贴历史 | 粘贴后,循环浏览之前删除的文本。在 macOS 上需要将 Option 配置为 Meta |
Alt+B | 光标后退一个单词 | 单词导航。在 macOS 上需要将 Option 配置为 Meta |
Alt+F | 光标前进一个单词 | 单词导航。在 macOS 上需要将 Option 配置为 Meta |
主题和显示
| 快捷键 | 描述 | 上下文 |
|---|---|---|
Ctrl+T | 切换代码块的语法高亮 | 仅在 /theme 选择器菜单内有效。控制 Claude 响应中的代码是否使用语法着色 |
多行输入
| 方式 | 快捷键 | 上下文 |
|---|---|---|
| 快速换行 | \ + Enter | 在所有终端中有效 |
| Option 键 | Option+Enter | 在 macOS 上启用 Option 作为 Meta 后 |
| Shift+Enter | Shift+Enter | 在 iTerm2、WezTerm、Ghostty、Kitty、Warp、Apple Terminal、Windows Terminal 中原生支持 |
| 控制序列 | Ctrl+J | 无需配置即可在任何终端中使用 |
| 粘贴模式 | 直接粘贴 | 适用于代码块、日志 |
Shift+Enter 无需配置即可在 iTerm2、WezTerm、Ghostty、Kitty、Warp、Apple Terminal 和 Windows Terminal 中使用。对于 VS Code、Cursor、Windsurf、Alacritty 和 Zed,运行 /terminal-setup 安装绑定。
快捷命令
| 快捷键 | 描述 | 备注 |
|---|---|---|
开头输入 / | 命令或技能 | 参见命令和技能 |
开头输入 ! | Shell 模式 | 直接运行命令并将执行输出添加到会话中 |
@ | 文件路径提及 | 触发文件路径自动补全 |
转录查看器
当转录查看器打开时(通过 Ctrl+O 切换),以下快捷键可用。在全屏渲染模式下,按 ? 可在查看器内显示完整的快捷键参考面板。Ctrl+E 可以通过 transcript:toggleShowAll 重新绑定。
| 快捷键 | 描述 |
|---|---|
? | 切换键盘快捷键帮助面板。需要全屏渲染模式 |
{ / } | 跳转到上一个或下一个用户提示,类似 vim 段落移动。需要全屏渲染模式 |
Ctrl+E | 切换显示所有内容 |
[ | 将完整对话写入终端的原生回滚缓冲区,以便 Cmd+F、tmux 复制模式和其他原生工具可以搜索。需要全屏渲染模式 |
v | 将对话写入临时文件并在 $VISUAL 或 $EDITOR 中打开。需要全屏渲染模式 |
q、Ctrl+C、Esc | 退出转录视图。这三个都可以通过 transcript:exit 重新绑定 |
语音输入
| 快捷键 | 描述 | 备注 |
|---|---|---|
长按或点击 Space | 语音听写 | 需要启用语音听写。长按录音,或运行 /voice tap 以点击切换。可重新绑定 |
命令
在 Claude Code 中输入 / 可查看所有可用命令,或输入 / 后跟任何字母进行过滤。/ 菜单显示你可以调用的所有内容:内置命令、捆绑和用户编写的技能,以及由插件和 MCP 服务器提供的命令。并非所有内置命令对每个用户都可见,因为某些命令取决于你的平台或计划。
参见命令参考获取 Claude Code 中包含的完整命令列表。
Vim 编辑器模式
通过 /config → 编辑器模式启用 vim 风格编辑。
模式切换
| 命令 | 操作 | 来自模式 |
|---|---|---|
Esc | 进入 NORMAL 模式 | INSERT、VISUAL |
i | 在光标前插入 | NORMAL |
I | 在行首插入 | NORMAL |
a | 在光标后插入 | NORMAL |
A | 在行尾插入 | NORMAL |
o | 在下方打开行 | NORMAL |
O | 在上方打开行 | NORMAL |
v | 开始字符级可视选择 | NORMAL |
V | 开始行级可视选择 | NORMAL |
导航(NORMAL 模式)
| 命令 | 操作 |
|---|---|
h/j/k/l | 左/下/上/右移动 |
Space | 右移 |
w | 下一个单词 |
e | 单词末尾 |
b | 上一个单词 |
0 | 行首 |
$ | 行尾 |
^ | 第一个非空白字符 |
gg | 输入开头 |
G | 输入末尾 |
f{char} | 跳转到字符的下一个出现位置 |
F{char} | 跳转到字符的上一个出现位置 |
t{char} | 跳转到字符下一个出现位置之前 |
T{char} | 跳转到字符上一个出现位置之后 |
; | 重复上一个 f/F/t/T 移动 |
, | 反向重复上一个 f/F/t/T 移动 |
在 vim 普通模式下,如果光标在输入的开头或末尾且无法继续移动,j/k 和方向键将改为导航命令历史。
编辑(NORMAL 模式)
| 命令 | 操作 |
|---|---|
x | 删除字符 |
dd | 删除行 |
D | 删除到行尾 |
dw/de/db | 删除单词/到末尾/回退 |
cc | 更改行 |
C | 更改到行尾 |
cw/ce/cb | 更改单词/到末尾/回退 |
yy/Y | 复制行 |
yw/ye/yb | 复制单词/到末尾/回退 |
p | 在光标后粘贴 |
P | 在光标前粘贴 |
>> | 缩进行 |
<< | 取消缩进行 |
J | 合并行 |
u | 撤销 |
. | 重复上次更改 |
文本对象(NORMAL 模式)
文本对象与 d、c 和 y 等操作符配合使用:
| 命令 | 操作 |
|---|---|
iw/aw | 单词内部/周围 |
iW/aW | WORD 内部/周围(空格分隔) |
i"/a" | 双引号内部/周围 |
i'/a' | 单引号内部/周围 |
i(/a( | 圆括号内部/周围 |
i[/a[ | 方括号内部/周围 |
i{/a{ | 花括号内部/周围 |
可视模式
按 v 进行字符级选择或按 V 进行行级选择。移动命令扩展选择,操作符直接对其执行操作。
| 命令 | 操作 |
|---|---|
d/x | 删除选择 |
y | 复制选择 |
c/s | 更改选择 |
p | 用寄存器内容替换选择 |
r{char} | 将每个选定字符替换为 {char} |
~/u/U | 切换、小写或大写选择 |
>/< | 缩进或取消缩进选定行 |
J | 合并选定行 |
o | 交换光标和锚点 |
iw/aw/i"/… | 选择文本对象 |
v/V | 在字符级和行级之间切换,或退出 |
不支持 Ctrl+V 块级可视模式。
命令历史
Claude Code 为当前会话维护命令历史:
- 输入历史按工作目录存储
- 运行
/clear开始新会话时输入历史会重置。之前会话的对话被保留并可恢复 - 连续两次提交相同的提示只记录一个历史条目,因此按 Up 会跳转到上一个不同的提示
- 使用上/下方向键导航(参见上面的键盘快捷键)
- 注意:历史扩展(
!)默认禁用
使用 Ctrl+R 反向搜索
按 Ctrl+R 交互式搜索命令历史:
- 开始搜索:按
Ctrl+R激活反向历史搜索 - 输入查询:输入要在之前命令中搜索的文本。搜索词在匹配结果中高亮显示
- 导航匹配:再次按
Ctrl+R循环浏览更早的匹配 - 更改范围:搜索默认为所有项目的提示。按
Ctrl+S在此会话、此项目和所有项目之间循环切换范围 - 接受匹配:
- 按
Tab或Esc接受当前匹配并继续编辑 - 按
Enter接受并立即执行命令
- 按
- 取消搜索:
- 按
Ctrl+C取消并恢复原始输入 - 在空搜索时按
Backspace取消
- 按
搜索显示匹配的命令,搜索词高亮显示,以便你可以找到并重用之前的输入。
后台 bash 命令
Claude Code 支持在后台运行 bash 命令,允许你在长时间运行的进程执行时继续工作。
后台工作原理
当 Claude Code 在后台运行命令时,它会异步运行命令并立即返回后台任务 ID。Claude Code 可以在命令在后台继续执行的同时响应新的提示。
要在后台运行命令,你可以:
- 提示 Claude Code 在后台运行命令
- 按 Ctrl+B 将常规 Bash 工具调用移至后台。(Tmux 用户必须按两次 Ctrl+B,因为 tmux 的前缀键。)
主要功能:
- 输出写入文件,Claude 可以使用 Read 工具检索
- 后台任务具有唯一 ID 用于跟踪和输出检索
- Claude Code 退出时自动清理后台任务
- 如果输出超过 5GB,后台任务会自动终止,并在 stderr 中说明原因
要禁用所有后台任务功能,将环境变量 CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 设置为 1。详见环境变量。
常见的后台命令:
- 构建工具(webpack、vite、make)
- 包管理器(npm、yarn、pnpm)
- 测试运行器(jest、pytest)
- 开发服务器
- 长时间运行的进程(docker、terraform)
使用 ! 前缀的 Shell 模式
通过在输入前加上 ! 直接运行 shell 命令,无需通过 Claude:
! npm test
! git status
! ls -la
Shell 模式:
- 将命令及其输出添加到对话上下文
- 显示实时进度和输出
- 支持相同的
Ctrl+B后台运行长时间命令 - 不需要 Claude 解释或批准命令
- 支持基于历史的自动补全:输入部分命令并按 Tab 从当前项目中之前的
!命令补全 - 在空提示时使用
Escape、Backspace或Ctrl+U退出 - 将以
!开头的文本粘贴到空提示中会自动进入 shell 模式,与输入!的行为一致
这对于在保持对话上下文的同时进行快速 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切换任务列表视图。显示一次最多 5 个任务 - 要查看所有任务或清除它们,直接询问 Claude:"show me all tasks" 或 "clear all tasks"
- 任务在上下文压缩后持续存在,帮助 Claude 在大型项目中保持有序
- 要在会话之间共享任务列表,设置
CLAUDE_CODE_TASK_LIST_ID以使用~/.claude/tasks/中的命名目录:CLAUDE_CODE_TASK_LIST_ID=my-project claude
会话回顾
当你离开后返回终端时,Claude Code 会显示会话中发生内容的单行回顾。回顾在后台生成,在至少三分钟过去且终端失去焦点后生成一次,因此当你切换回来时已准备好。回顾仅在会话至少有三个回合后出现,且不会连续出现两次。
运行 /recap 按需生成摘要。要关闭自动回顾,打开 /config 并禁用会话回顾。
会话回顾默认对每个计划和提供商开启。在非交互模式下始终跳过回顾。
PR 审查状态
在处理有打开的拉取请求的分支时,Claude Code 在页脚显示可点击的 PR 链接(例如"PR #446")。链接带有彩色下划线指示审查状态:
- 绿色:已批准
- 黄色:待审查
- 红色:已请求更改
- 灰色:草稿
拉取请求合并或关闭后,徽章消失。Cmd+click(Mac)或 Ctrl+click(Windows/Linux)链接可在浏览器中打开拉取请求。状态每 60 秒刷新一次,以及在会话中运行 gh pr 或 git push 命令后立即刷新。
PR 状态需要安装并认证 gh CLI(gh auth login)。