@tencent-ai/codebuddy-code 0.0.1-beta.3 → 0.0.1-beta.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +480 -0
- package/bin/codebuddy +1 -0
- package/dist/340.codebuddy.js +1 -1
- package/dist/422.codebuddy.js +1 -0
- package/dist/444.codebuddy.js +1 -0
- package/dist/566.codebuddy.js +1 -0
- package/dist/597.codebuddy.js +1 -0
- package/dist/632.codebuddy.js +1 -0
- package/dist/814.codebuddy.js +1 -0
- package/dist/889.codebuddy.js +1 -0
- package/dist/952.codebuddy.js +1 -0
- package/dist/codebuddy.js +1 -1
- package/lib/node/index.js +7 -0
- package/package.json +2 -1
- package/product.json +360 -60
- package/dist/291.codebuddy.js +0 -1
- package/dist/298.codebuddy.js +0 -1
- package/dist/35.codebuddy.js +0 -1
- package/dist/368.codebuddy.js +0 -1
- package/dist/393.codebuddy.js +0 -1
- package/dist/449.codebuddy.js +0 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to the agent-cli module will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.0.1-beta.30] - 2025-09-02
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **修复上报messageId不正确的问题**:解决消息追踪和统计中messageId上报错误的问题,确保消息追踪的准确性
|
|
12
|
+
- **修复pending区高度兼容多工具并行调用情况**:优化pending区域的高度计算,适配多个工具并行调用时的界面显示需求
|
|
13
|
+
- **修复工具调用前参数为空字符串导致的解析问题**:改进参数解析逻辑,正确处理空字符串参数,避免工具调用失败
|
|
14
|
+
- **修复多余的跳转路由逻辑**:清理冗余的路由跳转代码,优化导航逻辑,提升界面交互流畅性
|
|
15
|
+
- **修复输入框中缓存逻辑解决多行文本粘贴丢失问题**:改进输入框缓存机制,确保多行文本粘贴时内容完整性
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- **新增NotebookWrite工具**:增加Jupyter笔记本写入功能,支持创建和编辑笔记本文件,扩展开发工具集
|
|
19
|
+
- **新增支持国内/国外不同账号登录**:实现多区域账号管理,支持用户在不同地区使用不同账号进行登录认证
|
|
20
|
+
- **新增MCP指令列表添加链接状态功能**:为MCP服务器管理界面添加连接状态显示,实时反映服务器连接情况
|
|
21
|
+
- **新增MCP服务器按名称异步重连方法**:支持按服务器名称进行异步重连操作,提升MCP服务器管理效率
|
|
22
|
+
- **新增MCP管理器初始化完成事件及加载状态检查**:提供MCP管理器初始化状态监控,优化启动流程和状态反馈
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
- **命令渲染区分类型优化**:改进命令执行结果的渲染逻辑,根据命令类型显示不同的界面样式
|
|
26
|
+
- **修改export导致的状态不更新问题**:解决导出功能触发后界面状态未及时更新的问题,提升用户体验
|
|
27
|
+
- **调整对话消息的requestId/messageId生成逻辑**:重构消息标识符生成机制,优化消息追踪和使用量统计逻辑
|
|
28
|
+
- **统一将_scope属性名改为scope**:规范化属性命名,去掉下划线前缀,提升代码一致性
|
|
29
|
+
|
|
30
|
+
### Technical Details
|
|
31
|
+
- NotebookWrite工具:新增Jupyter笔记本写入功能,支持单元格操作和文件管理
|
|
32
|
+
- 账号登录系统:实现多区域账号管理,支持国内外不同认证服务
|
|
33
|
+
- MCP管理器:增强服务器状态监控和异步重连功能,提升服务稳定性
|
|
34
|
+
- 消息系统:优化requestId/messageId生成逻辑,改进消息追踪准确性
|
|
35
|
+
- UI组件:修复pending区域高度计算和多工具并行显示问题
|
|
36
|
+
- 输入系统:改进缓存机制和参数解析逻辑,解决文本处理异常
|
|
37
|
+
- 路由系统:清理冗余跳转逻辑,优化导航流程
|
|
38
|
+
|
|
39
|
+
## [0.0.29] - 2025-09-01
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
- **重构消息标识符生成逻辑**:简化 requestId 和 messageId 的生成机制,移除复杂的历史查找逻辑,使用更直接的ID分配策略
|
|
43
|
+
- **优化对话请求项查找算法**:重构 `findLatestConversationRequestItems` 方法,提升消息查找的准确性和性能
|
|
44
|
+
- **简化消息ID管理**:移除冗余的消息ID处理逻辑,统一使用最新消息的ID作为messageId
|
|
45
|
+
|
|
46
|
+
### Technical Details
|
|
47
|
+
- 输入项处理器:移除复杂的requestId/messageId生成逻辑,简化消息处理流程
|
|
48
|
+
- 工具函数重构:优化 `InputItemUtils` 中的消息查找方法,提升代码可维护性
|
|
49
|
+
- 消息标识符:采用更简洁的ID分配策略,减少不必要的历史遍历操作
|
|
50
|
+
|
|
51
|
+
## [0.0.1-beta.28] - 2025-09-01
|
|
52
|
+
|
|
53
|
+
### Fixed
|
|
54
|
+
- **修复工具详情页的参数样式**:优化工具详情页面的参数展示样式,添加切换刷新逻辑展示新的组件高度,提升用户体验
|
|
55
|
+
- **修复传输类型没有默认值的问题**:解决 MCP 连接中传输类型配置缺失导致的连接失败问题,确保服务稳定性
|
|
56
|
+
|
|
57
|
+
### Added
|
|
58
|
+
- **添加自定义 header 功能**:新增支持自定义 HTTP header 配置,提升 API 请求的灵活性
|
|
59
|
+
- **新增 MCP 指令列表链接状态功能**:为 MCP 服务器管理添加连接状态显示,实时反映服务器连接情况
|
|
60
|
+
- **新增 MCP 服务器按名称异步重连方法**:支持按服务器名称进行异步重连,提升服务器管理效率
|
|
61
|
+
- **新增 MCP 管理器初始化完成事件及加载状态检查**:提供管理器初始化状态监控,优化启动流程
|
|
62
|
+
- **模型请求增加 IDE 信息头**:在模型请求中添加 IDE 相关信息,便于调试和问题追踪
|
|
63
|
+
|
|
64
|
+
### Changed
|
|
65
|
+
- **调整对话消息的 requestId/messageId 生成逻辑**:重构消息标识符生成机制,优化消息追踪和使用量统计逻辑
|
|
66
|
+
|
|
67
|
+
### Technical Details
|
|
68
|
+
- 工具详情页:重构参数展示组件,支持动态高度调整和样式优化
|
|
69
|
+
- MCP 传输层:修复默认传输类型配置,确保连接参数完整性
|
|
70
|
+
|
|
71
|
+
## [0.0.1-beta.27] - 2025-08-29
|
|
72
|
+
|
|
73
|
+
### Fixed
|
|
74
|
+
- **修复任务工具中会话控制逻辑**:优化token追踪和计时器重置逻辑,提升任务执行稳定性
|
|
75
|
+
- **修复命令执行后会话处理逻辑**:优化面板退出时的会话管理,确保会话状态正确维护
|
|
76
|
+
- **修复历史记录工具中空字符串处理问题**:改进空字符串边界情况处理,避免历史记录异常
|
|
77
|
+
|
|
78
|
+
### Added
|
|
79
|
+
- **MCP 配置管理及服务器管理模块**:新增 MCP (Model Context Protocol) 配置管理功能,支持调试与依赖优化
|
|
80
|
+
- **支持 DeepSeek v3.1 模型**:新增 DeepSeek v3.1 模型支持,提供更强大的AI推理能力
|
|
81
|
+
- **CODEBUDDY.md 支持 @ 嵌套文件**:增强项目配置文件功能,支持通过 @ 语法引用和嵌套其他文件内容
|
|
82
|
+
|
|
83
|
+
### Changed
|
|
84
|
+
- **提升auto-chat模型输入token限制至128k**:优化上下文压缩和中断处理逻辑,提升大型对话处理能力
|
|
85
|
+
- **重构模型配置拦截器**:支持默认温度和最大输出token设置,提供更灵活的模型参数配置
|
|
86
|
+
|
|
87
|
+
### Technical Details
|
|
88
|
+
- 任务工具会话控制:优化token追踪逻辑,改进计时器重置机制
|
|
89
|
+
- 会话处理逻辑:增强面板退出时的会话状态管理,防止资源泄漏
|
|
90
|
+
- 历史记录工具:改进空字符串和边界情况处理
|
|
91
|
+
- MCP模块:实现配置管理和服务器管理,优化调试工具和依赖处理
|
|
92
|
+
- 模型配置系统:支持128k token输入限制,优化上下文压缩策略
|
|
93
|
+
- 拦截器架构:重构模型配置拦截器,支持动态参数设置
|
|
94
|
+
|
|
95
|
+
## [0.0.1-beta.26] - 2025-08-27
|
|
96
|
+
|
|
97
|
+
### Added
|
|
98
|
+
- **任务工具支持**:新增 `TaskTool` 工具,支持在独立会话中执行复杂任务,实现任务隔离和状态管理
|
|
99
|
+
- 新增 `task` 代理配置,支持专门的任务执行上下文和工具集合
|
|
100
|
+
- 新增消息队列管理器 `MessageQueueManager`,提供队列操作和状态管理功能
|
|
101
|
+
- 新增 `InterruptionService`,提供中断处理和工具调用审批功能
|
|
102
|
+
- 增强 `PromptRenderer` 支持,提供上下文模板渲染功能
|
|
103
|
+
|
|
104
|
+
### Changed
|
|
105
|
+
- 优化代理拦截器链路,增强用户输入处理和状态管理逻辑
|
|
106
|
+
- 改进会话管理器,添加函数调用结果处理器集成
|
|
107
|
+
- 优化工具管理器,增强权限检查和动态描述渲染
|
|
108
|
+
- 改进 UI 上下文管理,简化对话状态和消息发送逻辑
|
|
109
|
+
- 移除冗余的 hooks 文件,精简代码结构
|
|
110
|
+
|
|
111
|
+
### Fixed
|
|
112
|
+
- **修复任务执行中断处理**:解决任务工具执行时的中断信号处理和资源清理问题
|
|
113
|
+
- 修复中断服务中的会话映射管理,确保映射关系的正确建立和清理
|
|
114
|
+
- 改进工具调用审批导航逻辑,优化用户交互体验
|
|
115
|
+
- 修复确认对话框状态管理和响应处理
|
|
116
|
+
|
|
117
|
+
### Technical Details
|
|
118
|
+
- **InterruptionService 重构**:采用直接映射 `Map<RunToolApprovalItem, Session>` 架构,支持同步查找
|
|
119
|
+
- **TaskTool 实现**:独立会话管理,支持中断传播和使用量统计
|
|
120
|
+
- **MessageQueueManager**:基于 CellJS 依赖注入的队列管理服务
|
|
121
|
+
- **代理拦截器优化**:增强用户输入处理、环境设置和状态管理能力
|
|
122
|
+
- **UI 架构简化**:移除 `use-conversation-state.ts` 和 `use-message-queue.ts`,集中管理状态逻辑
|
|
123
|
+
- **工具权限增强**:动态描述渲染和权限检查机制优化
|
|
124
|
+
- **产品配置扩展**:支持 task 代理和相关工具配置
|
|
125
|
+
|
|
126
|
+
### Breaking Changes
|
|
127
|
+
- `InterruptionService` 接口方法签名变更,需要传入 `RunToolApprovalItem` 而非 `Session`
|
|
128
|
+
- 移除部分 UI hooks,相关功能已集成到其他模块中
|
|
129
|
+
|
|
130
|
+
## [0.0.1-beta.25] - 2025-08-25
|
|
131
|
+
|
|
132
|
+
### Changed
|
|
133
|
+
- **简化工具状态显示**:移除呼吸灯动画效果,统一使用静态状态图标显示
|
|
134
|
+
- 优化工具调用渲染性能,减少不必要的动画计算开销
|
|
135
|
+
|
|
136
|
+
### Fixed
|
|
137
|
+
- **修复 Agent 状态管理空指针异常**:在 `agent-factory.ts` 中添加可选链操作符,防止 `agentStateSubject` 为空时的崩溃
|
|
138
|
+
- 改进 Agent 状态更新的安全性,确保状态订阅的稳定性
|
|
139
|
+
|
|
140
|
+
### Technical Details
|
|
141
|
+
- AgentFactory:增加 `agentStateSubject?.next(state)` 安全调用,防止空指针异常
|
|
142
|
+
- ToolCallItem:简化状态图标渲染逻辑,移除 BreathingTool 组件依赖
|
|
143
|
+
- 性能优化:减少工具状态渲染的计算复杂度和 DOM 更新频率
|
|
144
|
+
|
|
145
|
+
## [0.0.1-beta.24] - 2025-08-25
|
|
146
|
+
|
|
147
|
+
### Added
|
|
148
|
+
- **MCP 功能增强**:完善 MCP (Model Context Protocol) 支持,包含命令展示和工具调用展示逻辑
|
|
149
|
+
- 新增控制台补丁与 MCP 功能,优化路径与日志输出处理
|
|
150
|
+
- 增强编辑工具验证逻辑,提升代码编辑准确性和安全性
|
|
151
|
+
- 添加标准输出和错误输出的截断功能,防止超长输出影响终端性能
|
|
152
|
+
- 新增 `/mcp` 指令功能,支持 MCP 服务器配置管理
|
|
153
|
+
- 读写工具兼容相对/绝对路径,提升文件操作灵活性
|
|
154
|
+
- **新增设置提示上下文初始化器**:添加 `SettingsPromptContextInitializer`,支持设置数据注入到提示上下文
|
|
155
|
+
- 新增工具确认对话框优化,支持工具拒绝和继续流程
|
|
156
|
+
- 新增 `TOOL_REJECT_RESULT_CONTENT` 和 `TOOL_REJECT_CONTENT` 常量,统一工具拒绝文案管理
|
|
157
|
+
|
|
158
|
+
### Changed
|
|
159
|
+
- **优化 MCP 服务模块**:支持多传输类型及服务器创建,完善验证中间件
|
|
160
|
+
- 改进指令对应 panel 显示逻辑,添加设置命令的展示功能
|
|
161
|
+
- 统一使用路由方法解决 ESC 退出问题,提升用户界面交互体验
|
|
162
|
+
- 修改 pending 状态的 key 生成,防止与历史消息重复冲突
|
|
163
|
+
- 优化文件排除逻辑并改进通配符转正则表达式处理
|
|
164
|
+
- **重构工具调用渲染系统**:优化 ToolCallProtocol 接口定义,规范化组件属性命名
|
|
165
|
+
- 改进工具确认对话框文本,使用常量管理工具拒绝相关文案
|
|
166
|
+
- 优化终端尺寸处理逻辑,增强响应式布局支持
|
|
167
|
+
- **工具管理器增强**:集成 PromptContextProvider,支持动态工具描述模板渲染
|
|
168
|
+
- 默认关闭 Co-Authored-By 功能,简化提交流程
|
|
169
|
+
|
|
170
|
+
### Fixed
|
|
171
|
+
- 解决子命令参数和选项的冲突问题
|
|
172
|
+
- 改进 diff 替换错误问题,删除错误消息的刷新逻辑
|
|
173
|
+
- 修复错误的 lastitem 判断,添加缺失的 React key 属性
|
|
174
|
+
- 按规范修改代码,拆分不合理逻辑并添加缺失的指令
|
|
175
|
+
- **修复工具调用状态处理逻辑**:改进中断处理、工具拒绝流程和会话状态管理
|
|
176
|
+
- 修复接口类型定义错误,统一 ToolCallResultItem 和 ToolCallItem 命名
|
|
177
|
+
- 优化自动更新服务的错误处理和状态管理逻辑
|
|
178
|
+
- 修复工具调用结果渲染中的类型安全问题,改进错误处理逻辑
|
|
179
|
+
- 修复 `defualtShowArg` 拼写错误,统一为 `defaultShowArg`
|
|
180
|
+
|
|
181
|
+
### Technical Details
|
|
182
|
+
- MCP 模块:实现服务器配置管理和 REST API 接口集成
|
|
183
|
+
- MCP 验证中间件:调整优先级并限制传输类型,增强安全性
|
|
184
|
+
- 路径兼容性:读写工具支持相对和绝对路径自动转换
|
|
185
|
+
- **工具系统重构**:规范化接口定义,改进渲染组件的类型安全性
|
|
186
|
+
- **设置系统集成**:默认关闭 Co-Authored-By 功能,优化提示模板渲染
|
|
187
|
+
- **会话状态优化**:改进工具拒绝处理逻辑,支持静默中止和强制消息发送
|
|
188
|
+
- **工具描述模板化**:支持动态渲染工具描述,集成设置上下文到工具提示
|
|
189
|
+
|
|
190
|
+
## [0.0.1-beta.23] - 2025-08-22
|
|
191
|
+
|
|
192
|
+
### Added
|
|
193
|
+
- **呼吸灯动画组件**:新增 `BreathingTool` 组件,为工具执行状态提供视觉反馈动画
|
|
194
|
+
- 新增工具执行状态的动态图标显示,提升用户界面交互体验
|
|
195
|
+
- 添加应用生命周期管理,支持优雅关闭和资源清理
|
|
196
|
+
- 增强 LoadingBox 组件,支持工具执行状态的专门显示
|
|
197
|
+
|
|
198
|
+
### Changed
|
|
199
|
+
- **重构 LoadingBox 组件**:采用组合式架构设计,提升代码可读性和可维护性
|
|
200
|
+
- 优化工具调用状态显示,使用呼吸灯效果替代静态图标
|
|
201
|
+
- 改进 CliView 生命周期管理,添加 `ApplicationLifecycle` 实现
|
|
202
|
+
- 优化 token 信息显示逻辑,根据工具执行状态动态调整格式
|
|
203
|
+
- 提升终端界面动画流畅度,工具状态使用 600ms 间隔呼吸效果
|
|
204
|
+
|
|
205
|
+
### Fixed
|
|
206
|
+
- 修复应用退出时的资源清理问题,防止内存泄漏
|
|
207
|
+
- 优化 LoadingBox 组件的状态管理和渲染逻辑
|
|
208
|
+
- 改进工具执行状态的视觉表现,增强用户体验
|
|
209
|
+
|
|
210
|
+
### Technical Details
|
|
211
|
+
- BreathingTool: 自实现呼吸灯动画组件,支持自定义图标和间隔时间
|
|
212
|
+
- LoadingBox 重构:拆分为 TokenInfo、StatusInfo 和主组件,提升模块化程度
|
|
213
|
+
- CliView 生命周期:集成 ApplicationLifecycle,支持优雅的应用关闭
|
|
214
|
+
- 工具状态动画:为 in_progress 状态添加呼吸灯效果,completed/error 状态保持静态显示
|
|
215
|
+
- 组件导出优化:统一管理 UI 组件导出,提升代码组织结构
|
|
216
|
+
|
|
217
|
+
## [0.0.1-beta.22] - 2025-08-22
|
|
218
|
+
|
|
219
|
+
### Added
|
|
220
|
+
- **自动更新系统**:新增完整的自动更新服务,支持后台检查和通知用户可用更新
|
|
221
|
+
- 新增 `AutoUpdateService` 组件,提供版本检查、自动安装和错误处理功能
|
|
222
|
+
- 添加 `AutoUpdateLifecycle` 生命周期管理器,集成到应用启动流程
|
|
223
|
+
- 新增 `UPDATE_NOTIFICATION` 输入状态,统一更新通知的显示逻辑
|
|
224
|
+
- 在用户设置中添加 `autoUpdates` 选项,支持用户自定义更新偏好设置
|
|
225
|
+
|
|
226
|
+
### Changed
|
|
227
|
+
- **重构更新通知系统**:将更新通知从 chat-header 迁移到 input-hint 系统,实现统一的提示管理
|
|
228
|
+
- 简化更新通知显示为单行文字格式,提升用户体验和界面简洁性
|
|
229
|
+
- 提取 `DEFAULT_TOKEN_THRESHOLD` 常量到 `context-protocol`,实现配置的集中化管理
|
|
230
|
+
- 优化 token 阈值默认值从 0.95 调整为 0.7,提高上下文压缩的触发频率
|
|
231
|
+
|
|
232
|
+
### Fixed
|
|
233
|
+
- **🐛 关键修复:解决更新通知订阅只执行一次的问题**,修复单例模式导致的订阅失效
|
|
234
|
+
- 修复 `useEffect` 中的无限渲染循环问题,优化依赖项管理避免重复订阅
|
|
235
|
+
- 解决订阅生命周期管理不当导致的内存泄漏和通知丢失问题
|
|
236
|
+
- 修复剪贴板兼容性错误提示的边距样式问题
|
|
237
|
+
|
|
238
|
+
### Technical Details
|
|
239
|
+
- 自动更新服务:基于 npm registry 检查版本,支持 alpha/beta/latest 标签自动识别
|
|
240
|
+
- 通知系统重构:集成到 input-hint 优先级系统,确保重要通知优先显示
|
|
241
|
+
- 订阅管理优化:使用函数式状态更新避免闭包陷阱,确保订阅稳定性
|
|
242
|
+
- 常量抽取:将硬编码配置迁移到协议文件,提升代码可维护性
|
|
243
|
+
- 依赖注入改进:修复容器实例管理问题,确保服务单例的正确性
|
|
244
|
+
|
|
245
|
+
## [0.0.1-beta.21] - 2025-08-21
|
|
246
|
+
|
|
247
|
+
### Added
|
|
248
|
+
- 新增 MCP (Model Context Protocol) 模块,支持服务器配置管理与 REST API 接口集成
|
|
249
|
+
- 添加指令对应 panel 初版,提升命令行界面交互体验
|
|
250
|
+
- 增强编辑工具验证逻辑,提高代码编辑准确性和安全性
|
|
251
|
+
- 添加标准输出和错误输出的截断功能,防止超长输出影响终端性能
|
|
252
|
+
|
|
253
|
+
### Changed
|
|
254
|
+
- 改进剪贴板兼容性检查和 Agent 状态管理,优化跨平台体验
|
|
255
|
+
- 优化窄终端下的欢迎页边框显示,提升视觉效果
|
|
256
|
+
- 改进 diff 颜色显示,删除重复的变量名定义
|
|
257
|
+
|
|
258
|
+
### Fixed
|
|
259
|
+
- **🐛 关键修复:修复搜索中止时的内存泄漏问题,提升应用稳定性**
|
|
260
|
+
- 修复 diff 文本替换错误问题,改进文本处理准确性
|
|
261
|
+
- 删除错误消息的无必要刷新操作,优化性能
|
|
262
|
+
- 修复错误的 lastitem 判断逻辑,改进会话状态管理
|
|
263
|
+
- 添加缺失的 React key 属性,移除冗余逻辑
|
|
264
|
+
|
|
265
|
+
### Technical Details
|
|
266
|
+
- MCP 模块:实现服务器配置管理和 REST API 接口
|
|
267
|
+
- 内存泄漏修复:优化搜索中止时的资源清理机制
|
|
268
|
+
- 编辑工具验证:增强参数校验和错误处理
|
|
269
|
+
- 输出截断:标准输出和错误输出自动截断,防止终端性能问题
|
|
270
|
+
- UI 优化:修复 diff 显示异常,改进窄终端适配
|
|
271
|
+
- 状态管理:优化 Agent 状态更新和会话状态处理逻辑
|
|
272
|
+
|
|
273
|
+
## [0.0.1-beta.20] - 2025-08-21
|
|
274
|
+
|
|
275
|
+
### Added
|
|
276
|
+
- 新增剪贴板平台兼容性检查系统,支持 macOS、Windows、Linux 三大平台
|
|
277
|
+
- 添加 ClipboardCompatibilityUtils 工具类,提供统一的兼容性检测接口
|
|
278
|
+
- 增强剪贴板错误处理,新增 CLIPBOARD_COMPATIBILITY_ERROR 输入状态
|
|
279
|
+
- 为 macOS 平台添加 osascript 作为 pngpaste 的后备方案
|
|
280
|
+
- 新增 ClipboardCompatibilityErrorBox 组件,提供友好的错误提示和安装指引
|
|
281
|
+
- 在 PromptContext 中新增 homeDir 和 userMemory/projectMemory 分离支持
|
|
282
|
+
- 添加标准输出和错误输出的截断功能,当输出超过50000字符时自动截断并添加提示信息
|
|
283
|
+
|
|
284
|
+
### Changed
|
|
285
|
+
- 重构 Agent 状态管理,将状态监听逻辑从 AgentStateAgentRunInterceptor 移至 AgentFactory
|
|
286
|
+
- 优化 Agent 事件处理,使用更精确的事件监听和状态更新机制
|
|
287
|
+
- 改进剪贴板图片粘贴流程,增加平台兼容性预检查
|
|
288
|
+
- 更新 CLI Agent 提示模板,修复 URL 引用和格式问题
|
|
289
|
+
- 简化 memory prompt context 初始化逻辑,分离用户和项目内存
|
|
290
|
+
- 版本号升级到 0.0.1-beta.20
|
|
291
|
+
|
|
292
|
+
### Fixed
|
|
293
|
+
- **🌟 重大体验改进:修复终端界面闪动问题,极大提升用户使用体验和视觉稳定性**
|
|
294
|
+
- 修复窄终端下欢迎页边框显示问题,优化终端宽度适配
|
|
295
|
+
- 解决 diff 颜色显示异常和重复变量名问题
|
|
296
|
+
- 修复 diff 文本替换错误,改进文本处理逻辑
|
|
297
|
+
- 优化错误消息刷新机制,移除不必要的刷新操作
|
|
298
|
+
- 修复 lastitem 判断错误,改进会话状态管理
|
|
299
|
+
- 添加缺失的 React key 属性,移除冗余逻辑
|
|
300
|
+
- 改进剪贴板兼容性错误的用户体验,提供清晰的解决方案提示
|
|
301
|
+
|
|
302
|
+
### Technical Details
|
|
303
|
+
- ClipboardCompatibilityUtils: 跨平台剪贴板兼容性检测工具类
|
|
304
|
+
- AgentFactory: 集中管理 Agent 事件监听和状态更新
|
|
305
|
+
- InputState.CLIPBOARD_COMPATIBILITY_ERROR: 新增输入状态类型
|
|
306
|
+
- ClipboardUtils: 增强 macOS 平台支持,添加 osascript 后备方案
|
|
307
|
+
- PromptContext: 结构优化,支持 homeDir、userMemory、projectMemory 分离
|
|
308
|
+
- ShellService: 新增输出截断机制,防止超长输出影响性能
|
|
309
|
+
- UI 组件优化:解决界面闪动和渲染稳定性问题
|
|
310
|
+
- 移除 AgentStateAgentRunInterceptor,简化状态管理架构
|
|
311
|
+
|
|
312
|
+
## [0.0.1-beta.19] - 2025-08-21
|
|
313
|
+
|
|
314
|
+
### Added
|
|
315
|
+
- 实现连续用户消息自动合并功能,确保不会有连续一个以上的 user message 发送给 AI
|
|
316
|
+
- 新增 useAgentState hook,提供响应式的 Agent 状态管理
|
|
317
|
+
- 在 Session 接口中添加 agentStateSubject,支持状态变化的实时通知
|
|
318
|
+
- 支持 string 和数组两种 content 类型的消息合并,兼容多媒体内容
|
|
319
|
+
|
|
320
|
+
### Changed
|
|
321
|
+
- 将 agentState 从 SessionContext 迁移到 ConversationContext,职责分离更清晰
|
|
322
|
+
- LoadingBox 现在能实时响应 agentState 变化,提升用户体验
|
|
323
|
+
- 优化工具确认对话框第3选项文本:从 "No, and tell CodeBuddy what to do differently" 改为 "No, reject this tool and continue"
|
|
324
|
+
- 统一 inConversation 逻辑判断,使用 useContextSelector 精确订阅状态
|
|
325
|
+
|
|
326
|
+
### Fixed
|
|
327
|
+
- 修复 LoadingBox 无法感知 agentState 变化的问题
|
|
328
|
+
- 改进消息合并逻辑,在不同消息间添加分隔符以区分原始内容
|
|
329
|
+
- 优化 AgentStateAgentRunInterceptor,同时更新 agentState 和 agentStateSubject
|
|
330
|
+
|
|
331
|
+
### Technical Details
|
|
332
|
+
- mergeConsecutiveUserMessages: 新增连续用户消息合并函数
|
|
333
|
+
- mergeUserMessages: 支持多种 content 格式的消息合并
|
|
334
|
+
- AgentStateAgentRunInterceptor: 增强状态更新机制,支持响应式通知
|
|
335
|
+
- SessionFactory: 初始化 agentStateSubject 用于状态监听
|
|
336
|
+
- ConversationContext: 集中管理对话相关状态,包括 agentState
|
|
337
|
+
- ConfirmBox: 优化工具确认选项文本,更符合实际业务功能
|
|
338
|
+
|
|
339
|
+
## [0.0.1-beta.18] - 2025-08-20
|
|
340
|
+
|
|
341
|
+
### Added
|
|
342
|
+
- 实现基于 Ctrl+V 的图片粘贴功能,支持跨平台图片剪贴板检测(macOS/Windows/Linux)
|
|
343
|
+
- 新增图片占位符系统 `[Image #N]`,支持多图片粘贴和自动编号
|
|
344
|
+
- 集成 InputState 提示系统,当剪贴板无图片时显示友好提示
|
|
345
|
+
- 支持图片占位符删除时自动清理对应临时文件
|
|
346
|
+
- 消息发送时保留图片占位符文本,同时发送图片数据给 AI 模型
|
|
347
|
+
|
|
348
|
+
### Changed
|
|
349
|
+
- 提高 Agent 默认最大执行轮次从 20 提升到 100
|
|
350
|
+
- 抽象化 Agent 执行常量,统一管理在 agent-protocol.ts 中
|
|
351
|
+
- 优化图片粘贴检测机制,使用事件驱动替代定时轮询
|
|
352
|
+
- 每轮对话结束后自动重置图片索引计数器
|
|
353
|
+
|
|
354
|
+
### Technical Details
|
|
355
|
+
- ClipboardUtils: 新增跨平台剪贴板工具类,支持 macOS(pngpaste)、Windows(PowerShell)、Linux(xclip)
|
|
356
|
+
- InputItemUtils: 扩展支持多图片消息创建,保留原始文本中的占位符
|
|
357
|
+
- InkTextInput: 增强 Ctrl+V 事件捕获,支持图片粘贴检测
|
|
358
|
+
- InputHintBox: 新增 NO_IMAGE_HINT 状态和对应提示组件
|
|
359
|
+
- Agent Protocol: 新增 DEFAULT_MAX_TURNS = 100 常量定义
|
|
360
|
+
|
|
361
|
+
## [0.0.1-beta.17] - 2025-08-19
|
|
362
|
+
|
|
363
|
+
### Added
|
|
364
|
+
- 重构并增强 web-fetch 工具功能,支持更复杂的内容处理
|
|
365
|
+
- 新增 web-search 工具,支持搜索引擎集成
|
|
366
|
+
- 新增 notebook-edit 工具,增强 Jupyter Notebook 编辑功能
|
|
367
|
+
- 新增内容分析器代理指令模板
|
|
368
|
+
- 为确认对话框选项添加箭头指示符,提升用户界面可用性和直观性
|
|
369
|
+
|
|
370
|
+
### Changed
|
|
371
|
+
- 简化 web-fetch-tool 和 web-search-tool 的渲染器配置
|
|
372
|
+
- 重构 use-conversation-state 钩子,改进中断处理逻辑
|
|
373
|
+
- 优化回调函数的依赖项和清理逻辑
|
|
374
|
+
|
|
375
|
+
### Fixed
|
|
376
|
+
- 优化文件排除逻辑并改进通配符转正则表达式处理
|
|
377
|
+
|
|
378
|
+
### Technical Details
|
|
379
|
+
- ConfirmBox: 为选中的选项添加 '> ' 前缀,为未选中的选项添加 ' ' 前缀保持对齐
|
|
380
|
+
- WebSearchTool: 移除未使用的权限检查逻辑,添加别名支持
|
|
381
|
+
- WebFetchTool: 重构架构,增强内容处理能力
|
|
382
|
+
- NotebookEditTool: 全新实现,支持完整的 Jupyter Notebook 编辑操作
|
|
383
|
+
|
|
384
|
+
## [0.0.1-beta.16] - 2025-08-19
|
|
385
|
+
|
|
386
|
+
### Added
|
|
387
|
+
- 新增流式响应支持,ModelProvider 现在可以正确处理 Server-Sent Events 流式数据
|
|
388
|
+
- 基于工具调用结果内容长度的 token 计算优化
|
|
389
|
+
- 支持工具并行执行
|
|
390
|
+
|
|
391
|
+
### Changed
|
|
392
|
+
- 优化 token 显示逻辑,统一展示格式(优先显示输出 token,否则显示输入 token)
|
|
393
|
+
- 改进错误处理机制,根据 result.newItems 最后一项类型智能选择返回的消息类型
|
|
394
|
+
|
|
395
|
+
### Fixed
|
|
396
|
+
- 修复 axiosToFetchAdapter 方法对流式响应的处理问题
|
|
397
|
+
- 修复输入框内存状态检查顺序问题
|
|
398
|
+
- 修复 useTokenTracking hook 中 turnInputTokens 计算逻辑
|
|
399
|
+
- 修复 Connect Error 问题
|
|
400
|
+
- 修复 memory 模型无法回车问题
|
|
401
|
+
|
|
402
|
+
### Technical Details
|
|
403
|
+
- ModelProvider: 添加流式请求检测和 ReadableStream 创建
|
|
404
|
+
- TokenTracking: 使用 function_call_result 内容字符数计算输入 token
|
|
405
|
+
- ConversationState: 智能消息类型选择和历史补偿机制
|
|
406
|
+
- LoadingBox: 简化 token 信息展示,移除条件判断
|
|
407
|
+
|
|
408
|
+
## [0.0.1-beta.15] - 2025-08-19
|
|
409
|
+
|
|
410
|
+
### Added
|
|
411
|
+
- 新增版本发布和分支管理功能
|
|
412
|
+
- 改进输入框组件的用户体验
|
|
413
|
+
|
|
414
|
+
### Changed
|
|
415
|
+
- 更新版本号到 0.0.1-beta.15
|
|
416
|
+
- 优化输入建议菜单的交互逻辑
|
|
417
|
+
|
|
418
|
+
### Fixed
|
|
419
|
+
- 修复输入框相关的UI问题
|
|
420
|
+
|
|
421
|
+
## [0.0.1-beta.14] - 2025-08-18
|
|
422
|
+
|
|
423
|
+
### Added
|
|
424
|
+
- 优化斜杠命令拦截器延迟和token跟踪显示
|
|
425
|
+
- 增加诙谐的 loading 文笔
|
|
426
|
+
- 添加待发送消息队列显示功能并修复队列状态获取问题(下个版本完成)
|
|
427
|
+
- 增强文本输入功能,支持多行编辑、自动补全和快捷键导航
|
|
428
|
+
|
|
429
|
+
### Fixed
|
|
430
|
+
- 修改todo完成颜色展示
|
|
431
|
+
- 修改code的展示和工具展开
|
|
432
|
+
- 修复windows-bash中文乱码
|
|
433
|
+
|
|
434
|
+
### Changed
|
|
435
|
+
- 重构工具集,调整参数结构和工具prompt
|
|
436
|
+
- 合并工具常量并优化工具输出显示
|
|
437
|
+
- 更新 @openai/agents-core 依赖从 0.0.16 到 0.0.17
|
|
438
|
+
|
|
439
|
+
## [0.0.1-beta.11] - 2025-08-14
|
|
440
|
+
|
|
441
|
+
### Added
|
|
442
|
+
- 添加输入历史记录功能,支持上下键导航和本地存储
|
|
443
|
+
- 支持设置中的env应用到对话
|
|
444
|
+
- 使用 static 组件修复终端闪烁问题
|
|
445
|
+
|
|
446
|
+
### Fixed
|
|
447
|
+
- 修改错误时刷新逻辑以及回复的样式,过滤todos参数
|
|
448
|
+
- 删除重复的展示
|
|
449
|
+
- 调整 hint 边距
|
|
450
|
+
- 修改会话margin,解决工具不渲染和bash模式下第一次不展开问题
|
|
451
|
+
- 针对复制多行的/r进行替换,修复多行文本展示和光标位置
|
|
452
|
+
- 修复登录页面闪烁问题
|
|
453
|
+
- 修复无法显示工具详情问题
|
|
454
|
+
|
|
455
|
+
### Changed
|
|
456
|
+
- 重构菜单状态管理并统一使用 InputState.MENU
|
|
457
|
+
- 统一文件编辑工具参数命名风格为snake_case
|
|
458
|
+
|
|
459
|
+
## [0.0.1-beta.10] - 2025-08-13 及之前
|
|
460
|
+
|
|
461
|
+
### Added
|
|
462
|
+
- 基础 agent-cli 功能实现
|
|
463
|
+
- 工具系统架构搭建
|
|
464
|
+
- 会话管理功能
|
|
465
|
+
- 基础 CLI 界面
|
|
466
|
+
|
|
467
|
+
### Changed
|
|
468
|
+
- 初始架构设计和实现
|
|
469
|
+
|
|
470
|
+
---
|
|
471
|
+
|
|
472
|
+
*Generated based on git commit history and branch creation times for @tencent-ai/codebuddy-code (agent-cli module)*
|
|
473
|
+
|
|
474
|
+
## 版本说明
|
|
475
|
+
|
|
476
|
+
- **Unreleased**: 2025-08-15 之后的提交,尚未发布的功能
|
|
477
|
+
- **0.0.1-beta.11**: 2025-08-14 发布分支创建时包含的功能
|
|
478
|
+
- **0.0.1-beta.10**: 之前版本的功能
|
|
479
|
+
|
|
480
|
+
版本关联基于 `publish/0.0.1-beta.11` 分支的创建时间 (2025-08-14) 进行划分。
|
package/bin/codebuddy
CHANGED