@tencent-ai/codebuddy-code 2.119.4 → 2.120.0
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 +20 -0
- package/dist/codebuddy-headless.js +40 -30
- package/dist/codebuddy.js +60 -50
- package/dist/web-ui/assets/{index-GcU4pZms.js → index-BfmXmm8w.js} +274 -274
- package/dist/web-ui/docs/cn/cli/brokered-shell-macos.md +778 -0
- package/dist/web-ui/docs/cn/cli/env-vars.md +10 -5
- package/dist/web-ui/docs/cn/cli/plugins-reference.md +114 -13
- package/dist/web-ui/docs/cn/cli/prewarm.md +18 -5
- package/dist/web-ui/docs/cn/cli/release-notes/README.md +11 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.117.0.md +35 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.117.1.md +18 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.117.2.md +28 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.118.0.md +29 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.118.1.md +18 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.118.2.md +13 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.119.0.md +38 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.119.1.md +15 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.119.2.md +23 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.119.3.md +15 -0
- package/dist/web-ui/docs/cn/cli/release-notes/v2.119.4.md +13 -0
- package/dist/web-ui/docs/cn/cli/settings.md +2 -0
- package/dist/web-ui/docs/cn/cli/sub-agents.md +38 -0
- package/dist/web-ui/docs/en/cli/brokered-shell-macos.md +778 -0
- package/dist/web-ui/docs/en/cli/env-vars.md +10 -5
- package/dist/web-ui/docs/en/cli/plugins-reference.md +106 -13
- package/dist/web-ui/docs/en/cli/prewarm.md +18 -5
- package/dist/web-ui/docs/en/cli/release-notes/README.md +11 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.117.0.md +35 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.117.1.md +18 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.117.2.md +28 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.118.0.md +29 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.118.1.md +18 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.118.2.md +13 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.119.0.md +38 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.119.1.md +15 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.119.2.md +23 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.119.3.md +15 -0
- package/dist/web-ui/docs/en/cli/release-notes/v2.119.4.md +13 -0
- package/dist/web-ui/docs/en/cli/settings.md +2 -0
- package/dist/web-ui/docs/en/cli/sub-agents.md +38 -0
- package/dist/web-ui/docs/search-index-en.json +1 -1
- package/dist/web-ui/docs/search-index-zh.json +1 -1
- package/dist/web-ui/docs/sidebar-en.json +1 -1
- package/dist/web-ui/docs/sidebar-zh.json +1 -1
- package/dist/web-ui/index.html +1 -1
- package/dist/web-ui/sw.js +1 -1
- package/package.json +4 -4
- package/product.cloudhosted.json +2 -2
- package/product.internal.json +2 -2
- package/product.ioa.json +2 -2
- package/product.json +2 -2
- package/product.selfhosted.json +2 -2
|
@@ -27,11 +27,16 @@ CodeBuddy Code 支持通过环境变量来控制其行为。这些变量可以
|
|
|
27
27
|
| 环境变量 | 说明 |
|
|
28
28
|
|---------|------|
|
|
29
29
|
| `CODEBUDDY_MODEL` | 覆盖默认代理模型 |
|
|
30
|
-
| `CODEBUDDY_SMALL_FAST_MODEL` |
|
|
31
|
-
| `CODEBUDDY_BIG_SLOW_MODEL` |
|
|
32
|
-
| `CODEBUDDY_CODE_SUBAGENT_MODEL` |
|
|
30
|
+
| `CODEBUDDY_SMALL_FAST_MODEL` | 覆盖 `lite`(轻量快速)场景变体的模型;优先级高于 `variantModels.lite` 设置项 |
|
|
31
|
+
| `CODEBUDDY_BIG_SLOW_MODEL` | 覆盖 `reasoning`(推理增强)场景变体的模型;优先级高于 `variantModels.reasoning` 设置项 |
|
|
32
|
+
| `CODEBUDDY_CODE_SUBAGENT_MODEL` | **一刀切**覆盖所有内置子代理的模型(优先级最高,压过 `subagents` 设置项)。仅需按子代理独立配置时,改用 `/agents` 面板或 `settings.json` 的 `subagents.agents.<子代理名>.model` |
|
|
33
33
|
| `MAX_THINKING_TOKENS` | 启用扩展思考并设置思考过程的 token 预算。默认禁用 |
|
|
34
34
|
|
|
35
|
+
> **env 与 settings 的关系**:模型相关环境变量是**运维/CI 级的最高优先级覆盖**。
|
|
36
|
+
> - `CODEBUDDY_CODE_SUBAGENT_MODEL` 对**所有**子代理一刀切;若要**按子代理**分别指定,用 `settings.json` 的 `subagents.agents.<子代理名>.model`(支持全局 + 项目双 scope,可在 `/agents` 面板编辑),详见 [子代理文档](sub-agents.md)。
|
|
37
|
+
> - `CODEBUDDY_SMALL_FAST_MODEL` / `CODEBUDDY_BIG_SLOW_MODEL` 是**按变体**独立设置的(前者只影响 `lite`、后者只影响 `reasoning`);对应的可持久化设置项是 `variantModels`(可在 `/model` 面板的「场景变体区」编辑),详见 [设置文档](settings.md)。
|
|
38
|
+
> - 优先级:env(最高)> `settings`(项目 > 全局)> 内置默认。取消 env 后 settings 恢复生效。
|
|
39
|
+
|
|
35
40
|
## Bash 工具配置
|
|
36
41
|
|
|
37
42
|
| 环境变量 | 说明 |
|
|
@@ -99,8 +104,8 @@ CodeBuddy Code 支持通过环境变量来控制其行为。这些变量可以
|
|
|
99
104
|
|---------|------|
|
|
100
105
|
| `CODEBUDDY_CODE_MAX_OUTPUT_TOKENS` | 设置大多数请求的最大输出 token 数 |
|
|
101
106
|
| `CODEBUDDY_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | 覆盖文件读取的默认 token 限制(默认:20000) |
|
|
102
|
-
| `CODEBUDDY_STREAM_TIMEOUT_MS` | 流式响应中两个数据块之间允许的最大静默时间(毫秒)(默认:
|
|
103
|
-
| `CODEBUDDY_FIRST_TOKEN_TIMEOUT_MS` | 等待第一个模型输出的最大时间(毫秒)(默认:1200000
|
|
107
|
+
| `CODEBUDDY_STREAM_TIMEOUT_MS` | 流式响应中两个数据块之间允许的最大静默时间(毫秒)(默认:300000,即 5 分钟)。已开始吐 token 后中途静默通常意味着连接已断,故与首 token 超时解耦、取较短阈值 |
|
|
108
|
+
| `CODEBUDDY_FIRST_TOKEN_TIMEOUT_MS` | 等待第一个模型输出的最大时间(毫秒)(默认:1200000,即 20 分钟)。长上下文 prefill 慢吐首 token 属合法情况 |
|
|
104
109
|
| `CODEBUDDY_SESSION_MAX_ITEMS` | `session/load` 回放时历史消息的最大条数(默认:1000)。达到阈值且遇到 user message 时停止逆序读取 JSONL。需要支持超长会话(如沙箱场景)时可调大(例如 2000 或更多);零/负数/非数字会回退到默认值 |
|
|
105
110
|
|
|
106
111
|
## 文件系统和配置
|
|
@@ -267,7 +267,16 @@ LSP 集成提供:
|
|
|
267
267
|
"hooks": "./config/hooks.json",
|
|
268
268
|
"mcpServers": "./mcp-config.json",
|
|
269
269
|
"outputStyles": "./styles/",
|
|
270
|
-
"lspServers": "./.lsp.json"
|
|
270
|
+
"lspServers": "./.lsp.json",
|
|
271
|
+
"defaultEnabled": false,
|
|
272
|
+
"dependencies": [
|
|
273
|
+
"audit-logger",
|
|
274
|
+
{ "name": "secrets-vault", "version": "~2.1.0" }
|
|
275
|
+
],
|
|
276
|
+
"experimental": {
|
|
277
|
+
"themes": "./themes/",
|
|
278
|
+
"monitors": "./monitors/monitors.json"
|
|
279
|
+
}
|
|
271
280
|
}
|
|
272
281
|
```
|
|
273
282
|
|
|
@@ -292,6 +301,8 @@ LSP 集成提供:
|
|
|
292
301
|
| `repository` | string | 源代码 URL | `"https://github.com/user/plugin"` |
|
|
293
302
|
| `license` | string | 许可证标识符 | `"MIT"`, `"Apache-2.0"` |
|
|
294
303
|
| `keywords` | array | 发现标签 | `["deployment", "ci-cd"]` |
|
|
304
|
+
| `defaultEnabled` | boolean | 没有显式设置时是否启用,默认 `true` | `false` |
|
|
305
|
+
| `dependencies` | array | 当前插件依赖的其他插件,可声明 semver 范围和 marketplace | `[{"name":"helper","version":"^2.0.0"}]` |
|
|
295
306
|
|
|
296
307
|
### 组件路径字段
|
|
297
308
|
|
|
@@ -303,10 +314,44 @@ LSP 集成提供:
|
|
|
303
314
|
| `hooks` | string \| array \| object | 钩子配置路径或内联配置 | `"./my-extra-hooks.json"` |
|
|
304
315
|
| `mcpServers` | string \| array \| object | MCP 配置路径或内联配置 | `"./my-extra-mcp-config.json"` |
|
|
305
316
|
| `outputStyles` | string \| array | 自定义输出样式文件/目录(替换默认 `output-styles/`) | `"./styles/"` |
|
|
317
|
+
| `experimental.themes` | string \| array | Claude experimental 字段;CodeBuddy 当前仅识别,不加载到运行时 | `"./themes/"` |
|
|
318
|
+
| `experimental.monitors` | string \| array | Claude experimental 字段;CodeBuddy 当前仅识别,不启动后台 monitor | `"./monitors/monitors.json"` |
|
|
306
319
|
| `lspServers` | string \| array \| object | LSP 配置路径或内联配置 | `"./.lsp.json"` |
|
|
307
320
|
| `userConfig` | object | 启用时提示用户配置的值。详见[用户配置](#用户配置) | 见下方 |
|
|
308
321
|
| `channels` | array | 消息注入的频道声明。详见[频道](#频道) | 见下方 |
|
|
309
322
|
|
|
323
|
+
### 默认启用
|
|
324
|
+
|
|
325
|
+
`defaultEnabled: false` 使首次安装的插件保持禁用。已有 `enabledPlugins` 设置优先于该默认值,因此升级或重装不会改变用户已经明确选择的状态。如果一个插件是已启用插件的依赖,则依赖关系优先,CodeBuddy 会显式启用它。
|
|
326
|
+
|
|
327
|
+
### 插件依赖
|
|
328
|
+
|
|
329
|
+
`dependencies` 可以同时写在 `plugin.json` 和 marketplace 插件条目中,两处声明会合并。字符串依赖解析到声明方所在 marketplace;对象支持以下字段:
|
|
330
|
+
|
|
331
|
+
| 字段 | 必需 | 描述 |
|
|
332
|
+
|------|------|------|
|
|
333
|
+
| `name` | 是 | 插件名 |
|
|
334
|
+
| `version` | 否 | Node semver 范围,例如 `~2.1.0`、`^2.0`、`>=1.4` |
|
|
335
|
+
| `marketplace` | 否 | 依赖所在 marketplace;省略时使用声明方 marketplace |
|
|
336
|
+
|
|
337
|
+
跨 marketplace 自动安装默认被阻止。需要在根插件所属 marketplace 的 `marketplace.json` 中显式授权:
|
|
338
|
+
|
|
339
|
+
```json
|
|
340
|
+
{
|
|
341
|
+
"name": "acme-tools",
|
|
342
|
+
"allowCrossMarketplaceDependenciesOn": ["acme-shared"],
|
|
343
|
+
"plugins": []
|
|
344
|
+
}
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
只有根 marketplace 的 allowlist 生效,不传递信任。用户已经手动安装且版本满足要求的跨 marketplace 依赖可以直接复用。
|
|
348
|
+
|
|
349
|
+
版本约束通过 Git tag 解析。发布方使用 `{plugin-name}--v{version}` 命名 tag,例如 `secrets-vault--v2.1.3`。CodeBuddy 会合并所有已启用插件对同一依赖的范围,并选择满足交集的最高版本。tag semver 记录在 `resolvedVersion`;缓存目录使用声明版本加 12 位 commit SHA 后缀,避免被强制移动的 tag 复用旧内容。
|
|
350
|
+
|
|
351
|
+
安装插件会自动安装完整的传递依赖。启用插件只会传递启用已经安装的依赖;缺失依赖时启用失败。禁用或卸载仍被已启用插件依赖的插件会被阻止。
|
|
352
|
+
|
|
353
|
+
自动安装的依赖在 `installed_plugins.json` 中标记为 `auto: true`。普通卸载会保留这些依赖;使用 `plugin prune` 或 `plugin uninstall --prune` 才会清理不再被任何手动安装插件需要的 auto dependency。显式安装一个 auto dependency 会将其提升为手动安装,之后不会被 prune。
|
|
354
|
+
|
|
310
355
|
### 用户配置
|
|
311
356
|
|
|
312
357
|
`userConfig` 字段声明在插件启用时 CodeBuddy 提示用户输入的值。用此替代要求用户手动编辑 `settings.json`。
|
|
@@ -326,7 +371,7 @@ LSP 集成提供:
|
|
|
326
371
|
}
|
|
327
372
|
```
|
|
328
373
|
|
|
329
|
-
键必须是有效标识符。每个值可作为 `${user_config.KEY}` 在 MCP 和 LSP
|
|
374
|
+
键必须是有效标识符。每个值可作为 `${user_config.KEY}` 在 MCP 和 LSP 服务器配置、钩子命令中替换,以及(仅非敏感值)在技能、命令和代理内容中替换。值也作为 `CLAUDE_PLUGIN_OPTION_<KEY>` 与 `CODEBUDDY_PLUGIN_OPTION_<KEY>` 环境变量导出到插件子进程。环境变量名中的非字母、数字或下划线字符会替换为 `_`,然后转为大写。
|
|
330
375
|
|
|
331
376
|
非敏感值存储在 `settings.json` 的 `pluginConfigs[<plugin-id>].options` 中。敏感值存储到系统密钥链(或在密钥链不可用时存储到 `~/.codebuddy/.credentials.json`)。密钥链存储与 OAuth 令牌共享,总限制约 2 KB,因此敏感值应保持较小。
|
|
332
377
|
|
|
@@ -376,16 +421,26 @@ LSP 集成提供:
|
|
|
376
421
|
|
|
377
422
|
### 环境变量
|
|
378
423
|
|
|
379
|
-
CodeBuddy
|
|
424
|
+
CodeBuddy 提供三个 Claude Code 兼容路径变量。它们会在技能、命令和代理内容、钩子配置、MCP 或 LSP 服务器配置中内联替换,也会作为环境变量导出到钩子、MCP 与 LSP 子进程。每个 `CLAUDE_*` 名称都有对应的 `CODEBUDDY_*` 别名。
|
|
380
425
|
|
|
381
426
|
**`${CODEBUDDY_PLUGIN_ROOT}`**:插件安装目录的绝对路径。用于引用插件捆绑的脚本、二进制文件和配置文件。此路径在插件更新时会变化,因此写入此处的文件不会在更新后保留。
|
|
382
427
|
|
|
383
428
|
**兼容性**:同时支持 `${CLAUDE_PLUGIN_ROOT}` 变量名以兼容 Claude Code 插件。
|
|
384
429
|
|
|
385
|
-
**`${CODEBUDDY_PLUGIN_DATA}`**:用于插件状态的持久化目录,在更新后保留。用于已安装的依赖项(如 `node_modules` 或 Python
|
|
430
|
+
**`${CODEBUDDY_PLUGIN_DATA}`**:用于插件状态的持久化目录,在更新后保留。用于已安装的依赖项(如 `node_modules` 或 Python 虚拟环境)、生成的代码、缓存以及任何需要跨插件版本持久化的文件。首次被占位符引用或导出到插件子进程时自动创建该目录。
|
|
386
431
|
|
|
387
432
|
**兼容性**:同时支持 `${CLAUDE_PLUGIN_DATA}` 变量名。
|
|
388
433
|
|
|
434
|
+
**`${CODEBUDDY_PROJECT_DIR}`**:当前工作区根目录。用于插件脚本定位用户项目,不应写入插件自身的持久化状态。
|
|
435
|
+
|
|
436
|
+
**兼容性**:同时支持 `${CLAUDE_PROJECT_DIR}` 变量名。
|
|
437
|
+
|
|
438
|
+
插件子进程还会收到以下选项环境变量:
|
|
439
|
+
|
|
440
|
+
- `CLAUDE_PLUGIN_OPTION_<KEY>`:Claude Code 标准名称
|
|
441
|
+
- `CODEBUDDY_PLUGIN_OPTION_<KEY>`:CodeBuddy 别名
|
|
442
|
+
- `PLUGIN_OPT_<KEY>`:为已有 CodeBuddy 插件保留的兼容名称
|
|
443
|
+
|
|
389
444
|
```json
|
|
390
445
|
{
|
|
391
446
|
"hooks": {
|
|
@@ -446,7 +501,7 @@ CodeBuddy 提供两个变量用于引用插件路径。两者都在技能内容
|
|
|
446
501
|
}
|
|
447
502
|
```
|
|
448
503
|
|
|
449
|
-
|
|
504
|
+
卸载插件的最后一个安装作用域时,数据目录会自动删除;若同一插件仍安装在其他作用域,则保留。CLI 默认删除,传递 `--keep-data` 可保留。`plugin prune` 会删除孤立自动依赖的数据目录。
|
|
450
505
|
|
|
451
506
|
---
|
|
452
507
|
|
|
@@ -457,7 +512,7 @@ CodeBuddy 提供两个变量用于引用插件路径。两者都在技能内容
|
|
|
457
512
|
- 通过 `codebuddy --plugin-dir`,仅在会话期间有效
|
|
458
513
|
- 通过市场安装,适用于未来会话
|
|
459
514
|
|
|
460
|
-
出于安全和验证目的,CodeBuddy
|
|
515
|
+
出于安全和验证目的,CodeBuddy 将**市场**插件复制到用户的本地**版本化插件缓存**(`~/.codebuddy/plugins/cache/<marketplace>/<plugin>/<version>`),而不是原地使用。市场源码仍保存在 `~/.codebuddy/plugins/marketplaces/<marketplace>`,理解此行为对于开发引用外部文件的插件很重要。
|
|
461
516
|
|
|
462
517
|
### 路径遍历限制
|
|
463
518
|
|
|
@@ -465,14 +520,18 @@ CodeBuddy 提供两个变量用于引用插件路径。两者都在技能内容
|
|
|
465
520
|
|
|
466
521
|
### 使用外部依赖
|
|
467
522
|
|
|
468
|
-
|
|
523
|
+
如果插件需要访问同一 marketplace 中的共享文件,可以在插件目录中创建符号链接。缓存复制时按目标位置处理:
|
|
524
|
+
|
|
525
|
+
- 指向插件自身目录内:保留为相对符号链接。
|
|
526
|
+
- 指向同一 marketplace 的其他位置:解引用并复制目标内容。
|
|
527
|
+
- 指向 marketplace 外部:跳过该符号链接。
|
|
469
528
|
|
|
470
529
|
```bash
|
|
471
530
|
# 在插件目录内
|
|
472
|
-
ln -s /
|
|
531
|
+
ln -s ../../shared-plugin/skills/foo ./skills/foo
|
|
473
532
|
```
|
|
474
533
|
|
|
475
|
-
|
|
534
|
+
这在允许 marketplace 内共享文件的同时,避免插件把任意宿主机文件带入缓存。
|
|
476
535
|
|
|
477
536
|
---
|
|
478
537
|
|
|
@@ -501,6 +560,10 @@ enterprise-plugin/
|
|
|
501
560
|
│ └── scripts/
|
|
502
561
|
├── output-styles/ # 输出样式定义
|
|
503
562
|
│ └── terse.md
|
|
563
|
+
├── themes/ # Claude 标准主题定义;当前仅识别,不加载
|
|
564
|
+
│ └── dracula.json
|
|
565
|
+
├── monitors/ # Claude 标准后台 monitor;当前仅识别,不启动
|
|
566
|
+
│ └── monitors.json
|
|
504
567
|
├── hooks/ # 钩子配置
|
|
505
568
|
│ ├── hooks.json # 主钩子配置
|
|
506
569
|
│ └── security-hooks.json # 额外钩子
|
|
@@ -517,7 +580,7 @@ enterprise-plugin/
|
|
|
517
580
|
└── CHANGELOG.md # 版本历史
|
|
518
581
|
```
|
|
519
582
|
|
|
520
|
-
> **重要**: `.codebuddy-plugin/` 目录包含 `plugin.json` 文件。所有其他目录(`commands/`、`agents/`、`skills/`、`output-styles/`、`hooks/`)必须位于插件根目录,而不是 `.codebuddy-plugin/` 内部。同时兼容 `.workbuddy-plugin/` 与 `.claude-plugin/` 目录。
|
|
583
|
+
> **重要**: `.codebuddy-plugin/` 目录包含 `plugin.json` 文件。所有其他目录(`commands/`、`agents/`、`skills/`、`output-styles/`、`themes/`、`monitors/`、`hooks/`)必须位于插件根目录,而不是 `.codebuddy-plugin/` 内部。同时兼容 `.workbuddy-plugin/` 与 `.claude-plugin/` 目录。
|
|
521
584
|
|
|
522
585
|
### 文件位置参考
|
|
523
586
|
|
|
@@ -528,11 +591,13 @@ enterprise-plugin/
|
|
|
528
591
|
| **Agents** | `agents/` | 子代理 Markdown 文件 |
|
|
529
592
|
| **Skills** | `skills/` | 带有 `<name>/SKILL.md` 结构的技能 |
|
|
530
593
|
| **Output styles** | `output-styles/` | 输出样式定义 |
|
|
594
|
+
| **Themes** | `themes/` | Claude 标准字段;CodeBuddy 当前仅识别,不加载到运行时 |
|
|
595
|
+
| **Monitors** | `monitors/monitors.json` | Claude 标准字段;CodeBuddy 当前仅识别,不启动后台 monitor |
|
|
531
596
|
| **Hooks** | `hooks/hooks.json` | 钩子配置 |
|
|
532
597
|
| **MCP servers** | `.mcp.json` | MCP 服务器定义 |
|
|
533
598
|
| **LSP servers** | `.lsp.json` | 语言服务器配置 |
|
|
534
599
|
| **Executables** | `bin/` | 添加到 Bash 工具 PATH 的可执行文件。启用插件时此目录中的文件可在任何 Bash 工具调用中作为裸命令调用 |
|
|
535
|
-
| **Settings** | `settings.json` |
|
|
600
|
+
| **Settings** | `settings.json` | 插件默认配置。当前运行时应用 `agent`;`subagentStatusLine` 仅识别并保留 |
|
|
536
601
|
|
|
537
602
|
---
|
|
538
603
|
|
|
@@ -592,12 +657,29 @@ codebuddy plugin uninstall <plugin> [options]
|
|
|
592
657
|
|------|------|------|
|
|
593
658
|
| `-s, --scope <scope>` | 从指定作用域卸载:`user`、`project` 或 `local` | `user` |
|
|
594
659
|
| `--keep-data` | 保留插件的[持久化数据目录](#持久化数据目录) | |
|
|
660
|
+
| `--prune` | 同时清理该作用域中不再被需要的 auto dependency | |
|
|
661
|
+
| `-y, --yes` | 跳过 `--prune` 确认;stdin 或 stdout 非 TTY 时必须指定 | |
|
|
595
662
|
| `-h, --help` | 显示命令帮助 | |
|
|
596
663
|
|
|
597
664
|
**别名**: `remove`, `rm`
|
|
598
665
|
|
|
599
666
|
默认情况下,从最后一个剩余作用域卸载时也会删除插件的 `${CODEBUDDY_PLUGIN_DATA}` 目录。使用 `--keep-data` 可保留它,例如在测试新版本后重新安装时。
|
|
600
667
|
|
|
668
|
+
### plugin prune
|
|
669
|
+
|
|
670
|
+
清理指定作用域中不再被任何手动安装插件依赖的 auto dependency。
|
|
671
|
+
|
|
672
|
+
```bash
|
|
673
|
+
codebuddy plugin prune [options]
|
|
674
|
+
```
|
|
675
|
+
|
|
676
|
+
| 选项 | 描述 | 默认 |
|
|
677
|
+
|------|------|------|
|
|
678
|
+
| `-s, --scope <scope>` | 清理作用域:`user`、`project` 或 `local` | `user` |
|
|
679
|
+
| `--dry-run` | 只列出将被清理的插件,不修改设置和 registry | |
|
|
680
|
+
| `-y, --yes` | 跳过确认;stdin 或 stdout 非 TTY 且未指定时只列出候选项 | |
|
|
681
|
+
| `-h, --help` | 显示命令帮助 | |
|
|
682
|
+
|
|
601
683
|
### plugin enable
|
|
602
684
|
|
|
603
685
|
启用已禁用的插件。
|
|
@@ -614,7 +696,7 @@ codebuddy plugin enable <plugin> [options]
|
|
|
614
696
|
|
|
615
697
|
| 选项 | 描述 | 默认 |
|
|
616
698
|
|------|------|------|
|
|
617
|
-
| `-s, --scope <scope>` | 启用作用域:`user`、`project` 或 `local` |
|
|
699
|
+
| `-s, --scope <scope>` | 启用作用域:`user`、`project` 或 `local` | 自动检测当前安装作用域 |
|
|
618
700
|
| `-h, --help` | 显示命令帮助 | |
|
|
619
701
|
|
|
620
702
|
### plugin disable
|
|
@@ -633,7 +715,7 @@ codebuddy plugin disable <plugin> [options]
|
|
|
633
715
|
|
|
634
716
|
| 选项 | 描述 | 默认 |
|
|
635
717
|
|------|------|------|
|
|
636
|
-
| `-s, --scope <scope>` | 禁用作用域:`user`、`project` 或 `local` |
|
|
718
|
+
| `-s, --scope <scope>` | 禁用作用域:`user`、`project` 或 `local` | 自动检测当前安装作用域 |
|
|
637
719
|
| `-h, --help` | 显示命令帮助 | |
|
|
638
720
|
|
|
639
721
|
### plugin update
|
|
@@ -655,6 +737,14 @@ codebuddy plugin update <plugin> [options]
|
|
|
655
737
|
| `-s, --scope <scope>` | 更新作用域:`user`、`project`、`local` 或 `managed` | `user` |
|
|
656
738
|
| `-h, --help` | 显示命令帮助 | |
|
|
657
739
|
|
|
740
|
+
### plugin list
|
|
741
|
+
|
|
742
|
+
列出已安装插件及其版本、marketplace、启用状态和依赖错误。`--json` 可用于脚本读取 `dependencyErrors`。
|
|
743
|
+
|
|
744
|
+
```bash
|
|
745
|
+
codebuddy plugin list --json
|
|
746
|
+
```
|
|
747
|
+
|
|
658
748
|
### 市场管理
|
|
659
749
|
|
|
660
750
|
```bash
|
|
@@ -812,6 +902,17 @@ my-plugin/
|
|
|
812
902
|
>
|
|
813
903
|
> 如果插件在[市场](plugin-marketplaces.md)目录中,可以通过 `marketplace.json` 管理版本,并从 `plugin.json` 中省略 `version` 字段。
|
|
814
904
|
|
|
905
|
+
### 版本化缓存
|
|
906
|
+
|
|
907
|
+
CodeBuddy 按以下优先级计算缓存键:
|
|
908
|
+
|
|
909
|
+
1. `plugin.json` 的 `version`
|
|
910
|
+
2. marketplace 插件条目的 `version`
|
|
911
|
+
3. Git 来源的 commit SHA;`git-subdir` 还包含子目录路径哈希
|
|
912
|
+
4. 无法确定版本时使用 `unknown`
|
|
913
|
+
|
|
914
|
+
没有显式版本的 Git 插件以 12 位 commit SHA 为缓存目录名。通过版本约束解析 tag 时,缓存目录额外包含 12 位 commit SHA 后缀;约束校验使用单独记录的 `resolvedVersion`,不依赖可能过期的 manifest 版本。
|
|
915
|
+
|
|
815
916
|
---
|
|
816
917
|
|
|
817
918
|
## 九、与 Claude Code 的兼容性
|
|
@@ -19,7 +19,8 @@ cbc --prewarm --prewarm-id pool1
|
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
进程会跑完冷启动,然后在本地 IPC 端点挂起待命(不绑定工作目录):
|
|
22
|
-
- macOS / Linux:unix socket `/tmp/codebuddy-prewarm-pool1.sock`(权限 `0600
|
|
22
|
+
- macOS / Linux:unix socket `/tmp/codebuddy-prewarm-pool1.sock`(权限 `0600`,仅当前用户;
|
|
23
|
+
落盘目录可用 env `CODEBUDDY_CODE_PREWARM_SOCKET_PATH` 覆盖)
|
|
23
24
|
- Windows:named pipe `\\.\pipe\codebuddy-prewarm-pool1`
|
|
24
25
|
|
|
25
26
|
`--prewarm-id` 可省略,默认用进程 PID 作为标识。
|
|
@@ -61,10 +62,14 @@ cbc-prewarm activate pool1 --cwd /path/to/project -- --serve
|
|
|
61
62
|
### 地址约定
|
|
62
63
|
|
|
63
64
|
```
|
|
64
|
-
macOS/Linux :
|
|
65
|
+
macOS/Linux : <dir>/codebuddy-prewarm-<id>.sock (<dir> 默认 /tmp)
|
|
65
66
|
Windows : \\.\pipe\codebuddy-prewarm-<id>
|
|
66
67
|
```
|
|
67
68
|
|
|
69
|
+
> unix socket 落盘目录默认 `/tmp`,可通过 env `CODEBUDDY_CODE_PREWARM_SOCKET_PATH`
|
|
70
|
+
> 覆盖(如 `/tmp` 被 noexec / 只读挂载,或需放进受控目录时)。进程侧与客户端侧
|
|
71
|
+
> 读取同一 env 保持同构。Windows named pipe 命名空间无目录概念,不受该 env 影响。
|
|
72
|
+
|
|
68
73
|
### 消息
|
|
69
74
|
|
|
70
75
|
```jsonc
|
|
@@ -89,9 +94,11 @@ Windows : \\.\pipe\codebuddy-prewarm-<id>
|
|
|
89
94
|
const net = require('net');
|
|
90
95
|
|
|
91
96
|
function prewarmAddr(id) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
97
|
+
if (process.platform === 'win32') {
|
|
98
|
+
return `\\\\.\\pipe\\codebuddy-prewarm-${id}`;
|
|
99
|
+
}
|
|
100
|
+
const dir = (process.env.CODEBUDDY_CODE_PREWARM_SOCKET_PATH || '').trim() || '/tmp';
|
|
101
|
+
return require('path').join(dir, `codebuddy-prewarm-${id}.sock`);
|
|
95
102
|
}
|
|
96
103
|
|
|
97
104
|
function activate(id, { cwd, args = [] }) {
|
|
@@ -129,6 +136,12 @@ console.log(res); // { ok: true, cmd: 'activate', status: 'activating', cwd: '..
|
|
|
129
136
|
|
|
130
137
|
预热相关参数只能通过 CLI flag 配置:`--prewarm` / `--prewarm-id <id>` / `--prewarm-force`。
|
|
131
138
|
|
|
139
|
+
此外可通过 env 覆盖 unix socket 落盘目录:
|
|
140
|
+
|
|
141
|
+
| env | 作用 | 默认 |
|
|
142
|
+
|-----|------|------|
|
|
143
|
+
| `CODEBUDDY_CODE_PREWARM_SOCKET_PATH` | 自定义 unix socket 落盘目录(如 `/dev/abc/`,尾斜杠可有可无)。进程侧创建 + 客户端连接读取同一 env。仅 unix;Windows named pipe 不受影响 | `/tmp` |
|
|
144
|
+
|
|
132
145
|
## 相关
|
|
133
146
|
|
|
134
147
|
- CLI 参数总表:[cli-reference.md](cli-reference.md)
|
|
@@ -17,6 +17,17 @@ Release Notes 记录了每个版本的用户可见变更,包括:
|
|
|
17
17
|
|
|
18
18
|
<!-- 新版本自动添加到此处 -->
|
|
19
19
|
|
|
20
|
+
- [v2.119.4](./v2.119.4.md) - 2026-07-12
|
|
21
|
+
- [v2.119.3](./v2.119.3.md) - 2026-07-12
|
|
22
|
+
- [v2.119.2](./v2.119.2.md) - 2026-07-12
|
|
23
|
+
- [v2.119.1](./v2.119.1.md) - 2026-07-11
|
|
24
|
+
- [v2.119.0](./v2.119.0.md) - 2026-07-10
|
|
25
|
+
- [v2.118.2](./v2.118.2.md) - 2026-07-09
|
|
26
|
+
- [v2.118.1](./v2.118.1.md) - 2026-07-09
|
|
27
|
+
- [v2.118.0](./v2.118.0.md) - 2026-07-08
|
|
28
|
+
- [v2.117.2](./v2.117.2.md) - 2026-07-07
|
|
29
|
+
- [v2.117.1](./v2.117.1.md) - 2026-07-06
|
|
30
|
+
- [v2.117.0](./v2.117.0.md) - 2026-07-04
|
|
20
31
|
- [v2.116.0](./v2.116.0.md) - 2026-07-03
|
|
21
32
|
- [v2.115.0](./v2.115.0.md) - 2026-07-02
|
|
22
33
|
- [v2.114.3](./v2.114.3.md) - 2026-07-02
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.117.0 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.117.0 |
|
|
8
|
+
| Agent SDK JS | v0.3.201 |
|
|
9
|
+
| Agent SDK Python | v0.3.200 |
|
|
10
|
+
|
|
11
|
+
## ✨ 新功能
|
|
12
|
+
|
|
13
|
+
### Daemon 系统服务注册
|
|
14
|
+
|
|
15
|
+
新增 `codebuddy daemon install` / `uninstall` 命令,支持将 daemon 注册为操作系统级服务:
|
|
16
|
+
|
|
17
|
+
- **macOS**:LaunchAgent,登录即自启
|
|
18
|
+
- **Linux**:systemd user service,登录即自启
|
|
19
|
+
- **Windows**:Task Scheduler,登录即自启
|
|
20
|
+
|
|
21
|
+
注册后 daemon 将获得崩溃自动恢复能力,无需手动维护后台进程。
|
|
22
|
+
|
|
23
|
+
## 🔧 改进优化
|
|
24
|
+
|
|
25
|
+
- **Web UI 实时文件监听**:git 状态监听从轮询模式升级为 SSE 实时推送,响应更快、资源占用更低
|
|
26
|
+
- **Git 状态主动刷新**:文件操作工具(Write/Edit/Bash 等)完成后自动触发 git status 刷新,无需等待下一轮轮询
|
|
27
|
+
- **文件监听噪音过滤**:过滤 node_modules、.git/objects 等高频无关路径,减少无效刷新
|
|
28
|
+
- **会话标题优化**:正确处理 channel XML 包裹的标题,显示可读内容
|
|
29
|
+
- **移除外部字体依赖**:去除 Google Fonts Poppins 加载,改用系统字体栈,加速首屏渲染
|
|
30
|
+
- **终端面板双击交互**:双击 tab 列表空白区域新建终端,双击 tab 标签切换面板最大化
|
|
31
|
+
- **命令粘贴流展开**:斜杠命令执行前自动展开粘贴流引用
|
|
32
|
+
|
|
33
|
+
## 🐛 问题修复
|
|
34
|
+
|
|
35
|
+
- **WorkBuddy 专家团回复**:修复部分模型仅返回深度思考、没有正文时,流式响应缺少 assistant message 导致继续对话无回复的问题
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.117.1 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.117.1 |
|
|
8
|
+
| Agent SDK JS | v0.3.202 |
|
|
9
|
+
| Agent SDK Python | v0.3.201 |
|
|
10
|
+
|
|
11
|
+
## 🔧 改进优化
|
|
12
|
+
|
|
13
|
+
- **SCM Diff 查看方式优化**:点击 SCM 文件列表中的文件现在以独立标签页打开 Diff 视图,支持同时查看多个文件的差异,而非替换整个编辑器区域
|
|
14
|
+
- **Web UI 工作目录管理**:新增 workspace-store 统一管理工作目录来源,消除各 store 分散获取 cwd 的耦合
|
|
15
|
+
- **视图切换优化**:Editor 和 Changes 视图改为始终挂载(display 控制显隐),避免切换时 Monaco Editor 和 Diff 视图重建闪烁
|
|
16
|
+
- **终端切换优化**:终端从隐藏恢复为可见时立即执行 fit,减少切换时的空白闪烁
|
|
17
|
+
- **主题适配**:按钮前景色从硬编码 `text-white` 改为语义化的 `accent-brand-foreground` token,正确适配明暗主题
|
|
18
|
+
- **编辑器空状态**:提取为独立组件,使用 Logo 替代 SVG 图标,在空间不足时自动隐藏快捷键提示
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.117.2 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.117.2 |
|
|
8
|
+
| Agent SDK JS | v0.3.203 |
|
|
9
|
+
| Agent SDK Python | v0.3.202 |
|
|
10
|
+
|
|
11
|
+
## 🔧 改进优化
|
|
12
|
+
|
|
13
|
+
- **认证启动优化**:custom-token 认证类型新增同步快速路径,当 token 已在环境变量或配置文件中时直接使用,避免等待网络同步导致启动延迟
|
|
14
|
+
|
|
15
|
+
## 🐛 问题修复
|
|
16
|
+
|
|
17
|
+
- **输入框回车无响应**:修复 TUI 输入框偶现按 Enter 无响应、需先按空格再回车才能发送的问题
|
|
18
|
+
- **ESC 中断后输入框异常**:修复 ESC 打断 AI 输出后,输入框偶发变黄且无法继续输入的问题
|
|
19
|
+
- **Web UI 历史会话崩溃**:修复加载 schema 不完整的历史会话时页面白屏崩溃的问题
|
|
20
|
+
- **模型最大输出 Token 兜底**:修复部分模型配置缺省最大输出 Token 时请求丢失上限的问题,确保回退到内置能力表
|
|
21
|
+
- **Git 状态面板**:修复 Web UI 的 Git 面板不显示嵌套目录中未跟踪文件的问题
|
|
22
|
+
- **设置写入丢失**:修复写配置时可能基于陈旧缓存快照整体回写,导致插件启用状态等字段偶发丢失的问题
|
|
23
|
+
- **Agent 团队成员权限**:修复模型传入默认模式时可能覆盖子任务权限的问题
|
|
24
|
+
- **终端 WebSocket 保活**:Web UI 终端面板新增应用层心跳,防止反向代理因 idle timeout 断开连接
|
|
25
|
+
- **流式响应断流卡死**:将流间静默超时从首 token 超时中解耦(5 分钟 vs 20 分钟),避免中途断流后干等 20 分钟才报错重试
|
|
26
|
+
- **CSV 中文乱码**:写入 `.csv` / `.tsv` 文件时补写 UTF-8 BOM,修复在 Windows Excel 打开含中文 CSV 出现乱码的问题
|
|
27
|
+
- **MCP 资源发现超时**:MCP 资源发现改为并行查询,单台服务器超时不再串行累加阻塞启动
|
|
28
|
+
- **上游异常关流崩溃**:修复上游模型在只流出推理内容后异常关流导致会话崩溃的问题
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.118.0 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.118.0 |
|
|
8
|
+
| Agent SDK JS | v0.3.204 |
|
|
9
|
+
| Agent SDK Python | v0.3.203 |
|
|
10
|
+
|
|
11
|
+
## ✨ 新功能
|
|
12
|
+
|
|
13
|
+
### 子代理 Reasoning 控制
|
|
14
|
+
|
|
15
|
+
子代理(sub agent)新增两个配置项,可单独控制其思考行为,与主代理解耦:
|
|
16
|
+
|
|
17
|
+
- `effort`:设置子代理的 reasoning 强度(`minimal` / `low` / `medium` / `high` / `xhigh` / `max`),对所有子代理(含自定义 / 插件)生效;
|
|
18
|
+
- `thinkingEnabled: false`:运行时强制关闭该子代理的思考,仅对内置子代理生效,避免外部来源绕过模型的推理产品语义。
|
|
19
|
+
|
|
20
|
+
两者互斥,关闭优先;配置省略时不干预,沿用会话 / 模型默认。该能力仅作用于子代理会话,不影响主代理。
|
|
21
|
+
|
|
22
|
+
## 🐛 问题修复
|
|
23
|
+
|
|
24
|
+
- **上下文环 popover 数据缺失**:历史对话切换后上下文消耗细拆数据未展示,现在 replay 路径补推 usage 更新事件恢复展示
|
|
25
|
+
- **积分归因异常**:主 session 每轮刷新请求归因 ID,确保消耗积分正确关联到当前 turn,修复积分未展示问题
|
|
26
|
+
- **WSL1 安装无法运行**:修复 WSL1 下安装后执行二进制报 `Exec format error` 的问题。构建工具链已升级修复此回归,新版二进制可在 WSL1 正常运行;同时 install.sh 保留 WSL1 检测但改为非阻断的 warning,不再直接拦下已能正常运行的 WSL1 用户
|
|
27
|
+
- **macOS 弹出「安装开发者工具」对话框**:内置市场安装前检测 git 可用性时,先判断 PATH 上的 `git` 是否为未安装 Command Line Tools 时的 `/usr/bin/git` stub;若是则不再执行 `git --version`,避免触发系统弹窗,并正常降级为 Zip 市场安装
|
|
28
|
+
- **stream-json 模式下 MCP 加载卡住**:修复预热进程 activate 时 argv/opts 落定顺序问题——导致 headless 判断错误、MCP 初始化被跳过;stream-json 模式下 USER 级 MCP server 永久停在 connecting、工具进不了首轮请求。现在先落定完整状态再统一广播 cwd 变更
|
|
29
|
+
- **微信支付误拦截**:避免 WebFetch 工具结果中的网页摘要或文档内容误触发微信支付检测
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.118.1 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.118.1 |
|
|
8
|
+
| Agent SDK JS | v0.3.205 |
|
|
9
|
+
| Agent SDK Python | v0.3.204 |
|
|
10
|
+
|
|
11
|
+
## 🔧 改进优化
|
|
12
|
+
|
|
13
|
+
- **依赖升级**:升级伽利略 Node SDK 至 0.3.17-beta.1,移除不再需要的旧版本 patch 文件
|
|
14
|
+
|
|
15
|
+
## 🐛 问题修复
|
|
16
|
+
|
|
17
|
+
- **本地 ACP 认证**:修复本机回环连接在部分平台(Windows x64)下 ACP `initialize` 握手被误判为非本机、返回 401 `Authentication required` 导致会话无法建立、全量任务被阻塞的问题。现已能正确识别全部等价回环地址形态(127.0.0.0/8、`::1` 及其展开/IPv4-mapped/带方括号或 zone id 的形态)
|
|
18
|
+
- **`/effort` 与 `/config` 一致性(Issue #58743)**:修复 `cbc --effort <level>` 启动后 `/config get reasoningEffort` 与 `/effort` 面板显示不一致的问题。`/config` 现展示合并后的 effective settings(CLI 优先级最高);`/effort` 面板初始高亮 = 会话 override → CLI/全局 `reasoningEffort` → `high` 兜底;`/effort <level>`(非 ultracode)同步写会话级模型 effort override(走 `setOverrideThinking`,与 ACP `thought_level` 同通道),非法档位直接拒绝
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.118.2 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.118.2 |
|
|
8
|
+
| Agent SDK JS | v0.3.206 |
|
|
9
|
+
| Agent SDK Python | v0.3.205 |
|
|
10
|
+
|
|
11
|
+
## 🐛 问题修复
|
|
12
|
+
|
|
13
|
+
- **reasoning-only 响应崩溃**:修复推理模型仅返回思考内容(无普通文本、工具调用等常规响应)时,SDK 生成空的 assistant 消息导致会话报 `Cannot read properties of undefined (reading 'type')` 而中断的问题。现在此类响应能被正确处理,会话不再崩溃。
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.119.0 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.119.0 |
|
|
8
|
+
| Agent SDK JS | v0.3.207 |
|
|
9
|
+
| Agent SDK Python | v0.3.206 |
|
|
10
|
+
|
|
11
|
+
## ✨ 新功能
|
|
12
|
+
|
|
13
|
+
### 插件依赖与缓存管理
|
|
14
|
+
|
|
15
|
+
插件系统全面增强,支持完整的依赖管理与本地缓存:
|
|
16
|
+
|
|
17
|
+
- **插件依赖**:支持 `dependencies` 声明、传递安装与启用、semver tag 解析、跨 marketplace allowlist、依赖冲突诊断和孤立依赖清理;
|
|
18
|
+
- **插件缓存**:新安装的 marketplace 统一落到 `plugins/marketplaces/<marketplace>`,启用 / 安装插件时物化到 `plugins/cache/<marketplace>/<plugin>/<version>` 并写入清单文件;
|
|
19
|
+
- **插件能力**:支持插件 `bin/` PATH 注入、root/data/project 与 `user_config` 环境、持久化 data 生命周期、`settings.json` allowlist、`defaultEnabled` 等完整能力。
|
|
20
|
+
|
|
21
|
+
## 🔧 改进优化
|
|
22
|
+
|
|
23
|
+
- **Deep Research 输出格式化**:Workflow 返回结果从 JSON 结构改为可读的 Markdown 报告,包含摘要、发现、反驳声明和统计信息
|
|
24
|
+
- **子 Agent 消息隔离**:子代理转发的用量消息不再在主对话中渲染,仅用于 token 消耗追踪,让主对话更清爽
|
|
25
|
+
- **子 Agent 工具标题前缀**:Web UI 中为子 agent 内部执行的工具调用添加类型前缀显示,便于区分来源
|
|
26
|
+
- **文件撤回防复活**:Web UI 文件变更面板增加防复活机制,防止异步广播将已撤回的文件重新加入列表
|
|
27
|
+
- **Windows 插件性能**:插件 data、MCPB、完整性检查与 Git 探测改用异步文件 I/O,Git/npm 安装不再同步阻塞主线程,MCPB 复用流式解压提升安装速度
|
|
28
|
+
- **macOS 沙箱运行时增强**:为 macOS 沙箱内 Python 和 Node 文件 API 接入受控文件访问链路,文件读写更安全可控
|
|
29
|
+
- **macOS 沙箱文件备份**:在 macOS 沙箱 shell 的重定向、写入和修改前接入备份链路(含 `truncate` 截断操作),误操作可回退
|
|
30
|
+
|
|
31
|
+
## 🐛 问题修复
|
|
32
|
+
|
|
33
|
+
- **提升多轮对话缓存命中率**:修复并行工具调用场景下工具结果序列化形态不一致导致的缓存前缀抖动问题,多工具 / 子代理场景的缓存命中率与费用显著改善
|
|
34
|
+
- **会话唤醒卡顿**:修复 stream-json + `--resume` 场景下 `initialize` 响应被历史事件抢先写入 stdout 的排序竞争,避免会话唤醒被拖慢到 120s+(#63837)
|
|
35
|
+
- **工具审批送达**:修复对话之外自动续跑(后台任务完成、错误恢复、定时 / 渠道触发)撞到高危命令审批时,审批框无法送达客户端、会话卡在等待授权的问题
|
|
36
|
+
- **认证初始化**:优化认证慢路径,避免网络配置同步抖动阻塞无头模式认证初始化
|
|
37
|
+
- **AskUserQuestion 多选回答**:修复多选题同时选择预设项和填写自定义项时,自定义内容覆盖已选项的问题
|
|
38
|
+
- **PostToolUse 图片结果**:修复 hook 返回附加上下文时破坏图片结构化工具结果的问题,避免图片结果降级为文本或丢失
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.119.1 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.119.1 |
|
|
8
|
+
| Agent SDK JS | v0.3.208 |
|
|
9
|
+
| Agent SDK Python | v0.3.207 |
|
|
10
|
+
|
|
11
|
+
## 🐛 问题修复
|
|
12
|
+
|
|
13
|
+
- **自定义模型输出额度**:自定义模型未显式配置最大输出 tokens 时,不再把模型能力上限自动作为每次请求额度,避免额度被意外占满
|
|
14
|
+
- **积分消耗提示失真**:修复多轮对话后积分消耗显示不准确的问题,让积分统计更贴近真实消费
|
|
15
|
+
- **埋点上报稳定性**:统一规范整数字段的上报值,避免 Token 等字段包含小数时导致事件上报失败
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.119.2 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.119.2 |
|
|
8
|
+
| Agent SDK JS | v0.3.209 |
|
|
9
|
+
| Agent SDK Python | v0.3.208 |
|
|
10
|
+
|
|
11
|
+
## 🔧 改进优化
|
|
12
|
+
|
|
13
|
+
本次更新聚焦 Web UI 的终端与文件树体验,让远程终端更稳定、文件浏览更直观。
|
|
14
|
+
|
|
15
|
+
- **终端自动重连**:WebSocket 断连后按退避序列自动重连,超过最大次数才回退到手动重连,网络抖动不再频繁掉线
|
|
16
|
+
- **PTY 流量控制**:新增基于 ACK 的流控机制,防止高输出场景下 WebSocket 缓冲区溢出导致卡顿
|
|
17
|
+
- **文件树隐藏文件切换**:支持一键显示/隐藏 `.git`、`node_modules` 等常见隐藏文件,专注真正关心的内容
|
|
18
|
+
- **文件树 Git 状态着色**:文件树节点根据 Git 状态(修改/新增/删除等)显示对应颜色,一眼看清改动分布
|
|
19
|
+
- **文件树实时监听**:通过 SSE watcher 监听文件系统变化并自动刷新文件树,无需手动刷新
|
|
20
|
+
- **终端链接增强**:点击终端里的目录路径会自动在文件树中展开,点击文件路径则同时打开编辑器并定位到文件树
|
|
21
|
+
- **工作目录隔离存储**:按工作目录隔离本地存储持久化(类似 VSCode 的 workspaceStorage),多项目切换互不干扰
|
|
22
|
+
- **心跳容忍优化**:PTY 心跳改为双层容忍,避免系统休眠唤醒后误杀连接
|
|
23
|
+
- **zsh 提示符修复**:通过 `PROMPT_EOL_MARK` 环境变量消除首行 `%` 标记,替代此前的 exec-replace 方案,输出更干净
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.119.3 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.119.3 |
|
|
8
|
+
| Agent SDK JS | v0.3.210 |
|
|
9
|
+
| Agent SDK Python | v0.3.209 |
|
|
10
|
+
|
|
11
|
+
## 🐛 问题修复
|
|
12
|
+
|
|
13
|
+
- **stdio 模式启动更快**:修复 stdio / stream-json 模式下初始化握手会被慢 MCP server 拖住(实测约 10 秒)的问题。初始化现在只等待配置解析完成,不再等待 MCP 就绪,握手响应显著加快,而消息发送路径仍会正确等待 MCP 装配。
|
|
14
|
+
- **预热进程 MCP 加载**:修复预热进程激活后,激活前才写入的用户级 MCP 配置(`~/.codebuddy/.mcp.json`)无法加载、相关工具进不了可用工具列表的问题。激活时会重新读取用户级 MCP 配置,确保待命后新增的 MCP server 正常生效。
|
|
15
|
+
- **网络错误重试**:回滚此前对网络错误识别逻辑的包装改动(相关改动存在需要重新评估的副作用),恢复到改动合入前的行为,避免影响网络错误的重试判断。
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# 🚀 CodeBuddy Code v2.119.4 发布
|
|
2
|
+
|
|
3
|
+
## 📦 版本信息
|
|
4
|
+
|
|
5
|
+
| 组件 | 版本 |
|
|
6
|
+
|------|------|
|
|
7
|
+
| CodeBuddy Code CLI | v2.119.4 |
|
|
8
|
+
| Agent SDK JS | v0.3.211 |
|
|
9
|
+
| Agent SDK Python | v0.3.210 |
|
|
10
|
+
|
|
11
|
+
## 🔧 改进优化
|
|
12
|
+
|
|
13
|
+
- **预热 socket 目录可自定义**:新增环境变量 `CODEBUDDY_CODE_PREWARM_SOCKET_PATH`,可指定预热进程 socket 文件的落盘目录(默认 `/tmp`)。适合需要将临时文件集中管理或调整存放位置的场景,仅影响 Unix 平台,Windows 不受影响。
|
|
@@ -65,6 +65,8 @@ CodeBuddy Code 使用分层配置系统,让您能够在不同级别进行个
|
|
|
65
65
|
| `disableAllHooks` | 禁用所有 [hooks](hooks.md) | `true` |
|
|
66
66
|
| `allowUntrustedFrontmatterHooks` | 是否允许执行来自**非 product 内置**来源的 agent/skill 的 frontmatter `hooks` 字段(包括用户本地 `.codebuddy/agents\|skills/*.md` 和插件市场)。默认 `false`,防止不可信的 md 文件静默启动 shell 命令;只有 product 内置 agent/skill 不受影响。 | `true` |
|
|
67
67
|
| `model` | 覆盖 CodeBuddy Code 使用的默认模型 | `"gpt-5"` |
|
|
68
|
+
| `subagents` | 按内置子代理粒度指定模型。结构为 `{"agents": {"<子代理名>": {"model": "..."}}}`(`agents` 的 key = 子代理名,如 `Explore`;`model` = 模型 ID / 别名 / 变体 `lite`\|`reasoning` / `inherit`)。各子代理互不影响,支持全局 + 项目双 scope。可在 `/agents` 面板可视化编辑。优先级:env `CODEBUDDY_CODE_SUBAGENT_MODEL`(一刀切)> 项目 > 全局 > 内置默认 > 继承主模型。详见 [子代理文档](sub-agents.md) | `{"agents": {"Explore": {"model": "gpt-5.1-codex"}, "general-purpose": {"model": "claude-opus-4"}}}` |
|
|
69
|
+
| `variantModels` | 通用场景变体 → 模型 的映射(key = `lite`\|`reasoning`;value = 模型 ID / 别名)。影响所有走该变体的逻辑(如 `Explore` 等声明 `lite` 的子代理)。可在 `/model` 面板的「场景变体区」编辑。优先级:env(`CODEBUDDY_SMALL_FAST_MODEL` / `CODEBUDDY_BIG_SLOW_MODEL`,按变体)> 项目 > 全局 > 模型级 `relatedModels` > 主模型兜底 | `{"lite": "gpt-5.1-codex-lite", "reasoning": "gpt-5.5"}` |
|
|
68
70
|
| `agent` | 覆盖主线程使用的 agent 名称(内置或自定义 agent),应用该 agent 的 system prompt、工具限制和模型配置。优先级:`product.json default` → `plugin agent` → `settings.json agent` → `CLI --agent` | `"my-reviewer"` |
|
|
69
71
|
| `statusLine` | 配置自定义状态行以显示上下文。见 [statusLine 文档](#状态行配置) | `{"type": "command", "command": "~/.codebuddy/statusline.sh"}` |
|
|
70
72
|
| `enableAllProjectMcpServers` | 自动批准项目 `.mcp.json` 文件中定义的所有 MCP 服务器 | `false` |
|