CodeBuddy Code 交互式会话中的完整键盘快捷键、输入模式和交互功能参考。
键盘快捷键
键盘快捷键可能因平台和终端而异。在交互式会话中输入问号
?可查看您环境中可用的快捷键。通用控制
快捷键 | 描述 | 上下文 | CodeBuddy 支持 |
Ctrl+C | 取消当前输入或生成 | 标准中断 | 支持 |
Ctrl+D | 退出 CodeBuddy Code 会话(输入框为空且无进行中对话时) | EOF 信号,连按两次退出 | 支持 |
Ctrl+L | 清除终端屏幕 | 保留对话历史 | 支持 |
Ctrl+O | 切换详细输出 | 显示详细的工具使用和执行信息 | 支持 |
Ctrl+R | 反向搜索命令历史 | 交互式搜索之前的命令 | 支持 |
Ctrl+V (macOS/Linux) 或 Alt+V (Windows) | 从剪贴板粘贴文本或图片;Windows 上推荐用 Alt+V 获得更稳定的大段文本粘贴体验 | 粘贴文本、图片或图片文件路径 | 支持 |
Up/Down 方向键 | 导航命令历史 | 调用之前的输入;队列中存在排队消息时, Up 会优先把排队消息拉回输入框编辑 | 支持 |
Esc + Esc | 回退代码/对话 | 将代码和/或对话恢复到之前的状态 (需在输入框为空时连续按两次) | 支持 |
Tab | 切换思考模式 | 在思考开启和思考关闭之间切换 | 支持 |
Shift+Tab (所有平台,Windows 同时支持 Alt+M) | 切换权限模式 | 在 default、bypassPermissions、acceptEdits、auto(可用时)、plan、delegate 之间循环 | 支持 |
Option+P (macOS) 或 Alt+P (Windows/Linux) | 切换模型 | 快速打开模型选择面板 | 支持 |
说明:
Esc + Esc 回退功能已支持:当输入框内容为空时,连续按两次 ESC 键可激活 /rewind 功能,快速回退代码或对话到之前的状态Tab 键在 CodeBuddy Code 中主要用于自动补全,扩展思考模式的切换功能部分支持Shift+Tab 用于切换权限模式(所有平台通用,Windows 同时支持 Alt+M 作为别名)。当前循环顺序为:default → bypassPermissions → acceptEdits → auto(可用时)→ plan → delegate。dontAsk 不在键盘循环中,需要通过 --permission-mode dontAsk 或 settings 进入。可通过 ~/.codebuddy/keybindings.json 自定义多行输入
方法 | 快捷键 | 上下文 | CodeBuddy 支持 |
快速转义 | \\ + Enter | 在所有终端中工作 | 支持 |
macOS 默认 | Option+Enter | macOS 上的默认设置 | 支持 |
终端设置 | Shift+Enter | 执行 /terminal-setup 后 | 支持 |
控制序列 | Ctrl+J | 多行的换行字符 | 支持 |
粘贴模式 | 直接粘贴 | 用于代码块、日志 | 支持 |
说明:
在终端设置中配置您首选的换行行为。运行
`/terminal-setup` 为 iTerm2 和 VS Code 终端安装 Shift + Enter 绑定。快速命令
快捷键 | 描述 | 注释 | CodeBuddy 支持 |
# 在开头 | 记忆快捷方式 - 添加到 CODEBUDDY.md | 提示选择文件 | 支持 |
/ 在开头 | 斜杠命令 | 支持 | |
! 在开头 | Bash 模式 | 直接运行命令并将执行输出添加到会话 | 支持 |
@ | 文件路径提及 | 触发文件路径自动补全 | 支持 |
编辑快捷键
快捷键 | 描述 | CodeBuddy 支持 |
Ctrl+A | 移动到行首 | 支持 |
Ctrl+E | 移动到行尾 | 支持 |
Ctrl+K | 删除从光标到行尾 | 支持 |
Ctrl+U | 删除从行首到光标 | 支持 |
Ctrl+W | 删除前一个单词 | 支持 |
Ctrl+Y | 复制最后一条 AI 回复到剪贴板 | 支持 |
Alt/Option+Backspace | 删除前一个单词 | 支持 |
Alt/Option+Delete | 删除下一个单词 | 支持 |
Alt/Option+Left | 移动到上一个单词 | 支持 |
Alt/Option+Right | 移动到下一个单词 | 支持 |
Ctrl+Left | 移动到行首 | 支持 |
Ctrl+Right | 移动到行尾 | 支持 |
Ctrl+G | 打开外部编辑器编辑提示词 | 支持 |
Vim 编辑器模式
使用
/vim 命令启用 vim 风格编辑,或通过 /config 永久配置。模式切换
命令 | 操作 | 从模式 | CodeBuddy 支持 |
Esc | 进入 NORMAL 模式 | INSERT | 支持 |
i | 在光标前插入 | NORMAL | 支持 |
I | 在行首插入 | NORMAL | 支持 |
a | 在光标后插入 | NORMAL | 支持 |
A | 在行尾插入 | NORMAL | 支持 |
o | 在下方打开新行 | NORMAL | 支持 |
O | 在上方打开新行 | NORMAL | 支持 |
导航 (NORMAL 模式)
命令 | 操作 | CodeBuddy 支持 |
h/j/k/l | 向左/下/上/右移动 | 支持 |
w | 下一个单词 | 支持 |
e | 单词末尾 | 支持 |
b | 上一个单词 | 支持 |
0 | 行首 | 支持 |
$ | 行尾 | 支持 |
^ | 第一个非空白字符 | 支持 |
gg | 输入开始 | 支持 |
G | 输入结束 | 支持 |
编辑 (NORMAL 模式)
命令 | 操作 | CodeBuddy 支持 |
x | 删除字符 | 支持 |
dd | 删除行 | 支持 |
D | 删除到行尾 | 支持 |
dw/de/db | 删除单词/到末尾/到开头 | 支持 |
cc | 修改行 | 支持 |
C | 修改到行尾 | 支持 |
cw/ce/cb | 修改单词/到末尾/到开头 | 支持 |
. | 重复上次修改 | 支持 |
命令历史
CodeBuddy Code 为当前会话维护命令历史:
历史记录按工作目录存储
使用
/clear 开启全新对话(旧对话可通过 /resume 恢复)使用 Up/Down 方向键导航 (参见上面的键盘快捷键)
注意:历史扩展 (
!) 默认禁用编辑排队中的消息
当 Agent 正在响应时,您输入并回车的消息会进入排队,显示在输入框上方。此时输入框为空,按
Up 方向键即可把排队中的消息拉回输入框继续编辑(多条排队消息会按发送顺序合并,以换行拼接):输入框为空且有可编辑排队消息时,会显示「Press ↑ to edit queued messages」提示
系统注入的排队项(异步任务通知、频道消息、队友消息等)不会被拉回输入框,会保留在队列中继续自动处理
已经在用
Up/Down 回溯历史时,方向键仍按历史导航处理,不会打断使用 Ctrl+R 反向搜索
按
Ctrl+R 交互式搜索您的命令历史:1. 开始搜索:按
Ctrl+R 激活反向历史搜索2. 输入查询:输入文本以在之前的命令中搜索 - 搜索词将在匹配结果中高亮显示
3. 导航匹配:再次按
Ctrl+R 循环浏览更早的匹配项4. 接受匹配:
按
Tab 或 Esc 接受当前匹配并继续编辑按
Enter 接受并立即执行命令5. 取消搜索:
按
Ctrl+C 取消并恢复原始输入在空搜索时按
Backspace 取消搜索显示匹配的命令并高亮搜索词,方便查找和重用之前的输入。
后台 Bash 命令
CodeBuddy Code 支持在后台运行 bash 命令,允许您在长时间运行的进程执行时继续工作。
后台运行的工作原理
当 CodeBuddy Code 在后台运行命令时,它会异步运行命令并立即返回后台任务 ID。CodeBuddy Code 可以在命令继续在后台执行时响应新的提示。要在后台运行命令,您可以:
提示 CodeBuddy Code 在后台运行命令
按
Ctrl+B 将常规 Bash 工具调用移至后台。(Tmux 用户必须按两次 Ctrl+B,因为 tmux 的前缀键。)主要功能:
输出被缓冲,CodeBuddy 可以使用 TaskOutput 工具检索它
后台任务具有唯一 ID,用于跟踪和输出检索
CodeBuddy Code 退出时,后台任务会自动清理
常见的后台命令:
构建工具 (webpack, vite, make)
包管理器 (npm, yarn, pnpm)
测试运行器 (jest, pytest)
开发服务器
长时间运行的进程 (docker, terraform)
使用 ! 前缀的 Bash 模式
通过在输入前加上
! 前缀直接运行 bash 命令,无需通过 CodeBuddy:! npm test! git status! ls -la
Bash 模式:
将命令及其输出添加到对话上下文中
显示实时进度和输出
支持相同的
Ctrl+B 后台运行长时间运行的命令不需要 CodeBuddy 解释或批准命令
这对于快速 shell 操作同时保持对话上下文非常有用。
权限模式
CodeBuddy Code 支持多种权限模式来控制工具使用的授权方式:
可用模式
模式 | 描述 | 快捷键切换 |
普通模式 (默认) | 根据权限规则询问工具使用确认 | Shift+Tab |
自动接受编辑模式 | 自动批准文件编辑操作 (Edit/Write),其他工具仍需确认 | Shift+Tab |
跳过权限模式 | 绕过所有权限检查。建议仅在无互联网访问的沙箱中使用 | Shift+Tab |
计划模式 | AI 将制定计划并等待批准后再执行 | Shift+Tab |
切换权限模式
使用
Shift+Tab 在模式之间切换(所有平台通用,Windows 同时支持 Alt+M 别名)。可通过 ~/.codebuddy/keybindings.json 自定义快捷键使用
--permission-mode 命令行参数指定启动模式:codebuddy --permission-mode acceptEditscodebuddy --permission-mode bypassPermissionscodebuddy --permission-mode plan
在
settings.json 中设置默认模式:{"permissions": {"defaultMode": "acceptEdits"}}
权限规则
说明:
在交互式会话中随时输入
? 可查看可用的快捷键和命令。使用 /help 命令获取更多帮助信息。