跳转到内容

TUI 终端界面

使用 OpenCode 终端用户界面。

OpenCode 提供了一个交互式的终端界面(TUI),用于与 LLM 一起处理你的项目。

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

Terminal window
opencode

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

Terminal window
opencode /path/to/project

进入 TUI 后,你可以向它发送消息。

Give me a quick summary of the codebase.

文件引用

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

How is auth handled in @packages/functions/src/api/index.ts?

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


Bash 命令

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

!ls -la

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


命令 Commands

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

/help

大多数命令也有使用 ctrl+x 作为 leader key 的快捷键,其中 ctrl+x 是默认的 leader key。了解更多。

以下是所有可用的 slash 命令:


connect

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

/connect

compact

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

/compact

快捷键: ctrl+x c


details

切换工具执行详细信息的显示。

/details

快捷键: ctrl+x d


editor

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

/editor

快捷键: ctrl+x e


exit

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

/exit

快捷键: ctrl+x q


export

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

/export

快捷键: ctrl+x x


help

显示帮助对话框。

/help

快捷键: ctrl+x h


init

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

/init

快捷键: ctrl+x i


models

列出可用模型。

/models

快捷键: ctrl+x m


new

开始新会话。别名: /clear

/new

快捷键: ctrl+x n


redo

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

在内部,这使用 Git 来管理文件更改。所以你的项目 必须是一个 Git 仓库。

/redo

快捷键: ctrl+x r


sessions

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

/sessions

快捷键: ctrl+x l


share

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

/share

快捷键: ctrl+x s


themes

列出可用主题。

/theme

快捷键: ctrl+x t


thinking

切换对话中思考/推理块的可见性。启用后,你可以看到支持扩展思考的模型的推理过程。

/thinking

undo

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

在内部,这使用 Git 来管理文件更改。所以你的项目 必须是一个 Git 仓库。

/undo

快捷键: ctrl+x u


unshare

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

/unshare

编辑器设置 Editor setup

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

Terminal window
# Example for nano or vim
export EDITOR=nano
export EDITOR=vim
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
export EDITOR="code --wait"

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

流行的编辑器选项包括:

  • code - Visual Studio Code
  • cursor - Cursor
  • windsurf - Windsurf
  • nvim - Neovim editor
  • vim - Vim editor
  • nano - Nano editor
  • notepad - Windows Notepad
  • subl - Sublime Text

某些编辑器需要命令行参数才能在阻塞模式下运行。--wait 标志使编辑器进程一直阻塞直到关闭。


配置 Configure

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

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

选项 Options

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

自定义 Customization

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


用户名显示 Username display

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

  • 命令面板:搜索 “username” 或 “hide username”
  • 设置会自动保存,并在 TUI 会话之间被记住