跳到主要内容

25 篇博文 含有标签「OpenCode」

查看所有标签

OpenCode 1.15.11 发布 —— 后台 Agent 不再轮询了,TUI 提示符也能自适应了

· 阅读需 3 分钟

OpenCode v1.15.11 封面

后台 Agent 从"定期看一眼"变成"等通知"

这是本次更新最有架构意义的改动。实验性后台 agent 之前通过轮询来检查状态——每隔几秒发一次请求确认"还活着吗?做完了吗?"。这在低负载时问题不大,但如果你同时跑好几个后台 agent,终端里的 polling 信号能堆成一片噪音。

现在改成推送了。Agent 跑完后主动通知,不再需要定时器一遍遍去问。本质上是从 pull 模型切到了 push 模型——对用户来说最直接的感受是终端安静了,更长远的影响是轮询没有了,省掉的不仅是带宽,还有 provider 的 token 消耗(每次轮询都是一次 API 调用)。

配置超时终于可定制了

新增的 headerTimeout 配置项解决了另一个日常痛点。OpenAI 类 provider 的请求之前是硬编码超时,网络状况稍差就容易超时重试。现在可配置,默认 10s,适合接入各种兼容 OpenAI 接口的 provider。如果你用自建网关或者海外代理,这个参数是救命级别的——不用再被神秘断连折磨。

Google 用户注意:tool calling 回归了

上个版本 Google tool calling 因为 provider 端的 tool ID 变更出了问题,这次修复了。同时数字海洋(DigitalOcean)推理也不再走繁琐的 MAK 流程——直接用 OAuth token 就行(#28897,感谢 @Spherrrical)。如果你在生产环境用的是自建推理,这次的两个修复都值得关注。

其他值得顺带提的:

  • 恢复的会话不再继续已中断的孤儿工具(#26178,感谢 @edevil)。之前如果 session 恢复后会尝试继续执行上次中断的 tool 调用,但调用上下文早就变了,导致奇怪的状态残留。现在恢复时直接跳过孤儿工具
  • OpenAI reasoning 摘要独立渲染。之前推理内容的摘要和正文混在一起,现在分开显示,更一目了然
  • Shell tool 会主动告知配置的超时时间。模型在调用 shell 时能知道当前超时设置,不会盲目等待
  • TUI 提示符宽度自适应终端宽度(#28255,感谢 @bjschafer),还可以配置固定宽度

桌面端 v2 本轮改善

桌面端 v2 在 1.15.9 大改版后持续打磨:主屏幕、输入框、状态弹窗、会话控制都有细化。重点是几个 bug 修复值得注意:

  • 桌面窗口恢复时的白闪修了。如果你用 Desktop v2,升级到 1.15.9 后应该遇到过这个——切回窗口时先白一下再显示内容。这次终于清了
  • Web 部署不再跑桌面端健康检查。之前用 OpenCode Web 的用户,后台会莫名其妙检查桌面端心跳,非桌面环境纯属浪费
  • 重复的服务器连接自动合并。插件等来源导致同一台 MCP 服务器重复注册的,现在菜单里自动去重

升级:

npm update -g opencode-ai
brew upgrade opencode

完整更新日志:GitHub Release

📢 关注我,获取最新开源更新日志和开发者工具动态。如果觉得这篇文章有用,欢迎转发给身边的开发者朋友。

#OpenCode #开发者工具 #Agent框架 #桌面端 #开源更新

OpenCode 1.15.10 发布 —— 桌面端打不开项目了?把生产环境的老路找了回来

· 阅读需 2 分钟

OpenCode v1.15.10 封面

最直接的影响:桌面端回归"老路"

这次更新的全部内容用一句话说就是:恢复 legacy production desktop flows 中打开项目和启动会话的旧流程。

为什么这个修复重要?因为 OpenCode 桌面端的用户分两拨:一拨享受新版 UI 的便捷,另一拨的生产力完全建立在原有工作流上——项目怎么打开、会话怎么创建,肌肉记忆早就定型了。v1.15.9 改版后,后一拨人等于被强行换了操作习惯。从用户角度看,"变好了"不如"用惯了"——工具的本质是辅助思考,而不是每次打开都要重新学一遍操作。

我有个判断:这次恢复不是在"倒退",而是在给新桌面端 UI 争取打磨时间。先让用户保持在熟悉的工作流里,等新流程足够成熟再平顺过渡。桌面端产品不该让用户在新旧之间"二选一"——兼容才是对用户最大的尊重。

🔧 本次修复清单

  • 恢复 production desktop 打开项目流程:回归之前的项目选择与加载方式,桌面端用户无需重新适应
  • 恢复 production desktop 会话启动流程:新建会话按原路径执行,不再走新 UI 流程
  • 修复范围精准聚焦桌面端,CLI 和 TUI 不受影响

这次更新透露了什么信号?

一个版本只修一个 bug,说明 OpenCode 团队对桌面端的定位有了变化。早些版本,桌面端还像是"CLI 的附属品",更新日志里一笔带过。但这次专门为一个桌面回归问题发版修——而且还是 legacy production flow 这种"听起来不酷但实际很痛"的问题——说明桌面端用户已经多到值得为他们的体验单独发版了。开发者工具从 CLI 到桌面端是一条成熟的路(VS Code、JetBrains 都走过),OpenCode 现在也在走这条路,只是还在"边修边建"的阶段。

升级:

brew upgrade opencode
npm update -g opencode-ai

完整更新日志:GitHub Release

📢 关注我,获取最新开源更新日志和开发者工具动态。

#OpenCode #桌面端 #版本更新 #开发者工具

OpenCode 1.15.9 发布 —— 你写完代码后,怎么确认改了什么?

· 阅读需 2 分钟

OpenCode v1.15.9

Diff 查看器重做,代码审查效率翻倍

Diff 查看器是这次更新的最大亮点。新加入的文件树结构让你一眼看清改动的全貌。实际用过就知道,代码审查最烦的就是在文件之间跳来跳去,新版本把文件层级和 diff 内容整合在一起,看一眼就知道改了哪些文件、改了哪里,效率提升不止一个档次。

错误处理全面升级

错误处理做了系统性改进。HTTP API 错误全面细化,对用 OpenCode 做 CI/CD 集成的团队来说,这是从黑盒到可调试的关键一步。技能调用失败提示不再模糊,PTY 缺失会给出具体原因,安装升级失败也能明确错在哪里。日常使用体验提升明显。

小改动也有大价值

MCP OAuth 新增回调端口配置,scope 纳入客户端元数据,配置更灵活透明。多区域 Vertex Anthropic 端点支持 us 和 eu,跨国团队可以就近部署。桌面端将标签导航整合到标题栏,会话状态实时可见,界面更清爽。TUI 新增一键复制工作树路径,省去手动输入的麻烦。

修复项精选

  • 关闭 Diff 回到正确页面:不再跳到奇怪位置,返回之前所在的页面
  • 默认模型无效时明确提示:不再让人一头雾水
  • PTY 会话显示具体错误原因:静默失败成为过去式
  • 技能调用错误更友好:错误信息不再通用模糊
  • HTTP API 错误全面细化:从黑盒到可调试的关键一步

OpenCode 1.15.7 发布 —— 从"裸奔报错"到安全加固的进化逻辑

· 阅读需 3 分钟

OpenCode v1.15.7 封面

以前 API 报错是什么样?一条 500 响应直接把服务器内部路径、中间件配置、甚至数据库表名列出来,等于给攻击者画了张"入侵路线图"。v1.15.7 现在把这些细节全部屏蔽,错误响应改为返回一个日志参考 ID,开发者可以凭此 ID 到服务端日志里定位问题——信息对用户"不可见",对开发者"可追踪"。这不是简单的"把错误藏起来",而是把安全责任从客户端转移到了受控的服务端日志系统。

V2 会话 API 全面加固更是关键一步。以前会话消息损坏可能引发进程崩溃或诡异报错,现在统一返回安全的 UnknownError;缺失会话返回明确的 SessionNotFoundError;不可用操作返回 503 ServiceUnavailableError。表面看只是改了错误码,实际上意味着 OpenCode 在把会话管理当作严肃的 API 来对待——语义清晰、状态明确,这是从"能用"到"可靠"的质变。

新增 Grok OAuth 登录也值得一说。过去使用 Grok 模型要折腾 API Key,现在直接通过设备码完成 SuperGrok 账号授权,登录门槛从"填密钥"降到了"扫个码"。配合这次新增的 PDF 附件支持,Grok 在 OpenCode 里终于可以当个"正经模型"用了。

桌面端 UI 的变化同样明显。全新首页、会话创建流程和标题栏全部重做,加上触控板捏合缩放,和之前那个"网页版套壳"的体验完全是两个东西。这种 UI 投入说明团队终于把桌面端当作独立产品来打磨了。

其他修复中,Codex OAuth 并发刷新冲突修复(#28236)值得关注——多个并发刷新互相踩踏是老问题了,这次算是从根上解决;OpenAI 推理流恢复意味着之前流式输出卡死的问题已排除;Tool schema 错误从抛出异常转为友好提示,代码生成体验更顺滑。TUI 的细节优化虽小,但折叠标签标点、默认本地项目、勾选框对齐这些恰恰是"用了才觉得舒服"的地方。

升级:

npm install -g opencode-ai

完整更新日志:GitHub Release

📢 关注我,获取最新开源更新日志和开发者工具动态。

#Opencode #AI编程 #开源更新 #开发者工具

OpenCode 1.15.6 发布 —— 终端里的代码审查困境,终结了

· 阅读需 3 分钟

Opencode v1.15.6 封面

代码审查是日常开发中最割裂的环节。git diff 输出密密麻麻,很难在加减号里快速定位关键变更;切到浏览器看 PR diff,又打断了终端里的思维流。v1.15.6 新增的 TUI Diff 查看器恰恰切中这个痛点——在终端里展开文件树、逐文件审查变更,自动折叠单子目录让结构清爽。打开后默认选中第一个文件,省去手动定位。有了 Diff 查看器,以前要在终端和浏览器之间来回切换的体验终于结束了。

审查完代码想跑个测试验证?新引入的 run prompt Shell 模式让你直接在 prompt 里执行 shell 命令,无需退出当前上下文。桌面端新增的标签页支持,让多任务切换像浏览器一样自然——开一个标签写代码,另一个查文档。Diff 查看器、Shell 模式、标签页这三个特性组合起来,OpenCode 正从一个对话式 AI 助手进化为真正的终端开发工作台。

v2 HTTP API 公开了结构化错误 Schema。以前 API 调用失败只能看笼统的 HTTP 状态码,现在错误信息包含 catalog 和 request 两级结构化字段,开发者可以精确判断参数问题还是服务端异常。OpenAPI spec 也保留了端点错误响应定义,接口文档的可信度大幅提升。

精选修复与点评:

  • Zed 编辑器上下文件限定:Zed context 只在 Zed 终端内激活,避免在 tmux 或 iTerm 里误触。编辑器感知的边界限定,是多编辑器环境下必备的工程素养。
  • 配置路径解析修复:Agent 和命令名称能正确解析相对路径了。修复虽小,但路径解析不过关,后面所有功能都可能跑偏。
  • OPENCODE_PERMISSION JSON 容错:无效 JSON 不再导致启动崩溃。一个环境变量配错就让应用整体挂掉,显然是设计缺陷,这次调整算风险兜底。
  • TUI 恢复 PgUp/PgDn 快捷键:老用户的习惯按键回来了。翻页在团队协作中非常高频,移除它像让 Vim 用户失去 j/k——回滚值得肯定。
  • 自定义 Provider 即时生效:改配置后立即出现,无需重启。对于频繁切换不同 AI 后端的开发者,这一点体验提升实实在在。
  • Plugin 工具加载容错:插件缺少 args 字段不再阻塞加载。插件生态的健壮性就体现在"单个异常不影响整体"的防御性设计上。
升级:
npm i -g opencode-ai@latest
brew install anomalyco/tap/opencode

> 完整更新日志:[GitHub Release](https://github.com/anomalyco/opencode/releases/tag/v1.15.6)

📢 **关注我**,获取最新开源更新日志和开发者工具动态。

#Opencode #开源更新 #AI编程 #开发者工具