@qilin-agent/tool-subagent-control 3.1.3 → 3.1.4

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.i18n.yaml CHANGED
@@ -5,102 +5,102 @@
5
5
  /:
6
6
  en: 5413b8e52a0c8e3d
7
7
  zh: 9b6d0385209ff9bb
8
- /qilin-tool-subagent-control:
9
- en: b59eed4868d08fb2
10
- zh: 19ae83459d757670
11
- /qilin-tool-subagent-control/summary:
8
+ /qilin-agent-tool-subagent-control:
9
+ en: dd20961f32a4ec6e
10
+ zh: 51c5321c0ffd5b30
11
+ /qilin-agent-tool-subagent-control/summary:
12
12
  en: 9d832590a6c44ec7
13
13
  zh: f9a702a2da6351a1
14
- /qilin-tool-subagent-control/table-of-contents:
14
+ /qilin-agent-tool-subagent-control/table-of-contents:
15
15
  en: d152484eb41ac6b4
16
16
  zh: 09388d293f9be9cb
17
- /qilin-tool-subagent-control/use-this-package:
17
+ /qilin-agent-tool-subagent-control/use-this-package:
18
18
  en: 27c5bbe682f0b72b
19
19
  zh: b16aeb2c43f3692e
20
- /qilin-tool-subagent-control/use-this-package/minimal-configuration:
20
+ /qilin-agent-tool-subagent-control/use-this-package/minimal-configuration:
21
21
  en: 4a52c81317ec9001
22
22
  zh: ebd9f1ba920da50a
23
- /qilin-tool-subagent-control/use-this-package/send-message:
23
+ /qilin-agent-tool-subagent-control/use-this-package/send-message:
24
24
  en: 6f6bcc759da1df49
25
25
  zh: b65843c939074e8c
26
- /qilin-tool-subagent-control/use-this-package/interrupt-agent:
26
+ /qilin-agent-tool-subagent-control/use-this-package/interrupt-agent:
27
27
  en: 01dd41fe11f294d7
28
28
  zh: f45a2e4073c0b206
29
- /qilin-tool-subagent-control/use-this-package/list-agents:
29
+ /qilin-agent-tool-subagent-control/use-this-package/list-agents:
30
30
  en: f4873c8be412bfa6
31
31
  zh: 5a7e76ae2ee6c31e
32
- /qilin-tool-subagent-control/understand-the-implementation:
32
+ /qilin-agent-tool-subagent-control/understand-the-implementation:
33
33
  en: c5cdf01a78c990f2
34
34
  zh: 53c180d726ce4502
35
- /qilin-tool-subagent-control/understand-the-implementation/design-concept:
35
+ /qilin-agent-tool-subagent-control/understand-the-implementation/design-concept:
36
36
  en: 0af7238c690ee8d6
37
37
  zh: 5049eea23770ffed
38
- /qilin-tool-subagent-control/understand-the-implementation/delivery-and-signal-ownership:
38
+ /qilin-agent-tool-subagent-control/understand-the-implementation/delivery-and-signal-ownership:
39
39
  en: 4c7698ccea49a60b
40
40
  zh: fbf129ff583e6ab9
41
- /qilin-tool-subagent-control/understand-the-implementation/listing-projection:
41
+ /qilin-agent-tool-subagent-control/understand-the-implementation/listing-projection:
42
42
  en: 44e4e03908573520
43
43
  zh: ca799bde1cfbe273
44
- /qilin-tool-subagent-control/understand-the-implementation/source-map:
44
+ /qilin-agent-tool-subagent-control/understand-the-implementation/source-map:
45
45
  en: 4baec67b26df21e4
46
46
  zh: 7582f996e269e7f8
47
- /qilin-tool-subagent-control/further-exploration:
48
- en: c688c5eb5a9aeda2
49
- zh: c6559921a762bab8
50
- /qilin-tool-subagent-control/model-experience:
47
+ /qilin-agent-tool-subagent-control/further-exploration:
48
+ en: a868da66a99b1a4d
49
+ zh: 421f097488640758
50
+ /qilin-agent-tool-subagent-control/model-experience:
51
51
  en: 215e7ba838619b7b
52
52
  zh: a311da3843709f90
53
- /qilin-tool-subagent-control/model-experience/tool-schema:
53
+ /qilin-agent-tool-subagent-control/model-experience/tool-schema:
54
54
  en: e4c7376d4f29dbd5
55
55
  zh: 6b7a9eaf69c9ea53
56
- /qilin-tool-subagent-control/model-experience/tool-schema/what-the-model-sees:
57
- en: a281e2af40930b41
58
- zh: c46d88aa073e20af
59
- /qilin-tool-subagent-control/model-experience/tool-schema/token-effect:
56
+ /qilin-agent-tool-subagent-control/model-experience/tool-schema/what-the-model-sees:
57
+ en: 70d33640edfd7d76
58
+ zh: 868cc6a0fbfdc6dc
59
+ /qilin-agent-tool-subagent-control/model-experience/tool-schema/token-effect:
60
60
  en: db207dc8d5860684
61
61
  zh: ad2663b4967fbca9
62
- /qilin-tool-subagent-control/model-experience/tool-schema/kv-cache-effect:
62
+ /qilin-agent-tool-subagent-control/model-experience/tool-schema/kv-cache-effect:
63
63
  en: 4b77d42b96b3519d
64
64
  zh: dd393d8f0f6536c1
65
- /qilin-tool-subagent-control/model-experience/interrupt-result:
65
+ /qilin-agent-tool-subagent-control/model-experience/interrupt-result:
66
66
  en: d64e936e83e89a2b
67
67
  zh: b9905c33af6cca45
68
- /qilin-tool-subagent-control/model-experience/interrupt-result/what-the-model-sees:
68
+ /qilin-agent-tool-subagent-control/model-experience/interrupt-result/what-the-model-sees:
69
69
  en: 89305619897680ba
70
70
  zh: e610a844fc09c53f
71
- /qilin-tool-subagent-control/model-experience/interrupt-result/token-effect:
71
+ /qilin-agent-tool-subagent-control/model-experience/interrupt-result/token-effect:
72
72
  en: 5d1bcef28b5f18da
73
73
  zh: 027d67d93d660e76
74
- /qilin-tool-subagent-control/model-experience/interrupt-result/kv-cache-effect:
74
+ /qilin-agent-tool-subagent-control/model-experience/interrupt-result/kv-cache-effect:
75
75
  en: 4a629edb36a17e32
76
76
  zh: 5a7539cfbf404c54
77
- /qilin-tool-subagent-control/model-experience/delivery-result:
77
+ /qilin-agent-tool-subagent-control/model-experience/delivery-result:
78
78
  en: ab964e307bd37dca
79
79
  zh: 03f975252f838a42
80
- /qilin-tool-subagent-control/model-experience/delivery-result/what-the-model-sees:
80
+ /qilin-agent-tool-subagent-control/model-experience/delivery-result/what-the-model-sees:
81
81
  en: 4a0a4955589012ae
82
82
  zh: 2bbbb5196a8aa4fd
83
- /qilin-tool-subagent-control/model-experience/delivery-result/token-effect:
83
+ /qilin-agent-tool-subagent-control/model-experience/delivery-result/token-effect:
84
84
  en: 0f134e37e4bd9965
85
85
  zh: ceb858d01266e976
86
- /qilin-tool-subagent-control/model-experience/delivery-result/kv-cache-effect:
86
+ /qilin-agent-tool-subagent-control/model-experience/delivery-result/kv-cache-effect:
87
87
  en: f5d5f97a153f7c70
88
88
  zh: 3d6bc05b9eadfbc2
89
- /qilin-tool-subagent-control/model-experience/listing-result:
89
+ /qilin-agent-tool-subagent-control/model-experience/listing-result:
90
90
  en: 094e55d258f2ec2e
91
91
  zh: f364bc9046530bff
92
- /qilin-tool-subagent-control/model-experience/listing-result/what-the-model-sees:
92
+ /qilin-agent-tool-subagent-control/model-experience/listing-result/what-the-model-sees:
93
93
  en: ff844c63fd52cb3d
94
94
  zh: 7a2753d3c43b61e0
95
- /qilin-tool-subagent-control/model-experience/listing-result/token-effect:
95
+ /qilin-agent-tool-subagent-control/model-experience/listing-result/token-effect:
96
96
  en: d5c21b66bbbed504
97
97
  zh: 58e26de0773deeaf
98
- /qilin-tool-subagent-control/model-experience/listing-result/kv-cache-effect:
98
+ /qilin-agent-tool-subagent-control/model-experience/listing-result/kv-cache-effect:
99
99
  en: 4a629edb36a17e32
100
100
  zh: 5a7539cfbf404c54
101
- /qilin-tool-subagent-control/known-limitations-and-deferred-work:
101
+ /qilin-agent-tool-subagent-control/known-limitations-and-deferred-work:
102
102
  en: 06473d1545bbde76
103
103
  zh: 68c1ec67aa0edac5
104
- /qilin-tool-subagent-control/known-limitations-and-deferred-work/dev-note:
104
+ /qilin-agent-tool-subagent-control/known-limitations-and-deferred-work/dev-note:
105
105
  en: e67f633dc6fe7773
106
106
  zh: 3bb0c20c93f16f98
package/lib/index.js CHANGED
@@ -21,7 +21,7 @@ const inject = ["tools", "subagents"];
21
21
  function apply(ctx) {
22
22
  ctx.tools.register(markAdjacentAgentSendMessageTool(defineTool({
23
23
  name: "send_message",
24
- description: "Send a message to a direct continuable child by its agent id. If you are a resident continuable child, you may also target your direct parent. If the target is still working, the message steers its nearest step; if it is inactive, the message starts or resumes a turn. This call returns no answer from the agent — only confirmation that the message was delivered. A failure means the message was NOT delivered.",
24
+ description: "Send a message to an agent. A working agent receives it at its next step; an idle agent starts a new turn with it. Returns delivery confirmation, not the agent's answer.",
25
25
  parameters: {
26
26
  agent_id: {
27
27
  type: "string",
@@ -60,11 +60,11 @@ function apply(ctx) {
60
60
  })));
61
61
  ctx.tools.register(defineTool({
62
62
  name: "interrupt_agent",
63
- description: "Request cancellation of a background agent's current turn by its agent id. The target may be your direct child or a deeper agent created under you. Only the current turn stops: messages already queued for the agent stay parked until a later send_message, agents it started keep running, and the agent itself stays available for follow-ups. This call returns as soon as the stop request is accepted, so the target may keep running briefly; interrupting an agent that already finished is an accepted no-op.",
63
+ description: "Ask a subagent to stop its current work. This call returns without waiting for it to stop. You can continue a local direct child's conversation later with send_message. External executions stop permanently and cannot receive follow-ups. Subagents it started will keep running.",
64
64
  parameters: { agent_id: {
65
65
  type: "string",
66
66
  required: true,
67
- description: "The agent id of the running agent to interrupt."
67
+ description: "The id of an agent created under you: your direct child or a deeper descendant."
68
68
  } },
69
69
  output: {
70
70
  schema: {
@@ -20,10 +20,8 @@ export const inject = ['tools', 'subagents'];
20
20
  export function apply(ctx) {
21
21
  ctx.tools.register(markAdjacentAgentSendMessageTool(defineTool({
22
22
  name: 'send_message',
23
- description: 'Send a message to a direct continuable child by its agent id. If you are a resident continuable child, '
24
- + 'you may also target your direct parent. If the target is still working, the message steers its nearest step; '
25
- + 'if it is inactive, the message starts or resumes a turn. This call returns no answer from the agent — only confirmation '
26
- + 'that the message was delivered. A failure means the message was NOT delivered.',
23
+ description: 'Send a message to an agent. A working agent receives it at its next step; an idle agent starts a new turn with it. '
24
+ + 'Returns delivery confirmation, not the agent\'s answer.',
27
25
  parameters: {
28
26
  agent_id: {
29
27
  type: 'string',
@@ -61,17 +59,14 @@ export function apply(ctx) {
61
59
  })));
62
60
  ctx.tools.register(defineTool({
63
61
  name: 'interrupt_agent',
64
- description: 'Request cancellation of a background agent\'s current turn by its agent id. The target may be your '
65
- + 'direct child or a deeper agent created under you. Only the current turn stops: messages already '
66
- + 'queued for the agent stay parked until a later send_message, agents it started keep running, and '
67
- + 'the agent itself stays available for follow-ups. This call returns as soon as the stop request is '
68
- + 'accepted, so the target may keep running briefly; interrupting an agent that already finished is '
69
- + 'an accepted no-op.',
62
+ description: 'Ask a subagent to stop its current work. This call returns without waiting for it to stop. '
63
+ + 'You can continue a local direct child\'s conversation later with send_message. '
64
+ + 'External executions stop permanently and cannot receive follow-ups. Subagents it started will keep running.',
70
65
  parameters: {
71
66
  agent_id: {
72
67
  type: 'string',
73
68
  required: true,
74
- description: 'The agent id of the running agent to interrupt.',
69
+ description: 'The id of an agent created under you: your direct child or a deeper descendant.',
75
70
  },
76
71
  },
77
72
  output: {
@@ -43,23 +43,16 @@ function project(agents, entry, position) {
43
43
  export function apply(ctx) {
44
44
  ctx.tools.register(defineTool({
45
45
  name: 'list_agents',
46
- description: 'List your continuable background subagents by durable id and label. Use it to recall which ones '
47
- + 'you started, not to poll for completion — you are told when one finishes. Status comes from the live '
48
- + 'registry: running means the agent is working right now; inactive means no turn is executing, whether '
49
- + 'the child is loaded or must be resumed. inactive does not describe task completion, success, failure, '
50
- + 'or waiting for other agents. A `send_message` steers a running child at its nearest step boundary '
51
- + 'or starts or resumes a turn for an inactive child, and a direct child remains a `send_message` '
52
- + 'candidate in every status. The snapshot is not a delivery '
53
- + 'promise — `send_message` performs the authoritative check and may still fail. Children that could '
54
- + 'not be read are reported as diagnostics only in `descendants` scope. Scope `descendants` '
55
- + 'walks the whole tree below you in stable pre-order, annotating each entry with its durable direct-parent '
56
- + 'session id and depth. You may use `send_message` only for depth-1 entries; deeper entries are '
57
- + 'candidates for `interrupt_agent` only.',
46
+ description: 'List subagents you started, with their ids, labels, and status. '
47
+ + 'running means it is working; inactive means it is not currently working. '
48
+ + 'You will be notified when a subagent finishes; there is no need to keep checking its status. '
49
+ + 'Use send_message to continue the conversation.',
58
50
  parameters: {
59
51
  scope: {
60
52
  type: 'string',
61
53
  enum: ['children', 'descendants'],
62
- description: 'children (default) lists direct children only; descendants walks the complete tree below you.',
54
+ description: 'children (default) lists direct children, which accept send_message in any status. '
55
+ + 'descendants lists the whole tree below you with each entry\'s parent session id and depth; entries deeper than 1 accept only interrupt_agent.',
63
56
  },
64
57
  },
65
58
  output: {
@@ -128,7 +121,6 @@ export function apply(ctx) {
128
121
  .filter(entry => entry !== undefined);
129
122
  }
130
123
  case 'descendants': {
131
- // Complete-corpus reads can await storage, so they observe tool cancellation.
132
124
  const entries = await ctx.subagents.listDescendants(parent.id, exec.signal);
133
125
  return entries
134
126
  .map(entry => project(ctx.agents, entry, entry))
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@qilin-agent/tool-subagent-control",
3
3
  "description": "Globally named send_message, interrupt_agent, and list_agents tools over ctx.subagents continuations",
4
- "version": "3.1.3",
4
+ "version": "3.1.4",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -36,29 +36,29 @@
36
36
  "license": "MIT",
37
37
  "peerDependencies": {
38
38
  "@qilin-agent/kylin": "~4.0.3",
39
- "@qilin-agent/session": "3.1.3",
40
- "@qilin-agent/subagent": "3.1.3",
41
- "@qilin-agent/tools": "3.1.3",
42
- "@qilin-agent/llm": "3.1.3"
39
+ "@qilin-agent/llm": "3.1.4",
40
+ "@qilin-agent/subagent": "3.1.4",
41
+ "@qilin-agent/tools": "3.1.4",
42
+ "@qilin-agent/session": "3.1.4"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@qilin-agent/kylin": "~4.0.3",
46
- "@qilin-agent/agent-loop": "3.1.3",
47
- "@qilin-agent/agent": "3.1.3",
48
- "@qilin-agent/agent-loop-testkit": "3.1.3",
49
- "@qilin-agent/llm": "3.1.3",
50
- "@qilin-agent/session-persistence": "3.1.3",
51
- "@qilin-agent/session": "3.1.3",
52
- "@qilin-agent/session-persistence-jsonl": "3.1.3",
53
- "@qilin-agent/session-query": "3.1.3",
54
- "@qilin-agent/subagent": "3.1.3",
55
- "@qilin-agent/subagent-fork-in-process": "3.1.3",
56
- "@qilin-agent/session-projection": "3.1.3",
57
- "@qilin-agent/subagent-spawn-in-process": "3.1.3",
58
- "@qilin-agent/tools": "3.1.3"
46
+ "@qilin-agent/agent-loop": "3.1.4",
47
+ "@qilin-agent/llm": "3.1.4",
48
+ "@qilin-agent/agent-loop-testkit": "3.1.4",
49
+ "@qilin-agent/session": "3.1.4",
50
+ "@qilin-agent/agent": "3.1.4",
51
+ "@qilin-agent/session-persistence": "3.1.4",
52
+ "@qilin-agent/session-projection": "3.1.4",
53
+ "@qilin-agent/session-query": "3.1.4",
54
+ "@qilin-agent/session-persistence-jsonl": "3.1.4",
55
+ "@qilin-agent/subagent-fork-in-process": "3.1.4",
56
+ "@qilin-agent/tools": "3.1.4",
57
+ "@qilin-agent/subagent-spawn-in-process": "3.1.4",
58
+ "@qilin-agent/subagent": "3.1.4"
59
59
  },
60
60
  "dependencies": {
61
- "@qilin-agent/util-values": "3.1.3",
62
- "@qilin-agent/brand": "3.1.3"
61
+ "@qilin-agent/brand": "3.1.4",
62
+ "@qilin-agent/util-values": "3.1.4"
63
63
  }
64
64
  }