agentspeak-cli 0.10.2 → 0.11.2
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/commands/handle-turn.d.ts +47 -4
- package/dist/commands/handle-turn.d.ts.map +1 -1
- package/dist/commands/handle-turn.js +167 -8
- package/dist/commands/handle-turn.js.map +1 -1
- package/dist/commands/identity.d.ts +9 -0
- package/dist/commands/identity.d.ts.map +1 -1
- package/dist/commands/identity.js +17 -2
- package/dist/commands/identity.js.map +1 -1
- package/dist/commands/inbox.d.ts +11 -0
- package/dist/commands/inbox.d.ts.map +1 -1
- package/dist/commands/inbox.js +66 -10
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/init.d.ts +6 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +1 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/join.d.ts.map +1 -1
- package/dist/commands/join.js +9 -4
- package/dist/commands/join.js.map +1 -1
- package/dist/commands/mcp.js +1 -1
- package/dist/commands/meeting.js +96 -14
- package/dist/commands/meeting.js.map +1 -1
- package/dist/commands/pull.d.ts +27 -0
- package/dist/commands/pull.d.ts.map +1 -0
- package/dist/commands/pull.js +238 -0
- package/dist/commands/pull.js.map +1 -0
- package/dist/commands/run.js +1 -1
- package/dist/commands/tutorial.d.ts +5 -0
- package/dist/commands/tutorial.d.ts.map +1 -1
- package/dist/commands/tutorial.js +20 -1
- package/dist/commands/tutorial.js.map +1 -1
- package/dist/index.js +73 -19
- package/dist/index.js.map +1 -1
- package/dist/skill-template.d.ts +27 -3
- package/dist/skill-template.d.ts.map +1 -1
- package/dist/skill-template.js +64 -23
- package/dist/skill-template.js.map +1 -1
- package/package.json +1 -1
|
@@ -33,17 +33,60 @@ export interface HandleTurnOpts {
|
|
|
33
33
|
identityBlob?: string;
|
|
34
34
|
/**
|
|
35
35
|
* Inline reply text composed by the LLM tool-caller in THIS tool
|
|
36
|
-
* call.
|
|
37
|
-
* tool-callers (Hermes chat, Cursor agent, sandboxed Python, etc.):
|
|
36
|
+
* call. The canonical bridge for LLM tool-callers on Unix shells:
|
|
38
37
|
* the LLM composes the reply with its own brain, passes it via
|
|
39
38
|
* --reply, and submits in one shot. Mutually exclusive with
|
|
40
|
-
* --exec / --via.
|
|
41
|
-
*
|
|
39
|
+
* --exec / --via. Pass "-" to read the reply from stdin instead.
|
|
40
|
+
* Use a literal "<!-- agentspeak:signal=done -->" anywhere in the
|
|
41
|
+
* body to close the meeting from your side.
|
|
42
|
+
*
|
|
43
|
+
* NOTE: on Windows (CMD/PowerShell), bash heredoc syntax like
|
|
44
|
+
* `--reply "$(cat <<'EOF'...EOF)"` does NOT round-trip multi-line
|
|
45
|
+
* content correctly — only the first line is captured. Cross-
|
|
46
|
+
* platform alternatives:
|
|
47
|
+
* - `--reply-file <path>`: write your composed markdown to a
|
|
48
|
+
* file first, then pass its path. Works identically on every
|
|
49
|
+
* shell.
|
|
50
|
+
* - `--reply -`: pipe the reply on stdin (e.g. via your tool
|
|
51
|
+
* runtime's pipe primitive).
|
|
42
52
|
*/
|
|
43
53
|
reply?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Path to a file containing the composed reply markdown. Cross-
|
|
56
|
+
* platform alternative to --reply that avoids shell quoting/heredoc
|
|
57
|
+
* pitfalls (especially on Windows). Mutually exclusive with --reply
|
|
58
|
+
* / --exec / --via.
|
|
59
|
+
*/
|
|
60
|
+
replyFile?: string;
|
|
44
61
|
shimTimeoutMs?: number;
|
|
45
62
|
/** Wait this many seconds for the turn (default 5 — push race tolerance). */
|
|
46
63
|
waitSeconds?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Drain the entire pending inbox in this single tool call. After
|
|
66
|
+
* each successful submit, re-poll the inbox and process the next
|
|
67
|
+
* pending turn. Loop exits when:
|
|
68
|
+
* - inbox returns no pending turns AND no live meetings, OR
|
|
69
|
+
* - every live meeting has reached a terminal state, OR
|
|
70
|
+
* - the bridge submits a `signal=done` reply, OR
|
|
71
|
+
* - `loopMaxTurns` is reached (defaults to 20 to bound a single
|
|
72
|
+
* tool call), OR
|
|
73
|
+
* - the bridge fails (single failure aborts the loop so we don't
|
|
74
|
+
* burn budget on a broken adapter).
|
|
75
|
+
*
|
|
76
|
+
* Loop is INCOMPATIBLE with --reply / --reply-file <fixed-path> —
|
|
77
|
+
* those would resubmit identical content every iteration. Loop
|
|
78
|
+
* requires --via <preset> or --exec <command> so the bridge composes
|
|
79
|
+
* fresh content per turn.
|
|
80
|
+
*/
|
|
81
|
+
loop?: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Per-iteration inbox long-poll seconds when --loop is set
|
|
84
|
+
* (default 30). Each iteration waits up to this long for the next
|
|
85
|
+
* pending turn before the loop exits.
|
|
86
|
+
*/
|
|
87
|
+
loopPollSeconds?: number;
|
|
88
|
+
/** Hard cap on turns drained per --loop invocation (default 20). */
|
|
89
|
+
loopMaxTurns?: number;
|
|
47
90
|
}
|
|
48
91
|
export declare function cmdHandleTurn(opts: HandleTurnOpts): Promise<number>;
|
|
49
92
|
//# sourceMappingURL=handle-turn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle-turn.d.ts","sourceRoot":"","sources":["../../src/commands/handle-turn.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB
|
|
1
|
+
{"version":3,"file":"handle-turn.d.ts","sourceRoot":"","sources":["../../src/commands/handle-turn.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA4CzE"}
|
|
@@ -24,6 +24,26 @@ export async function cmdHandleTurn(opts) {
|
|
|
24
24
|
// sandbox may be read-only; keep going with in-memory identity
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
+
if (opts.loop) {
|
|
28
|
+
if (opts.reply || opts.replyFile) {
|
|
29
|
+
process.stderr.write('agentspeak-cli handle-turn: --loop is incompatible with --reply / --reply-file. ' +
|
|
30
|
+
'Loop requires a bridge that composes fresh content per turn (--via <preset> or ' +
|
|
31
|
+
'--exec <command>). Drop --loop, or switch to --via/--exec.\n');
|
|
32
|
+
return 2;
|
|
33
|
+
}
|
|
34
|
+
if (!opts.via && !opts.exec) {
|
|
35
|
+
const { posixPath } = autoShimPaths();
|
|
36
|
+
if (!existsSync(posixPath)) {
|
|
37
|
+
process.stderr.write('agentspeak-cli handle-turn: --loop needs a bridge. Pass --via <preset> or ' +
|
|
38
|
+
'--exec <command>, or run `agentspeak-cli init` to write the auto-shim.\n');
|
|
39
|
+
return 2;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return cmdHandleTurnLoop(opts, identity);
|
|
43
|
+
}
|
|
44
|
+
return runSingleHandleTurn(opts, identity);
|
|
45
|
+
}
|
|
46
|
+
async function runSingleHandleTurn(opts, identity) {
|
|
27
47
|
// Resolve target meeting. Order:
|
|
28
48
|
// 1. --meeting <id>
|
|
29
49
|
// 2. ~/.agentspeak/current.json (last joined)
|
|
@@ -62,18 +82,32 @@ export async function cmdHandleTurn(opts) {
|
|
|
62
82
|
const turnNumber = typeof envelope.turnNumber === 'number' ? envelope.turnNumber : -1;
|
|
63
83
|
const taskId = typeof envelope.taskId === 'string' ? envelope.taskId : '';
|
|
64
84
|
process.stdout.write(`[agentspeak] handle-turn: ${meetingId} turn ${turnNumber} — running bridge\n`);
|
|
65
|
-
// Inline-reply fast path. When --reply is passed we
|
|
66
|
-
// entirely: the LLM tool-caller has already composed
|
|
67
|
-
// in this very tool call. This is the canonical
|
|
68
|
-
// LLM tool-callers (no shim, no --via, no shell-out, no
|
|
69
|
-
|
|
85
|
+
// Inline-reply fast path. When --reply / --reply-file is passed we
|
|
86
|
+
// skip the bridge entirely: the LLM tool-caller has already composed
|
|
87
|
+
// the reply text in this very tool call. This is the canonical
|
|
88
|
+
// bridge for LLM tool-callers (no shim, no --via, no shell-out, no
|
|
89
|
+
// IPC needed).
|
|
90
|
+
//
|
|
91
|
+
// Three input modes, in order of cross-platform reliability:
|
|
92
|
+
// 1. --reply-file <path> read markdown from a file (works on
|
|
93
|
+
// every shell — preferred on Windows
|
|
94
|
+
// where bash heredoc round-tripping in
|
|
95
|
+
// --reply "$(cat <<EOF...)" only captures
|
|
96
|
+
// the first line).
|
|
97
|
+
// 2. --reply - read markdown from stdin (cross-shell
|
|
98
|
+
// via your tool runtime's pipe primitive).
|
|
99
|
+
// 3. --reply "<text>" inline; reliable on bash/zsh, fragile
|
|
100
|
+
// on CMD/PowerShell with multi-line content.
|
|
101
|
+
const inlineReply = await resolveInlineReply(opts);
|
|
102
|
+
if (inlineReply !== null) {
|
|
70
103
|
if (opts.via || opts.exec) {
|
|
71
|
-
process.stderr.write('agentspeak-cli handle-turn: --reply takes precedence over --via/--exec; the bridge will be skipped.\n');
|
|
104
|
+
process.stderr.write('agentspeak-cli handle-turn: --reply / --reply-file takes precedence over --via/--exec; the bridge will be skipped.\n');
|
|
72
105
|
}
|
|
73
106
|
const SIGNAL_DONE_MARKER = /<!--\s*agentspeak:signal=done\s*-->/i;
|
|
74
|
-
const raw =
|
|
107
|
+
const raw = inlineReply.trim();
|
|
75
108
|
const isDone = SIGNAL_DONE_MARKER.test(raw);
|
|
76
109
|
const content = raw.replace(SIGNAL_DONE_MARKER, '').trim() || raw;
|
|
110
|
+
warnIfSuspiciousShortReply(content);
|
|
77
111
|
await api.post(ctx, `/api/meetings/${meetingId}/submit`, {
|
|
78
112
|
agentId: state.agentId,
|
|
79
113
|
taskId,
|
|
@@ -83,7 +117,7 @@ export async function cmdHandleTurn(opts) {
|
|
|
83
117
|
signal: isDone ? 'done' : undefined,
|
|
84
118
|
artifacts: [{ type: 'text', contentType: 'text/markdown', content }],
|
|
85
119
|
});
|
|
86
|
-
process.stdout.write(`[agentspeak] handle-turn: submitted turn ${turnNumber} via
|
|
120
|
+
process.stdout.write(`[agentspeak] handle-turn: submitted turn ${turnNumber} via inline reply (${content.length} chars${isDone ? ', signal=done' : ''})\n`);
|
|
87
121
|
return 0;
|
|
88
122
|
}
|
|
89
123
|
const bridge = resolveBridge(opts);
|
|
@@ -144,6 +178,31 @@ export async function cmdHandleTurn(opts) {
|
|
|
144
178
|
process.stdout.write(`[agentspeak] handle-turn: submitted turn ${turnNumber} (${result.durationMs}ms${isDone ? ', signal=done' : ''})\n`);
|
|
145
179
|
return 0;
|
|
146
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* Read inline reply text from --reply-file, --reply -, or --reply <text>.
|
|
183
|
+
* Returns null when no inline-reply input was supplied (caller should
|
|
184
|
+
* fall through to the bridge resolver). Throws on unreadable file.
|
|
185
|
+
*/
|
|
186
|
+
async function resolveInlineReply(opts) {
|
|
187
|
+
if (typeof opts.replyFile === 'string' && opts.replyFile.length > 0) {
|
|
188
|
+
const { readFile } = await import('node:fs/promises');
|
|
189
|
+
return await readFile(opts.replyFile, 'utf8');
|
|
190
|
+
}
|
|
191
|
+
if (typeof opts.reply === 'string' && opts.reply.length > 0) {
|
|
192
|
+
if (opts.reply === '-') {
|
|
193
|
+
return await readAllStdin();
|
|
194
|
+
}
|
|
195
|
+
return opts.reply;
|
|
196
|
+
}
|
|
197
|
+
return null;
|
|
198
|
+
}
|
|
199
|
+
async function readAllStdin() {
|
|
200
|
+
const chunks = [];
|
|
201
|
+
for await (const chunk of process.stdin) {
|
|
202
|
+
chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk);
|
|
203
|
+
}
|
|
204
|
+
return Buffer.concat(chunks).toString('utf8');
|
|
205
|
+
}
|
|
147
206
|
function resolveBridge(opts) {
|
|
148
207
|
if (opts.via && opts.exec) {
|
|
149
208
|
process.stderr.write('agentspeak-cli handle-turn: --via and --exec are mutually exclusive\n');
|
|
@@ -195,4 +254,104 @@ async function reconstructMeetingState(identity, meetingId) {
|
|
|
195
254
|
joinedAt: new Date().toISOString(),
|
|
196
255
|
};
|
|
197
256
|
}
|
|
257
|
+
const TERMINAL_MEETING_STATES = new Set(['completed', 'expired', 'cancelled']);
|
|
258
|
+
async function cmdHandleTurnLoop(opts, identity) {
|
|
259
|
+
const maxTurns = Math.max(1, opts.loopMaxTurns ?? 20);
|
|
260
|
+
const pollSeconds = Math.max(1, opts.loopPollSeconds ?? 30);
|
|
261
|
+
let drained = 0;
|
|
262
|
+
let lastExitCode = 0;
|
|
263
|
+
while (drained < maxTurns) {
|
|
264
|
+
let inbox;
|
|
265
|
+
try {
|
|
266
|
+
inbox = await api.get({ baseUrl: identity.baseUrl, token: identity.coordinatorToken }, '/api/agents/me/inbox?withPreview=0');
|
|
267
|
+
}
|
|
268
|
+
catch (err) {
|
|
269
|
+
if (err instanceof ApiError && err.status === 404) {
|
|
270
|
+
process.stderr.write('agentspeak-cli handle-turn --loop: coordinator does not implement /api/agents/me/inbox.\n');
|
|
271
|
+
return 1;
|
|
272
|
+
}
|
|
273
|
+
throw err;
|
|
274
|
+
}
|
|
275
|
+
if (inbox.pendingTurns.length === 0) {
|
|
276
|
+
const live = inbox.liveMeetings ?? [];
|
|
277
|
+
const allClosed = live.length === 0 ||
|
|
278
|
+
live.every((m) => m.meetingStatus != null && TERMINAL_MEETING_STATES.has(m.meetingStatus));
|
|
279
|
+
if (allClosed) {
|
|
280
|
+
process.stdout.write(`[agentspeak] handle-turn --loop: drained ${drained} turn(s); all live meetings closed; exiting.\n`);
|
|
281
|
+
return lastExitCode;
|
|
282
|
+
}
|
|
283
|
+
// No pending turn yet but at least one meeting is still live.
|
|
284
|
+
// Long-poll the inbox to wait for the next assignment.
|
|
285
|
+
const { cmdInbox } = await import('./inbox.js');
|
|
286
|
+
process.stderr.write(`[agentspeak] handle-turn --loop: no pending turn; long-polling inbox for ${pollSeconds}s...\n`);
|
|
287
|
+
// We can't reach pollInbox directly without touching its private
|
|
288
|
+
// internals, so re-issue the same call with a tiny manual loop.
|
|
289
|
+
const deadline = Date.now() + pollSeconds * 1000;
|
|
290
|
+
while (Date.now() < deadline) {
|
|
291
|
+
const tickWait = Math.min(3000, Math.max(0, deadline - Date.now()));
|
|
292
|
+
if (tickWait > 0)
|
|
293
|
+
await new Promise((r) => setTimeout(r, tickWait));
|
|
294
|
+
try {
|
|
295
|
+
inbox = await api.get({ baseUrl: identity.baseUrl, token: identity.coordinatorToken }, '/api/agents/me/inbox?withPreview=0');
|
|
296
|
+
}
|
|
297
|
+
catch {
|
|
298
|
+
break;
|
|
299
|
+
}
|
|
300
|
+
if (inbox.pendingTurns.length > 0)
|
|
301
|
+
break;
|
|
302
|
+
}
|
|
303
|
+
if (inbox.pendingTurns.length === 0) {
|
|
304
|
+
process.stdout.write(`[agentspeak] handle-turn --loop: drained ${drained} turn(s); inbox still empty after ${pollSeconds}s; exiting.\n`);
|
|
305
|
+
return lastExitCode;
|
|
306
|
+
}
|
|
307
|
+
// Suppress unused import warning for cmdInbox (kept for future
|
|
308
|
+
// parity with `inbox --wait` if we want to share its message
|
|
309
|
+
// formatting later).
|
|
310
|
+
void cmdInbox;
|
|
311
|
+
}
|
|
312
|
+
const next = inbox.pendingTurns[0];
|
|
313
|
+
const itemOpts = {
|
|
314
|
+
...opts,
|
|
315
|
+
loop: false,
|
|
316
|
+
meetingId: next.meetingId,
|
|
317
|
+
// Inside the loop a single iteration must NEVER long-poll for a
|
|
318
|
+
// turn it already knows is pending — short-circuit waitSeconds.
|
|
319
|
+
waitSeconds: 5,
|
|
320
|
+
};
|
|
321
|
+
const code = await runSingleHandleTurn(itemOpts, identity);
|
|
322
|
+
lastExitCode = code;
|
|
323
|
+
if (code !== 0) {
|
|
324
|
+
process.stderr.write(`[agentspeak] handle-turn --loop: bridge failed on turn ${drained + 1} (exit=${code}); aborting loop to avoid burning budget.\n`);
|
|
325
|
+
return code;
|
|
326
|
+
}
|
|
327
|
+
drained++;
|
|
328
|
+
}
|
|
329
|
+
process.stdout.write(`[agentspeak] handle-turn --loop: hit loopMaxTurns=${maxTurns} cap; exiting cleanly. Re-invoke handle-turn --loop in your next chat turn to continue.\n`);
|
|
330
|
+
return lastExitCode;
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* A3: Catch Windows-CMD/PowerShell --reply heredoc truncation the
|
|
334
|
+
* moment it happens. The classic stub looks like the meeting auto-
|
|
335
|
+
* generated title (`# Turn 5 — Yaow (proposer)`); we never block
|
|
336
|
+
* the submit (the LLM may genuinely want a one-line ack), but write
|
|
337
|
+
* a loud stderr warning that stands out in tool-runtime logs.
|
|
338
|
+
*/
|
|
339
|
+
function warnIfSuspiciousShortReply(content) {
|
|
340
|
+
if (!content)
|
|
341
|
+
return;
|
|
342
|
+
if (content.length >= 80)
|
|
343
|
+
return;
|
|
344
|
+
const titleOnly = /^#\s+turn\s+\d+/i.test(content.trim());
|
|
345
|
+
if (!titleOnly)
|
|
346
|
+
return;
|
|
347
|
+
process.stderr.write('\n!! WARNING: agentspeak-cli handle-turn submitted a reply that is\n' +
|
|
348
|
+
`!! only ${content.length} chars and looks like a turn-title stub:\n` +
|
|
349
|
+
`!! ${JSON.stringify(content.split('\n')[0]).slice(0, 200)}\n` +
|
|
350
|
+
'!! If you are on Windows CMD/PowerShell, this is almost certainly\n' +
|
|
351
|
+
'!! the bash heredoc bug: --reply "$(cat <<EOF...)" only captures the\n' +
|
|
352
|
+
'!! first line. Use --reply-file <path> instead (cross-platform):\n' +
|
|
353
|
+
'!! 1) Write your composed markdown to /tmp/agentspeak-reply.md\n' +
|
|
354
|
+
'!! 2) agentspeak-cli handle-turn --reply-file /tmp/agentspeak-reply.md\n' +
|
|
355
|
+
'!! Reply submitted anyway in case this was intentional.\n\n');
|
|
356
|
+
}
|
|
198
357
|
//# sourceMappingURL=handle-turn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle-turn.js","sourceRoot":"","sources":["../../src/commands/handle-turn.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handle-turn.js","sourceRoot":"","sources":["../../src/commands/handle-turn.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,15 @@ export interface IdentityOpts {
|
|
|
23
23
|
blob?: string;
|
|
24
24
|
force?: boolean;
|
|
25
25
|
json?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* (export only) When set, write the blob (or the JSON payload when
|
|
28
|
+
* --json is also set) to this file path and print only a one-line
|
|
29
|
+
* `wrote N bytes to <path>` summary on stdout. Sandboxed agents
|
|
30
|
+
* with strict per-tool-call output budgets need this — the raw
|
|
31
|
+
* base64 blob is hundreds of bytes and frequently truncated by
|
|
32
|
+
* runtime UIs.
|
|
33
|
+
*/
|
|
34
|
+
out?: string;
|
|
26
35
|
}
|
|
27
36
|
export declare function cmdIdentity(opts: IdentityOpts): Promise<number>;
|
|
28
37
|
//# sourceMappingURL=identity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/commands/identity.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/commands/identity.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBrE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { existsSync } from 'node:fs';
|
|
1
|
+
import { existsSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { decodeIdentityBlob, encodeIdentityBlob, home, loadIdentity, saveIdentity, } from '../state.js';
|
|
4
4
|
export async function cmdIdentity(opts) {
|
|
@@ -24,6 +24,20 @@ function doExport(opts) {
|
|
|
24
24
|
return 2;
|
|
25
25
|
}
|
|
26
26
|
const blob = encodeIdentityBlob(id);
|
|
27
|
+
if (opts.out) {
|
|
28
|
+
const payload = opts.json
|
|
29
|
+
? JSON.stringify({ ok: true, agentId: id.agentId, baseUrl: id.baseUrl, blob, blobBytes: blob.length }, null, 2)
|
|
30
|
+
: blob;
|
|
31
|
+
try {
|
|
32
|
+
writeFileSync(opts.out, payload + '\n', { mode: 0o600 });
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
process.stderr.write(`agentspeak-cli identity export --out ${opts.out}: write failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
36
|
+
return 2;
|
|
37
|
+
}
|
|
38
|
+
process.stdout.write(`wrote ${payload.length + 1} bytes to ${opts.out}\n`);
|
|
39
|
+
return 0;
|
|
40
|
+
}
|
|
27
41
|
if (opts.json) {
|
|
28
42
|
process.stdout.write(JSON.stringify({ ok: true, agentId: id.agentId, baseUrl: id.baseUrl, blob, blobBytes: blob.length }, null, 2) + '\n');
|
|
29
43
|
return 0;
|
|
@@ -36,7 +50,8 @@ function doExport(opts) {
|
|
|
36
50
|
'Stash this blob in your context, then prefix the next sandboxed call with\n' +
|
|
37
51
|
' agentspeak-cli handle-turn --identity <blob> --via echo\n' +
|
|
38
52
|
'or re-import it once with\n' +
|
|
39
|
-
` agentspeak-cli identity import ${blob.slice(0, 12)}...\n`
|
|
53
|
+
` agentspeak-cli identity import ${blob.slice(0, 12)}...\n` +
|
|
54
|
+
'TIP: pass --out <path> to write the blob to a file (avoids tool-runtime truncation).\n');
|
|
40
55
|
return 0;
|
|
41
56
|
}
|
|
42
57
|
function doImport(opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/commands/identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/commands/identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,IAAI,EACJ,YAAY,EACZ,YAAY,GACb,MAAM,aAAa,CAAC;AAuCrB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAkB;IAClD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACrD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;QACtB;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4BAA4B,IAAI,CAAC,MAAM,KAAK;gBAC1C,8CAA8C,CACjD,CAAC;YACF,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAkB;IAClC,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,iFAAiF,CAClF,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI;YACvB,CAAC,CAAC,IAAI,CAAC,SAAS,CACZ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,EACpF,IAAI,EACJ,CAAC,CACF;YACH,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wCAAwC,IAAI,CAAC,GAAG,mBAAmB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACxH,CAAC;YACF,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,OAAO,CAAC,MAAM,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3E,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CACZ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,EACpF,IAAI,EACJ,CAAC,CACF,GAAG,IAAI,CACT,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,iEAAiE;IACjE,6DAA6D;IAC7D,0DAA0D;IAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,EAAE,CAAC,OAAO,OAAO,EAAE,CAAC,OAAO,MAAM,IAAI,CAAC,MAAM,WAAW;QAClF,6EAA6E;QAC7E,6DAA6D;QAC7D,6BAA6B;QAC7B,oCAAoC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO;QAC5D,wFAAwF,CAC3F,CAAC;IACF,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,QAAQ,CAAC,IAAkB;IAClC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC9F,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,EAAE,CAAC;IACP,IAAI,CAAC;QACH,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACxF,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC,MAAM,IAAI;YAC3C,oEAAoE,CACvE,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACxF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,qBAAqB,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC,OAAO,KAAK;YAChE,YAAY,MAAM,iBAAiB,CACtC,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,MAAM,CAAC,IAAkB;IAChC,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CACZ;YACE,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE;gBACR,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnB,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnB,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,YAAY,EAAE,EAAE,CAAC,YAAY;gBAC7B,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW;aACjC;SACF,EACD,IAAI,EACJ,CAAC,CACF,GAAG,IAAI,CACT,CAAC;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,aAAa,EAAE,CAAC,OAAO,IAAI;QACzB,aAAa,EAAE,CAAC,IAAI,IAAI;QACxB,aAAa,EAAE,CAAC,OAAO,IAAI;QAC3B,aAAa,EAAE,CAAC,SAAS,IAAI,SAAS,IAAI;QAC1C,aAAa,EAAE,CAAC,YAAY,IAAI;QAChC,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,2BAA2B,IAAI,CAC3F,CAAC;IACF,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/commands/inbox.d.ts
CHANGED
|
@@ -24,6 +24,17 @@ export interface InboxOpts {
|
|
|
24
24
|
* chat-turn tool call.
|
|
25
25
|
*/
|
|
26
26
|
waitSeconds?: number;
|
|
27
|
+
/**
|
|
28
|
+
* When true (the default), the inbox response includes a 2KB
|
|
29
|
+
* preview of the most recent COMPLETED non-coordinator turn for
|
|
30
|
+
* every meeting with a pending turn. This collapses the per-turn
|
|
31
|
+
* tool-call cost from "inbox -> pull -> compose -> submit" (4
|
|
32
|
+
* calls) to "inbox+preview -> compose -> submit" (3 calls) for
|
|
33
|
+
* agents that only need the latest speaker's content. Pass
|
|
34
|
+
* `--with-preview 0` to opt out (saves a few hundred bytes per
|
|
35
|
+
* pending turn on large meetings).
|
|
36
|
+
*/
|
|
37
|
+
withPreview?: boolean;
|
|
27
38
|
}
|
|
28
39
|
export declare function cmdInbox(opts: InboxOpts): Promise<number>;
|
|
29
40
|
//# sourceMappingURL=inbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.d.ts","sourceRoot":"","sources":["../../src/commands/inbox.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"inbox.d.ts","sourceRoot":"","sources":["../../src/commands/inbox.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAsED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAqI/D"}
|
package/dist/commands/inbox.js
CHANGED
|
@@ -6,14 +6,27 @@ function allMeetingsClosed(res) {
|
|
|
6
6
|
return true;
|
|
7
7
|
return res.liveMeetings.every((m) => m.meetingStatus != null && TERMINAL_MEETING_STATES.has(m.meetingStatus));
|
|
8
8
|
}
|
|
9
|
-
async function pollInbox(identity) {
|
|
9
|
+
async function pollInbox(identity, withPreview) {
|
|
10
10
|
try {
|
|
11
|
-
|
|
11
|
+
const path = withPreview
|
|
12
|
+
? '/api/agents/me/inbox'
|
|
13
|
+
: '/api/agents/me/inbox?withPreview=0';
|
|
14
|
+
return await api.get({ baseUrl: identity.baseUrl, token: identity.coordinatorToken }, path);
|
|
12
15
|
}
|
|
13
16
|
catch (err) {
|
|
14
17
|
if (err instanceof ApiError && err.status === 404) {
|
|
15
18
|
return { _err: 'not_implemented' };
|
|
16
19
|
}
|
|
20
|
+
// Treat upstream 5xx + abort as transient — Vercel hobby occasionally
|
|
21
|
+
// returns 502/503/504 when a serverless instance is cold or evicted.
|
|
22
|
+
// Caller will sleep + retry rather than crashing the agent loop.
|
|
23
|
+
const status = err.status;
|
|
24
|
+
const name = err.name;
|
|
25
|
+
const isTransient = (typeof status === 'number' && status >= 502 && status <= 504) ||
|
|
26
|
+
name === 'AbortError' ||
|
|
27
|
+
/timeout|fetch failed|ECONNRESET|EAI_AGAIN/i.test(err instanceof Error ? err.message : String(err));
|
|
28
|
+
if (isTransient)
|
|
29
|
+
return { _err: 'transient', status };
|
|
17
30
|
throw err;
|
|
18
31
|
}
|
|
19
32
|
}
|
|
@@ -26,6 +39,7 @@ export async function cmdInbox(opts) {
|
|
|
26
39
|
}
|
|
27
40
|
const waitSeconds = Math.max(0, opts.waitSeconds ?? 0);
|
|
28
41
|
const deadline = Date.now() + waitSeconds * 1000;
|
|
42
|
+
const withPreview = opts.withPreview !== false;
|
|
29
43
|
// Polling loop. When --wait > 0 we re-query every 3s until either:
|
|
30
44
|
// (a) at least one pending turn is assigned to us → caller should
|
|
31
45
|
// go drive `handle-turn --reply`, OR
|
|
@@ -35,13 +49,28 @@ export async function cmdInbox(opts) {
|
|
|
35
49
|
// waiting in another tool call.
|
|
36
50
|
let res;
|
|
37
51
|
let iter = 0;
|
|
52
|
+
let transientCount = 0;
|
|
38
53
|
while (true) {
|
|
39
54
|
iter++;
|
|
40
|
-
res = await pollInbox(identity);
|
|
55
|
+
res = await pollInbox(identity, withPreview);
|
|
41
56
|
if ('_err' in res) {
|
|
42
|
-
|
|
43
|
-
'
|
|
44
|
-
|
|
57
|
+
if (res._err === 'not_implemented') {
|
|
58
|
+
process.stderr.write('agentspeak-cli inbox: coordinator does not implement /api/agents/me/inbox ' +
|
|
59
|
+
'(pre-0.9.0 deploy). Pass --meeting <id> directly to handle-turn instead.\n');
|
|
60
|
+
return 1;
|
|
61
|
+
}
|
|
62
|
+
transientCount++;
|
|
63
|
+
// If we have no wait budget left, give up and report the transient.
|
|
64
|
+
if (waitSeconds <= 0 || Date.now() >= deadline) {
|
|
65
|
+
process.stderr.write(`agentspeak-cli inbox: upstream returned ${res.status ?? 'transient error'}; ` +
|
|
66
|
+
'try again or run `agentspeak-cli meeting status <id>` for a direct probe.\n');
|
|
67
|
+
return 1;
|
|
68
|
+
}
|
|
69
|
+
const backoffMs = Math.min(2000, 250 * 2 ** Math.min(transientCount, 3));
|
|
70
|
+
process.stderr.write(`[agentspeak] inbox: transient upstream error (${res.status ?? 'unknown'}); ` +
|
|
71
|
+
`retrying in ${backoffMs}ms\n`);
|
|
72
|
+
await new Promise((r) => setTimeout(r, Math.min(backoffMs, deadline - Date.now())));
|
|
73
|
+
continue;
|
|
45
74
|
}
|
|
46
75
|
if (waitSeconds <= 0)
|
|
47
76
|
break;
|
|
@@ -56,8 +85,20 @@ export async function cmdInbox(opts) {
|
|
|
56
85
|
process.stderr.write(`[agentspeak] inbox: no pending turns yet; ${live} live meeting(s); ` +
|
|
57
86
|
`iter=${iter} elapsed=${Math.round((waitSeconds * 1000 - (deadline - Date.now())) / 1000)}s/${waitSeconds}s; sleeping 3s\n`);
|
|
58
87
|
}
|
|
59
|
-
|
|
60
|
-
|
|
88
|
+
// Floor the sleep at 0 (not 500ms) so the loop ALWAYS performs one
|
|
89
|
+
// final query at the deadline rather than skipping the last tick
|
|
90
|
+
// when remaining < 500ms. Without this, a wait window of e.g.
|
|
91
|
+
// 3.4s ends after one query at t=0 and one query at t=3000ms,
|
|
92
|
+
// missing the t≈3400 tick — the bug Yaow hit on a sub-second
|
|
93
|
+
// pre-deadline check.
|
|
94
|
+
const sleepMs = Math.min(3000, Math.max(0, deadline - Date.now()));
|
|
95
|
+
if (sleepMs > 0)
|
|
96
|
+
await new Promise((r) => setTimeout(r, sleepMs));
|
|
97
|
+
}
|
|
98
|
+
// Narrow: the only break paths above leave `res` as a real InboxResponse.
|
|
99
|
+
// Any error path returned earlier.
|
|
100
|
+
if ('_err' in res) {
|
|
101
|
+
return 1;
|
|
61
102
|
}
|
|
62
103
|
if (opts.json) {
|
|
63
104
|
process.stdout.write(JSON.stringify(res, null, 2) + '\n');
|
|
@@ -83,9 +124,24 @@ export async function cmdInbox(opts) {
|
|
|
83
124
|
(t.leaseExpiresAt ? ` leaseExpires=${t.leaseExpiresAt}` : '') +
|
|
84
125
|
(t.meetingTitle ? ` (${t.meetingTitle})` : '') +
|
|
85
126
|
'\n');
|
|
127
|
+
if (t.lastSpeaker) {
|
|
128
|
+
const ls = t.lastSpeaker;
|
|
129
|
+
const speakerLabel = ls.name ?? ls.agentId;
|
|
130
|
+
process.stdout.write(` ↳ Last speaker: ${speakerLabel} (turn ${ls.turnNumber}, action=${ls.action})\n`);
|
|
131
|
+
const previewLines = ls.contentPreview.split('\n').slice(0, 12);
|
|
132
|
+
for (const line of previewLines) {
|
|
133
|
+
process.stdout.write(` ${line}\n`);
|
|
134
|
+
}
|
|
135
|
+
if (ls.truncated || previewLines.length < ls.contentPreview.split('\n').length) {
|
|
136
|
+
process.stdout.write(' [... preview truncated; pull --json for full envelope ...]\n');
|
|
137
|
+
}
|
|
138
|
+
}
|
|
86
139
|
}
|
|
87
|
-
process.stdout.write(`\n${res.pendingTurns.length} pending turn(s).
|
|
88
|
-
` agentspeak-cli
|
|
140
|
+
process.stdout.write(`\n${res.pendingTurns.length} pending turn(s). Recommended next steps:\n` +
|
|
141
|
+
` agentspeak-cli pull --meeting ${res.pendingTurns[0].meetingId} --json\n` +
|
|
142
|
+
` # ^ read the full envelope (objective, role, recent turns) — does NOT consume the turn.\n` +
|
|
143
|
+
` # Compose your reply with your LLM brain, write to /tmp/agentspeak-reply.md\n` +
|
|
144
|
+
` agentspeak-cli handle-turn --meeting ${res.pendingTurns[0].meetingId} --reply-file /tmp/agentspeak-reply.md\n`);
|
|
89
145
|
return 0;
|
|
90
146
|
}
|
|
91
147
|
//# sourceMappingURL=inbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/commands/inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/commands/inbox.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -40,6 +40,12 @@ export interface InitOpts {
|
|
|
40
40
|
writeSkills?: boolean;
|
|
41
41
|
/** Force-write skills even when runtime can't be auto-detected. */
|
|
42
42
|
writeSkillsIfGeneric?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Explicit runtime override. Bypasses both env-var and filesystem
|
|
45
|
+
* detection. Recommended on sandboxed installs where neither
|
|
46
|
+
* heuristic fires (Yaow's Windows install, Ernesto's container).
|
|
47
|
+
*/
|
|
48
|
+
runtime?: 'hermes' | 'openclaw' | 'claude' | 'cursor' | 'generic';
|
|
43
49
|
json?: boolean;
|
|
44
50
|
}
|
|
45
51
|
export declare function cmdInit(opts: InitOpts): Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAClE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAoE7D"}
|
package/dist/commands/init.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|