# 🚀 CodeBuddy Code v2.96.0 Release

## ✨ New Features

### SDK Custom Sub-Agent Support

The `agents` / `systemPrompt` / `appendSystemPrompt` parameters passed to SDK `initialize` are now correctly injected into the product configuration, taking effect equivalently to the CLI's `--agents` / `--system-prompt` / `--append-system-prompt`. SDK users can now conveniently customize sub-agents and system prompts.

### Sub-Agent Tool Blacklist

`AgentDefinition` adds a new `disallowedTools` field, allowing a disabled tool list to be configured for individual sub-agents. It is automatically combined with the session-level `--disallowedTools` (taking the union), enabling more fine-grained control over sub-agent capability boundaries.

## 🔧 Improvements

- **Session Title Internationalization**: AI-generated session titles now follow the user's language settings — Chinese environments produce Chinese titles, instead of always outputting English.

## 🐛 Bug Fixes

- **Web UI Refresh Loses Session Title**: When restoring an existing session, the top title now immediately displays the original title, no longer briefly falling back to "New Conversation".
- **MCP List Cache**: Fixed an issue where, after `list()` returned an empty result, calling `add()` would not show the new server in the cache.
- **Streaming Output Model Display**: `stream-json` output now prefers the model id actually reported by the provider, avoiding the parent agent's configuration id from being displayed when forwarding sub-agent events, improving observability.
