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 | ✅ 推荐 |
| 正常使用中 | 可以等下次 |
⬆️ 升级命令
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_contentinterleaved 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 createnow writes a validpermissions.denyconfig. (@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)

