OpenCode 16天9个版本:MCP兼容性拉满,子代理终于能控制深度了

OpenCode v1.18.2-v1.18.10 九个版本深度解析:MCP 连接自动重连、子代理嵌套深度可控、Kimi/Claude/Mistral 等六大模型全面适配、Desktop V2 从能用到稳用。

这是 OpenCode 更新系列的第三篇。第一篇我们聊了 v1.15-v1.17 三个月的搜索改进和桌面端从无到有;第二篇见证了 v1.18 大版本发布,Desktop V2 正式上线,GPT-5.6 全面支持。

今天这篇文章,覆盖 v1.18.2 到 v1.18.10,共 9 个版本,跨度两周多。迭代速度明显加快了。我把这 9 个版本按主题分组,不逐版本罗列——毕竟单看 changelog 条目,你很难感知「到底改了什么重要的事」。

一句话结论

这 9 个版本核心在做四件事:MCP 兼容性大幅升级、子代理深度可控制、多模型适配持续优化、Desktop V2 从「能用」变「稳用」。

MCP 兼容性:连接稳定性大幅改善

MCP(Model Context Protocol)是 AI 编程工具连接外部服务的标准协议。之前 OpenCode 对 MCP 的支持只能说「基本能用」,这轮更新补了不少关键问题。

SDK 会话过期自动重连

版本改动影响
v1.18.5修复 OpenAI Responses phase handling对话不再莫名中断
v1.18.8SDK 会话过期后自动重连 MCP 服务器长时间使用不再掉线
v1.18.8mcp debug 正确使用 OAuth 回调端口调试 MCP 连接更方便
v1.18.9恢复与旧版 MCP SDK 客户端的兼容性老项目不会突然挂掉

v1.18.8 是 MCP 改进的核心版本。之前 SDK 会话过期后,MCP 连接直接断开,需要手动重启。现在自动重连,包括并发请求场景也覆盖了。

v1.18.9 补了一个容易被忽略的兼容性问题:旧版 MCP SDK 客户端。很多项目的依赖不会第一时间升级,这个修复确保了向后兼容。

新版 MCP 服务器和 OAuth 流改进

v1.18.8 还做了新版 MCP 服务器的兼容性改进,停止向新版 Gemini 模型发送已废弃的 sampling 默认值——这类「协议细节」的修复,才是让 MCP 连接真正稳定的关键。v1.18.6 修复了分支特定的仓库缓存问题,刷新一个分支不再影响另一个。这些改动看起来不起眼,但对实际使用 MCP 连接多个工具的开发者来说,体验提升非常明显。

子代理深度控制:终于能管住「套娃」了

子代理(Subagent)是 OpenCode 的核心能力之一——主代理可以把任务拆分给子代理并行处理。但之前有个问题:子代理可能会再启动子代理,形成嵌套「套娃」,消耗大量 token 且难以控制。

版本改动影响
v1.18.2子代理默认不再启动嵌套子代理避免 token 爆炸
v1.18.2可配置 subagent_depth 限制嵌套层级按需放开深度
v1.18.2Meta 模型默认推理深度改进复杂任务推理更准
v1.18.3子代理选择器支持 Up Arrow 关闭交互更自然

v1.18.2 的改动是这轮更新中最实用的。默认禁止子代理嵌套,意味着主代理拆分任务后,子代理不会再自行拆分,避免了「无限套娃」的 token 消耗。如果你确实需要多层嵌套,可以通过 subagent_depth 参数手动放开。

Meta 模型的推理深度默认改进也值得关注。这意味着 OpenCode 在处理需要多步推理的任务时,会自动选择更合适的推理策略,不需要用户手动配置。

多模型适配:Kimi、Claude、Mistral 全覆盖

这轮更新在模型适配上做了大量工作,核心目标是:不管你用哪个模型,体验都应该是一致的。

版本模型改动
v1.18.4Kimi自适应思维支持(Anthropic 兼容 provider,默认摘要推理输出)
v1.18.5Claude自适应思维处理改进,覆盖更多 response shapes
v1.18.5Mistral推理历史跨轮次保留,prompt 缓存稳定
v1.18.5MiniMax修复 M3 thinking variant 选择
v1.18.5OpenAI修复 Responses phase handling 可能导致对话中断的问题
v1.18.8Gemini停止向新版 Gemini 发送已废弃的 sampling 默认值
v1.18.10Modal自动发现可用的 Modal 模型

Kimi 的适配来自社区贡献者 @chouqin,通过 Anthropic 兼容 provider 接入,默认启用摘要推理输出。这个改动让 Kimi 用户不需要额外配置就能获得思维链能力。

Mistral 的改动虽然不显眼,但「推理历史跨轮次保留」直接影响了多轮对话的质量。之前 Mistral 在跨轮次时可能丢失推理上下文,现在这个问题解决了。

v1.18.10 的 Modal 模型自动发现也很有意思——Modal 是 serverless GPU 平台,OpenCode 现在能自动检测你在 Modal 上部署了哪些模型,省去了手动配置的麻烦。

Desktop V2:从能用到稳用

Desktop V2 在 v1.18 正式上线后,这 9 个版本几乎每个都在打磨它。我挑重点说:

核心体验改进

版本改动解决的问题
v1.18.4V2 prompt 输入重写命令/上下文/shell/附件/历史交互更可靠
v1.18.5支持当前服务器终端传输远程开发场景体验提升
v1.18.5支持当前服务器 review 数据代码审查不再需要切窗口
v1.18.8新 session 中新增项目选择器快捷方式快速切换项目
v1.18.9新增可选的 V2 桌面 sidecar基于捆绑 CLI 服务

v1.18.4 的 prompt 输入重写是 V2 的关键改进。之前 V2 的输入框在处理命令、上下文引用、shell 命令时有各种小问题,这次重写后可靠性大幅提升。

v1.18.5 引入了「当前服务器」概念——终端传输、review 数据、session 操作都支持连接到当前运行的服务器。这意味着你在远程服务器上写代码,Desktop V2 能直接获取上下文,不需要手动复制粘贴。

稳定性和 UI 细节

版本改动
v1.18.2新增 Mod+N 新标签页快捷键
v1.18.2修复 null archive time 的会话被隐藏的问题
v1.18.3修复主页滚动(sticky headers 和会话列表)
v1.18.4嵌入式终端主题与应用主题同步
v1.18.5分页 session 时间线保持正确顺序
v1.18.7修复命令面板条目在被影子命令移除后重新出现的问题
v1.18.8防止从主页视图关闭项目时冻结
v1.18.9修复可能导致桌面应用导航中断的 Solid 清理崩溃
v1.18.10修复损坏的 saved tabs

这些修复看起来琐碎,但每个都是真实用户会遇到的问题。特别是 v1.18.9 修复的 Solid 清理崩溃——这是个框架层面的 bug,会导致整个桌面应用导航中断。v1.18.10 修复的 saved tabs 损坏也很关键,之前破损的标签状态会跨启动持久化,越用越乱。

平台适配

平台改动版本
Windows隐藏与窗口边框冲突的抽屉关闭按钮v1.18.2
Windows打开文件时展开带尾部分隔符的 Windows 文件夹v1.18.8
macOS移除全屏模式的额外标题栏内嵌v1.18.7
Linux包安装 AppStream 元数据v1.18.8

其他值得注意的改动

Provider 连接改进

v1.18.4 优化了 OpenAI provider 的 header timeout,对慢连接场景更友好——比如你在代理后面或者网络不稳定的环境里用 OpenCode,之前可能会遇到连接超时,现在这个问题缓解了不少。v1.18.6 修复了连接 provider 或完成 OAuth 后 provider 列表不刷新的问题。v1.18.8 让 provider 连接状态在更改后立即刷新,不再需要重启应用。

这些改动对使用非标准 provider(比如自建 API 代理或国内中转服务)的用户来说非常实用。之前切换 provider 后经常需要手动刷新才能看到新状态,现在完全自动化了。

分支缓存隔离

v1.18.6 修复了一个容易被忽略的问题:刷新一个分支的缓存会影响另一个分支。现在分支缓存是隔离的,切换分支时不再需要担心缓存污染。

总结

16 天 9 个版本,OpenCode v1.18.2-v1.18.10 迭代很密集。核心变化:

  • MCP 连接更稳定:自动重连、旧版兼容、OAuth 流改进
  • 子代理深度可控:默认禁止套娃,subagent_depth 参数按需配置,token 消耗更可控
  • 多模型全面适配:Kimi/Claude/Mistral/MiniMax/Gemini/Modal 六大模型都有针对性优化
  • Desktop V2 更稳定:prompt 重写、服务器连接、UI 修复
  • Provider 连接和缓存改进:切换 provider 即时刷新,分支缓存隔离,细节打磨到位

如果你在用 OpenCode,建议更新。MCP 连接稳定性和子代理控制这两个改进对日常体验影响最大。Desktop V2 用户尤其该更新——9 个版本修了大量日常小问题,累积起来差别很明显。

v1.19 目前还没有消息,但从这个迭代节奏看,应该不会等太久。


varkm