🚀 CodeBuddy Code v2.103.0 发布
📦 版本信息
| 组件 | 版本 |
|---|---|
| CodeBuddy Code CLI | v2.103.0 |
| Agent SDK JS | v0.3.165 |
| Agent SDK Python | v0.3.164 |
✨ 新功能
DeepSeek V4 模型支持
新增 DeepSeek V4 Pro 和 Flash 两个推理模型,均支持 1M 上下文窗口、工具调用和图片理解能力,进一步丰富可选的基础模型矩阵。
Doctor 诊断面板增强
/doctor 诊断面板新增 Session ID、Trace ID、Request ID 展示,遇到问题时可以一键复制定位线索给后端排查,大幅缩短问题定位时长。
🔧 改进优化
- 调试环境变量标准化:统一使用
CODEBUDDY_DEBUG/CODEBUDDY_DEBUG_SDK替代旧的DEBUG/DEBUG_SDK,避免与第三方库的同名环境变量冲突。 - Trace ID 持久化展示:新增
lastConversationTraceId字段,确保诊断面板在会话跨回合后仍可展示最近一次的 Trace ID,便于复现问题时回查。 - 遥测错误码对齐:chat 遥测事件中
messageErrorCode与旧版数据口径对齐,使用 10 级优先链映射原始错误到业务错误码,保证报表口径一致。 - 模型切换配置精细化:每个模型独立声明
relatedModels.lite/relatedModels.reasoning,移除已无法覆盖新模型场景的全局兜底,确保各模型在 lite / reasoning 切换时跳转到预期的目标模型。 - 沙箱审批超时可配置:新增
CBC_SANDBOX_APPROVAL_TIMEOUT_MS环境变量,便于测试和调试时自定义沙箱权限拦截等待超时时长(默认 120000ms)。
🐛 问题修复
- 沙箱超时弹窗不消失:修复沙箱权限拦截等待超时自动拒绝后,Desktop / Web UI 弹窗未同步消失的问题;现在超时拒绝时会广播
permissionResolved事件,前端收到后正确清除弹窗状态。 - 思考强度同步引发的性能问题:修复客户端开会话后渲染层与 CLI 之间形成 ACP 反馈环,导致
session/set_config_option在 1.4 秒内被反复调用 200+ 次、单会话日志爆量到数百 MB 的问题;事件源头按(配置项, 值)维度去重相邻同值广播,避免任何客户端(含未做幂等去重的旧版本)触发重复推送。 - Compact 边界消息恢复异常:修复 compact 后重启 session 时,边界消息 replay 异常导致前端缺失 compact 分割线、history 误改父子链的问题;compact 边界消息现在会下发带 meta 标记的
agent_message_chunk,前端正确渲染 divider;history 重建仅对可恢复的 compact 消息执行修正。 - 路径超链接误识别:在 markdown 输出中主动给 POSIX 路径包 OSC 8 超链接,避免 VS Code / iTerm2 等终端在中英文混排场景把前缀汉字当成 URL 的一部分(例如「根因: /data/foo」误识别为「因: /data/foo」);Cmd / Ctrl+Click 现在能精确跳到目标文件,并支持
:line[:col]锚点。 - Backspace 键兼容性:在 iTerm2 / VS Code 内置终端等会把 ⌫ 发送为
\x7f的环境下,按 Backspace 现在能正常向前删除字符,不再走「向后删除」分支。 - ACP 鉴权恢复体验:优化 ACP 掉授权后的异常上报与恢复提示,避免客户端收到不完整错误状态。
- 遥测请求 ID 一致性:简化对话请求 ID 处理逻辑,统一其生成来源,移除冗余的兜底分支,避免影响上报数据的一致性。