OpenCode 提供了一个交互式的终端界面或 TUI,用于使用 LLM 处理您的项目。
运行 OpenCode 会为当前目录启动 TUI。
opencode
或者您可以为特定的工作目录启动它。
opencode /path/to/project
进入 TUI 后,您可以使用消息提示它。
Give me a quick summary of the codebase.
##文件引用
您可以使用 @ 在消息中引用文件。 这会在当前工作目录中进行模糊文件搜索。
Note💡 提示
您还可以使用
@在消息中引用文件。
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 后可用。
Note💡 提示
任何文件更改也将被恢复。
在内部,这使用 Git 来管理文件更改。 因此,您的项目需要是一个 Git 仓库。
/redo
快捷键: ctrl+x r
###sessions
列出并在会话之间切换。 别名: /resume, /continue
/sessions
快捷键: ctrl+x l
###share
共享当前会话。 了解更多。
/share
快捷键: ctrl+x s
###themes
列出可用的主题。
/theme
快捷键: ctrl+x t
###thinking
切换对话中思维/推理块的可见性。 启用后,您可以查看支持扩展思维的模型的推理过程。
Note📝 注意
此命令仅控制是否显示思维块 - 它不会启用或禁用模型的推理能力。 要切换实际的推理能力,请使用
ctrl+t循环浏览模型变体。
/thinking
###undo
撤消对话中的最后一条消息。 删除最近的用户消息、所有后续响应以及任何文件更改。
Note💡 提示
所做的任何文件更改也将被还原。
在内部,这使用 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 Codecursor- Cursorwindsurf- Windsurfnvim- Neovim editorvim- Vim editornano- Nano editornotepad- Windows Notepadsubl- Sublime Text
Note📝 注意
某些编辑器(如 VS Code)需要使用
--wait标志启动。
某些编辑器需要命令行参数才能以阻塞模式运行。 --wait 标志使编辑器进程阻塞直到关闭。
##配置
您可以通过 OpenCode 配置文件自定义 TUI 行为。
{
"$schema": "https://opencode.ai/config.json",
"tui": {
"scroll_speed": 3,
"scroll_acceleration": {
"enabled": true
}
}
}
###选项
scroll_acceleration- 启用 macOS 样式的滚动加速,以实现平滑、自然的滚动。 启用后,滚动速度会随着快速滚动手势而增加,并保持慢速移动的精确度。 此设置优先于scroll_speed,并在启用时覆盖它。scroll_speed- 控制使用滚动命令时 TUI 的滚动速度(最小值:1)。 默认为3。 注意:如果scroll_acceleration.enabled设置为true,则忽略此设置。
##自定义
您可以使用命令面板(ctrl+x h 或 /help)自定义 TUI 视图的各个方面。 这些设置在重新启动后仍然有效。
用户名显示
切换您的用户名是否显示在聊天消息中。 通过以下方式访问此功能:
- 命令面板:搜索“username”或“hide username”
- 该设置会自动持久化,并在 TUI 会话中被记住