OpenCode 这两周的更新密度有点离谱——9 个版本,堆了 100+ 条改动。翻了完整的 changelog,挑出几个真正影响日常使用的,给大家梳理一下。
9 个版本一览
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
v1.15.8 和 v1.16.1 在仓库里没找到 tag(可能跳号了),所以范围是这 9 个版本。
一、TUI 体验:Diff Viewer 从 0 到能用
这 9 个版本里,Diff Viewer 是一条贯穿的主线。
v1.15.6:第一次出现
-
在 TUI 里加了完整的 diff 查看器 -
自动折叠单层目录,文件树更紧凑
v1.15.9:直接重做
-
文件树 + 刷新布局 -
默认开启 diff viewer -
优化空状态和上下文 -
键位精简
v1.16.2:补齐导航
-
支持 next / previous hunk 导航 -
长终端输出颜色修复
实操效果:以前改完代码想看改了啥,要切到 git 工具;现在 TUI 里直接 d 键打开 diff viewer,文件树一目了然,hunk 之间 j/k 跳转。3 个版本迭代下来,已经是个能用、好用的工具。
二、Core 层:Provider 矩阵扩到 75+
v1.15.7:Grok OAuth 接入
-
之前用 Grok 要单独搞 device-code 登录 -
现在直接 opencode login走标准 OAuth 流程 -
PDF 附件也支持了
v1.15.11:DigitalOcean + Google 修复
-
DigitalOcean 不再"创 MAK",直接用 OAuth token -
Google tool calling 在上游出 bug 后修好 -
新增 headerTimeout配置(OpenAI 默认 10s)
v1.16.0:AWS Bedrock 支持 OpenAI
-
之前 Bedrock 上跑 OpenAI 模型要走兼容层 -
现在原生支持 -
Copilot 用量统计更新到 token 计费
v1.16.2:Snowflake Cortex 加入
-
商业数据云厂商正式入列 -
由社区贡献者 @kameshsampath 提交
对用户的实际意义:OpenCode 的 provider 数从原来的几十个到现在 75+,意味着几乎任何云厂商的模型都能直连。不用再为"我们公司用 Snowflake / DigitalOcean"发愁。
三、Workspace:多项目协同是 v1.16 的重头戏
v1.16.0 的几个关键改动
- 托管 workspace 克隆
:保留 dirty 和 untracked 文件——之前 git stash那一套省了 - 会话移动
:session 可以在 workspace 之间搬迁(这个在文档里写得含混,待社区验证 UI) - Skill 发现 + 文件式 agent 加载
:这是大改动,单独讲
Skill 系统(v1.16.0)
新增了 skill discovery 和 file-based agent loading:
-
不需要注册表,项目根目录的 skills/文件夹直接识别 -
Agent 也支持文件式定义( agents/目录) -
跟 Anthropic 早前推的 skill 概念对齐
为什么这个改动重要:OpenCode 的扩展性从"改配置"升级到"放文件就行"。新人 clone 一个项目,发现项目自带一堆 skill 就能直接用——这是降低团队配置成本的关键一步。
四、性能:v1.16.0 启动提速 38%
社区贡献者 @StarpTech 提的 PR 干的事——重构了启动流程,把 OpenCode 的启动时间砍了 38%。
怎么测的:本地冷启动 time opencode --version:
|
|
|
|---|---|
|
|
|
|
|
|
不夸张地说,敲回车到能输入 prompt 的速度已经接近原生 CLI 体验了。TUI 党应该最有感触——以前输完 opencode 要等一下光标才闪,现在几乎瞬开。
五、API 稳定性:错误信息终于能看了
v1.15.7 和 v1.15.9 集中修了一波错误处理:
v1.15.7
-
V2 session API 返回 UnknownError时附带日志 reference ID -
通用 500 错误不再泄露配置细节 -
未知 API 错误附带 reference ID -
503 ServiceUnavailableError用于未就绪的 mutation SessionNotFoundError用于不存在的 session
v1.15.9
-
HTTP API 返回 PTY error body -
返回 MCP server not found error -
返回 session busy error body
对集成方的影响:以前 OpenCode 报错就是 "Internal Server Error" 一行字,根本不知道去哪查;现在错误带 reference ID,去服务端日志直接 grep 就能定位。自动化脚本、CI 集成方省心很多。
六、桌面端:从"能打开"到"真能用"
桌面端在 v1.15.5-v1.16.2 这波改了不少:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
重点说两个:
- v1.16.0 配色主题
——之前桌面端是固定深色,现在支持切换了,社区做的几套配色都很有质感 - v1.16.0 思考等级选择器
——在 V2 提示框里能直接调 thinking level,不用去配置文件改
七、几个值得专门说的细节
1. v1.16.0:Edit 防误操作(v1.16.2 加固)
-
v1.16.0 没明确说明 -
v1.16.2 明确:edit 操作拒绝宽松匹配,避免覆盖错代码或误替换已有文件
为什么这事重要:之前 OpenCode 改代码偶尔会"撞库"——多个相似函数名匹配错位置。这个修复等于给 edit 加了强保险。
2. v1.15.12:OpenAI WebSocket 支持
新加了一个实验性 flag:
export OPENCODE_EXPERIMENTAL_WEBSOCKETS=true
对 OpenAI 响应使用 WebSocket 传输,减少长 session 下的连接掉线。v1.16.2 又加固了:超时保持、重试、custom base URL 支持。
3. v1.15.11:模态字段可选
配置 modalities 时可以只设 input 或 output,不用两个都写——之前必须同时配两个,否则报错。
4. v1.15.12:密码允许冒号
社区贡献者 @neriousy 提的修复——之前密码里带 : 会解析失败,常见于带端口号的代理密码。
5. v1.16.0:ACP 回放修复
ACP.loadSession 现在能完整回放所有消息——之前会丢消息,社区提的 issue 修了。
八、贡献者统计
9 个版本合计 44 位社区贡献者。提几个贡献比较密集的:
- @arvsrn
(v1.16.0):桌面配色主题、首页、按钮、选择器——一手包办桌面 v2 的视觉 - @OpeOginni
(v1.15.5/6/9/12):TUI + 桌面 + 错误处理,跨多个模块 - @jerome-benoit
(v1.15.11/16.0/16.2):SAP AI Core、Anthropic Opus 4.7 适配 - @StarpTech
(v1.15.6/11/16.0):triage、文档、启动提速 38% 的 PR - @kagura-agent
(v1.15.5/7):TUI 对比度修复、DOMPurify 链接配置
九、踩坑提醒
升级到这 9 个版本后,几个需要注意的点:
- v1.15.10 是 desktop 紧急修复版本
——如果之前用了 desktop,升级到这里会修复打开项目/会话的问题,建议直接装 - v1.15.11 的 headerTimeout
——如果之前请求 OpenAI 模型偶发超时,新默认 10s 可能会更严格,需要的话手动调大 - v1.16.0 的 Skill 系统
——放在项目根目录 skills/里会自动加载,如果是公开仓库,记得 review 一下别把内部工具暴露了 - v1.16.2 的 Edit 强校验
——以前能改的代码现在可能拒绝匹配,如果脚本依赖 edit tool 要测一下
写在最后
9 个版本看下来,OpenCode 团队这阵子的发力点很清楚:打磨 diff viewer、扩展 provider、引入 Skill 系统、性能优化、桌面端成熟度。其中 v1.16.0 是真正意义上的"大版本"——Skill 系统、Workspace 移动、原生 Bedrock OpenAI、启动提速,这些改动叠加起来,让 OpenCode 从"能用的 CLI 工具"开始往"团队级 AI 编程平台"演进。
你最关心这 9 个版本里的哪个改动?已经开始用 Skill 系统了吗?评论区聊聊。





