Skip to content

v1.14.29:会话路径优化 + 多平台兼容性提升

发布日期:2026年4月28日


🎯 一句话总结

会话现在记录相对工作区路径,大幅提升多平台兼容性;TUI 的对话框交互和文件上下文也更顺手了。


🆕 新功能:会话记录相对工作区路径

这次更新了什么?

会话数据现在会保存相对于工作区的路径,而不是绝对路径。

这有什么用?

  • 跨机器同步:同一项目在不同电脑上的绝对路径不同,使用相对路径后会话数据可以在多台机器间通用
  • 团队协作:共享的会话数据不再绑定到某个用户的具体目录结构
  • 项目迁移:移动项目目录后,历史会话仍然有效

如何使用?

无需任何操作,升级后新创建的会话会自动使用相对路径存储。已有会话不受影响。


🔧 问题修复

Moonshot 和 Kimi 工具调用修复

问题:使用 Moonshot(月之暗面)和 Kimi 模型时,某些工具调用会被拒绝,因为工具 schema 格式不符合这些模型的要求。

修复:自动清理和转换工具 schema,确保与 Moonshot 和 Kimi 的 API 兼容。

对你有什么影响:使用 Moonshot 或 Kimi 模型时,工具调用(如文件读写、Bash 执行等)现在更稳定。


MCP OAuth 错误信息改进

问题:MCP 服务器的 OAuth 认证失败时,错误信息与原生 API 不一致,难以排查。

修复:OAuth 错误现在与原生 API 的格式保持一致。

对你有什么影响:配置 MCP 服务器时,如果 OAuth 出错,错误提示更清晰,便于定位问题。


Provider OAuth 错误一致性

问题:供应商(Provider)的 OAuth 授权错误格式不统一。

修复:统一了所有供应商 OAuth 授权错误的格式和提示。


Shell 取消清理优化

问题:取消正在运行的 Shell 命令时,命令可能留在异常状态,导致后续操作出错。

修复:Shell 取消现在会干净地结束,清理所有相关资源。

对你有什么影响:在 TUI 中按 Ctrl+C 取消命令后,终端状态更稳定。


HTTP API 创建会话支持空请求体

更新:通过 HTTP API 创建会话时,现在可以发送空请求体,使用默认配置创建。

对你有什么影响:如果你使用 OpenCode 的 HTTP API 或 SDK 集成,创建会话的调用更简单了。


Workspace HTTP API 路由修复

更新:Workspace 相关的 HTTP API 路由现在正确通过 bridge 挂载。

对你有什么影响:使用 HTTP API 管理工作区时,路由访问更可靠。


工具流式调用默认设置

更新:使用 Anthropic SDK 调用非 Anthropic 模型时,工具流式调用现在默认关闭。

对你有什么影响:如果你通过 Anthropic SDK 使用其他模型,工具调用的兼容性更好了。


DeepSeek OpenAI 兼容模式优化

更新:DeepSeek 在 OpenAI 兼容配置下,现在默认保持 reasoning_content 的交错输出。

对你有什么影响:使用 OpenAI 兼容方式调用 DeepSeek 时,推理内容的显示更完整。


实验性 LSP 工具增强

更新:实验性的 LSP 工具现在支持转发工作区符号查询(workspace symbol query)。

对你有什么影响:如果你启用了 LSP 工具,代码导航功能更强大。


Google Vertex 默认关闭工具流式调用

更新:Google Vertex AI 现在默认关闭工具流式调用。

对你有什么影响:使用 Vertex AI 时,工具调用的稳定性提升。


🖥️ TUI 改进

Zed 上下文轮询响应优化

更新:Zed 编辑器上下文的轮询机制现在更及时响应。

对你有什么影响:使用 Zed 时,编辑器上下文更新更迅速。


对话框回车键修复

问题:在 TUI 对话框中按 Enter 键时,有时会穿透到对话框下方的界面,造成意外操作。

修复:Enter 键现在在对话框内正确触发确认操作,不会泄漏到下层界面。

对你有什么影响:对话框中的键盘交互更可靠。


文件上下文改进

更新

  • 文件上下文的显示更清晰
  • 支持关闭文件上下文(如果不想在提示中包含文件信息)
  • 发送消息后自动清除文件上下文

对你有什么影响:文件上下文功能更可控,不会再意外累积大量文件信息。


opencode agent create 配置修复

问题:使用 opencode agent create 命令创建 Agent 时,生成的配置文件中 permissions 字段格式不正确。

修复:现在生成正确的 permissions.deny 配置格式。

对你有什么影响:使用 CLI 创建 Agent 时,配置文件立即可用。


🖥️ 桌面版改进

工作区图标覆盖修复

问题:为工作区设置的自定义图标覆盖,在子目录中不会生效。

修复:同一仓库内的子目录现在正确继承工作区的图标覆盖设置。

对你有什么影响:桌面版的项目图标显示更一致。


同步状态加载优化

更新:MCP、LSP 和工作区刷新的同步状态加载更可靠。

对你有什么影响:桌面版启动和切换项目时的加载体验更稳定。


📊 要不要升级?

情况建议
使用 Moonshot / Kimi 模型✅ 强烈推荐
使用多设备/多目录✅ 强烈推荐
使用 MCP OAuth✅ 推荐
使用 HTTP API✅ 推荐
正常使用中可以等下次

⬆️ 升级命令

bash
opencode upgrade

📋 技术细节

点击展开完整更新列表

Core

  • Sessions now keep a relative workspace path.
  • Moonshot and Kimi tool schemas are sanitized to avoid rejected tool calls.
  • MCP OAuth errors now match the native API more closely.
  • Provider OAuth authorize errors now match the native API more closely.
  • Shell cancellations now finish cleanly instead of leaving aborted commands in a bad state.
  • Creating a session over HTTP now works with an empty request body.
  • Workspace HTTP API routes are now mounted through the bridge.
  • Tool streaming now defaults off for non-Anthropic models when using the Anthropic SDK.
  • DeepSeek OpenAI-compatible setups now keep reasoning_content interleaved by default.
  • The experimental LSP tool now forwards the workspace symbol query.
  • Google Vertex now defaults tool call streaming off.

TUI

  • Zed context polling stays responsive.
  • Pressing Enter in dialogs now triggers the dialog instead of leaking through. (@CasualDeveloper)
  • File context is clearer, can be turned off, and clears after sending.
  • opencode agent create now writes a valid permissions.deny config. (@21pounder)

Desktop

  • Per-workspace icon overrides now stay applied for subdirectories in the same repo.
  • Sync state loading is more reliable for MCP, LSP, and workspace refreshes.

Thank you to 3 community contributors:

  • @21pounder:
    • fix(opencode): agent create generates permissions field with deny ins… (#24482)
  • @SeashoreShi:
    • docs: fix duplicated word in CLI env var table (#24614)
  • @CasualDeveloper:
    • fix(tui): consume Enter in dialog useKeyboard handlers (#23390)

← 返回更新日志