# 更新日志

CodeBuddy Code 的所有重要更新都会记录在这里。

我们遵循 [语义化版本](https://semver.org/spec/v2.0.0.html) 规范。


## [2.49.3] - 2026-02-10

### 🔧 功能改进

- **模型错误提示优化**：当模型不可用时，自动展示当前账号支持的模型列表，方便用户快速切换到可用模型
- **错误处理**：优化了被封装的模型行为错误（ModelBehaviorError）的处理逻辑，确保工具调用失败时能够正确识别并重试
- **MCP 服务器就绪检测**：修复 SDK 模式下 MCP 工具在初始化时可能未就绪的问题

## [2.49.2] - 2026-02-10

### 🔧 功能改进

- **跨会话任务列表共享**：支持通过环境变量 `CODEBUDDY_TASK_LIST_ID` 在不同会话间共享任务列表，便于多终端协作和持续任务追踪
- **日期格式优化**：系统信息中的日期显示现在包含星期和更友好的格式，提升可读性

### 🐛 问题修复

- **中断状态竞态条件**：修复 ACP 流式模式下中断状态因共享 RunState 被后续运行修改导致的竞态问题，改用事件快照缓存中断状态
- **结果消息查找**：改进最终助手消息查找逻辑，支持从响应输出中反向搜索已完成消息，并在未找到时回退到会话历史
- **会话切换权限保持**：修复切换会话时权限模式未保留的问题，确保切换后延续当前的权限设置
- **拦截器重试机制**：修复了当模型响应拦截器触发自动重试时，视图层仍然输出原有失败结果的问题。现在拦截器启动重试后，会正确抑制失败结果的输出，仅显示重试后的成功响应

### 🔧 构建优化

- **构建工具升级**：升级 goreleaser、bun、uv 至最新版本
- **Bun 编译优化**：启用字节码编译和 ESM 格式，提升启动性能

## [2.49.1] - 2026-02-09

### 🔒 安全加固

- **沙箱配置文件保护**：沙箱模式下自动禁止写入 CodeBuddy 配置文件（settings.json），防止通过注入 hooks 实现沙箱逃逸攻击
- **工具权限同步**：沙箱的文件系统拒绝规则现在同步应用到 Write、Edit 等文件操作工具，确保安全策略全面一致

### 🔧 功能改进

- **会话列表过滤**：过滤子代理和压缩分支会话，确保会话列表和最近会话仅展示用户真实会话
- **SDK 文档修复**：修复认证配置链接中的括号格式问题

### 🐛 问题修复

- **会话历史定位**：修复了切换会话或恢复历史时，`lastMessageId` 可能错误指向无 ID 的自定义消息（如摘要、主题）导致对话链断裂的问题

## [2.49.0] - 2026-02-08

### ✨ 新功能

- **使用洞察报告**：新增 `/insights` 命令，生成 AI 驱动的使用洞察分析报告，涵盖交互风格、项目领域、摩擦点、亮点、改进建议等多个维度，支持在浏览器中查看 HTML 报告

### 🔧 功能改进

- **统计数据准确性**：优化 token 用量统计逻辑，正确区分主会话与子代理会话，修复工具调用 token 遗漏问题
- **进度显示**：支持自定义进度文本，在 loading 状态中实时展示当前处理进度
- **会话查询性能**：跨项目会话查询支持时间范围预过滤，减少不必要的反序列化开销
- **渲染稳定性**：修复 Static 组件渲染时机问题，改善消息列表显示一致性
- **会话上下文**：在 prompt 上下文中自动注入当前会话 ID，便于追踪和关联会话信息
- **自定义模型配置**：修复自定义模型错误继承全局关联模型配置的问题，确保自定义模型使用时行为符合预期
- **记忆系统**：优化记忆上下文提示词，精简表述并新增隐式记忆源支持，提升跨会话记忆召回能力
- **多语言支持增强**：所有子 Agent（Explore、Plan、Statusline、Content Analyzer 等）现在会正确遵循用户的语言设置进行回复
- **UI 刷新优化**：优化了工具执行完成后的终端刷新策略，仅在编辑类工具完成时触发刷新，并增加防抖机制减少不必要的渲染
- **内存优化**：子 Agent 任务完成后自动释放会话历史和引用，减少内存占用
- **Grep 搜索**：自动修正搜索模式参数，避免不必要的调用失败；兼容 ripgrep 正则语法
- **文件读取**：读取目录时返回目录列表，帮助快速定位目标文件
- **界面优化**：调整错误和中断状态的显示颜色，降低视觉干扰

### 🐛 问题修复

- **工具错误处理**：改进工具未找到时的错误提示和处理逻辑
- **Headless 模式**：修复使用非默认 agent（如 compact）时流式输出阻塞的问题，确保 completion 信号正确发送
- **工具结果显示**：修复 Edit 等工具执行完成后输出不显示，需要手动调整终端大小才能看到的问题
- **会话恢复列表**：移除会话恢复面板中不必要的 agent 类型过滤，允许恢复所有有效会话

## [2.48.1] - 2026-02-06

### 🔧 功能改进

- **环境变量认证冲突检测**：当设置了 `CODEBUDDY_API_KEY` 或 `CODEBUDDY_AUTH_TOKEN` 环境变量时，/login 命令会检测并提示用户如何解决冲突；认证失败时显示更详细的诊断信息
- **子代理消息标识**：修复子代理 user 消息在流式输出时缺少父工具标识的问题，客户端现可正确区分主代理和子代理的消息
- **MCP prompt 命令**：统一 MCP prompt 与斜杠命令的上下文拼接格式，确保模型能正确理解命令来源和参数

### 📝 文档更新

- **Prompt Hooks 文档**：完善基于提示词的 Hooks 功能文档，新增支持事件说明、配置示例和最佳实践指南

## [2.48.0] - 2026-02-05

### 🎉 新功能

- **图生图工具（ImageEdit）**：新增 `ImageEdit` 工具，支持基于已有图片进行 AI 编辑和修改
  - 支持风格转换、添加元素、修改颜色等图片编辑操作
  - 使用 `/model:image-to-image` 命令切换图生图模型
  - 通过 `CODEBUDDY_IMAGE_TO_IMAGE_MODEL` 环境变量或 `imageToImageModel` 设置项配置默认模型
- **Prompt Hook**：新增基于 LLM 的 Hook 类型，支持使用自然语言定义触发条件，实现更灵活的工作流控制

### 🔧 功能改进

- **图片 API 客户端重构**：提取共享的 `ImageApiClient` 模块，统一文生图和图生图的 API 调用逻辑
- **模型标签系统**：引入 `text-to-image` 和 `image-to-image` 模型标签，支持同一模型同时具备多种图像生成能力
- **Hook 配置面板**：支持显示和管理 Prompt Hook
- **Hook 错误反馈**：优化阻断信息的展示方式
- **Token 计算准确性**：`/context` 命令现在只统计实际启用的工具，排除被禁用的内置工具和 MCP 工具
- **Plan 模式权限继承**：Plan 模式下保留进入前的权限设置，支持 "plan + bypass" 等组合模式，子代理同样继承此权限配置
- **计划模式**：退出计划模式时恢复到进入前的权限模式，而非固定切换到特定模式
- **确认选项**：简化计划模式退出时的确认选项，提升用户体验
- **热更新系统优化**：在低文件描述符（FD）限制的容器环境中自动检测并优化热更新行为，避免 EMFILE 错误导致崩溃
- **新增环境变量**：支持 `CODEBUDDY_DISABLE_HOT_RELOAD` 完全禁用热更新，适用于资源受限环境
- **Windows 路径提示**：在 Windows 平台添加使用正斜杠的提示，避免反斜杠导致路径解析错误
- **WorkBuddy 配置目录分离**：WorkBuddy 现在使用独立的配置目录 `.workbuddy/`，与 CodeBuddy CLI 的 `.codebuddy/` 目录分离，避免配置冲突
- **路径处理优化**：改进了路径工具函数的兼容性和稳定性
- **UI 组件优化**：修复了 Skills 和 Agents 面板的显示问题
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.43，SDK-Python 至 0.3.41

### 🐛 问题修复

- **ACP 取消处理**：优化取消请求的事件传递机制，确保会话能正确响应取消操作
- **MCP 非交互模式**：修复 ACP 模式下 MCP 工具未正确识别为非交互模式的问题
- **记忆上下文注入**：修复记忆提示注入时缺少系统标签的问题，确保格式一致性
- **目录扫描**：修复软链接目录下文件相对路径计算不正确的问题

## [2.47.0] - 2026-02-04

### ✨ 新功能

- **跨会话记忆功能**：新增实验性记忆功能，支持 Agent 在会话间保持持久化记忆。可通过 `/config` 设置面板或 `memory.enabled` 配置项启用
- **团队记忆模式**：支持团队协作场景，将记忆存储在项目目录下便于共享

### 🔧 功能改进

- **command:// URI 处理**：优化 ACP 协议中 command:// 资源链接的处理，正确转换为斜杠命令格式并回显原始内容块
- **命令推送过滤**：修复内置命令被错误推送到 IDE 的问题，现在只推送用户自定义命令、skills 和特定内置命令
- **文件路径搜索**：优化重复字符查询的匹配精度，避免误匹配分散的字符
- **SSH 远程剪贴板**：修复在 Linux + SSH 远程环境下 Ctrl+Y 复制到剪贴板失败的问题，通过实现 OSC 52 协议支持远程终端剪贴板操作
- **会话恢复历史控制**：优化 SDK 恢复会话时的历史回放逻辑，通过 `hasPrompt` 信号让 CLI 智能判断是否需要回放历史消息，提升 resume 场景的使用体验
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.42，SDK-Python 至 0.3.40

### 🐛 问题修复

- **管道输入**：修复使用管道传递输入时内容无法被读取的问题（如 `cat file.txt | codebuddy -p "分析"`）
- **Stop Hooks 执行时机**：修复当工具需要用户确认时 Stop Hooks 被错误执行的问题，现在只有在没有待审批工具时才会触发

## [2.46.0] - 2026-02-04

### ✨ 新功能

- **语言设置**：在 `/config` 中新增 Language 选项，用户可以设置首选响应语言，CodeBuddy Code 将使用指定语言进行回复

### 🔧 功能改进

- **复制快捷键**：新增 Ctrl+Y 快捷键，可快速复制最后一条 AI 回复到剪贴板
- **Shell 命令执行优化**：修复命令执行时无条件使用 eval 包装的问题，仅在加载额外环境配置时才使用 eval，保持默认情况下的原有行为
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.41，SDK-Python 至 0.3.39

## [2.45.1] - 2026-02-04

### 🔧 功能改进

- **登录界面优化**：调整登录方式顺序，将 iOA 登录放置到最后并标注仅限腾讯内部员工使用
- **文档完善**：在快速入门文档中添加四种登录方式的详细说明
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.40，SDK-Python 至 0.3.38

## [2.45.0] - 2026-02-03

### ✨ 新功能

- **工具搜索**：新增 ToolSearch 和 DescribeTool 工具，支持通过自然语言搜索和按名称获取延迟加载的工具
- **延迟加载**：MCP 服务器支持 defer_loading 配置，减少上下文消耗并提高工具选择准确性
- **环境变量模型配置**：支持通过环境变量配置模型，方便在 CI/CD 环境和脚本中灵活控制模型选择
  - `CODEBUDDY_MODEL`：覆盖默认代理模型
  - `CODEBUDDY_SMALL_FAST_MODEL`：配置 lite 变体模型
  - `CODEBUDDY_BIG_SLOW_MODEL`：配置 reasoning 变体模型
  - `CODEBUDDY_CODE_SUBAGENT_MODEL`：配置子代理模型
  - `MAX_THINKING_TOKENS`：启用扩展思考并设置 token 预算
- **Commands 订阅**：SDK 新增 `getAvailableCommands()` 和 `subscribeToCommands()` 方法，支持获取和订阅 CLI 可用命令列表

### 🔧 功能改进

- **预发环境域名配置**：新增 staging.codebuddy.cn 等预发环境域名支持
- **命令订阅频道**：支持 SDK 订阅命令列表变更通知，实时获取可用的自定义命令和 Skills
- **Skill Fork 上下文**：支持在 Skill 中使用 `context: fork` 配置，使 Skill 在独立的子代理上下文中执行，不访问主对话历史
- **Agent 类型指定**：新增 `agent` 字段，可指定执行 Skill 的子代理类型（如 Explore、Plan 等）
- **模式命名简化**：将 "Plan Mode" 简化为 "Plan"，使界面文案更简洁
- **图片粘贴**：增加剪贴板读取重试机制，提高第三方截图工具粘贴成功率
- **图片格式支持**：扩展 macOS 剪贴板图片格式检测，支持更多截图工具
- **快捷键提示**：macOS 下明确支持 Cmd + V 和 Ctrl + V 两种粘贴方式
- **回退提示**：完善双击 Esc 回退功能的说明，包含代码回退
- **错误恢复**：当模型返回无效工具名时，系统会提示模型检查并重试，而非直接停止会话
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.39，SDK-Python 至 0.3.37

### 🐛 问题修复

- **ACP 多轮对话**：修复第二轮 prompt 直接返回结果、缺少 sessionUpdate 事件的问题
- **插件加载去重**：修复插件 skills、agents、commands 在菜单中重复显示的问题

## [2.44.1] - 2026-02-03

### 🔧 功能改进

- **Skill/Command 调用控制**：新增 `disableModelInvocation` 配置项，支持将 skill 或 command 设置为仅手动触发模式，避免被模型自动调用
- **自定义 Headers 合并优化**：修复 HTTP headers 合并时的大小写敏感问题，现在会正确覆盖同名但大小写不同的 header（如 `Authorization` 和 `authorization`）
- **输入框**：修复消息发送时序问题，确保消息完全发送后再清空输入
- **子代理中断处理**：优化 Task 子代理被用户中断时的行为，现在会返回清晰的中断提示和可恢复的 Agent ID，支持通过 `resume` 参数继续任务
- **Plan 子代理能力增强**：Plan 子代理现在可以使用 Write、Edit、MultiEdit 工具编辑 plan 文件
- **媒体内容错误自动恢复**：当图片过大、格式无效或数量过多导致请求失败时，系统会自动移除问题内容并提供压缩建议，让对话能够继续进行
- **allowed-tools 字段格式支持**：自定义 Skill 和 Command 的 `allowed-tools` 字段现在同时支持逗号分隔字符串和 YAML 数组两种格式
- **WebFetch 工具**：增强对 SPA 页面的支持，当页面主体内容为空时自动提取 meta 标签信息（title、description、og:title、og:description、keywords）
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.38，SDK-Python 至 0.3.36

### 🐛 问题修复

- **自定义请求头解析**：修复换行符判断逻辑，确保多行 header 配置能够被正确解析
- **文档**：修正沙箱文档链接指向正确的文件

### 📚 文档更新

- **SDK 示例文档**：新增 SDK 演示页面，提供 TypeScript SDK 的使用示例和最佳实践
- **技能与命令文档**：更新技能和斜杠命令的相关文档说明

## [2.44.0] - 2026-02-02

### 🚀 新功能

- **会话标题同步**：支持将会话主题（Topic）通过 ACP 协议同步给 IDE，便于在标签页或侧边栏显示有意义的会话名称

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.37，SDK-Python 至 0.3.35

## [2.43.1] - 2026-02-02

### 🚀 新功能

- **任务管理工具重构**：将任务管理功能拆分为 TaskCreate、TaskGet、TaskUpdate、TaskList、TaskStop 5 个独立工具，提供更细粒度的任务控制能力
- **Skill 工具增强**：支持直接执行斜杠命令，新增 args 参数用于传递命令参数

### 🔧 功能改进

- **计划模式增强**：新增 `/plan` 命令用于预览当前计划文件内容，优化计划模式下的权限控制，仅允许编辑计划文件
- **UI 优化**：改进计划文件编辑时的展示效果，优化进入计划模式的确认框样式
- **子代理配置**：更新 Explore 和 Plan 子代理的工具列表配置，新增 max_turns 参数支持控制代理执行轮次
- **Shell 环境快照**：执行命令时自动捕获用户 shell 配置（函数、别名、选项），确保命令在用户熟悉的环境中运行
- **Shell 环境文件支持**：新增 `CODEBUDDY_ENV_FILE` 环境变量，解决非登录 shell 无法加载 `/etc/profile` 等系统配置的问题
- **提示词优化**：优化 Agent 提示词模板，移除冒号前缀说明，新增时间预估禁用规则，提升回复简洁性
- **文件搜索优化**：精简硬编码忽略规则，优先依赖项目 .gitignore 配置，避免误杀用户需要的文件
- **Grep 工具**：新增 context 参数别名，提升使用便捷性
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.36，SDK-Python 至 0.3.34

## [2.42.3] - 2026-01-31

### 🔧 功能改进

- **会话摘要生成**：自动为会话生成 AI 摘要，在 resume 列表中展示更友好的描述
- **会话主题持久化**：终端标题现在会保存到会话历史，便于后续查看
- **非交互模式支持**：新增 `--enable-session-tracking` 参数，支持在非交互模式下启用会话追踪功能
- **会话追踪配置拆分**：将 `--enable-session-tracking` 拆分为 `CODEBUDDY_INCLUDE_SUMMARY_MESSAGE` 和 `CODEBUDDY_INCLUDE_TOPIC_MESSAGE` 两个独立环境变量，支持更细粒度的控制
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.34，SDK-Python 至 0.3.32

## [2.42.2] - 2026-01-31

### 🔧 功能改进

- **CI 并行测试**：MR 时单元测试和 E2E 测试并行执行，提升 CI 效率
- **热更新服务**：简化热更新流程，移除冗余的用户通知逻辑
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.33，SDK-Python 至 0.3.31

## [2.42.1] - 2026-01-31

### 🔧 功能改进

- **启动性能监控**：新增启动时间分析器，可在 /doctor 面板查看各阶段耗时
- **E2E 性能测试**：新增启动性能 E2E 测试，CI 中自动验证启动时间不超过阈值
- **WSL 环境支持**：自动检测 WSL 环境并提示模型使用正确的 Linux 路径格式
- **路径兼容性**：修复模型在非 Windows 平台发送 Windows 风格路径时的解析问题
- **Session 初始化优化**：优化 Session 的 transport 初始化逻辑，确保并发调用时只执行一次初始化
- **Transport 就绪检测**：改进 CLI 进程就绪状态判断，使用显式标志位替代轮询检测
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.32，SDK-Python 至 0.3.30

## [2.42.0] - 2026-01-30

### 🎉 新功能

- **MCP 配置 JSONC 支持**：MCP 配置文件现在支持 JSONC 格式，允许添加单行注释 (`//`)、多行注释 (`/* */`) 和尾随逗号，提升配置文件的可读性和可维护性

### 🔧 功能改进

- **Python 3.10 支持**：Agent SDK 现已支持 Python 3.10，扩展了兼容的 Python 版本范围
- **ACP 会话控制**：修复了通过 SDK 设置模型和权限模式的功能
- **数据追踪**：修复 prompt suggestion 与主对话数据混淆的问题，确保数据统计更准确
- **工具调用截断恢复**：当模型返回不完整的工具调用参数时，自动检测并请求模型重新生成，提升对话稳定性
- **会话 Fork 功能增强**：支持更多参数组合方式，可通过 `--resume` 或 `--session-id` 指定源会话，并支持自定义新会话 ID
- **命令消息格式**：统一斜杠命令和技能的消息标签格式，新增 `command-args` 标签支持参数提取
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.31，SDK-Python 至 0.3.29

### 🐛 问题修复

- **Hook 输出显示**：修复 hook 执行后显示多余 JSON 原始数据的问题，现在只显示有意义的消息内容
- **软链接支持**：修复 rules 目录下软链接文件无法正确加载的问题，增加遍历深度限制防止循环软链接导致无限遍历

## [2.41.8] - 2026-01-30

### 🔧 功能改进

- **Print 模式输出优化**：在 print 模式下静默通知类消息，避免污染 agent 输出流
- **配置优化**：移除冗余的 deploymentType 配置字段，简化产品配置结构
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.30，SDK-Python 至 0.3.28

### 🐛 问题修复

- **自定义请求头解析**：修复换行符判断逻辑，确保多行 header 配置能够被正确解析
- **系统提示词传递**：修复 SDK v2 Session API 中 `systemPrompt` 参数未正确传递给 transport 的问题
- **会话加载竞态条件**：修复多窗口场景下并发调用 `loadSession` 和 `prompt` 时的竞态条件问题，防止会话数据不一致

### 📚 文档更新

- **环境变量文档**：新增 `CODEBUDDY_IMAGE_GEN_ENABLED` 功能开关说明
- **发版说明**：新增 v2.40.0 至 v2.41.7 版本的中英文发版说明
- **SDK 文档**：完善 hooks、permissions、TypeScript SDK 等文档内容

## [2.41.7] - 2026-01-29

### 🔧 功能改进

- **Checkpoint 性能优化**：将 checkpoint 文件读取改为异步并行处理，避免阻塞事件循环，提升响应性能
- **产品配置优先级修复**：调整 MODELS provider 优先级，确保在 CLOUD 配置之后执行
- **部署类型标识**：为各产品配置添加 deploymentType 字段，支持区分 SaaS、Cloud-Hosted 和 Self-Hosted 部署环境
- **SDK 工具参数传递**：修复 allowedTools/disallowedTools 参数格式，确保正确传递多个工具名称
- **Python SDK 流缓冲区**：增加 100MB 缓冲区限制，防止 MCP 服务返回大 JSON 响应时出错
- **会话恢复优化**：改进 session/load 流程，确保历史消息和 artifact 恢复在响应发送后执行，修复多连接场景下的重复发送问题
- **SDK 版本追踪**：SDK 在与 CLI 通信时会自动注入 User-Agent 请求头，包含 SDK 版本和运行时信息，便于后端服务追踪和诊断
- **CI 配置优化**：更新 Homebrew 发布流程的认证配置
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.29，SDK-Python 至 0.3.27

### 📝 文档修复

- **SDK Custom Tools 文档**：修复 Python SDK 示例中 tool 装饰器的错误用法，改为从包直接导入并使用正确的装饰器语法

## [2.41.6] - 2026-01-28

### 🔧 功能改进

- **输入提交优化**：修复在输入斜杠命令时无法按回车提交的问题，现在可以正常提交命令或将无效命令作为普通消息发送
- **热更新优化**：修复 plugins 目录热更新时可能触发 `.git` 等系统目录变更事件的问题，提升稳定性
- **上下文压缩**：优化历史记录处理逻辑，过滤分支历史确保压缩准确性
- **工具描述模板**：优化工具描述中的引号格式，提升可读性
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.28，SDK-Python 至 0.3.26

## [2.41.5] - 2026-01-28

### 🐛 问题修复

- **热更新优化**：修复 plugins 目录热更新时可能触发 `.git` 等系统目录变更事件的问题，提升稳定性

### 🔧 功能改进

- **会话锁优化**：将 session lock 的获取延迟到实际使用时，减少锁泄漏风险，并支持 fork 操作无需获取锁
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.27，SDK-Python 至 0.3.25

## [2.41.4] - 2026-01-28

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.26，SDK-Python 至 0.3.24

## [2.41.3] - 2026-01-27

### 🔧 功能改进

- **新增模型**：支持 Kimi-K2.5 模型，具备工具调用、图像理解和推理能力
- **参数校验优化**：改进工具参数校验错误提示，提供更清晰的错误信息
- **类型自动转换**：支持字符串形式的数字参数自动转换，提升兼容性
- **热更新通知优化**：用户级 settings.json 热更新时不再显示通知，减少不必要的干扰
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.25，SDK-Python 至 0.3.23

## [2.41.2] - 2026-01-27

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.24，SDK-Python 至 0.3.22

## [2.41.1] - 2026-01-27

### 🔧 功能改进

- **会话管理优化**：SDK 重构 sessionId 参数，改为自动生成，简化 API 调用
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.23，SDK-Python 至 0.3.21

## [2.41.0] - 2026-01-27

### ✨ 新功能

- **配置热更新**：支持 Skills、记忆、配置文件的热更新，修改后无需重启 CLI 即可生效

### 🔧 功能改进

- **工具白名单**：新增 `--tools` 选项，支持限制 CodeBuddy 可使用的内置工具集。可设置为空字符串禁用所有内置工具，或指定逗号分隔的工具列表
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.22，SDK-Python 至 0.3.20

### 📝 文档更新

- **环境配置说明**：为 SDK、ACP 和 IAM 文档添加 `CODEBUDDY_INTERNET_ENVIRONMENT` 环境变量配置指引，帮助不同版本用户正确配置认证环境

## [2.40.1] - 2026-01-27

### 🐛 问题修复

- **图片生成工具**：修复 Windows 系统下输出目录路径解析错误的问题
- **输入建议**：修复从建议菜单选择后消息重复发送的问题

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.21，SDK-Python 至 0.3.19

## [2.40.0] - 2026-01-27

### 🎉 新功能

- **SDK 延迟控制请求同步**：SDK 新增延迟控制请求同步功能，支持在发送消息前设置权限模式和模型，提供更灵活的 API 调用方式

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.20，SDK-Python 至 0.3.18

## [2.39.0] - 2026-01-26

### 🎉 新功能

- **图片生成工具**：新增 `ImageGen` 工具，支持通过 AI 模型根据文本描述生成图片，可自定义尺寸、风格、质量等参数
- **文生图模型切换**：新增 `/model:text-to-image` 命令，支持查看和切换文生图模型
- **CLI 参数支持**：新增 `--text-to-image-model` 参数，可在启动时指定文生图模型
- **配置持久化**：支持通过 `textToImageModel` 配置项设置默认文生图模型

### 🔧 功能改进

- **配置面板**：将 Env-Route 选项移至开发者模式，通过 `/config --dev` 或 `/config -d` 激活
- **输入提交优化**：修复在输入斜杠命令时无法按回车提交的问题，现在可以正常提交命令或将无效命令作为普通消息发送
- **工具描述模板**：优化工具描述中的引号格式，提升可读性
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.19，SDK-Python 至 0.3.17

## [2.38.2] - 2026-01-26

### 🔧 功能改进

- **路径解析优化**：使用 PathUtils 统一 WASM 文件和证书文件的路径解析逻辑，支持从 EMBED_FS 加载嵌入资源，提升不同部署环境下的兼容性
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.18，SDK-Python 至 0.3.16

### 🐛 Bug 修复

- **控制台输出**：修复特定场景下控制台输出模式解析异常的问题

## [2.38.1] - 2026-01-25

### 🔧 功能改进

- **命令安全检查**：移除未使用的命令黑名单功能，简化代码结构
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.17，SDK-Python 至 0.3.15

## [2.38.0] - 2026-01-25

### 🚀 新功能

- **子 Agent 模型变体**：Task 工具新增 `model` 参数，支持指定 `lite`、`reasoning` 等模型变体，根据任务复杂度选择合适的模型

### 🔧 功能改进

- **Checkpoint Hook**：优化文件变更统计计算，通过对比备份文件与当前文件提供准确的增删行数
- **Shell 编码处理**：优化终端输出的字符编码解码逻辑，改善 Windows 环境下中文等非 ASCII 字符的显示效果
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.16，SDK-Python 至 0.3.14

### 📝 文档更新

- **环境要求**：明确 Node.js 最低版本为 18.20+
- **开发文档**：完善 CODEBUDDY.md，补充开发命令、目录结构说明和构建流程细节
- **文档同步**：同步 CLI 文档到 IDE docs 目录，包括中英文版本
- **Release Notes**：新增 v2.37.4 至 v2.37.20 版本的发布说明
- **新增文档**：添加费用说明文档 (costs.md)
- **文档优化**：更新 hooks、settings、models 等核心文档

## [2.37.20] - 2026-01-24

### 🔧 功能改进

- **模型临时切换**：在模型选择面板按 `t` 键可仅对当前会话生效，不修改用户配置
- **--model 参数优化**：命令行 `--model` 参数现在正确覆盖项目级配置，当前会话立即生效
- **上下文压缩优化**：压缩时过滤规则和记忆内容，避免将配置指令压缩进摘要，压缩后自动重新注入完整规则
- **配置面板**：隐藏开发者选项，需通过 `/config --dev` 访问
- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.15，SDK-Python 至 0.3.13

## [2.37.19] - 2026-01-23

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.14，SDK-Python 至 0.3.12

## [2.37.18] - 2026-01-23

### 🐛 问题修复

- **登录视图优化**：修复登录方式映射配置问题，优化登录流程的界面展示

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.13，SDK-Python 至 0.3.11

## [2.37.17] - 2026-01-23

### 🔧 功能改进

- **SDK 版本更新**：同步更新 SDK-JS 至 0.3.12，SDK-Python 至 0.3.10

## [2.37.16] - 2026-01-23

### 🔧 功能改进

- **配置更新**：将机器人配置文件纳入构建流程

### 🐛 问题修复

- **产品配置加载**：修复 endpoint 变更后模型列表不一致的问题，确保用户切换企业版 URL 登录时配置正确加载

## [2.37.15] - 2026-01-23

### 🐛 问题修复

- **退出登录流程优化**：修复退出登录后 token 未清理的问题,确保认证拦截器正确处理登出状态
- **HTTP 拦截器增强**：改进认证 HTTP 拦截器的错误处理和状态同步机制

## [2.37.14] - 2026-01-22

### 🔧 功能改进

- **SDK 动态配置**：新增 `getAvailableModes()` 和 `getAvailableModels()` 方法，支持动态获取可用权限模式和模型列表
- **会话级设置**：`setModel()` 和 `setPermissionMode()` 现在仅影响当前会话，不再持久化到配置文件
- **新增用户提示**：添加更多内置提示，帮助用户了解快捷键和操作技巧
- **模型切换快捷键**：支持 Option/Alt + P 快速切换模型
- **输出限制统一调整**：将各类工具的 token 限制统一为 20000，并排除图片内容不受此限制
- **环境变量支持**：Read 工具支持 `CODEBUDDY_CODE_FILE_READ_MAX_OUTPUT_TOKENS` 环境变量自定义限制
- **Bash 输出上限**：新增 100000 字符的硬上限，防止环境变量设置过大
- **启动性能优化**：优化认证和服务配置初始化流程，提升 CLI 冷启动速度
- **插件市场安装**：优化市场和插件安装流程，提升首次安装和自动更新的性能，显著减少等待时间
- **代码清理**：移除会话处理器中的冗余调试日志，减少日志噪音
- **构建优化**：修复外部 npm 包依赖配置，确保构建稳定性

### 🐛 问题修复

- **Diff 渲染稳定性**：修复了工具调用参数解析时因空字符串或不完整 JSON 导致的渲染崩溃问题

### 🔧 性能优化

- **异步文件操作**：将自定义命令、Agent 和 Skill 的加载改为异步并行处理，提升启动性能
- **Git 信息收集**：优化仓库扫描逻辑，采用异步并行处理提升性能
- **产品配置加载**：改进配置文件查找机制，支持并行路径检查

## [2.37.13] - 2026-01-22

### 🔧 功能改进

- **企业版认证**：优化企业 ID 获取时序，确保企业模型列表正确加载
- **自定义认证**：修复认证状态变化时 token 丢失导致的认证失败问题

## [2.37.12] - 2026-01-22

### 🎨 界面优化

- **应用图标更新**：更新 Work 应用图标，提升视觉一致性

### 🔧 功能改进

- **活动栏增强**：新增活动栏组件，支持更丰富的导航和交互功能
- **设置服务优化**：重构设置服务，提供更灵活的配置管理能力
- **历史记录缓存**：新增历史缓存服务，改善会话历史的加载和管理体验
- **进程池管理**：引入 ACP 进程池，提升多会话场景下的资源利用效率
- **Mermaid 图表**：增强 Mermaid 图表渲染，支持更多图表类型和交互
- **国际化完善**：补充中英文界面文案

## [2.37.10] - 2026-01-21

### 🔧 功能改进

- **登录方式优化**：简化登录选项为"Chinese Site"、"International Site"和"Enterprise Domain"，国内站点登录会自动根据网络环境选择最佳认证方式

## [2.37.9] - 2026-01-21

### 🔧 功能改进

- **侧边栏交互优化**：支持拖拽调整宽度，新增会话管理操作按钮
- **User-Agent 标识**：ACP 进程启动时自动设置包含版本信息的 User-Agent 请求头
- **配置同步优化**：为产品配置同步添加节流+防抖机制，减少高频调用造成的性能开销
- **日志增强**：增加流式消息处理和配置缓存过期的调试日志，便于问题排查

## [2.37.8] - 2026-01-21

### 🔧 功能改进

- **Session lastMessageId 处理**：优化会话状态管理，确保 lastMessageId 在异步压缩时正确更新，简化父消息 ID 的关联逻辑

## [2.37.7] - 2026-01-21

### 🎉 新增功能

- **红包封面推广**：帮助面板新增「码到成功」红包封面领取入口，根据国内/国际版自动显示对应链接

## [2.37.6] - 2026-01-21

### 🎨 界面优化

- **品牌色更新**：将 UI 主色调从蓝色更新为 CodeBuddy 品牌绿色，提升品牌一致性
- **Activity Bar**：新增 VSCode 风格侧边活动栏，支持聊天、账户、设置视图切换
- **账户面板**：展示登录状态、用户信息和认证方式
- **设置面板**：支持主机切换、主题模式和语言偏好设置
- **会话管理**：优化会话连接状态管理和错误处理

### 🔧 功能改进

- **会话恢复**：支持显示通过 /compact 命令生成的会话，用户不再丢失压缩后的会话历史

## [2.37.5] - 2026-01-20

### 🐛 问题修复

- **ACP 会话模型设置**：修复通过 SDK 切换模型后，后续对话仍使用旧模型的问题

## [2.37.4] - 2026-01-20

### ✨ 新功能

- **SDK 自定义 Session ID**：SDK 现在支持在创建会话时指定自定义 session ID，便于外部系统追踪和管理会话

### 🐛 问题修复

- **栈溢出**：防止 session 被重复订阅时导致的递归栈溢出问题
- **Stop Hook 序列化**：移除未使用的 result 字段，避免序列化循环引用导致的错误

## [2.37.3] - 2026-01-20

### 🔧 功能改进

- **SDK Session API**：新增 `setPermissionMode` 和 `getPermissionMode` 方法，支持动态切换权限模式
- **SDK Query API**：优化 resume + prompt 场景下的历史消息处理流程

## [2.37.2] - 2026-01-20

### 🔧 功能改进

- **ACP 认证增强**：在 authenticate 响应中返回用户信息，客户端可获取当前登录用户的 ID、用户名和昵称；修复已登录用户再次调用认证接口时无法弹出登录页面的问题
- **ACP 会话模型隔离**：修复切换模型时影响全局配置的问题，现在模型切换仅影响当前会话
- **上下文压缩**：引入异步上下文压缩机制，当对话历史达到临界阈值时自动触发后台压缩，提升长对话场景下的响应性能
- **插件卸载清理**：修复卸载插件后 MCP 配置仍然残留的问题，卸载时会自动清理相关配置，避免启动时加载失败的警告
- **网络错误处理**：优化 print 模式下网络错误自动重试逻辑，避免异常退出
- **SDK 连接性能**：优化连接池机制，支持并发查询场景下的预热连接复用，显著降低首次消息延迟；增加 `prewarmInitialize` 选项和会话锁机制
- **SDK 性能优化**：优化了会话恢复和用户交互流程，提升了 SDK 响应速度和稳定性
- **会话存储**：支持跨项目目录搜索会话，新增 meta 文件分离存储
- **认证流程**：优化认证机制，新增用户信息查询接口
- **服务模式**：增强服务器模式策略功能

## [2.37.1] - 2026-01-19

### 🔧 功能改进

- **认证 API 增强**：新增 `unstable_v2_logout()` API，支持清除缓存的认证 token，允许切换用户或环境；`authenticate()` 现在会自动检测已有有效认证，避免重复登录
- **Checkpoint Hook**：新增实验性 `unstable_Checkpoint` Hook，支持在文件修改后自动触发，提供文件快照和变更统计信息，便于追踪文件变更历史和实现自动化审计
- **Session API Hooks 支持**：V2 Session API 现在支持配置 Hooks，可在会话中拦截和控制工具执行

## [2.37.0] - 2026-01-18

### ✨ 新功能

- **SDK 认证 API**：新增实验性认证接口，支持 SDK 独立完成登录流程
  - 支持多种认证环境（external、internal、iOA、cloudhosted、selfhosted）
  - 自动检测已登录状态，避免重复登录
  - 通过回调通知登录 URL，支持自定义浏览器打开逻辑

### 🔧 功能改进

- **React 不可变更新**：重构 `addMessageToGroups` 函数中的消息状态更新逻辑，使用不可变操作替代直接修改对象属性，符合 React 最佳实践

## [2.36.3] - 2026-01-17

### 🔧 功能改进

- **测试系统**：修复测试运行问题，确保测试套件正常执行
- **Shell 执行**：优化跨平台兼容性，修复 Windows 系统下包含空格的路径处理问题
- **权限匹配优化**：改进复杂 Shell 命令的权限规则匹配，支持 `&&`、`||`、`|`、`;` 等操作符组合的命令解析
- **SDK 版本要求**：将文档中的 CodeBuddy Agent SDK 版本要求从 v0.2.0 更新为 v0.1.24
- **输入菜单响应**：修复了菜单状态检测延迟导致的快捷键冲突问题，提升了命令和文件建议菜单的响应速度
- **SDK 自定义工具文档**：修正导入路径，`createSdkMcpServer` 和 `tool` 应直接从 `@tencent-ai/agent-sdk` 导入
- **历史记录过滤**：优化会话历史加载时的消息展示

### 🐛 问题修复

- **上下文窗口溢出**：修复 Claude 模型在高负载场景下 token 超限导致请求失败的问题
- **Windows 配置路径**：修复 Windows 系统下全局配置路径错误（`%appdata%` 环境变量未正确展开）导致无法加载用户配置的问题

## [2.36.2] - 2026-01-17

### 🔧 功能改进

- **权限配置处理**：重构权限规则配置加载逻辑，支持空字符串和纯空白字符的安全处理
- **工具注册检查**：优化启动流程，防止工具重复注册导致的警告

### 🐛 问题修复

- **文件读取行为**：修复 offset 参数为 0 时被错误忽略的问题，现在能正确从第 1 行开始读取
- **Shell 命令解析**：修复反引号（`）语法在 Shell 命令中被错误分割的问题
- **显示设置**：修复 showSuggestions 配置项在某些场景下无法生效的问题
- **流式输出中断**：修复调试日志影响工具流式输出行为的问题

## [2.36.1] - 2026-01-16

### 🔧 功能改进

- **模型显示优化**：改进模型选择列表中推理模型的显示方式，添加 "推理" 后缀以便区分
- **路径补全**：优化文件路径补全体验，解决某些场景下补全结果显示异常的问题

### 🐛 问题修复

- **Windows 兼容性**：修复 Windows 系统下通配符路径 (`\*`) 转换为多文件路径时的解析错误
- **进程清理**：修复程序退出时可能残留僵尸子进程的问题，确保相关后台进程正确终止

## [2.36.0] - 2026-01-15

### ✨ 新功能

- **系统级配置**：新增 `/etc/codebuddy/` 目录支持，IT 管理员可部署统一的权限规则和配置策略

### 🔧 功能改进

- **配置加载顺序**：优化配置文件加载逻辑，现在按照系统级 → 用户级 → 项目级的顺序合并配置
- **网络错误提示**：改进 API 调用失败时的错误信息，提供更清晰的故障排查指引

## [2.35.0] - 2026-01-15

### ✨ 新功能

- **内置规则模板**：新增全局规则配置，代理默认遵守仓库 `.codebuddy/rules` 和 `CODEBUDDY.md` 文件中的规则，提供更好的代码风格和约定支持

### 🔧 功能改进

- **历史加载流程**：重构会话历史消息加载机制，支持增量加载
- **消息处理**：支持处理元数据类型消息，扩展消息类型覆盖范围

## [2.34.1] - 2026-01-15

### 🐛 问题修复

- **MCP 配置类型处理**：修复 `mcpServers` 配置为非对象类型时导致启动失败的问题，增强配置解析的健壮性

## [2.34.0] - 2026-01-14

### ✨ 新功能

- **Anthropic API Key 支持**：新增 `--anthropic-api-key` 参数和 `ANTHROPIC_API_KEY` 环境变量支持，可直接使用 Anthropic API（需配合 `--anthropic-base-url` 使用）

### 🔧 功能改进

- **第三方 API 配置**：统一 API Key 配置方式，通过独立参数管理密钥更安全

## [2.33.1] - 2026-01-14

### 🐛 问题修复

- **配置兼容性**：移除 `chat.input.clearOnSubmit` 配置项，该功能在 CLI 环境下无实际意义

## [2.33.0] - 2026-01-13

### ✨ 新功能

- **代码智能 (LSP)**：新增 `LSP` 工具，提供语言服务器协议支持
  - 跳转到定义（Go to Definition）
  - 查找引用（Find References）
  - 悬停文档（Hover Information）
  - 文档符号（Document Symbols）
  - 工作区符号搜索（Workspace Symbol Search）
  - 调用层级分析（Call Hierarchy）

### 🔧 功能改进

- **UI 视觉更新**：优化版本标识显示，移除内部版本标记

## [2.32.0] - 2026-01-12

### ✨ 新功能

- **复制快捷键**：支持 Ctrl+Shift+C 快捷键快速复制 AI 最后一条回复

### 🔧 功能改进

- **模型显示**：优化模型选择器中 Claude 模型的显示效果
- **会话恢复**：改进历史会话的恢复显示逻辑
- **输入体验**：修复中文输入法在某些场景下的交互问题

### 🐛 问题修复

- **ACP 连接**：优化 ACP 心跳机制，提升连接稳定性
- **工具输出**：修复工具执行结果在某些场景下无法正确渲染的问题

## [2.31.2] - 2026-01-09

### 🐛 问题修复

- **Markdown 转义**：修复渲染问题，确保代码块中的 `$` 和 `{` 字符正确显示
- **文件操作**：修复 Windows 下文件 diff 的路径解析问题

## [2.31.1] - 2026-01-09

### 🔧 功能改进

- **会话存储优化**：改进会话数据持久化策略，提升会话列表加载速度

### 🐛 问题修复

- **内存泄漏**：修复长时间运行时 React 组件未正确卸载导致的内存增长问题
- **热键冲突**：解决某些终端环境下快捷键响应异常的问题

## [2.31.0] - 2026-01-08

### ✨ 新功能

- **输入编辑器外挂**：支持配置使用外部编辑器（如 VSCode、Vim）编写复杂输入，按 Ctrl+G 打开
- **即时会话导出**：支持在会话过程中随时导出对话历史为 Markdown 文件

### 🔧 功能改进

- **自动更新检测**：启动时在后台静默检查新版本，不阻塞用户操作
- **配置热更新**：支持在运行时重载部分配置项，无需重启

## [2.30.1] - 2026-01-08

### 🐛 问题修复

- **子代理通信**：修复子代理结果返回时偶发的解析错误

## [2.30.0] - 2026-01-07

### ✨ 新功能

- **子代理任务**：新增 `Task` 和 `TaskOutput` 工具，支持启动专门化的子代理执行复杂任务

### 🔧 功能改进

- **并行工具调用**：优化多工具并发执行策略，提升复杂任务处理效率
- **上下文窗口管理**：动态调整历史消息裁剪阈值，更高效地利用模型上下文

## [2.29.0] - 2026-01-06

### ✨ 新功能

- **计划模式**：新增 `EnterPlanMode` 和 `ExitPlanMode` 工具，支持 AI 在执行复杂任务前先制定计划
- **任务追踪**：新增 `TodoWrite` 工具，AI 可创建和管理任务清单，提供进度可视化

### 🔧 功能改进

- **中断响应**：优化 Ctrl+C 中断行为，支持更快地终止工具执行

## [2.28.1] - 2026-01-06

### 🐛 问题修复

- **日志路径**：修复 Windows 下日志文件路径包含非法字符导致写入失败的问题

## [2.28.0] - 2026-01-05

### ✨ 新功能

- **Web 搜索**：新增 `WebSearch` 工具，支持实时搜索互联网获取最新信息
- **网页抓取**：新增 `WebFetch` 工具，可抓取指定网页内容并提取关键信息

### 🔧 功能改进

- **Glob 模式**：支持更复杂的文件匹配模式，包括否定模式和大括号展开

## [2.27.3] - 2026-01-05

### 🐛 问题修复

- **会话恢复**：修复从历史会话恢复时，工具调用状态未正确还原的问题

## [2.27.2] - 2026-01-04

### 🔧 功能改进

- **错误信息国际化**：常见错误提示支持中英文双语显示
- **配置校验**：优化配置文件语法错误的提示信息

### 🐛 问题修复

- **Unicode 处理**：修复某些特殊字符在终端显示时的宽度计算问题

## [2.27.1] - 2025-12-31

### 🐛 问题修复

- **会话列表**：修复会话列表在某些终端尺寸下的滚动问题

## [2.27.0] - 2025-12-30

### ✨ 新功能

- **会话管理面板**：新增图形化会话列表，支持浏览、搜索、恢复历史会话

### 🔧 功能改进

- **会话持久化**：完善会话元数据存储，支持按项目和时间检索
- **启动参数**：新增 `-r/--resume` 参数，可直接恢复指定会话

## [2.26.0] - 2025-12-29

### ✨ 新功能

- **用户交互工具**：新增 `AskUserQuestion` 工具，AI 可主动向用户提问以获取必要信息

### 🔧 功能改进

- **批量编辑**：优化 `MultiEdit` 工具的性能，支持更大规模的批量修改

## [2.25.1] - 2025-12-26

### 🐛 问题修复

- **Shell 后台任务**：修复后台命令输出捕获不完整的问题

## [2.25.0] - 2025-12-25

### ✨ 新功能

- **后台 Shell**：`Bash` 工具新增 `run_in_background` 参数，支持启动长时间运行的后台任务
- **输出监控**：新增 `BashOutput` 和 `KillShell` 工具，用于监控和管理后台 Shell

### 🔧 功能改进

- **Shell 复用**：同一会话内的命令在同一 Shell 实例中执行，保持环境状态

## [2.24.0] - 2024-12-24

### ✨ 新功能

- **多文件编辑**：新增 `MultiEdit` 工具，支持在单次调用中对同一文件进行多处修改

### 🔧 功能改进

- **编辑预览**：优化文件编辑的 diff 展示，支持语法高亮

## [2.23.5] - 2025-12-24

### 🐛 问题修复

- **Windows 路径**：修复 Windows 下绝对路径处理的兼容性问题

## [2.23.4] - 2025-12-23

### 🔧 功能改进

- **错误恢复**：优化网络错误后的自动重连逻辑

## [2.23.3] - 2025-12-23

### 🐛 问题修复

- **配置加载**：修复嵌套配置项合并时的覆盖问题

## [2.23.2] - 2025-12-23

### 🐛 问题修复

- **终端尺寸**：修复终端窗口大小变化时 UI 布局未正确更新的问题

## [2.23.0] - 2025-12-22

### ✨ 新功能

- **Hooks 系统**：支持用户自定义 Hook 脚本，可在工具执行前后插入自定义逻辑

### 🔧 功能改进

- **权限规则**：支持在配置文件中定义工具权限白名单/黑名单

## [2.22.0] - 2025-12-20

### ✨ 新功能

- **MCP 支持**：新增 Model Context Protocol (MCP) 服务器集成，可连接外部工具提供商

### 🔧 功能改进

- **工具发现**：动态加载 MCP 提供的工具，支持热插拔

## [2.21.0] - 2025-12-19

### ✨ 新功能

- **自定义命令**：支持在 `.codebuddy/commands/` 目录下创建自定义斜杠命令

### 🔧 功能改进

- **命令补全**：输入 `/` 时显示可用命令列表

## [2.20.1] - 2025-12-19

### 🐛 问题修复

- **Print 模式**：修复 `-p` 模式下输出格式化异常的问题

## [2.20.0] - 2025-12-19

### ✨ 新功能

- **Print 模式**：新增 `-p` 参数，支持非交互式输出，便于脚本集成
- **自动批准**：新增 `-y` 参数，跳过所有工具执行确认提示

### 🔧 功能改进

- **退出码**：规范化程序退出码，便于脚本判断执行结果

## [2.19.2] - 2025-12-16

### 🐛 问题修复

- **Token 统计**：修复长对话中 token 计数不准确的问题

## [2.19.1] - 2025-12-15

### 🐛 问题修复

- **Grep 工具**：修复正则表达式中特殊字符未正确转义的问题

## [2.19.0] - 2025-12-12

### ✨ 新功能

- **Grep 搜索**：新增 `Grep` 工具，支持正则表达式搜索文件内容

### 🔧 功能改进

- **Glob 性能**：优化大型项目中的文件匹配性能

## [2.18.0] - 2025-12-11

### ✨ 新功能

- **Glob 工具**：新增 `Glob` 工具，支持通配符模式匹配文件路径

### 🔧 功能改进

- **文件读取**：`Read` 工具支持读取图片文件，AI 可进行视觉分析

## [2.17.0] - 2025-12-10

### ✨ 新功能

- **Notebook 编辑**：新增 `NotebookEdit` 工具，支持编辑 Jupyter Notebook 单元格

### 🔧 功能改进

- **文件类型识别**：优化二进制文件检测，避免误读

## [2.16.0] - 2025-12-09

### ✨ 新功能

- **文件编辑**：新增 `Edit` 工具，支持精确的字符串替换操作

### 🔧 功能改进

- **Write 工具**：优化大文件写入性能

## [2.15.1] - 2025-12-08

### 🐛 问题修复

- **Bash 超时**：修复长时间运行命令未正确超时的问题

## [2.15.0] - 2025-12-08

### ✨ 新功能

- **Bash 执行**：新增 `Bash` 工具，支持在终端中执行 Shell 命令

### 🔧 功能改进

- **安全检查**：对潜在危险命令增加二次确认提示

## [2.14.1] - 2025-12-07

### 🐛 问题修复

- **文件编码**：修复非 UTF-8 编码文件读取乱码的问题

## [2.14.0] - 2025-12-05

### ✨ 新功能

- **文件读取**：新增 `Read` 工具，支持读取本地文件内容
- **文件写入**：新增 `Write` 工具，支持创建和覆盖文件

### 🔧 功能改进

- **路径补全**：文件路径输入支持 Tab 补全

## [2.13.0] - 2025-12-04

### ✨ 新功能

- **模型切换**：支持通过 `/model` 命令在会话中切换 AI 模型

### 🔧 功能改进

- **Token 显示**：状态栏显示当前对话的 token 使用量

## [2.12.0] - 2025-12-03

### ✨ 新功能

- **配置命令**：新增 `/config` 命令，支持在终端中查看和修改配置

### 🔧 功能改进

- **配置热重载**：修改配置文件后自动生效，无需重启

## [2.11.0] - 2025-12-02

### ✨ 新功能

- **@ 引用**：支持 `@file` 语法引用文件内容到对话

### 🔧 功能改进

- **上下文管理**：新增 `/context` 命令查看当前上下文状态

## [2.10.1] - 2025-12-01

### 🐛 问题修复

- **历史记录**：修复输入历史在某些终端下无法正常工作的问题

## [2.10.0] - 2025-11-28

### ✨ 新功能

- **帮助系统**：新增 `/help` 命令，显示可用命令和快捷键

### 🔧 功能改进

- **命令系统**：重构斜杠命令框架，支持命令别名

## [2.9.0] - 2025-11-26

### ✨ 新功能

- **对话历史**：支持上下箭头键浏览输入历史

### 🔧 功能改进

- **UI 响应**：优化长消息渲染性能

## [2.8.6] - 2025-11-26

### 🐛 问题修复

- **输入处理**：修复多行粘贴时的换行符处理问题

## [2.8.5] - 2025-11-26

### 🐛 问题修复

- **滚动行为**：修复消息列表自动滚动在某些场景下失效的问题

## [2.8.4] - 2025-11-25

### 🔧 功能改进

- **错误提示**：优化 API 错误信息的可读性

## [2.8.3] - 2025-11-25

### 🐛 问题修复

- **会话清理**：修复 `/clear` 命令后历史消息未完全清除的问题

## [2.8.2] - 2025-11-25

### 🐛 问题修复

- **终端适配**：修复在 Windows Terminal 中的显示问题

## [2.8.1] - 2025-11-24

### 🐛 问题修复

- **启动检查**：修复 Node.js 版本检测逻辑

## [2.8.0] - 2025-11-24

### ✨ 新功能

- **清屏命令**：新增 `/clear` 命令清空当前对话
- **退出命令**：新增 `/exit` 命令安全退出程序

### 🔧 功能改进

- **快捷键**：支持 Ctrl+L 清屏，Ctrl+D 退出

## [2.7.0] - 2025-11-21

### ✨ 新功能

- **继续对话**：新增 `-c` 参数，支持继续上次对话

### 🔧 功能改进

- **会话存储**：自动保存对话历史到本地

## [2.6.1] - 2025-11-19

### 🐛 问题修复

- **认证流程**：修复 OAuth 回调处理异常的问题

## [2.6.0] - 2025-11-19

### ✨ 新功能

- **账户管理**：支持多账户切换和登出

### 🔧 功能改进

- **认证状态**：状态栏显示当前登录账户信息

## [2.5.0] - 2025-11-18

### ✨ 新功能

- **配置文件**：支持 `.codebuddy/settings.json` 项目级配置

### 🔧 功能改进

- **默认配置**：优化开箱即用体验

## [2.4.0] - 2025-11-17

### ✨ 新功能

- **代理支持**：支持 `HTTP_PROXY` 和 `HTTPS_PROXY` 环境变量

### 🔧 功能改进

- **网络诊断**：连接失败时提供网络问题排查建议

## [2.3.1] - 2025-11-14

### 🐛 问题修复

- **安装脚本**：修复全局安装时权限不足的问题

## [2.3.0] - 2025-11-14

### ✨ 新功能

- **全局安装**：支持 `npm install -g @anthropic/codebuddy-code` 全局安装

### 🔧 功能改进

- **二进制分发**：提供预编译的平台特定二进制文件

## [2.2.0] - 2025-11-13

### ✨ 新功能

- **流式输出**：AI 回复实时逐字显示

### 🔧 功能改进

- **渲染性能**：优化 Markdown 实时渲染

## [2.1.0] - 2025-11-12

### ✨ 新功能

- **Markdown 渲染**：支持代码块语法高亮
- **状态栏**：显示当前模型和会话状态

### 🔧 功能改进

- **UI 主题**：支持终端颜色主题适配

## [2.0.0] - 2025-11-11

### ✨ 新功能

- **全新 TUI**：基于 React Ink 重构终端界面
- **会话管理**：支持多会话切换
- **工具系统**：基础工具框架

### 🔧 功能改进

- **架构重构**：采用 CellJS 依赖注入框架

## [1.0.0] - 2025-11-01

### ✨ 首次发布

- 基础对话功能
- Claude 模型支持
- 命令行参数解析
