界面与客户端
TUI(终端界面,默认形态)
opencode 或 opencode /path/to/project 启动。三种输入前缀:
| 前缀 | 作用 |
|---|---|
@文件名 | 模糊搜文件并把内容注入对话(也支持配置好的 references 别名 @alias/@alias/) |
!命令 | 执行 shell 命令,输出作为 tool result 加入对话 |
/命令名 | 执行内置或自定义 slash command |
常用内置命令
/connect(添加 Provider)、/compact(压缩会话,别名 /summarize)、/details(切换工具执行细节展示)、/editor(打开外部编辑器写消息)、/init(引导创建/更新 AGENTS.md)、/models、/new(新 session,别名 /clear)、/undo//redo(撤销/重做,依赖 Git,会连带回滚文件改动)、/sessions(别名 /resume//continue)、/share//unshare、/themes、/thinking(仅控制思维块展示,不影响实际推理能力,真正切换推理档用 ctrl+t 循环 variant)、/export(导出会话为 Markdown)、/exit(别名 /quit//q)、/help。
多数命令有默认 leader 快捷键组合(ctrl+x + 字母)。
Editor 设置
/editor、/export 用 $EDITOR 环境变量指定的编辑器;GUI 编辑器(VS Code/Cursor/Windsurf 等)需加 --wait 使进程阻塞等待关闭。
TUI 配置(tui.json,独立于 opencode.json)
theme、keybinds、leader_timeout(默认 2000ms)、scroll_speed/scroll_acceleration、diff_style(auto/stacked)、mouse、attention(桌面通知+提示音,默认关闭,可自定义音量/音效包/各事件音效文件)。命令面板(ctrl+p)还可切换”是否显示用户名”等 UI 细节,持久化跨重启。
主题(Themes)
- 默认主题
opencode;内置还有system(跟随终端配色)、tokyonight、everforest、ayu、catppuccin(+macchiato)、gruvbox、kanagawa、nord、matrix、one-dark等 - 需终端支持 truecolor(24bit),否则退化为 256 色近似
- 自定义主题:JSON 格式文件,放在 4 级目录(内置 < 全局
~/.config/opencode/themes/< 项目<root>/.opencode/themes/< 当前目录./.opencode/themes/,后者覆盖前者同名主题),支持十六进制/ANSI/明暗双值/"none"(继承终端默认色)
快捷键(Keybinds)
- 全部在
tui.json的keybinds字段自定义,与内置默认合并,只需写要改的项 - Leader Key 机制:默认
ctrl+x,多数操作需先按 leader 再按字母,避免和终端本身快捷键冲突;子 session 导航(session_child_first/session_child_cycle(→)/_reverse(←)/session_parent(↑))刻意不用 leader - 绑定值可以是单个/逗号分隔多个快捷键字符串、数组,或带
key/event/preventDefault/fallthrough的对象 - 设为
"none"/false可禁用某快捷键 - Windows 下
input_undo/terminal_suspend默认值不同(终端不支持 POSIX suspend) - 桌面 App 的 prompt 输入框内置 Readline/Emacs 风格编辑快捷键(
ctrl+a/e/b/f/d/k/u/w、alt+b/d/f、ctrl+t、ctrl+g等),当前不可配置
Share(会话分享)
/share生成公开链接opncd.ai/s/<share-id>,同步对话历史到 OpenCode 服务器,任何拿到链接的人都可访问- 三种模式:
manual(默认)/auto(每个新会话自动分享)/disabled /unshare撤销分享并删除关联数据- 企业场景建议:项目级
opencode.json设"share": "disabled"并入库,强制团队遵守;企业还可选择仅限 SSO 用户分享,或自托管分享页(路线图中)
Web 客户端
opencode web 启动本地 server(默认绑定 127.0.0.1 随机端口)并自动打开浏览器。
- 默认不设密码时无认证——仅建议本机使用;对外暴露必须设
OPENCODE_SERVER_PASSWORD - 可配置
--port/--hostname(0.0.0.0开放局域网)/--mdns(局域网可发现,域名默认opencode.local,可用--mdns-domain自定义)/--cors - 可用
opencode attach http://host:port让 TUI 挂到已运行的 Web/Serve 后端,Web 和 TUI 共享同一 session 状态 - Windows 用户建议在 WSL 里跑
opencode web而非 PowerShell
IDE 插件
支持 VS Code 及其 fork(Cursor/Windsurf/VSCodium):终端里跑一次 opencode 即自动安装扩展。
Cmd/Ctrl+Esc:分屏打开 OpenCode(或聚焦已有会话)Cmd/Ctrl+Shift+Esc:强制开新会话- 自动感知当前选中代码/标签作为上下文
Cmd+Option+K/Alt+Ctrl+K:插入文件引用(如@File#L37-42)- 若要让
/editor、/export用自己的 IDE 打开,需设EDITOR="code --wait"
ACP(Agent Client Protocol)支持
opencode acp 以 ACP 兼容子进程运行(JSON-RPC via stdio),可接入任何支持 ACP 的编辑器:Zed、JetBrains IDEs(AI Assistant acp.json)、Avante.nvim、CodeCompanion.nvim 等。
- 除
/undo、/redo等少数内置命令外,功能与终端体验完全一致:内置工具、自定义工具/命令、MCP、AGENTS.md规则、Formatter/LSP、Agent 与权限系统全部支持
Windows / WSL
官方推荐在 WSL 里跑 OpenCode(文件系统性能更好、终端兼容性更完整),而非直接 PowerShell。
- Windows 文件通过
/mnt/c/、/mnt/d/等挂载点访问,建议把仓库克隆进 WSL 文件系统(如~/code/)以获得最佳性能 - 桌面 App + WSL Server 模式:
opencode serve --hostname 0.0.0.0 --port 4096(务必配OPENCODE_SERVER_PASSWORD),桌面 App 连http://localhost:4096(不通则用hostname -I拿到的 WSL IP) - Web 客户端同理建议在 WSL 终端里跑
opencode web --hostname 0.0.0.0 - 配置和 session 数据存于 WSL 内的
~/.local/share/opencode/
关联
- 索引 — 返回总索引
- CLI与命令 — TUI 内置命令与 CLI 子命令是同一体系的两面
- 权限与安全 — Share 的隐私考量与企业场景关联
- 对比Claude-Code — Claude Code 目前以 CLI/IDE 插件为主,无独立 Web/桌面 App,形态覆盖面上 OpenCode 更广
来源
https://opencode.ai/docs/{tui,themes,keybinds,share,web,ide,acp,windows-wsl}.mdx(dev 分支)。整理:赵卫国 2026-07-07。