dsh-parallel-tools-prompt 0.2.1-rc.4 → 0.2.1-rc.5

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/README.md CHANGED
@@ -6,18 +6,18 @@
6
6
 
7
7
  ## 行为
8
8
 
9
- - 默认只作用于创建/恢复时的 `standard` 根 Agent;跳过子智能体、PTC、minimal、creator 等非目标会话。
10
- - 使用公开 `agent/created`、`agents.roots()`、session projection 与 `systemPrompt.section()`,不替换 preset。
11
- - 固定 section 名称 `parallel-tools:guidance`、order 1050、禁止插值;不注入时间戳、工具列表或每轮变化的数据。
12
- - 同一 Agent 幂等注册;插件卸载与 Agent 释放都清理 section。插件重载时为仍存活的目标根 Agent 补挂 section;源码更新建议重启宿主加载新模块。
13
- - 两个独立开关选择注入通道(默认只走系统提示词):`systemPromptSection`(默认 `true`,注册 `systemPrompt.section()`)与 `contextReminder`(默认 `false`)。后者通过 `agent/pre-step` 在下一步骤追加一条带独立 `source.kind: parallel-tools-scheduling` 的 CONTEXT 提醒,写入会话历史并渲染为 CONTEXT 块,与宿主 `time-context` 同一机制;已持久化的 source 用于避免重复注入,每个 Agent 只交付一次。两者可同时开启;同时关闭则插件不注入任何内容。提醒进入历史,卸载不会删除。这不是每轮重复提醒,也不保证长期遵循。
9
+ - 插件启用后,默认通过 `contextReminder` 向所有 Agent(包括子智能体)提供提醒,覆盖所有 preset 以及没有 preset 的会话;`presetIds` 与根 Agent 筛选不限制此通道。插件重载前已存活的子智能体也会在下一步骤获得提醒。
10
+ - `systemPromptSection` 是默认关闭的可选通道;只有此通道按符合条件的根 Agent 与 `presetIds` 筛选,默认目标为 `standard` 根 Agent,跳过子智能体及不在列表中的 preset。
11
+ - 使用公开 Agent 生命周期、session projection 与 `systemPrompt.section()`,不替换 preset。系统提示词 section 固定名称 `parallel-tools:guidance`、order 1050、禁止插值;不注入时间戳、工具列表或每轮变化的数据。
12
+ - 同一 Agent 幂等注册;插件卸载与 Agent 释放都清理 section。插件重载时为仍存活的目标根 Agent 补挂已启用的 section,并覆盖仍存活 Agent 的提醒通道;源码更新建议重启宿主加载新模块。
13
+ - 两个独立开关选择注入通道(默认只走 CONTEXT 提醒):`contextReminder`(默认 `true`)与 `systemPromptSection`(默认 `false`,设为 `true` 输出 `systemPrompt.section()` 的指引内容)。提醒通过 `agent/pre-step` 在下一步骤追加一条带独立 `source.kind: parallel-tools-scheduling` 的 CONTEXT 消息,写入会话历史并渲染为 CONTEXT 块,与宿主 `time-context` 同一机制;已持久化的 source 用于去重,包括继承历史中的提醒,每个 Agent 最多交付一次,已有或继承的提醒不会重复注入。两者可同时开启;同时关闭则插件不注入任何内容。提醒进入历史,卸载不会删除。这不是每轮重复提醒,也不保证长期遵循。
14
14
  - 插件详情页(Plugins → 本插件)在描述与组件列表之间提供这两个开关的设置表单,开关即时写入当前 profile 的 patch。两个字段声明为 `.volatile()`,修改不重启插件:`contextReminder` 在下一步骤生效;系统提示词开关对修改之后重新组装提示词的会话生效(已建立的会话沿用旧提示词)。浏览器端由 `src/client` 经 `scripts/build-client.mjs` 构建为 `lib/client.js`,按宿主客户端模块格式封装;表单要求 profile 里条目 id 为 `parallel-tools-prompt`。
15
15
  - 单次调用合理时仍单次;路径、ID等参数必须已知;读后写、共享文件冲突、权限审批保持依赖顺序。不发明batch工具或额外规划轮次。
16
16
  - 同轮多个工具调用不代表真正同时执行;执行并发仍由DSH调度器决定。
17
17
 
18
18
  ## 版本、依赖与发布
19
19
 
20
- 插件版本 `0.2.1-rc.1` 跟随 DSH 的 `0.2.1` 版本线,RC 序号独立递增,不等于宿主 RC 序号。最低宿主要求 `>=0.2.1-rc.3`,Node.js `>=24.9.0`。开发锁文件以 RC.5 为基线;RC.3 的相关接口已做源码比对,完整插件测试本次运行在 RC.5 依赖上,不冒充两套运行验收。
20
+ 插件版本 `0.2.1-rc.5` 跟随 DSH 的 `0.2.1` 版本线,RC 序号独立递增,不等于宿主 RC 序号。最低宿主要求 `>=0.2.1-rc.3`,Node.js `>=24.9.0`。开发锁文件以 RC.5 为基线;RC.3 的相关接口已做源码比对,完整插件测试本次运行在 RC.5 依赖上,不冒充两套运行验收。
21
21
 
22
22
  宿主库以 peerDependencies 声明,同时列入 devDependencies 供构建测试:Cordis `4.0.5`、Schemastery `3.18.5`、DSH agent/llm/preset-registry/session-projection/system-prompt 使用 `^0.2.1-rc.3`。不将宿主服务打包为普通运行依赖,避免重复服务身份。semver caret 不跨 `0.3`,也不自动接纳不同版本号的预发布版本。
23
23
 
@@ -31,7 +31,7 @@
31
31
 
32
32
  ## 开发与安装
33
33
 
34
- 尚未发布 npm;已在本地 Web profile 链接安装并进行人工观察。一次探索任务出现连续多调用批次,但模型同时发生切换,不能据此归因于插件或宣称 token/费用节省。
34
+ 已在本地 Web profile 链接安装并进行人工观察。一次探索任务出现连续多调用批次,但模型同时发生切换,不能据此归因于插件或宣称 token/费用节省。
35
35
 
36
36
  ```sh
37
37
  npm ci
@@ -41,20 +41,20 @@ npm test
41
41
  npm pack --dry-run
42
42
  ```
43
43
 
44
- 确认愿意启用后,手动安装本目录到目标 profile,例如 `dsh plugin --profile web add .`;Desktop 选择 `--profile desktop`。本插件没有客户端 UI,不需要 `dsh.client`。
44
+ 确认愿意启用后,手动安装本目录到目标 profile,例如 `dsh plugin --profile web add .`;Desktop 选择 `--profile desktop`。本插件提供客户端设置 UI,可在 Plugins → 本插件详情页调整两个注入通道。
45
45
 
46
46
  直接调用插件默认 `enabled: false`;bundle显式配置 `enabled: true`,安装bundle即选择启用。配置:
47
47
 
48
48
  ```yaml
49
49
  enabled: true
50
- systemPromptSection: true # 默认;系统提示词通道
51
- contextReminder: false # 默认;设为 true 启用 CONTEXT 提醒通道
52
- presetIds: [standard]
50
+ systemPromptSection: false # 默认;设为 true 选择启用系统提示词通道
51
+ contextReminder: true # 默认;所有 Agent(含子智能体),不限 preset
52
+ presetIds: [standard] # 默认;只筛选系统提示词通道的目标根 Agent
53
53
  ```
54
54
 
55
- **注意:profile 的 `cordis.patch.yml` 覆盖本插件时,`config` 是整体替换、不与 bundle 默认值深合并。** 覆盖项必须写全需要的字段(至少 `enabled: true`、`presetIds`),否则 `enabled` 回落为默认 `false`,插件静默不注入。验收方式:系统提示词通道看新会话 `system/message` 中是否出现 `Tool-call scheduling:`;CONTEXT 通道看会话里是否出现 `source.kind` 为 `parallel-tools-scheduling` 的消息。
55
+ **注意:profile 的 `cordis.patch.yml` 覆盖本插件时,`config` 是整体替换、不与 bundle 默认值深合并。** 覆盖项必须写全需要的字段,尤其是 `enabled: true`;否则 `enabled` 回落为默认 `false`,插件静默不注入。省略的通道字段使用上述 schema 默认值;自定义系统提示词目标时也要保留所需 `presetIds`。已有 profile 中显式设置的值不会自动迁移:例如原来的 `contextReminder: false` 或 `systemPromptSection: true` 仍保留,需通过设置 UI 或手动修改 profile 才会改变。验收方式:系统提示词通道看新会话 `system/message` 中是否出现 `Tool-call scheduling:`;CONTEXT 通道看会话里是否出现 `source.kind` 为 `parallel-tools-scheduling` 的消息。
56
56
 
57
- `presetIds` 是精确ID列表,不是正则。自定义目标仅适用于原生工具调用preset;不要把PTC加入以免对专用执行模式施加不合适的指导。根会话fork可以保留历史parentSession,不会仅因此被当作子智能体。
57
+ `presetIds` 是精确 ID 列表,不是正则,且只控制选择启用后的系统提示词通道,不影响 CONTEXT 提醒。系统提示词的自定义目标仅适用于原生工具调用 preset;不要把 PTC 加入该列表,以免对专用执行模式施加额外系统指导。默认 CONTEXT 提醒仍覆盖 PTC、minimal、creator 等所有 preset、无 preset 会话及子智能体。根会话 fork 可以保留历史 parentSession,不会仅因此被当作子智能体;若继承了已有提醒,则不会再注入。
58
58
 
59
59
  卸载会释放注册;已有模型历史中的旧指令不会被改写或删除。若宿主需要重新投影系统提示,生效边界由宿主管理;稳妥方式是重启后继续原会话。首次安装可能改变system前缀并影响一次缓存复用;不能保证零缓存影响。
60
60
 
package/cordis.patch.yml CHANGED
@@ -1,10 +1,12 @@
1
1
  # Installing/enabling this bundle is the explicit opt-in. Direct plugin use
2
- # defaults to enabled:false. Guidance goes into the system prompt by default;
3
- # add `contextReminder: true` for the CONTEXT-message channel (or
4
- # `systemPromptSection: false` to use only that channel). No preset replacement or scheduler changes.
2
+ # defaults to enabled:false. The one-time CONTEXT reminder applies to all agents,
3
+ # including subagents and all presets. The optional system-prompt channel remains
4
+ # limited to eligible roots selected by presetIds. No scheduler changes.
5
5
  - insert:
6
6
  - id: parallel-tools-prompt
7
7
  name: dsh-parallel-tools-prompt
8
8
  config:
9
9
  enabled: true
10
+ contextReminder: true
11
+ systemPromptSection: false
10
12
  presetIds: [standard]
package/lib/client.js CHANGED
@@ -38,18 +38,18 @@ window.__ModuleLoader__.load({
38
38
  var LOCALE = "settings.parallelToolsPrompt";
39
39
  var en = {
40
40
  systemPrompt: "Inject into system prompt",
41
- systemPromptHint: "Static guidance section in the system prompt (default on). Applies to sessions that assemble their prompt after the change.",
41
+ systemPromptHint: "Static guidance section for eligible root agents in the system prompt (default off). Applies to sessions that assemble their prompt after the change.",
42
42
  context: "Inject as context message",
43
- contextHint: "One-time CONTEXT message delivered at the next step, kept in the session history.",
43
+ contextHint: "One-time CONTEXT message for all agents, including subagents (default on), delivered at the next step and kept in session history.",
44
44
  note: "Both can be on together; with both off the plugin injects nothing.",
45
45
  unavailable: "The plugin is not loaded or its settings are not served, so it cannot be configured right now.",
46
46
  readOnly: "This deployment stores settings read-only."
47
47
  };
48
48
  var zh = {
49
49
  systemPrompt: "\u6CE8\u5165\u5230\u7CFB\u7EDF\u63D0\u793A\u8BCD",
50
- systemPromptHint: "\u5728\u7CFB\u7EDF\u63D0\u793A\u8BCD\u4E2D\u52A0\u5165\u56FA\u5B9A\u7684\u8C03\u5EA6\u6307\u5F15\uFF08\u9ED8\u8BA4\u5F00\u542F\uFF09\u3002\u5BF9\u4FEE\u6539\u4E4B\u540E\u91CD\u65B0\u7EC4\u88C5\u63D0\u793A\u8BCD\u7684\u4F1A\u8BDD\u751F\u6548\u3002",
50
+ systemPromptHint: "\u4E3A\u7B26\u5408\u8303\u56F4\u7684\u6839 Agent \u5728\u7CFB\u7EDF\u63D0\u793A\u8BCD\u4E2D\u52A0\u5165\u56FA\u5B9A\u7684\u8C03\u5EA6\u6307\u5F15\uFF08\u9ED8\u8BA4\u5173\u95ED\uFF09\u3002\u5BF9\u4FEE\u6539\u4E4B\u540E\u91CD\u65B0\u7EC4\u88C5\u63D0\u793A\u8BCD\u7684\u4F1A\u8BDD\u751F\u6548\u3002",
51
51
  context: "\u4EE5 CONTEXT \u6D88\u606F\u6CE8\u5165",
52
- contextHint: "\u5728\u4E0B\u4E00\u6B65\u9AA4\u9001\u8FBE\u4E00\u6761 CONTEXT \u6D88\u606F\uFF0C\u5E76\u4FDD\u7559\u5728\u4F1A\u8BDD\u5386\u53F2\u4E2D\u3002",
52
+ contextHint: "\u9ED8\u8BA4\u5F00\u542F\uFF0C\u5BF9\u6240\u6709 Agent\uFF08\u5305\u62EC\u5B50\u4EE3\u7406\uFF09\u751F\u6548\uFF1B\u5728\u4E0B\u4E00\u6B65\u9AA4\u9001\u8FBE\u4E00\u6B21 CONTEXT \u6D88\u606F\uFF0C\u5E76\u4FDD\u7559\u5728\u4F1A\u8BDD\u5386\u53F2\u4E2D\u3002",
53
53
  note: "\u4E24\u8005\u53EF\u540C\u65F6\u5F00\u542F\uFF1B\u90FD\u5173\u95ED\u65F6\u63D2\u4EF6\u4E0D\u6CE8\u5165\u4EFB\u4F55\u5185\u5BB9\u3002",
54
54
  unavailable: "\u63D2\u4EF6\u672A\u52A0\u8F7D\u6216\u5176\u8BBE\u7F6E\u672A\u63D0\u4F9B\uFF0C\u6682\u65F6\u65E0\u6CD5\u914D\u7F6E\u3002",
55
55
  readOnly: "\u672C\u90E8\u7F72\u7684\u8BBE\u7F6E\u4E3A\u53EA\u8BFB\u3002"
@@ -77,14 +77,14 @@ window.__ModuleLoader__.load({
77
77
  title: t("systemPrompt"),
78
78
  hint: t("systemPromptHint"),
79
79
  disabled,
80
- checked: values["systemPromptSection"] !== false,
80
+ checked: values["systemPromptSection"] === true,
81
81
  onChange: (checked) => props.setField("systemPromptSection", checked)
82
82
  }),
83
83
  Row({
84
84
  title: t("context"),
85
85
  hint: t("contextHint"),
86
86
  disabled,
87
- checked: values["contextReminder"] === true,
87
+ checked: values["contextReminder"] !== false,
88
88
  onChange: (checked) => props.setField("contextReminder", checked)
89
89
  }),
90
90
  (0, import_jsx_runtime.jsx)("div", { style: hintStyle, children: disabled ? t("readOnly") : t("note") })
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAMnD,OAAO,CAAC,MAAM,0BAA0B,CAAC;AAKzC,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE7F,eAAO,MAAM,IAAI,0BAA0B,CAAC;AAC5C,eAAO,MAAM,MAAM,UAAmD,CAAC;AAEvE,kEAAkE;AAClE,eAAO,MAAM,gBAAgB,ykBAAokB,CAAC;AAElmB,qGAAqG;AACrG,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,gBAAgB;QACxB,CAAC,mBAAmB,CAAC,EAAE;YAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC;YAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9F;CACF;AASD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;aAkBjB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;AAuD/C,8EAA8E;AAC9E,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyDxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAMnD,OAAO,CAAC,MAAM,0BAA0B,CAAC;AAKzC,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE7F,eAAO,MAAM,IAAI,0BAA0B,CAAC;AAC5C,eAAO,MAAM,MAAM,UAAmD,CAAC;AAEvE,kEAAkE;AAClE,eAAO,MAAM,gBAAgB,ykBAAokB,CAAC;AAElmB,qGAAqG;AACrG,eAAO,MAAM,mBAAmB,8BAA8B,CAAC;AAE/D,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,gBAAgB;QACxB,CAAC,mBAAmB,CAAC,EAAE;YAAE,IAAI,EAAE,OAAO,mBAAmB,CAAC;YAAC,IAAI,EAAE,QAAQ,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9F;CACF;AASD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;aAkBjB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;AAmD/C,8EAA8E;AAC9E,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAwDxD"}
package/lib/index.js CHANGED
@@ -20,10 +20,10 @@ export const Config = z.object({
20
20
  debugOutputDir: z.string().default(''),
21
21
  debugMaxCalls: z.natural().min(1).max(10).default(3),
22
22
  enabled: z.boolean().default(false).description('Enable static tool-call scheduling guidance. The bundle explicitly opts in; direct plugin use is disabled by default.'),
23
- systemPromptSection: z.boolean().default(true).volatile().description('Inject the static scheduling guidance as a system-prompt section (default true). May be combined with contextReminder; with both off the plugin injects nothing.'),
24
- contextReminder: z.boolean().default(false).volatile().description('Inject a one-time scheduling reminder as a CONTEXT message at the next step boundary (default false). Persists in the session transcript; never duplicated across reloads. Independent of systemPromptSection.'),
23
+ systemPromptSection: z.boolean().default(false).volatile().description('Inject static scheduling guidance as a system-prompt section for eligible roots (default false). May be combined with contextReminder; with both off the plugin injects nothing.'),
24
+ contextReminder: z.boolean().default(true).volatile().description('Inject a one-time scheduling reminder as a CONTEXT message for all agents, including subagents and all presets, at the next step boundary (default true). Persists in the session transcript; never duplicated across reloads. Independent of systemPromptSection and presetIds.'),
25
25
  presetIds: z.array(z.string().pattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/))
26
- .max(32).default(['standard']).description('Exact preset IDs to target at agent creation. Root agents only; use native-tool presets, not PTC. An empty list disables all targets.'),
26
+ .max(32).default(['standard']).description('Exact preset IDs for the system-prompt channel only. Root agents only; use native-tool presets, not PTC. An empty list disables system-prompt targets, not context reminders.'),
27
27
  });
28
28
  /** Read a switch live: volatile fields are references whose value may change without a reload. */
29
29
  function flag(value) {
@@ -35,7 +35,7 @@ function flag(value) {
35
35
  * reload-time catch-up, so a plugin reload cannot silently drop guidance from
36
36
  * agents that survive it (the old instance's disposal removed its sections).
37
37
  */
38
- function attach(ctx, agent, config, presetIds, registrations, active, reminderAgents) {
38
+ function attach(ctx, agent, config, presetIds, registrations, active) {
39
39
  if (registrations.has(agent))
40
40
  return;
41
41
  const { header } = agent.session;
@@ -49,9 +49,6 @@ function attach(ctx, agent, config, presetIds, registrations, active, reminderAg
49
49
  ?? header.agentPreset;
50
50
  if (preset === undefined || !presetIds.has(preset))
51
51
  return;
52
- // Conversation-level reminder: appended by the pre-step listener below once
53
- // this agent is eligible (agent.inject only accepts user-kind messages).
54
- reminderAgents.add(agent);
55
52
  const registration = {};
56
53
  // Returning the disposer is essential: ctx.effect does not implicitly adopt
57
54
  // arbitrary registrations executed inside its callback on another fiber.
@@ -88,7 +85,6 @@ export function apply(ctx, config) {
88
85
  const presetIds = new Set(config.presetIds);
89
86
  const registrations = new WeakMap();
90
87
  const active = new Set();
91
- const reminderAgents = new WeakSet();
92
88
  // Agent contexts are not children of this plugin's fiber. Explicitly give the
93
89
  // plugin ownership of their effect disposers as well as agent-local ownership.
94
90
  ctx.effect(() => async () => {
@@ -105,7 +101,7 @@ export function apply(ctx, config) {
105
101
  const decision = await next();
106
102
  if (decision.kind === 'reject' || signal.aborted)
107
103
  return decision;
108
- if (!flag(config.contextReminder) || !reminderAgents.has(agent) || delivered.has(agent))
104
+ if (!flag(config.contextReminder) || delivered.has(agent))
109
105
  return decision;
110
106
  const present = hasReminder(agent) || decision.messages.some(m => m.source.kind === CONTEXT_SOURCE_KIND);
111
107
  delivered.add(agent);
@@ -121,7 +117,7 @@ export function apply(ctx, config) {
121
117
  }, { prepend: true });
122
118
  }
123
119
  ctx.on('agent/created', ({ agent }) => {
124
- attach(ctx, agent, config, presetIds, registrations, active, reminderAgents);
120
+ attach(ctx, agent, config, presetIds, registrations, active);
125
121
  });
126
122
  // A plugin reload disposes the previous instance's section registrations, and
127
123
  // the host does not replay `agent/created` for agents that stay alive. Attach
@@ -132,7 +128,7 @@ export function apply(ctx, config) {
132
128
  // previous instance's disposal. The no-op disposer satisfies the effect
133
129
  // contract; per-agent cleanup is owned by each registration instead.
134
130
  for (const agent of ctx.agents.roots())
135
- attach(ctx, agent, config, presetIds, registrations, active, reminderAgents);
131
+ attach(ctx, agent, config, presetIds, registrations, active);
136
132
  return () => { };
137
133
  });
138
134
  }
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-parallel-tools-prompt",
3
- "version": "0.2.1-rc.4",
3
+ "version": "0.2.1-rc.5",
4
4
  "description": "Plan ready tool-call batches to reduce model round trips in DeepSeek Harness",
5
5
  "repository": {
6
6
  "type": "git",