TUI
OpenCode 提供了一个交互式终端界面(TUI),用于与 LLM 一起处理你的项目。
为当前目录启动 OpenCode:
opencode
或针对特定目录:
opencode /path/to/project
文件引用
你可以在消息中使用 @ 引用文件。这会进行模糊文件搜索:
How is auth handled in @packages/functions/src/api/index.ts?
文件内容会自动添加到对话中。
配置的引用也会出现在 @ 自动补全中。
Bash 命令
以 ! 开头的消息会作为 shell 命令执行:
!ls -la
命令输出会添加到对话中。
命令
输入 / 后跟命令名来执行操作:
/help
大多数命令有使用 ctrl+x 作为默认 leader 键的键盘快捷键。
Connect
向 OpenCode 添加 provider:
/connect
Compact
压缩当前会话内容为摘要。别名:/summarize
快捷键: ctrl+x c
Details
切换工具执行详情显示:
/details
Editor
使用外部编辑器撰写消息。使用 EDITOR 环境变量。
快捷键: ctrl+x e
Exit
退出 OpenCode。别名:/quit、/q
快捷键: ctrl+x q
Export
将对话导出为 Markdown 并在编辑器中打开。
快捷键: ctrl+x x
Help
显示帮助对话框:
/help
Init
引导创建或更新 AGENTS.md。
Models
列出可用的 AI 模型。
快捷键: ctrl+x m
New
开始新会话。别名:/clear
快捷键: ctrl+x n
Redo
重做被撤销的消息。仅在 /undo 之后可用。
快捷键: ctrl+x r
Sessions
列出和切换会话。别名:/resume、/continue
快捷键: ctrl+x l
Share
分享当前会话以便协作。
Themes
列出可用的主题。
快捷键: ctrl+x t
Thinking
切换思考/推理块显示。启用后,你可以看到模型的推理过程。
注意: 这仅控制显示,不控制实际推理能力。使用 ctrl+t 切换推理。
Undo
撤销上一条消息。移除最新的用户消息、所有后续响应以及任何文件更改。
注意: 内部使用 Git 管理文件更改。项目必须是 Git 仓库。
快捷键: ctrl+x u
Unshare
取消分享当前会话。
编辑器设置
/editor 和 /export 都使用你 EDITOR 环境变量中的编辑器。
Linux/macOS:
export EDITOR=nano # 或 vim
export EDITOR="code --wait" # 用于 VS Code
Windows (PowerShell):
$env:EDITOR = "code --wait"
配置
通过 tui.json 自定义 TUI 行为:
{
"$schema": "https://opencode.ai/tui.json",
"theme": "opencode",
"leader_timeout": 2000,
"keybinds": {
"leader": "ctrl+x",
"command_list": "ctrl+p"
},
"scroll_speed": 3,
"diff_style": "auto",
"mouse": true,
"attention": {
"enabled": true,
"notifications": true,
"sound": true,
"volume": 0.4
}
}
选项
theme- 设置你的 UI 主题keybinds- 自定义键盘快捷键leader_timeout- leader 键后的等待时间(默认:2000)scroll_speed- 控制滚动速度(默认:3)diff_style- Diff 渲染:"auto"或"stacked"mouse- 启用/禁用鼠标捕获(默认:true)attention- 桌面通知和声音
Attention
配置 TUI 通知和声音:
enabled- 启用所有 attention 功能(默认:false)notifications- 桌面通知(默认:true)sound- Attention 声音(默认:true)volume- 声音音量 0-1(默认:0.4)sound_pack- 声音包 ID(默认:opencode.default)
自定义
你可以通过命令面板(ctrl+p)自定义 TUI 视图:
- 用户名显示 - 切换聊天消息中是否显示你的用户名