@gjczone/pi-swarm 0.5.0 → 0.7.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/README.md +14 -21
- package/dist/index.d.ts +3 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -16
- package/dist/index.js.map +1 -1
- package/dist/shared/controller.d.ts +10 -1
- package/dist/shared/controller.d.ts.map +1 -1
- package/dist/shared/controller.js +47 -12
- package/dist/shared/controller.js.map +1 -1
- package/dist/shared/render.d.ts +1 -1
- package/dist/shared/render.js +1 -1
- package/dist/shared/spawner.js +49 -5
- package/dist/shared/spawner.js.map +1 -1
- package/dist/shared/types.d.ts +8 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/worktree.d.ts +2 -0
- package/dist/shared/worktree.d.ts.map +1 -1
- package/dist/shared/worktree.js +10 -3
- package/dist/shared/worktree.js.map +1 -1
- package/dist/state/recovery.d.ts.map +1 -1
- package/dist/state/recovery.js +25 -4
- package/dist/state/recovery.js.map +1 -1
- package/dist/swarm/command.d.ts +4 -5
- package/dist/swarm/command.d.ts.map +1 -1
- package/dist/swarm/command.js +26 -74
- package/dist/swarm/command.js.map +1 -1
- package/dist/swarm/mode.d.ts +1 -1
- package/dist/swarm/mode.js +2 -2
- package/dist/swarm/mode.js.map +1 -1
- package/dist/swarm/tool.d.ts +4 -4
- package/dist/swarm/tool.d.ts.map +1 -1
- package/dist/swarm/tool.js +107 -167
- package/dist/swarm/tool.js.map +1 -1
- package/dist/team/command.d.ts +2 -4
- package/dist/team/command.d.ts.map +1 -1
- package/dist/team/command.js +5 -13
- package/dist/team/command.js.map +1 -1
- package/dist/team/mailbox.d.ts +7 -0
- package/dist/team/mailbox.d.ts.map +1 -1
- package/dist/team/mailbox.js +99 -13
- package/dist/team/mailbox.js.map +1 -1
- package/dist/tui/progress.d.ts +18 -50
- package/dist/tui/progress.d.ts.map +1 -1
- package/dist/tui/progress.js +200 -483
- package/dist/tui/progress.js.map +1 -1
- package/dist/tui/swarm-markers.d.ts +1 -1
- package/dist/tui/swarm-markers.js +1 -1
- package/package.json +13 -2
- package/dist/team/supervisor.d.ts +0 -171
- package/dist/team/supervisor.d.ts.map +0 -1
- package/dist/team/supervisor.js +0 -685
- package/dist/team/supervisor.js.map +0 -1
- package/dist/team/task-graph.d.ts +0 -64
- package/dist/team/task-graph.d.ts.map +0 -1
- package/dist/team/task-graph.js +0 -216
- package/dist/team/task-graph.js.map +0 -1
- package/dist/team/tool.d.ts +0 -11
- package/dist/team/tool.d.ts.map +0 -1
- package/dist/team/tool.js +0 -491
- package/dist/team/tool.js.map +0 -1
- package/dist/tui/permission-prompt.d.ts +0 -26
- package/dist/tui/permission-prompt.d.ts.map +0 -1
- package/dist/tui/permission-prompt.js +0 -98
- package/dist/tui/permission-prompt.js.map +0 -1
- package/dist/tui/team-dashboard.d.ts +0 -81
- package/dist/tui/team-dashboard.d.ts.map +0 -1
- package/dist/tui/team-dashboard.js +0 -657
- package/dist/tui/team-dashboard.js.map +0 -1
package/dist/swarm/tool.js
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* swarm/tool —
|
|
2
|
+
* swarm/tool — Swarm tool registration.
|
|
3
3
|
*
|
|
4
|
-
* Registers the `
|
|
5
|
-
*
|
|
4
|
+
* Registers the `Swarm` tool that the LLM can call to launch
|
|
5
|
+
* 1-20 isolated subagents in parallel from a shared prompt template.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* Architecture reference: AgentSwarm pattern.
|
|
8
8
|
*/
|
|
9
9
|
import { Type } from "typebox";
|
|
10
10
|
import { Container, Spacer, Text } from "@earendil-works/pi-tui";
|
|
11
|
-
import { SubagentBatchController, resolveSwarmMaxConcurrency, } from "../shared/controller.js";
|
|
11
|
+
import { SubagentBatchController, resolveSwarmMaxConcurrency, resolveSwarmSmallModel, } from "../shared/controller.js";
|
|
12
12
|
import { renderSwarmResults, toSwarmRunResults } from "../shared/render.js";
|
|
13
13
|
import { spawnSubagent, resumeSubagent, retrySubagent, } from "../shared/spawner.js";
|
|
14
|
-
import { resolveSwarmRoot, createManifest, updateManifest, readManifest, registerAgentInManifest,
|
|
14
|
+
import { resolveSwarmRoot, createManifest, updateManifest, readManifest, registerAgentInManifest, } from "../state/persistence.js";
|
|
15
15
|
import { mergeBranch, isGitRepository } from "../shared/worktree.js";
|
|
16
|
+
import { resolveMailboxPaths, ensureMailbox } from "../team/mailbox.js";
|
|
16
17
|
import { AgentSwarmProgressComponent, snapshotToProgressState, } from "../tui/progress.js";
|
|
17
18
|
/** Widget key used to render the live swarm progress panel. */
|
|
18
19
|
const PROGRESS_WIDGET_KEY = "pi-swarm-progress";
|
|
@@ -21,61 +22,80 @@ const PROGRESS_WIDGET_KEY = "pi-swarm-progress";
|
|
|
21
22
|
// ---------------------------------------------------------------------------
|
|
22
23
|
const DEFAULT_SUBAGENT_TYPE = "coder";
|
|
23
24
|
const PROMPT_TEMPLATE_PLACEHOLDER = "{{item}}";
|
|
24
|
-
const
|
|
25
|
+
const MAX_ITEM_COUNT = 20;
|
|
25
26
|
const DEFAULT_SUBAGENT_TIMEOUT_MS = 30 * 60 * 1000; // 30 minutes
|
|
26
27
|
const AGENT_SWARM_DESCRIPTION = [
|
|
27
|
-
"Launch 1-
|
|
28
|
+
"Launch 1-20 subagents in parallel, with optional inter-agent mailbox.",
|
|
28
29
|
"",
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
30
|
+
"YOU (the assistant) decide whether to enable mailbox based on the task:",
|
|
31
|
+
"- Simple parallel work (review files, fix independent bugs, investigate):",
|
|
32
|
+
" mailbox: false (default). Items are independent.",
|
|
33
|
+
"- Collaborative workflows (agents need to share findings between phases):",
|
|
34
|
+
" mailbox: true. Agents communicate via shared inbox/outbox.",
|
|
33
35
|
"",
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"-
|
|
36
|
+
"How to use:",
|
|
37
|
+
"1. Analyze the task. Decompose it into 1-20 items.",
|
|
38
|
+
"2. Decide: do agents need to communicate?",
|
|
39
|
+
" - No -> mailbox: false (default)",
|
|
40
|
+
" - Yes -> mailbox: true",
|
|
41
|
+
"3. Write a prompt_template with {{item}} placeholder.",
|
|
42
|
+
" Include context from the user's task and the specific item.",
|
|
43
|
+
"4. Use 1 item for a single isolated agent, 2-6 for typical parallel work.",
|
|
44
|
+
"5. The tool handles concurrency, rate limits, and error recovery.",
|
|
45
|
+
"6. Read the results from the tool output.",
|
|
38
46
|
"",
|
|
39
|
-
"
|
|
47
|
+
"Each subagent runs in a clean workspace with project rules (AGENTS.md) loaded.",
|
|
48
|
+
"With mailbox, subagents get inbox/outbox and send messages during execution.",
|
|
49
|
+
"Without mailbox, subagents are fully independent and do not communicate.",
|
|
50
|
+
"",
|
|
51
|
+
"Best for: code review, bug fixing, file editing, investigation, refactoring,",
|
|
52
|
+
" multi-step research, phased implementation.",
|
|
53
|
+
"",
|
|
54
|
+
'Optional: set model to "small" for simple/exploratory subagent tasks.',
|
|
55
|
+
'The tool auto-resolves "small" from your settings (pi-swarm.smallModel).',
|
|
56
|
+
"Only use small model for straightforward execution or exploration.",
|
|
57
|
+
"Do NOT use small model for review, planning, or complex analysis.",
|
|
58
|
+
"Default: inherit parent session model (omit model param).",
|
|
40
59
|
].join("\n");
|
|
41
60
|
// ---------------------------------------------------------------------------
|
|
42
61
|
// Registration
|
|
43
62
|
// ---------------------------------------------------------------------------
|
|
44
63
|
export function registerAgentSwarmTool(pi) {
|
|
45
64
|
pi.registerTool({
|
|
46
|
-
name: "
|
|
47
|
-
label: "
|
|
65
|
+
name: "Swarm",
|
|
66
|
+
label: "Swarm",
|
|
48
67
|
description: AGENT_SWARM_DESCRIPTION,
|
|
49
68
|
parameters: Type.Object({
|
|
50
|
-
description: Type.String({
|
|
51
|
-
description: "Short description for the whole swarm.",
|
|
52
|
-
examples: ["Review
|
|
53
|
-
}),
|
|
54
|
-
subagent_type: Type.Optional(Type.String({
|
|
55
|
-
description: "Subagent type used for every spawned subagent. Defaults to coder when omitted.",
|
|
56
|
-
examples: ["coder"],
|
|
69
|
+
description: Type.Optional(Type.String({
|
|
70
|
+
description: "Short description for the whole swarm (optional).",
|
|
71
|
+
examples: ["Review source files for bugs"],
|
|
57
72
|
})),
|
|
58
|
-
prompt_template: Type.
|
|
59
|
-
description: `
|
|
73
|
+
prompt_template: Type.String({
|
|
74
|
+
description: `Prompt template with ${PROMPT_TEMPLATE_PLACEHOLDER} exactly once. Each item replaces the placeholder.`,
|
|
60
75
|
examples: [
|
|
61
|
-
"
|
|
62
|
-
"
|
|
76
|
+
"You are a code reviewer. Review {{item}} for bugs and security issues.",
|
|
77
|
+
"Fix the following issue in {{item}}",
|
|
63
78
|
],
|
|
64
|
-
})
|
|
65
|
-
items: Type.
|
|
66
|
-
|
|
67
|
-
|
|
79
|
+
}),
|
|
80
|
+
items: Type.Array(Type.String(), {
|
|
81
|
+
minItems: 1,
|
|
82
|
+
maxItems: MAX_ITEM_COUNT,
|
|
83
|
+
description: "Items (1-20) to parallelize across. Each item replaces {{item}} in the template.",
|
|
68
84
|
examples: [["src/auth.ts", "src/api.ts", "src/db.ts"]],
|
|
85
|
+
}),
|
|
86
|
+
model: Type.Optional(Type.String({
|
|
87
|
+
description: 'Model for subagents. Pass "small" to auto-resolve from settings pi-swarm.smallModel. Pass an explicit model ID to override. Omit to inherit parent session model. Do NOT use small model for review, planning, or complex analysis.',
|
|
88
|
+
examples: ["deepseek/deepseek-v4-flash"],
|
|
69
89
|
})),
|
|
70
|
-
|
|
71
|
-
description: "
|
|
72
|
-
examples: [
|
|
73
|
-
{ "swarm-abc123": "Retry with more focus on XSS detection" },
|
|
74
|
-
],
|
|
90
|
+
mailbox: Type.Optional(Type.Boolean({
|
|
91
|
+
description: "Enable inter-agent mailbox. When true, subagents can exchange messages via shared mailbox. Use for collaborative workflows where agents need to share findings. Default: false (agents are independent, no communication).",
|
|
92
|
+
examples: [true],
|
|
75
93
|
})),
|
|
76
94
|
}, { additionalProperties: false }),
|
|
77
95
|
execute: async (toolCallId, params, signal, _onUpdate, ctxRaw) => {
|
|
78
|
-
const { description,
|
|
96
|
+
const { description, prompt_template, items, model, mailbox } = params;
|
|
97
|
+
// Resolve model: "small" keyword → lookup settings; explicit model ID → use as-is; undefined → inherit parent
|
|
98
|
+
const resolvedModel = model === "small" ? resolveSwarmSmallModel() : model;
|
|
79
99
|
const ctx = ctxRaw;
|
|
80
100
|
const progress = createProgressWidget(ctx);
|
|
81
101
|
// Persistent run state - declared outside try for catch access
|
|
@@ -83,52 +103,58 @@ export function registerAgentSwarmTool(pi) {
|
|
|
83
103
|
const runId = `swarm-${Date.now().toString(36)}`;
|
|
84
104
|
let runCreated = false;
|
|
85
105
|
try {
|
|
86
|
-
const profileName =
|
|
106
|
+
const profileName = DEFAULT_SUBAGENT_TYPE;
|
|
107
|
+
// Validate prompt_template contains exactly one placeholder
|
|
108
|
+
const placeholderCount = prompt_template.split(PROMPT_TEMPLATE_PLACEHOLDER).length - 1;
|
|
109
|
+
if (placeholderCount !== 1) {
|
|
110
|
+
throw new Error(`prompt_template must contain {{item}} exactly once, found ${placeholderCount} occurrence(s). ` +
|
|
111
|
+
`Each item replaces the placeholder to generate per-agent prompts.`);
|
|
112
|
+
}
|
|
87
113
|
// Build specs
|
|
88
|
-
const specs =
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
114
|
+
const specs = items.map((item, index) => ({
|
|
115
|
+
kind: "spawn",
|
|
116
|
+
index: index + 1,
|
|
117
|
+
item: item.trim(),
|
|
118
|
+
prompt: prompt_template
|
|
119
|
+
.split(PROMPT_TEMPLATE_PLACEHOLDER)
|
|
120
|
+
.join(item.trim()),
|
|
121
|
+
}));
|
|
122
|
+
// Set up mailbox when enabled
|
|
123
|
+
let mailboxPath;
|
|
124
|
+
if (mailbox) {
|
|
125
|
+
const paths = resolveMailboxPaths(swarmRoot, runId);
|
|
126
|
+
ensureMailbox(paths);
|
|
127
|
+
mailboxPath = paths.root;
|
|
128
|
+
}
|
|
93
129
|
createManifest(swarmRoot, {
|
|
94
130
|
runId,
|
|
95
131
|
type: "swarm",
|
|
96
132
|
status: "running",
|
|
97
|
-
goal: description,
|
|
133
|
+
goal: description ?? "Swarm",
|
|
98
134
|
startedAt: Date.now(),
|
|
99
135
|
agentIds: [],
|
|
100
136
|
});
|
|
101
137
|
runCreated = true;
|
|
102
138
|
// Convert to queued tasks
|
|
103
|
-
const tasks = specs.map((spec) => {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
...common,
|
|
123
|
-
kind: "resume",
|
|
124
|
-
resumeAgentId: spec.agentId,
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
return {
|
|
128
|
-
...common,
|
|
129
|
-
kind: "spawn",
|
|
130
|
-
};
|
|
131
|
-
});
|
|
139
|
+
const tasks = specs.map((spec, idx) => ({
|
|
140
|
+
kind: "spawn",
|
|
141
|
+
data: spec,
|
|
142
|
+
profileName: profileName,
|
|
143
|
+
parentToolCallId: toolCallId,
|
|
144
|
+
prompt: spec.prompt,
|
|
145
|
+
description: `${description ?? "Swarm"} #${spec.index} (${profileName})`,
|
|
146
|
+
swarmIndex: spec.index,
|
|
147
|
+
runInBackground: false,
|
|
148
|
+
swarmItem: spec.item,
|
|
149
|
+
signal,
|
|
150
|
+
timeout: DEFAULT_SUBAGENT_TIMEOUT_MS,
|
|
151
|
+
swarmRoot,
|
|
152
|
+
runId,
|
|
153
|
+
useWorktree: true,
|
|
154
|
+
model: resolvedModel,
|
|
155
|
+
mailboxPath,
|
|
156
|
+
roleName: `agent-${idx + 1}`,
|
|
157
|
+
}));
|
|
132
158
|
// Run with controller
|
|
133
159
|
const maxConcurrency = resolveSwarmMaxConcurrency(process.cwd());
|
|
134
160
|
const repoCwd = process.cwd();
|
|
@@ -140,7 +166,9 @@ export function registerAgentSwarmTool(pi) {
|
|
|
140
166
|
}, tasks, {
|
|
141
167
|
maxConcurrency,
|
|
142
168
|
onProgress: (snapshot) => {
|
|
143
|
-
|
|
169
|
+
const state = snapshotToProgressState(snapshot, description);
|
|
170
|
+
state.mailbox = mailbox;
|
|
171
|
+
progress?.component.update(state);
|
|
144
172
|
},
|
|
145
173
|
});
|
|
146
174
|
const results = await controller.run();
|
|
@@ -206,7 +234,7 @@ export function registerAgentSwarmTool(pi) {
|
|
|
206
234
|
}
|
|
207
235
|
}
|
|
208
236
|
return {
|
|
209
|
-
content: [{ type: "text", text: `
|
|
237
|
+
content: [{ type: "text", text: `Swarm failed: ${message}` }],
|
|
210
238
|
isError: true,
|
|
211
239
|
details: undefined,
|
|
212
240
|
};
|
|
@@ -226,13 +254,9 @@ export function registerAgentSwarmTool(pi) {
|
|
|
226
254
|
* prompt 模板预览。
|
|
227
255
|
*/
|
|
228
256
|
renderCall(args, theme, _context) {
|
|
229
|
-
const subagentType = args.subagent_type || "coder";
|
|
230
257
|
const itemCount = args.items?.length ?? 0;
|
|
231
|
-
const resumeCount = Object.keys(args.resume_agent_ids ?? {}).length;
|
|
232
|
-
const totalCount = itemCount + resumeCount;
|
|
233
|
-
const hasResume = resumeCount > 0;
|
|
234
258
|
const container = new Container();
|
|
235
|
-
const title = `${theme.fg("toolTitle", theme.bold("swarm "))}${theme.fg("accent", `${
|
|
259
|
+
const title = `${theme.fg("toolTitle", theme.bold("swarm "))}${theme.fg("accent", `${itemCount} agent${itemCount !== 1 ? "s" : ""}`)}`;
|
|
236
260
|
container.addChild(new Text(title, 0, 0));
|
|
237
261
|
const desc = args.description;
|
|
238
262
|
if (desc) {
|
|
@@ -276,90 +300,6 @@ export function registerAgentSwarmTool(pi) {
|
|
|
276
300
|
},
|
|
277
301
|
});
|
|
278
302
|
}
|
|
279
|
-
// ---------------------------------------------------------------------------
|
|
280
|
-
// Spec creation (from kimi-code)
|
|
281
|
-
// ---------------------------------------------------------------------------
|
|
282
|
-
function createAgentSwarmSpecs(args) {
|
|
283
|
-
const resumeEntries = Object.entries(args.resume_agent_ids ?? {}).map(([agentId, prompt]) => {
|
|
284
|
-
const trimmedId = agentId.trim();
|
|
285
|
-
validateId(trimmedId, "agentId");
|
|
286
|
-
return {
|
|
287
|
-
agentId: trimmedId,
|
|
288
|
-
prompt: prompt.trim(),
|
|
289
|
-
};
|
|
290
|
-
});
|
|
291
|
-
const items = (args.items ?? []).map((item) => item.trim());
|
|
292
|
-
const itemCount = items.length;
|
|
293
|
-
const resumeCount = resumeEntries.length;
|
|
294
|
-
const totalCount = resumeCount + itemCount;
|
|
295
|
-
if (!hasMinimumAgentSwarmInputs(itemCount, resumeCount)) {
|
|
296
|
-
throw new Error("AgentSwarm requires at least 1 item or a resume_agent_ids entry. " +
|
|
297
|
-
'Example with items: { "items": ["src/a.ts"], "prompt_template": "Review {{item}}" }. ' +
|
|
298
|
-
'Example with resume: { "resume_agent_ids": { "swarm-abc": "Retry with more detail" } }.');
|
|
299
|
-
}
|
|
300
|
-
if (totalCount > MAX_AGENT_SWARM_SUBAGENTS) {
|
|
301
|
-
throw new Error(`AgentSwarm supports at most ${String(MAX_AGENT_SWARM_SUBAGENTS)} subagents.`);
|
|
302
|
-
}
|
|
303
|
-
const promptTemplate = normalizeOptionalString(args.prompt_template);
|
|
304
|
-
if (items.length > 0 && promptTemplate === undefined) {
|
|
305
|
-
throw new Error("prompt_template is required when items are provided. " +
|
|
306
|
-
'Example: { "prompt_template": "Review {{item}} for bugs", "items": ["src/a.ts", "src/b.ts"] }');
|
|
307
|
-
}
|
|
308
|
-
if (promptTemplate !== undefined &&
|
|
309
|
-
!promptTemplate.includes(PROMPT_TEMPLATE_PLACEHOLDER)) {
|
|
310
|
-
throw new Error(`prompt_template must include the ${PROMPT_TEMPLATE_PLACEHOLDER} placeholder. ` +
|
|
311
|
-
`Got: "${promptTemplate.slice(0, 80)}". ` +
|
|
312
|
-
`Add {{item}} where each item value should be inserted. ` +
|
|
313
|
-
'Example: "Fix issues in {{item}}"');
|
|
314
|
-
}
|
|
315
|
-
const seenPrompts = new Map();
|
|
316
|
-
const specs = [];
|
|
317
|
-
// Resume entries first
|
|
318
|
-
for (const entry of resumeEntries) {
|
|
319
|
-
specs.push({
|
|
320
|
-
kind: "resume",
|
|
321
|
-
index: specs.length + 1,
|
|
322
|
-
agentId: entry.agentId,
|
|
323
|
-
prompt: entry.prompt,
|
|
324
|
-
});
|
|
325
|
-
}
|
|
326
|
-
// Item-based spawns
|
|
327
|
-
if (items.length > 0) {
|
|
328
|
-
const itemPromptTemplate = promptTemplate;
|
|
329
|
-
items.forEach((item, index) => {
|
|
330
|
-
const prompt = itemPromptTemplate
|
|
331
|
-
.split(PROMPT_TEMPLATE_PLACEHOLDER)
|
|
332
|
-
.join(item);
|
|
333
|
-
const previousIndex = seenPrompts.get(prompt);
|
|
334
|
-
if (previousIndex !== undefined) {
|
|
335
|
-
throw new Error(`Duplicate subagent prompts from items ${String(previousIndex)} and ${String(index + 1)}. AgentSwarm requires distinct subagents.`);
|
|
336
|
-
}
|
|
337
|
-
seenPrompts.set(prompt, index + 1);
|
|
338
|
-
specs.push({
|
|
339
|
-
kind: "spawn",
|
|
340
|
-
index: specs.length + 1,
|
|
341
|
-
item,
|
|
342
|
-
prompt,
|
|
343
|
-
});
|
|
344
|
-
});
|
|
345
|
-
}
|
|
346
|
-
return specs;
|
|
347
|
-
}
|
|
348
|
-
// ---------------------------------------------------------------------------
|
|
349
|
-
// Helpers
|
|
350
|
-
// ---------------------------------------------------------------------------
|
|
351
|
-
function hasMinimumAgentSwarmInputs(itemCount, resumeCount) {
|
|
352
|
-
return resumeCount > 0 || itemCount >= 1;
|
|
353
|
-
}
|
|
354
|
-
function childDescription(swarmDescription, index, profileName) {
|
|
355
|
-
return `${swarmDescription} #${String(index)} (${profileName})`;
|
|
356
|
-
}
|
|
357
|
-
function normalizeOptionalString(value) {
|
|
358
|
-
if (value === undefined)
|
|
359
|
-
return undefined;
|
|
360
|
-
const trimmed = value.trim();
|
|
361
|
-
return trimmed.length > 0 ? trimmed : undefined;
|
|
362
|
-
}
|
|
363
303
|
/**
|
|
364
304
|
* Install a live progress widget above the editor when running in TUI mode.
|
|
365
305
|
*
|
package/dist/swarm/tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/swarm/tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/swarm/tool.ts"],"names":[],"mappings":"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"}
|
package/dist/team/command.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* team/command — /swarm-team slash command handler.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* The command delegates to the SwarmTeam tool internally.
|
|
4
|
+
* /swarm-team <goal> — directs the LLM to use the Swarm tool with mailbox enabled
|
|
5
|
+
* for collaborative multi-step workflows.
|
|
8
6
|
*/
|
|
9
7
|
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
|
10
8
|
import type { SwarmCommandHost } from "../swarm/command.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/team/command.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/team/command.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,YAAY,EAChB,IAAI,EAAE,gBAAgB,GACrB,IAAI,CAgCN"}
|
package/dist/team/command.js
CHANGED
|
@@ -1,40 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* team/command — /swarm-team slash command handler.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* The command delegates to the SwarmTeam tool internally.
|
|
4
|
+
* /swarm-team <goal> — directs the LLM to use the Swarm tool with mailbox enabled
|
|
5
|
+
* for collaborative multi-step workflows.
|
|
8
6
|
*/
|
|
9
|
-
// ---------------------------------------------------------------------------
|
|
10
|
-
// Registration
|
|
11
|
-
// ---------------------------------------------------------------------------
|
|
12
7
|
export function registerTeamCommand(pi, host) {
|
|
13
8
|
pi.registerCommand("swarm-team", {
|
|
14
|
-
description: "Launch a collaborative
|
|
9
|
+
description: "Launch a collaborative Swarm with mailbox. " +
|
|
15
10
|
"Usage: /swarm-team <goal>",
|
|
16
11
|
async handler(args, ctx) {
|
|
17
12
|
const prompt = args.trim();
|
|
18
13
|
if (prompt.length === 0) {
|
|
19
|
-
ctx.ui?.notify?.("
|
|
14
|
+
ctx.ui?.notify?.("/swarm-team <goal>", "info");
|
|
20
15
|
return;
|
|
21
16
|
}
|
|
22
17
|
if (!host.hasModel()) {
|
|
23
18
|
host.showError("No model configured. Please set a model first.");
|
|
24
19
|
return;
|
|
25
20
|
}
|
|
26
|
-
// Activate swarm mode if not already active
|
|
27
21
|
if (!host.swarmActive) {
|
|
28
22
|
host.setSwarmActive(true, "task");
|
|
29
23
|
}
|
|
30
|
-
// TUI marker
|
|
31
24
|
host.pi.sendMessage?.({
|
|
32
25
|
customType: "swarm:marker",
|
|
33
26
|
content: "active",
|
|
34
27
|
display: true,
|
|
35
28
|
});
|
|
36
|
-
|
|
37
|
-
host.sendNormalUserInput(`Use the SwarmTeam tool to accomplish this goal: ${prompt}`);
|
|
29
|
+
host.sendNormalUserInput(`Use the Swarm tool with mailbox: true to accomplish this goal: ${prompt}`);
|
|
38
30
|
},
|
|
39
31
|
});
|
|
40
32
|
}
|
package/dist/team/command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/team/command.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/team/command.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,UAAU,mBAAmB,CACjC,EAAgB,EAChB,IAAsB;IAEtB,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE;QAC/B,WAAW,EACT,6CAA6C;YAC7C,2BAA2B;QAC7B,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,GAA4B;YACtD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACrB,IAAI,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAC;gBACjE,OAAO;YACT,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpC,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;gBACpB,UAAU,EAAE,cAAc;gBAC1B,OAAO,EAAE,QAAQ;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,mBAAmB,CACtB,kEAAkE,MAAM,EAAE,CAC3E,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/dist/team/mailbox.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export interface MailboxPaths {
|
|
|
24
24
|
readonly outbox: string;
|
|
25
25
|
readonly delivery: string;
|
|
26
26
|
readonly taskDir: string;
|
|
27
|
+
readonly inboxAcks: string;
|
|
27
28
|
}
|
|
28
29
|
export declare function resolveMailboxPaths(swarmRoot: string, runId: string): MailboxPaths;
|
|
29
30
|
export declare function resolveTaskMailboxPaths(paths: MailboxPaths, taskId: string): {
|
|
@@ -53,10 +54,16 @@ export declare function readTaskInbox(paths: MailboxPaths, taskId: string): Mail
|
|
|
53
54
|
export declare function countOutboxMessages(paths: MailboxPaths): number;
|
|
54
55
|
/**
|
|
55
56
|
* Acknowledge (delete) messages from the team inbox.
|
|
57
|
+
*
|
|
58
|
+
* Uses an append-only ack file to avoid the TOCTOU race between
|
|
59
|
+
* reading and rewriting inbox.jsonl. Acknowledged message IDs are
|
|
60
|
+
* appended to inboxAcks.jsonl and filtered at read time.
|
|
56
61
|
*/
|
|
57
62
|
export declare function ackMessages(paths: MailboxPaths, messageIds: string[]): void;
|
|
58
63
|
/**
|
|
59
64
|
* Acknowledge (delete) messages from a task-specific inbox.
|
|
65
|
+
*
|
|
66
|
+
* Uses the same append-only ack approach as ackMessages.
|
|
60
67
|
*/
|
|
61
68
|
export declare function ackTaskMessages(paths: MailboxPaths, taskId: string, messageIds: string[]): void;
|
|
62
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mailbox.d.ts","sourceRoot":"","sources":["../../src/team/mailbox.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAyCzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"mailbox.d.ts","sourceRoot":"","sources":["../../src/team/mailbox.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAyCzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,YAAY,CAWd;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,GACb;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAQnC;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CASvD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,cAAc,GACtB,IAAI,CAkCN;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE,CAK/D;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,GACb,cAAc,EAAE,CAMlB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAW/D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAK3E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAON;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,IAAI,CAIN"}
|