中文
文档
TUI 终端界面

TUI

使用 OpenCode 终端用户界面。

OpenCode 提供了一个交互式终端界面(TUI),用于在项目中与 LLM 协作。

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

opencode

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

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

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


命令

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

/help

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

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


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

列出可用的主题。

/themes

快捷键: ctrl+x t


thinking

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

注意:此命令仅控制思考块是否显示 - 它不会启用或禁用模型的推理能力。要切换实际的推理能力,请使用 ctrl+t 循环切换模型变体。

/thinking

undo

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

提示:所做的任何文件更改也会被还原。

内部使用 Git 来管理文件更改。所以你的项目需要是一个 Git 仓库

/undo

快捷键: ctrl+x u


unshare

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

/unshare

编辑器设置

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

Linux/macOS

# 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 等。

Windows (CMD)

set EDITOR=notepad
 
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
set EDITOR=code --wait

要使其永久生效,请使用系统属性 > 环境变量

Windows (PowerShell)

$env:EDITOR = "notepad"
 
# For GUI editors, VS Code, Cursor, VSCodium, Windsurf, Zed, etc.
# include --wait
$env:EDITOR = "code --wait"

要使其永久生效,请将此添加到你的 PowerShell 配置文件中。

常用编辑器选项

常用的编辑器选项包括:

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

注意:某些编辑器(如 VS Code)需要使用 --wait 标志启动。

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


配置

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

opencode.json

选项

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

自定义

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


用户名显示

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

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