迁移至 1.0 | OpenCode
OpenCode 1.0 是对 TUI(终端用户界面)的一次完全重写。我们从基于
go + bubbletea 的 TUI(存在性能和功能局限)迁移到了内部开发的框架 OpenTUI,该框架采用 zig + solidjs 编写。新的 TUI 与旧版的操作逻辑一致,因为它连接的是同一个 OpenCode 服务器。升级 (Upgrading)
如果您当前使用的是旧版本,系统不应自动升级到 1.0。不过,某些较旧版本的 OpenCode 始终会抓取最新版本。
若要手动升级,请运行以下命令:
opencode upgrade 1.0.0
若要降级回 0.x 版本,请运行:
opencode upgrade 0.15.31
交互变更 (UX changes)
- 会话历史更紧凑:仅显示编辑(edit)和 Bash 工具的完整细节。
- 新增命令栏:几乎所有操作都通过命令栏进行。在任何上下文中按下
Ctrl + P即可调出,查看所有可用操作。 - 新增会话侧边栏:提供有用信息,可以切换开启或关闭。
- 功能移除:我们移除了一些不确定是否有人在使用的功能。如果发现某些重要功能缺失,请提交 Issue,我们会尽快将其加回。
破坏性变更 (Breaking changes)
按键绑定重命名 (Keybinds renamed)
为了确保在不同环境下渲染的一致性,以下是 1.0 版本中重命名的按键绑定对照表:
| 旧绑定名 | 新绑定名 |
|---|---|
messages_revert | messages_undo |
switch_agent | agent_cycle |
switch_agent_reverse | agent_cycle_reverse |
switch_mode | agent_cycle |
switch_mode_reverse | agent_cycle_reverse |
按键绑定移除 (Keybinds removed)
以下按键绑定已被移除,其功能已被合并或被新的命令栏操作取代:
messages_layout_togglemessages_nextmessages_previousfile_diff_togglefile_searchfile_closefile_listapp_helpproject_inittool_detailsthinking_blocks