@gjczone/pi-swarm 0.1.6 → 0.3.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/dist/index.d.ts.map +1 -1
- package/dist/index.js +60 -5
- package/dist/index.js.map +1 -1
- package/dist/shared/controller.d.ts +5 -2
- package/dist/shared/controller.d.ts.map +1 -1
- package/dist/shared/controller.js +109 -43
- package/dist/shared/controller.js.map +1 -1
- package/dist/shared/render.d.ts +4 -4
- package/dist/shared/render.d.ts.map +1 -1
- package/dist/shared/render.js +7 -9
- package/dist/shared/render.js.map +1 -1
- package/dist/shared/spawner.d.ts +1 -1
- package/dist/shared/spawner.d.ts.map +1 -1
- package/dist/shared/spawner.js +232 -132
- package/dist/shared/spawner.js.map +1 -1
- package/dist/shared/types.d.ts +44 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/state/persistence.d.ts +21 -14
- package/dist/state/persistence.d.ts.map +1 -1
- package/dist/state/persistence.js +79 -28
- package/dist/state/persistence.js.map +1 -1
- package/dist/state/recovery.d.ts +2 -2
- package/dist/state/recovery.d.ts.map +1 -1
- package/dist/state/recovery.js +37 -22
- package/dist/state/recovery.js.map +1 -1
- package/dist/swarm/command.d.ts.map +1 -1
- package/dist/swarm/command.js.map +1 -1
- package/dist/swarm/mode.d.ts.map +1 -1
- package/dist/swarm/mode.js +9 -4
- package/dist/swarm/mode.js.map +1 -1
- package/dist/swarm/tool.d.ts.map +1 -1
- package/dist/swarm/tool.js +77 -5
- package/dist/swarm/tool.js.map +1 -1
- package/dist/team/command.d.ts +3 -2
- package/dist/team/command.d.ts.map +1 -1
- package/dist/team/command.js +24 -7
- package/dist/team/command.js.map +1 -1
- package/dist/team/mailbox.d.ts +3 -3
- package/dist/team/mailbox.d.ts.map +1 -1
- package/dist/team/mailbox.js +38 -17
- package/dist/team/mailbox.js.map +1 -1
- package/dist/team/supervisor.d.ts +31 -5
- package/dist/team/supervisor.d.ts.map +1 -1
- package/dist/team/supervisor.js +187 -16
- package/dist/team/supervisor.js.map +1 -1
- package/dist/team/task-graph.d.ts.map +1 -1
- package/dist/team/task-graph.js +4 -7
- package/dist/team/task-graph.js.map +1 -1
- package/dist/team/tool.d.ts +3 -3
- package/dist/team/tool.d.ts.map +1 -1
- package/dist/team/tool.js +81 -24
- package/dist/team/tool.js.map +1 -1
- package/dist/tui/permission-prompt.d.ts.map +1 -1
- package/dist/tui/permission-prompt.js.map +1 -1
- package/dist/tui/progress.d.ts +10 -0
- package/dist/tui/progress.d.ts.map +1 -1
- package/dist/tui/progress.js +50 -1
- package/dist/tui/progress.js.map +1 -1
- package/dist/tui/team-dashboard.d.ts +54 -0
- package/dist/tui/team-dashboard.d.ts.map +1 -0
- package/dist/tui/team-dashboard.js +240 -0
- package/dist/tui/team-dashboard.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../../src/shared/spawner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EAGd,kBAAkB,EACnB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../../src/shared/spawner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EAGd,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAQpB;;;;;;;GAOG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,cAAc,CAAC,CAczB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,cAAc,CAAC,CAEzB"}
|
package/dist/shared/spawner.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* spawner
|
|
2
|
+
* spawner - launch and manage pi subagent child processes.
|
|
3
3
|
*
|
|
4
4
|
* Each subagent runs as an independent `pi --print` child process.
|
|
5
5
|
* The parent parses JSON Lines events from stdout to track progress,
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { spawn } from "node:child_process";
|
|
9
9
|
import { getPiInvocation, buildSubagentArgs } from "./pi-invoke.js";
|
|
10
|
+
const MAX_LINE_BUFFER_SIZE = 10 * 1024 * 1024;
|
|
10
11
|
// ---------------------------------------------------------------------------
|
|
11
12
|
// Spawner implementation
|
|
12
13
|
// ---------------------------------------------------------------------------
|
|
@@ -63,159 +64,258 @@ async function runSubagentProcess(agentId, opts) {
|
|
|
63
64
|
});
|
|
64
65
|
const invocation = getPiInvocation(args);
|
|
65
66
|
const cwd = opts.cwd ?? process.cwd();
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
67
|
+
const proc = spawn(invocation.command, invocation.args, {
|
|
68
|
+
cwd,
|
|
69
|
+
shell: false,
|
|
70
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
71
|
+
env: { ...process.env },
|
|
72
|
+
});
|
|
73
|
+
let sigkillTimer;
|
|
74
|
+
let timeoutHandle;
|
|
75
|
+
let streamReject;
|
|
76
|
+
let settled = false;
|
|
77
|
+
const cleanup = () => {
|
|
78
|
+
settled = true;
|
|
79
|
+
if (sigkillTimer) {
|
|
80
|
+
clearTimeout(sigkillTimer);
|
|
81
|
+
sigkillTimer = undefined;
|
|
82
|
+
}
|
|
83
|
+
if (timeoutHandle) {
|
|
84
|
+
clearTimeout(timeoutHandle);
|
|
85
|
+
timeoutHandle = undefined;
|
|
86
|
+
}
|
|
75
87
|
if (opts.signal) {
|
|
76
|
-
|
|
77
|
-
if (!proc.killed) {
|
|
78
|
-
proc.kill("SIGTERM");
|
|
79
|
-
setTimeout(() => {
|
|
80
|
-
if (!proc.killed)
|
|
81
|
-
proc.kill("SIGKILL");
|
|
82
|
-
}, 5000);
|
|
83
|
-
}
|
|
84
|
-
reject(reason instanceof Error
|
|
85
|
-
? reason
|
|
86
|
-
: new Error("Subagent aborted"));
|
|
87
|
-
};
|
|
88
|
-
if (opts.signal.aborted) {
|
|
89
|
-
killProc(opts.signal.reason);
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
opts.signal.addEventListener("abort", () => killProc(opts.signal.reason), {
|
|
93
|
-
once: true,
|
|
94
|
-
});
|
|
88
|
+
opts.signal.removeEventListener("abort", onAbort);
|
|
95
89
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
if (
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
90
|
+
};
|
|
91
|
+
const scheduleSigkill = () => {
|
|
92
|
+
if (sigkillTimer)
|
|
93
|
+
clearTimeout(sigkillTimer);
|
|
94
|
+
sigkillTimer = setTimeout(() => {
|
|
95
|
+
if (!proc.killed)
|
|
96
|
+
proc.kill("SIGKILL");
|
|
97
|
+
}, 5000);
|
|
98
|
+
};
|
|
99
|
+
const killProc = (reason) => {
|
|
100
|
+
if (settled)
|
|
101
|
+
return;
|
|
102
|
+
settled = true;
|
|
103
|
+
if (!proc.killed) {
|
|
104
|
+
proc.kill("SIGTERM");
|
|
105
|
+
scheduleSigkill();
|
|
109
106
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
107
|
+
const err = reason instanceof Error ? reason : new Error("Subagent aborted");
|
|
108
|
+
if (streamReject) {
|
|
109
|
+
cleanup();
|
|
110
|
+
streamReject(err);
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
const onAbort = () => killProc(opts.signal?.reason);
|
|
114
|
+
if (opts.signal) {
|
|
115
|
+
if (opts.signal.aborted) {
|
|
116
|
+
killProc(opts.signal.reason);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
opts.signal.addEventListener("abort", onAbort, { once: true });
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (opts.timeout && opts.timeout > 0) {
|
|
123
|
+
timeoutHandle = setTimeout(() => {
|
|
124
|
+
if (settled)
|
|
125
|
+
return;
|
|
126
|
+
settled = true;
|
|
127
|
+
if (!proc.killed) {
|
|
128
|
+
proc.kill("SIGTERM");
|
|
129
|
+
scheduleSigkill();
|
|
115
130
|
}
|
|
116
|
-
|
|
117
|
-
|
|
131
|
+
if (streamReject) {
|
|
132
|
+
cleanup();
|
|
133
|
+
streamReject(new Error("Subagent timed out"));
|
|
118
134
|
}
|
|
135
|
+
}, opts.timeout);
|
|
136
|
+
}
|
|
137
|
+
try {
|
|
138
|
+
const result = await new Promise((resolve, reject) => {
|
|
139
|
+
streamReject = reject;
|
|
140
|
+
parseEventStream(proc, agentId).then((parsed) => {
|
|
141
|
+
if (settled)
|
|
142
|
+
return;
|
|
143
|
+
cleanup();
|
|
144
|
+
resolve(parsed);
|
|
145
|
+
}, (err) => {
|
|
146
|
+
if (settled)
|
|
147
|
+
return;
|
|
148
|
+
cleanup();
|
|
149
|
+
reject(err);
|
|
150
|
+
});
|
|
119
151
|
});
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
};
|
|
152
|
+
return {
|
|
153
|
+
result: result.text || "(no output)",
|
|
154
|
+
usage: result.usage,
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
catch (err) {
|
|
158
|
+
cleanup();
|
|
159
|
+
throw err;
|
|
160
|
+
}
|
|
130
161
|
}
|
|
131
162
|
/**
|
|
132
163
|
* Parse the JSON Lines event stream from a pi --print child process.
|
|
133
|
-
*
|
|
164
|
+
* Returns a Promise that resolves after process close with accumulated results.
|
|
134
165
|
*/
|
|
135
|
-
function parseEventStream(proc,
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
let
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
usageAcc.cacheRead += msg.usage.cacheRead || 0;
|
|
160
|
-
usageAcc.cacheWrite += msg.usage.cacheWrite || 0;
|
|
161
|
-
usageAcc.totalTokens = msg.usage.totalTokens || usageAcc.totalTokens;
|
|
166
|
+
function parseEventStream(proc, agentId) {
|
|
167
|
+
return new Promise((resolve, reject) => {
|
|
168
|
+
const usageAcc = {
|
|
169
|
+
input: 0,
|
|
170
|
+
output: 0,
|
|
171
|
+
cacheRead: 0,
|
|
172
|
+
cacheWrite: 0,
|
|
173
|
+
totalTokens: 0,
|
|
174
|
+
};
|
|
175
|
+
let finalText = "";
|
|
176
|
+
let stopReason;
|
|
177
|
+
let errorMessage = "";
|
|
178
|
+
let buffer = "";
|
|
179
|
+
let unparseableCount = 0;
|
|
180
|
+
let settled = false;
|
|
181
|
+
const settle = (result, err) => {
|
|
182
|
+
if (settled)
|
|
183
|
+
return;
|
|
184
|
+
settled = true;
|
|
185
|
+
proc.stdout?.removeAllListeners();
|
|
186
|
+
proc.stderr?.removeAllListeners();
|
|
187
|
+
proc.removeAllListeners();
|
|
188
|
+
if (err) {
|
|
189
|
+
reject(err);
|
|
162
190
|
}
|
|
163
|
-
if (
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
191
|
+
else if (result) {
|
|
192
|
+
resolve(result);
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
const buildResult = () => ({
|
|
196
|
+
text: finalText,
|
|
197
|
+
usage: {
|
|
198
|
+
input: usageAcc.input,
|
|
199
|
+
output: usageAcc.output,
|
|
200
|
+
cacheRead: usageAcc.cacheRead,
|
|
201
|
+
cacheWrite: usageAcc.cacheWrite,
|
|
202
|
+
totalTokens: usageAcc.totalTokens,
|
|
203
|
+
},
|
|
204
|
+
stopReason,
|
|
205
|
+
errorMessage: errorMessage || undefined,
|
|
206
|
+
});
|
|
207
|
+
const processLine = (line) => {
|
|
208
|
+
if (!line.trim())
|
|
209
|
+
return;
|
|
210
|
+
let event;
|
|
211
|
+
try {
|
|
212
|
+
event = JSON.parse(line);
|
|
213
|
+
}
|
|
214
|
+
catch {
|
|
215
|
+
unparseableCount++;
|
|
216
|
+
if (unparseableCount === 1 || unparseableCount % 100 === 0) {
|
|
217
|
+
console.error(`[pi-swarm] Agent ${agentId}: ${unparseableCount} unparseable output line(s)`);
|
|
218
|
+
}
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
if (event.type === "message_end" && event.message?.role === "assistant") {
|
|
222
|
+
const msg = event.message;
|
|
223
|
+
if (msg.usage) {
|
|
224
|
+
usageAcc.input += msg.usage.input || 0;
|
|
225
|
+
usageAcc.output += msg.usage.output || 0;
|
|
226
|
+
usageAcc.cacheRead += msg.usage.cacheRead || 0;
|
|
227
|
+
usageAcc.cacheWrite += msg.usage.cacheWrite || 0;
|
|
228
|
+
usageAcc.totalTokens += msg.usage.totalTokens || 0;
|
|
229
|
+
}
|
|
230
|
+
if (msg.stopReason)
|
|
231
|
+
stopReason = msg.stopReason;
|
|
232
|
+
if (msg.errorMessage) {
|
|
233
|
+
if (errorMessage)
|
|
234
|
+
errorMessage += "\n";
|
|
235
|
+
errorMessage += msg.errorMessage;
|
|
236
|
+
}
|
|
237
|
+
const content = msg.content;
|
|
238
|
+
if (content && Array.isArray(content)) {
|
|
239
|
+
for (const block of content) {
|
|
240
|
+
if (block.type === "text" && block.text) {
|
|
241
|
+
finalText += block.text;
|
|
242
|
+
}
|
|
173
243
|
}
|
|
174
244
|
}
|
|
175
245
|
}
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
};
|
|
182
|
-
if (proc.stdout) {
|
|
183
|
-
proc.stdout.on("data", (data) => {
|
|
184
|
-
buffer += data.toString();
|
|
246
|
+
};
|
|
247
|
+
const processBuffer = () => {
|
|
248
|
+
if (!buffer.trim())
|
|
249
|
+
return;
|
|
185
250
|
const lines = buffer.split("\n");
|
|
186
251
|
buffer = lines.pop() || "";
|
|
187
252
|
for (const line of lines) {
|
|
188
253
|
processLine(line);
|
|
189
254
|
}
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
255
|
+
};
|
|
256
|
+
if (proc.stdout) {
|
|
257
|
+
proc.stdout.on("data", (data) => {
|
|
258
|
+
if (settled)
|
|
259
|
+
return;
|
|
260
|
+
buffer += data.toString();
|
|
261
|
+
if (buffer.length > MAX_LINE_BUFFER_SIZE) {
|
|
262
|
+
settle(null, new Error(`Subagent output exceeded buffer limit (${MAX_LINE_BUFFER_SIZE / 1024 / 1024}MB)`));
|
|
263
|
+
if (!proc.killed) {
|
|
264
|
+
proc.kill("SIGTERM");
|
|
265
|
+
setTimeout(() => {
|
|
266
|
+
if (!proc.killed)
|
|
267
|
+
proc.kill("SIGKILL");
|
|
268
|
+
}, 5000);
|
|
269
|
+
}
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
processBuffer();
|
|
273
|
+
});
|
|
274
|
+
proc.stdout.on("error", (err) => {
|
|
275
|
+
console.error(`[pi-swarm] stdout error for agent ${agentId}:`, err.message);
|
|
276
|
+
if (!settled) {
|
|
277
|
+
settle(null, new Error(`Subagent stdout error: ${err.message}`));
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
proc.stdout.resume();
|
|
281
|
+
}
|
|
282
|
+
if (proc.stderr) {
|
|
283
|
+
proc.stderr.on("data", (data) => {
|
|
284
|
+
if (settled)
|
|
285
|
+
return;
|
|
286
|
+
const text = data.toString();
|
|
287
|
+
if (text.trim()) {
|
|
288
|
+
if (errorMessage)
|
|
289
|
+
errorMessage += "\n";
|
|
290
|
+
errorMessage += text.trim();
|
|
291
|
+
}
|
|
292
|
+
});
|
|
293
|
+
proc.stderr.on("error", (err) => {
|
|
294
|
+
console.error(`[pi-swarm] stderr error for agent ${agentId}:`, err.message);
|
|
295
|
+
});
|
|
296
|
+
proc.stderr.resume();
|
|
297
|
+
}
|
|
298
|
+
proc.on("close", (code, signal) => {
|
|
299
|
+
if (settled)
|
|
300
|
+
return;
|
|
301
|
+
processBuffer();
|
|
302
|
+
if (code === 0 && signal === null) {
|
|
303
|
+
settle(buildResult());
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
const errMsg = signal
|
|
307
|
+
? `Subagent killed by signal ${signal}`
|
|
308
|
+
: `Subagent exited with code ${code}`;
|
|
309
|
+
const fullMsg = errorMessage ? `${errMsg}: ${errorMessage}` : errMsg;
|
|
310
|
+
settle(null, new Error(fullMsg));
|
|
200
311
|
}
|
|
201
312
|
});
|
|
202
|
-
proc.
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
if (buffer.trim()) {
|
|
208
|
-
processLine(buffer);
|
|
209
|
-
}
|
|
313
|
+
proc.on("error", (err) => {
|
|
314
|
+
if (settled)
|
|
315
|
+
return;
|
|
316
|
+
settle(null, err);
|
|
317
|
+
});
|
|
210
318
|
});
|
|
211
|
-
const usage = {
|
|
212
|
-
input: usageAcc.input,
|
|
213
|
-
output: usageAcc.output,
|
|
214
|
-
cacheRead: usageAcc.cacheRead,
|
|
215
|
-
cacheWrite: usageAcc.cacheWrite,
|
|
216
|
-
totalTokens: usageAcc.totalTokens,
|
|
217
|
-
};
|
|
218
|
-
return { text: finalText, usage, stopReason, errorMessage };
|
|
219
319
|
}
|
|
220
320
|
// ---------------------------------------------------------------------------
|
|
221
321
|
// Helpers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../src/shared/spawner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AASpE,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAA0B;IAE1B,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IAE7B,MAAM,OAAO,GAAG,SAAS,QAAQ,EAAE,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAErD,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IAEjB,OAAO;QACL,OAAO;QACP,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,KAAK;QACd,UAAU;KACX,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAe,EACf,IAAwB;IAExB,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAyB;QACtC,GAAG,IAAI;QACP,WAAW,EAAE,UAAU;KACxB,CAAC;IACF,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE1D,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IAEjB,OAAO;QACL,OAAO;QACP,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,IAAI;QACb,UAAU;KACX,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAe,EACf,IAAwB;IAExB,OAAO,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACvC,CAAC;AAoCD,KAAK,UAAU,kBAAkB,CAC/B,OAAe,EACf,IAA0B;IAE1B,MAAM,IAAI,GAAG,iBAAiB,CAAC;QAC7B,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,GAAG,EAAE,IAAI,CAAC,GAAG;KACd,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEtC,MAAM,
|
|
1
|
+
{"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../src/shared/spawner.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/types.d.ts
CHANGED
|
@@ -164,6 +164,50 @@ export interface SubagentBatchOptions {
|
|
|
164
164
|
* `undefined` means no cap (legacy ramp behavior).
|
|
165
165
|
*/
|
|
166
166
|
readonly maxConcurrency?: number;
|
|
167
|
+
/**
|
|
168
|
+
* Optional progress callback invoked when task states change.
|
|
169
|
+
* Receives a snapshot of the current batch progress.
|
|
170
|
+
*/
|
|
171
|
+
readonly onProgress?: (snapshot: BatchProgressSnapshot) => void;
|
|
172
|
+
}
|
|
173
|
+
/** Snapshot of team run progress for TUI display. */
|
|
174
|
+
export interface TeamProgressSnapshot {
|
|
175
|
+
readonly title: string;
|
|
176
|
+
readonly goal: string;
|
|
177
|
+
readonly status: "running" | "completed" | "failed";
|
|
178
|
+
readonly totalPhases: number;
|
|
179
|
+
readonly completedPhases: number;
|
|
180
|
+
readonly failedPhases: number;
|
|
181
|
+
readonly currentPhase?: string;
|
|
182
|
+
readonly currentRole?: string;
|
|
183
|
+
readonly phases: ReadonlyArray<TeamPhaseStatus>;
|
|
184
|
+
readonly mailboxCount: number;
|
|
185
|
+
readonly startedAt: number;
|
|
186
|
+
}
|
|
187
|
+
/** Per-phase status in a team progress snapshot. */
|
|
188
|
+
export interface TeamPhaseStatus {
|
|
189
|
+
readonly name: string;
|
|
190
|
+
readonly role: AgentRole;
|
|
191
|
+
readonly status: "queued" | "running" | "completed" | "failed" | "skipped";
|
|
192
|
+
readonly error?: string;
|
|
193
|
+
}
|
|
194
|
+
/** Callback for team progress updates. */
|
|
195
|
+
export type TeamProgressCallback = (snapshot: TeamProgressSnapshot) => void;
|
|
196
|
+
/** Snapshot of batch progress for TUI display. */
|
|
197
|
+
export interface BatchProgressSnapshot {
|
|
198
|
+
readonly total: number;
|
|
199
|
+
readonly completed: number;
|
|
200
|
+
readonly failed: number;
|
|
201
|
+
readonly active: number;
|
|
202
|
+
readonly queued: number;
|
|
203
|
+
readonly members: ReadonlyArray<BatchMemberStatus>;
|
|
204
|
+
}
|
|
205
|
+
/** Per-member status in a progress snapshot. */
|
|
206
|
+
export interface BatchMemberStatus {
|
|
207
|
+
readonly index: number;
|
|
208
|
+
readonly phase: "queued" | "working" | "completed" | "failed" | "suspended";
|
|
209
|
+
readonly item?: string;
|
|
210
|
+
readonly error?: string;
|
|
167
211
|
}
|
|
168
212
|
/** Emitted when a subagent is suspended due to rate limiting. */
|
|
169
213
|
export interface SubagentSuspendedEvent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,17 +14,18 @@
|
|
|
14
14
|
* status.json -- per-agent status
|
|
15
15
|
* output.log -- agent stdout capture
|
|
16
16
|
*/
|
|
17
|
+
export declare function validateId(id: string, kind: string): void;
|
|
17
18
|
/**
|
|
18
19
|
* Resolve the crew root directory.
|
|
19
20
|
*
|
|
20
21
|
* Always uses `.pi/swarm/` under the project root. Creates `.pi/`
|
|
21
22
|
* if it does not already exist.
|
|
22
23
|
*/
|
|
23
|
-
export declare function
|
|
24
|
+
export declare function resolveSwarmRoot(cwd: string): string;
|
|
24
25
|
/** Resolve the state directory for a specific run. */
|
|
25
|
-
export declare function resolveRunStateDir(
|
|
26
|
+
export declare function resolveRunStateDir(swarmRoot: string, runId: string): string;
|
|
26
27
|
/** Resolve per-agent state directory. */
|
|
27
|
-
export declare function resolveAgentStateDir(
|
|
28
|
+
export declare function resolveAgentStateDir(swarmRoot: string, runId: string, agentId: string): string;
|
|
28
29
|
export interface RunManifest {
|
|
29
30
|
readonly runId: string;
|
|
30
31
|
readonly type: "swarm" | "team";
|
|
@@ -32,52 +33,58 @@ export interface RunManifest {
|
|
|
32
33
|
goal?: string;
|
|
33
34
|
startedAt: number;
|
|
34
35
|
completedAt?: number;
|
|
36
|
+
lastHeartbeatAt?: number;
|
|
35
37
|
agentIds: string[];
|
|
36
38
|
}
|
|
37
39
|
/**
|
|
38
40
|
* Create a new run manifest and write it to disk.
|
|
39
41
|
*/
|
|
40
|
-
export declare function createManifest(
|
|
42
|
+
export declare function createManifest(swarmRoot: string, manifest: RunManifest): void;
|
|
41
43
|
/**
|
|
42
44
|
* Read a run manifest from disk.
|
|
43
45
|
* Returns null if the manifest does not exist.
|
|
44
46
|
*/
|
|
45
|
-
export declare function readManifest(
|
|
47
|
+
export declare function readManifest(swarmRoot: string, runId: string): RunManifest | null;
|
|
46
48
|
/**
|
|
47
49
|
* Update a run manifest (overwrites the file atomically).
|
|
48
50
|
*/
|
|
49
|
-
export declare function updateManifest(
|
|
51
|
+
export declare function updateManifest(swarmRoot: string, manifest: RunManifest): void;
|
|
52
|
+
/**
|
|
53
|
+
* Update the heartbeat timestamp for a running manifest.
|
|
54
|
+
*/
|
|
55
|
+
export declare function updateHeartbeat(swarmRoot: string, runId: string): void;
|
|
50
56
|
/**
|
|
51
57
|
* Persist task state (task graph) to disk.
|
|
52
58
|
*/
|
|
53
|
-
export declare function saveTaskState(
|
|
59
|
+
export declare function saveTaskState(swarmRoot: string, runId: string, data: Record<string, unknown>): void;
|
|
54
60
|
/**
|
|
55
61
|
* Load task state from disk.
|
|
56
62
|
* Returns null if the file does not exist.
|
|
57
63
|
*/
|
|
58
|
-
export declare function loadTaskState(
|
|
64
|
+
export declare function loadTaskState(swarmRoot: string, runId: string): Record<string, unknown> | null;
|
|
59
65
|
/**
|
|
60
66
|
* Append an event to the run's event log.
|
|
61
67
|
*/
|
|
62
|
-
export declare function appendEvent(
|
|
68
|
+
export declare function appendEvent(swarmRoot: string, runId: string, event: Record<string, unknown>): void;
|
|
63
69
|
/**
|
|
64
70
|
* Read all events from the run's event log.
|
|
65
71
|
*/
|
|
66
|
-
export declare function readEvents(
|
|
72
|
+
export declare function readEvents(swarmRoot: string, runId: string): Record<string, unknown>[];
|
|
67
73
|
/**
|
|
68
74
|
* Save per-agent status.
|
|
69
75
|
*/
|
|
70
|
-
export declare function saveAgentStatus(
|
|
76
|
+
export declare function saveAgentStatus(swarmRoot: string, runId: string, agentId: string, status: Record<string, unknown>): void;
|
|
71
77
|
/**
|
|
72
78
|
* Load per-agent status.
|
|
73
79
|
*/
|
|
74
|
-
export declare function loadAgentStatus(
|
|
80
|
+
export declare function loadAgentStatus(swarmRoot: string, runId: string, agentId: string): Record<string, unknown> | null;
|
|
75
81
|
/**
|
|
76
82
|
* List all active run IDs in the state directory.
|
|
83
|
+
* Only returns IDs that match the safe ID pattern.
|
|
77
84
|
*/
|
|
78
|
-
export declare function listActiveRuns(
|
|
85
|
+
export declare function listActiveRuns(swarmRoot: string): string[];
|
|
79
86
|
/**
|
|
80
87
|
* Delete the entire run state directory.
|
|
81
88
|
*/
|
|
82
|
-
export declare function deleteRunState(
|
|
89
|
+
export declare function deleteRunState(swarmRoot: string, runId: string): void;
|
|
83
90
|
//# sourceMappingURL=persistence.d.ts.map
|