🚀 CodeBuddy Code v2.128.0 Release
📦 Version Information
| Component | Version |
|---|---|
| CodeBuddy Code CLI | v2.128.0 |
| Agent SDK JS | v0.3.232 |
| Agent SDK Python | v0.3.231 |
✨ New Features
Proactive Completion Notification (PushNotification Tool)
The model can now proactively trigger a terminal/desktop notification when a long-running task, background task, or scheduled task completes, reusing the existing terminal notification capability (OSC/BEL) so you can be immediately aware of task completion even when away from the terminal. Enabled by default; can be disabled via the environment variable CODEBUDDY_PUSH_NOTIFICATION_ENABLED=false.
Structured Review Findings (ReportFindings Tool)
Code review Agents (e.g., code-reviewer, silent-failure-hunter, type-design-analyzer) can now submit review findings as structured fields (file / summary / failure scenario / optional category). The terminal interface renders them as a dedicated list component instead of a large block of plain text, making reading and navigation clearer. The /code-review command is already integrated, and automatically falls back to the original plain-text format when the tool is unavailable. Enabled by default; can be disabled via CODEBUDDY_REPORT_FINDINGS_ENABLED=false.
🐛 Bug Fixes
- MCP tool call 5-minute implicit timeout: Fixed an issue where tool calls to HTTP/SSE type MCP servers were silently timed out by the transport layer's default timeout at approximately 5 minutes (reporting
UND_ERR_HEADERS_TIMEOUT), disconnected from the actual configured tool timeout. The transport layer timeout now stays consistent withMCP_TOOL_TIMEOUT. Scenarios including Bun standalone binaries, system/PAC proxies, and SSE type servers have all been aligned and fixed. - MCP tool order instability causing cache invalidation: Fixed an issue where some MCP servers returned tool lists in non-deterministic order, causing the prompt cache prefix to be invalidated throughout, slowing down responses. Tools are now sorted by name before returning, keeping the order stable across multiple requests.
- Custom model Temperature can be left empty: When a custom model has no Temperature configured, the field is no longer sent upstream, preventing GPT-5 and other OpenAI-compatible models that do not support or only support the default value from returning 400. In the Web UI, Temperature is now an optional numeric input field that can be left blank.
- Kimi K3 temperature parameter error: Fixed an issue where switching to Kimi K3 caused a
400 invalid temperatureerror because the default temperature parameter was rejected by the server. The temperature field is no longer sent for this model. - Warmup process scanning wrong directory: Fixed an issue where the warmup process mistakenly scanned the wrong working directory during standby, producing massive directory scans and irrelevant reports. When the relevant capability is not enabled, no scanning is performed at all.