Skip to content

title: 快捷键速查表 description: OpenCode 所有快捷键的完整参考

快捷键速查表

打印这页贴在显示器旁边,三天就能肌肉记忆


📝 课程笔记

本课核心知识点整理:

快捷键速查表学霸笔记


Leader 键

OpenCode 使用 Leader 键 避免与终端快捷键冲突。

默认 Leader 键:Ctrl+X

使用方式:先按 Ctrl+X,松开,再按第二个键。


TUI 快捷键

基础操作

快捷键功能说明
Enter发送消息发送当前输入
Shift+Enter换行在输入框中换行
Tab切换 Agent在 primary agent 间切换
Shift+Tab反向切换反向切换 primary agent
Escape中断停止当前 AI 响应
Ctrl+C清空输入清空输入框内容
Ctrl+D退出关闭 OpenCode
Ctrl+P命令列表打开命令面板

Leader 键操作

快捷键功能说明
Leadern新建会话等同于 /new
Leaderl会话列表等同于 /sessions
Leaderm模型列表等同于 /models
LeaderaAgent 列表选择 Agent
Leadert主题列表等同于 /theme
Leadere编辑器打开外部编辑器
Leaderc压缩压缩当前会话上下文
Leaderu撤销撤销上一次修改
Leaderr重做重做上一次撤销
Leaderx导出导出当前会话
Leaders状态查看状态视图
Leaderb侧边栏切换侧边栏显示
Leaderg时间线会话时间线
Leadery复制复制消息
Leaderh隐藏详情切换详情显示
Leaderq退出关闭 OpenCode

会话导航

快捷键功能说明
Leader子会话切换到子 Agent 会话
Leader反向子会话反向切换子会话
Leader父会话返回父会话

消息滚动

快捷键功能
Page Up向上翻页
Page Down向下翻页
Ctrl+Alt+U向上半页
Ctrl+Alt+D向下半页
Ctrl+G / Home跳到顶部
Ctrl+Alt+G / End跳到底部

输入区操作

快捷键功能
Ctrl+A光标移到行首
Ctrl+E光标移到行尾
Ctrl+B光标后退一字符
Ctrl+F光标前进一字符
Alt+B光标后退一单词
Alt+F光标前进一单词
Ctrl+K删除到行尾
Ctrl+U删除到行首
Ctrl+W删除前一单词
Alt+D删除后一单词
Ctrl+D删除当前字符
/ 浏览输入历史

模型切换

快捷键功能
F2切换最近模型
Shift+F2反向切换
Ctrl+T切换变体

权限确认

快捷键功能
y允许
n拒绝
a始终允许(本会话)

IDE 扩展快捷键

VS Code / Cursor

快捷键 (macOS)快捷键 (Win/Linux)功能
Cmd+EscCtrl+Esc打开 OpenCode 面板
Cmd+Shift+EscCtrl+Shift+Esc新建会话
Cmd+Option+KAlt+Ctrl+K插入文件引用

Desktop 输入快捷键

OpenCode 桌面应用的输入框支持 Readline/Emacs 风格快捷键,这些快捷键内置且不可通过 opencode.json 配置:

快捷键功能
Ctrl+A移动到当前行开头
Ctrl+E移动到当前行结尾
Ctrl+B光标后退一字符
Ctrl+F光标前进一字符
Alt+B光标后退一单词
Alt+F光标前进一单词
Ctrl+D删除光标下字符
Ctrl+K删除到行尾
Ctrl+U删除到行首
Ctrl+W删除前一单词
Alt+D删除后一单词
Ctrl+T交换字符
Ctrl+G取消弹窗 / 中断响应

自定义快捷键

opencode.json 中配置:

json
{
  "$schema": "https://opencode.ai/config.json",
  "keybinds": {
    "leader": "ctrl+x",
    "session_new": "<leader>n",
    "session_list": "<leader>l",
    "model_list": "<leader>m"
  }
}

禁用快捷键

设置为 "none" 禁用:

json
{
  "keybinds": {
    "session_compact": "none"
  }
}

多键绑定

用逗号分隔多个按键:

json
{
  "keybinds": {
    "app_exit": "ctrl+c,ctrl+d,<leader>q"
  }
}

所有可配置的键绑定

来源:keybinds.mdx

基础键绑定

键名默认值说明
leaderctrl+xLeader 键
app_exitctrl+c,ctrl+d,<leader>q退出

会话管理

键名默认值说明
session_new<leader>n新建会话
session_list<leader>l会话列表
session_export<leader>x导出会话
session_interruptescape中断响应
session_compact<leader>c压缩上下文
session_timeline<leader>g时间线
session_child_cycle<leader>right切换子会话
session_child_cycle_reverse<leader>left反向切换子会话
session_parent<leader>up返回父会话
session_forknone分叉会话
session_renamenone重命名会话
session_sharenone分享会话
session_unsharenone取消分享

模型与 Agent

键名默认值说明
model_list<leader>m模型列表
model_cycle_recentf2切换最近模型
model_cycle_recent_reverseshift+f2反向切换最近模型
model_cycle_favoritenone切换收藏模型
model_cycle_favorite_reversenone反向切换收藏模型
variant_cyclectrl+t切换模型变体
agent_list<leader>aAgent 列表
agent_cycletab切换 Agent
agent_cycle_reverseshift+tab反向切换 Agent

界面控制

键名默认值说明
theme_list<leader>t主题列表
editor_open<leader>e打开编辑器
sidebar_toggle<leader>b切换侧边栏
scrollbar_togglenone切换滚动条
username_togglenone切换用户名显示
status_view<leader>s状态视图
tool_detailsnone工具详情
command_listctrl+p命令面板
tips_toggle<leader>h切换提示显示

消息操作

键名默认值说明
messages_undo<leader>u撤销
messages_redo<leader>r重做
messages_copy<leader>y复制
messages_toggle_conceal<leader>h切换详情隐藏
messages_nextnone下一条消息
messages_previousnone上一条消息
messages_last_usernone跳到最后用户消息
messages_page_uppageup向上翻页
messages_page_downpagedown向下翻页
messages_half_page_upctrl+alt+u向上半页
messages_half_page_downctrl+alt+d向下半页
messages_firstctrl+g,home跳到顶部
messages_lastctrl+alt+g,end跳到底部

输入框操作

键名默认值说明
input_submitreturn发送
input_newlineshift+return,ctrl+return,alt+return,ctrl+j换行
input_clearctrl+c清空输入
input_pastectrl+v粘贴
input_move_leftleft,ctrl+b光标左移
input_move_rightright,ctrl+f光标右移
input_move_upup光标上移
input_move_downdown光标下移
input_select_leftshift+left选中左移
input_select_rightshift+right选中右移
input_select_upshift+up选中上移
input_select_downshift+down选中下移
input_line_homectrl+a行首
input_line_endctrl+e行尾
input_select_line_homectrl+shift+a选中到行首
input_select_line_endctrl+shift+e选中到行尾
input_visual_line_homealt+a可视行首
input_visual_line_endalt+e可视行尾
input_select_visual_line_homealt+shift+a选中到可视行首
input_select_visual_line_endalt+shift+e选中到可视行尾
input_buffer_homehome缓冲区开头
input_buffer_endend缓冲区结尾
input_select_buffer_homeshift+home选中到缓冲区开头
input_select_buffer_endshift+end选中到缓冲区结尾
input_delete_linectrl+shift+d删除行
input_delete_to_line_endctrl+k删除到行尾
input_delete_to_line_startctrl+u删除到行首
input_backspacebackspace,shift+backspace退格
input_deletectrl+d,delete,shift+delete删除
input_undoctrl+-,super+z撤销输入
input_redoctrl+.,super+shift+z重做输入
input_word_forwardalt+f,alt+right,ctrl+right下一个单词
input_word_backwardalt+b,alt+left,ctrl+left上一个单词
input_select_word_forwardalt+shift+f,alt+shift+right选中下一个单词
input_select_word_backwardalt+shift+b,alt+shift+left选中上一个单词
input_delete_word_forwardalt+d,alt+delete,ctrl+delete删除下一个单词
input_delete_word_backwardctrl+w,ctrl+backspace,alt+backspace删除上一个单词

历史与终端

键名默认值说明
history_previousup上一条历史
history_nextdown下一条历史
terminal_suspendctrl+z挂起终端
terminal_title_togglenone切换终端标题

Shift+Enter 配置

部分终端默认不发送 Shift+Enter

Windows Terminal 配置

编辑 settings.json

json
{
  "actions": [
    {
      "command": {
        "action": "sendInput",
        "input": "\u001b[13;2u"
      },
      "id": "User.sendInput.ShiftEnterCustom"
    }
  ],
  "keybindings": [
    {
      "keys": "shift+enter",
      "id": "User.sendInput.ShiftEnterCustom"
    }
  ]
}

快捷键速记口诀

Tab 切 Agent,Ctrl+C 清
Leader 加字母,功能随便挑
n 新建 l 列表 m 模型
u 撤销 r 重做不用愁
方向键左右,子会话来回走

相关资源