Skip to content

TUI

使用 OpenCode 终端用户界面。

OpenCode 提供了一个交互式终端界面 (TUI),用于配合 LLM 在你的项目上进行工作。

运行 OpenCode 会启动当前目录的 TUI。

Terminal window
opencode

或者你可以为特定的工作目录启动它。

Terminal window
opencode /path/to/project

进入 TUI 后,你可以向其发送提示消息。

请简要总结一下这个代码库。

文件引用

你可以在消息中使用 @ 来引用文件。这会在当前工作目录中进行模糊文件搜索。

@packages/functions/src/api/index.ts 中是如何处理身份验证 (auth) 的?

文件的内容会自动添加到对话中。


Bash 命令

! 开头的消息可以运行 shell 命令。

!ls -la

该命令的输出将作为工具结果添加到对话中。


命令

使用 OpenCode TUI 时,你可以输入 / 后跟命令名称来快速执行操作。例如:

/help

大多数命令还支持使用 ctrl+x 作为前缀键 (leader key) 的按键绑定,其中 ctrl+x 是默认的前缀键。了解更多

以下是所有可用的斜杠命令:


连接

向 OpenCode 添加提供商。允许你从可用提供商中进行选择并添加其 API 密钥。

/connect

压缩

压缩当前会话。别名: /summarize

/compact

按键绑定: ctrl+x c


详情

切换工具执行详情。

/details

按键绑定: ctrl+x d


编辑器

打开外部编辑器来撰写消息。使用你在 EDITOR 环境变量中设置的编辑器。了解更多

/editor

按键绑定: ctrl+x e


退出

退出 OpenCode。别名: /quit, /q

/exit

按键绑定: ctrl+x q


导出

将当前对话导出为 Markdown 并在你的默认编辑器中打开。使用你在 EDITOR 环境变量中设置的编辑器。了解更多

/export

按键绑定: ctrl+x x


帮助

显示帮助对话框。

/help

按键绑定: ctrl+x h


初始化

创建或更新 AGENTS.md 文件。了解更多

/init

按键绑定: ctrl+x i


模型

列出可用模型。

/models

按键绑定: ctrl+x m


新会话

开始新会话。别名: /clear

/new

按键绑定: ctrl+x n


重做

重做之前撤销的消息。仅在执行 /undo 后可用。

内部实现上,它使用 Git 来管理文件更改。因此你的项目 需要是一个 Git 仓库

/redo

按键绑定: ctrl+x r


会话

列出并切换会话。别名: /resume, /continue

/sessions

按键绑定: ctrl+x l


分享

分享当前会话。了解更多

/share

按键绑定: ctrl+x s


主题

列出可用主题。

/theme

按键绑定: ctrl+x t


撤销

撤销对话中的最后一条消息。删除最近的用户消息、所有后续响应以及任何文件更改。

在内部,它使用 Git 来管理文件更改。因此你的项目 需要是一个 Git 仓库

/undo

按键绑定: ctrl+x u


取消分享

取消分享当前会话。了解更多

/unshare

编辑器设置

/editor/export 命令都使用你的 EDITOR 环境变量中指定的编辑器。

Terminal window
# nano 或 vim 的示例
export EDITOR=nano
export EDITOR=vim
# 对于 GUI 编辑器,如 VS Code、Cursor、VSCodium、Windsurf、Zed 等。
# 包含 --wait
export EDITOR="code --wait"

要使其永久生效,请将其添加到你的 shell 配置文件中; ~/.bashrc~/.zshrc 等。

常见的编辑器选项包括:

  • code - Visual Studio Code
  • cursor - Cursor
  • windsurf - Windsurf
  • nvim - Neovim 编辑器
  • vim - Vim 编辑器
  • nano - Nano 编辑器
  • notepad - Windows 记事本
  • subl - Sublime Text

某些编辑器需要命令行参数才能在阻塞模式下运行。--wait 标志使编辑器进程在关闭前保持阻塞状态。


配置

你可以通过 OpenCode 配置文件自定义 TUI 行为。

opencode.json
{
"$schema": "https://opencode.ai/config.json",
"tui": {
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
}
}
}

选项

  • scroll_acceleration - 启用 macOS 风格的滚动加速,实现平滑、自然的滚动。启用后,滚动速度会随着快速滚动手势而增加,并在较慢移动时保持精确。此设置优先于 scroll_speed,启用时会覆盖它。
  • scroll_speed - 控制使用滚动命令时的 TUI 滚动速度(最小值:1)。在 Unix 上默认为 1,在 Windows 上默认为 3注意:如果 scroll_acceleration.enabled 设置为 true,则此设置将被忽略。

自定义

你可以使用命令面板 (ctrl+x h/help) 自定义 TUI 视图的各个方面。这些设置在重启后仍然有效。


用户名显示

切换用户名是否显示在聊天消息中。通过以下方式访问:

  • 命令面板:搜索 “username” 或 “hide username”
  • 该设置会自动保存,并在不同的 TUI 会话中被记住。