@aui.io/apollo 0.1.90 → 0.1.92

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.
Files changed (43) hide show
  1. package/node_modules/@aui.io/apollo-cli/dist/src/commands/bundles.js +5 -3
  2. package/node_modules/@aui.io/apollo-cli/dist/src/commands/bundles.js.map +1 -1
  3. package/node_modules/@aui.io/apollo-cli/dist/src/commands/confirm.d.ts +5 -5
  4. package/node_modules/@aui.io/apollo-cli/dist/src/commands/confirm.js +8 -8
  5. package/node_modules/@aui.io/apollo-cli/dist/src/commands/confirm.js.map +1 -1
  6. package/node_modules/@aui.io/apollo-cli/dist/src/commands/operate.js +334 -40
  7. package/node_modules/@aui.io/apollo-cli/dist/src/commands/operate.js.map +1 -1
  8. package/node_modules/@aui.io/apollo-cli/dist/src/index.js +3 -0
  9. package/node_modules/@aui.io/apollo-cli/dist/src/index.js.map +1 -1
  10. package/node_modules/@aui.io/apollo-cli/dist/src/output/broken-pipe.d.ts +8 -0
  11. package/node_modules/@aui.io/apollo-cli/dist/src/output/broken-pipe.js +20 -0
  12. package/node_modules/@aui.io/apollo-cli/dist/src/output/broken-pipe.js.map +1 -0
  13. package/node_modules/@aui.io/apollo-cli/dist/src/output/live-chat.d.ts +53 -0
  14. package/node_modules/@aui.io/apollo-cli/dist/src/output/live-chat.js +170 -0
  15. package/node_modules/@aui.io/apollo-cli/dist/src/output/live-chat.js.map +1 -0
  16. package/node_modules/@aui.io/apollo-cli/package.json +3 -3
  17. package/node_modules/@aui.io/apollo-core/dist/src/api/builder-api.d.ts +6 -1
  18. package/node_modules/@aui.io/apollo-core/dist/src/api/builder-api.js.map +1 -1
  19. package/node_modules/@aui.io/apollo-core/dist/src/api/client-types.d.ts +13 -0
  20. package/node_modules/@aui.io/apollo-core/dist/src/api/runtime-api.d.ts +94 -9
  21. package/node_modules/@aui.io/apollo-core/dist/src/api/runtime-api.js +45 -4
  22. package/node_modules/@aui.io/apollo-core/dist/src/api/runtime-api.js.map +1 -1
  23. package/node_modules/@aui.io/apollo-core/dist/src/api/transport.d.ts +24 -0
  24. package/node_modules/@aui.io/apollo-core/dist/src/api/transport.js +184 -20
  25. package/node_modules/@aui.io/apollo-core/dist/src/api/transport.js.map +1 -1
  26. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.d.ts +4 -0
  27. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.js +4 -0
  28. package/node_modules/@aui.io/apollo-core/dist/src/errors/index.js.map +1 -1
  29. package/node_modules/@aui.io/apollo-core/dist/src/output/index.d.ts +11 -2
  30. package/node_modules/@aui.io/apollo-core/dist/src/output/index.js +8 -4
  31. package/node_modules/@aui.io/apollo-core/dist/src/output/index.js.map +1 -1
  32. package/node_modules/@aui.io/apollo-core/dist/src/output/trace-lines.d.ts +13 -0
  33. package/node_modules/@aui.io/apollo-core/dist/src/output/trace-lines.js +107 -0
  34. package/node_modules/@aui.io/apollo-core/dist/src/output/trace-lines.js.map +1 -0
  35. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.d.ts +39 -3
  36. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.js +158 -23
  37. package/node_modules/@aui.io/apollo-core/dist/src/services/messaging.js.map +1 -1
  38. package/node_modules/@aui.io/apollo-core/dist/src/services/runs.d.ts +4 -0
  39. package/node_modules/@aui.io/apollo-core/dist/src/services/runs.js +4 -2
  40. package/node_modules/@aui.io/apollo-core/dist/src/services/runs.js.map +1 -1
  41. package/node_modules/@aui.io/apollo-core/package.json +1 -1
  42. package/node_modules/@aui.io/apollo-tui/package.json +2 -2
  43. package/package.json +4 -4
@@ -1,54 +1,74 @@
1
1
  import { createInterface } from "node:readline/promises";
2
- import { ConfigError } from "@aui.io/apollo-core/errors/index.js";
2
+ import pc from "picocolors";
3
+ import { ConfigError, ExitCode, toCliError } from "@aui.io/apollo-core/errors/index.js";
4
+ import { describeTraceEntry, traceSectionLabel } from "@aui.io/apollo-core/output/trace-lines.js";
3
5
  import { assertRuntimeAvailable } from "@aui.io/apollo-core/runtime-version/availability.js";
4
6
  import { createClients } from "@aui.io/apollo-core/services/clients.js";
5
- import { createThread, getThread, listMessages, listThreads, resolveSendVersion, resolveThreadVersion, sendMessage, trace, } from "@aui.io/apollo-core/services/messaging.js";
7
+ import { chatTurn, createThread, getThread, listMessages, resolveSendVersion, resolveThreadVersion, SUGGESTIONS_WAIT_MS, threadPage, trace, } from "@aui.io/apollo-core/services/messaging.js";
8
+ import { LiveTurnView } from "../output/live-chat.js";
9
+ import { readStdin } from "./prompts.js";
6
10
  /** `--version` is the CLI's own flag at every depth, so the commit a chat runs is `--at`. */
7
11
  const AT_OPTION = [
8
12
  "--at <ref>",
9
13
  "run one commit: v2.7, a branch (its newest), or live (default: the checkout's commit, else live)",
10
14
  ];
11
15
  const THREAD_HINTS = { sameThread: "drop --at", newThread: "drop --thread" };
16
+ /** A piped script runs at most this many messages; a longer one is split by its author. */
17
+ const MAX_SCRIPTED_TURNS = 200;
12
18
  export function registerOperate(program, runtime) {
13
19
  program
14
20
  .command("chat")
15
21
  .alias("send")
16
- .description("Chat with an agent, or start an interactive session")
17
- .argument("[text...]")
22
+ .description("Chat with an agent: each reply comes with what the agent did and whether its checks passed")
23
+ .argument("[text...]", "the message; `-` reads a whole conversation from stdin, one message per line")
18
24
  .option("--thread <id>", "continue a thread, on the commit it started on")
19
25
  .option("--local <directory>", "send a local program bundle")
20
26
  .option(...AT_OPTION)
21
27
  .option("--var <key=value>", "agent variable", collect, [])
22
- .option("--trace", "include the reply trace")
28
+ .option("--trace", "also how the agent got there, as a short story (with --json: the whole trace, often 10 KB a turn)")
29
+ .option("--no-stream", "send the turn as one request at a terminal too (piped or run by a coding agent, it already is)")
30
+ .option("--events", "with --json: one JSON line per stream frame as it arrives, then the result")
31
+ .addHelpText("after", "\nWhat you get:\n" +
32
+ " Each reply comes with one line per step on stderr (the intent it took, the capabilities it ran,\n" +
33
+ ' what it looked up) and its checks verdict, e.g. "checked all 41 checks passed". That answers\n' +
34
+ ' "what did the agent do, and did its checks pass" in a few lines, so a coding agent rarely needs more.\n' +
35
+ " --json returns the result as data for a script; --json --trace adds the whole trace, which is large.\n" +
36
+ "\nExamples:\n" +
37
+ ' apollo chat "What are your opening hours?" the reply, with what the agent did and its checks verdict\n' +
38
+ ' apollo chat --thread <id> "And on Sunday?" the next turn, on the same thread\n' +
39
+ " cat script.txt | apollo chat - a whole test conversation in one call, one thread\n" +
40
+ ' apollo --json chat "Hi" the result as JSON data, for a script\n' +
41
+ ' apollo --json chat --events "Hi" every stream frame as a JSON line, for a program showing progress\n' +
42
+ " apollo chat at a terminal: an interactive session (/help inside)")
23
43
  .action(async (words, options) => {
24
44
  const run = runtime();
45
+ if (options.events === true && !run.output.options.json) {
46
+ throw new ConfigError("--events prints JSON lines; pass --json too.", 'apollo --json chat --events "…"');
47
+ }
48
+ if (options.events === true && !options.stream) {
49
+ throw new ConfigError("--events needs the stream; drop --no-stream.");
50
+ }
25
51
  const text = words.join(" ").trim();
52
+ if (text === "-") {
53
+ await scriptedTurns(run, options);
54
+ return;
55
+ }
26
56
  if (text) {
27
- const clients = createClients(run.context);
28
- await assertRuntimeAvailable(run.context, clients);
29
- const version = await resolveVersion(run, clients, options);
30
- const result = await sendMessage(run.context, clients.runtime, {
31
- text,
32
- ...(version ? { version } : {}),
33
- ...(options.thread ? { threadId: options.thread } : {}),
34
- ...(options.local ? { localDir: options.local } : {}),
35
- variables: options.var,
36
- includeTrace: options.trace === true,
37
- });
38
- run.output.result(result, () => `${result.message.text ?? ""}\nThread: ${result.thread_id}`);
57
+ await oneTurn(run, options, text);
39
58
  return;
40
59
  }
41
60
  if (!process.stdin.isTTY ||
42
61
  !process.stdout.isTTY ||
43
62
  run.output.options.json ||
44
63
  !program.opts().input) {
45
- throw new ConfigError("Message text is required in non-interactive mode.");
64
+ throw new ConfigError("Message text is required in non-interactive mode.", "Pass the message, or pipe one message per line: `cat script.txt | apollo chat -`.");
46
65
  }
47
66
  await repl(run, options);
48
67
  });
49
68
  const thread = program.command("thread").description("Inspect Apollo threads");
50
69
  thread
51
70
  .command("create")
71
+ .description("Open a new thread on a commit")
52
72
  .option(...AT_OPTION)
53
73
  .action(async (options) => {
54
74
  const run = runtime();
@@ -59,6 +79,7 @@ export function registerOperate(program, runtime) {
59
79
  });
60
80
  thread
61
81
  .command("get")
82
+ .description("Show one thread")
62
83
  .argument("<thread-id>")
63
84
  .action(async (threadId) => {
64
85
  const run = runtime();
@@ -67,20 +88,35 @@ export function registerOperate(program, runtime) {
67
88
  });
68
89
  thread
69
90
  .command("list")
70
- .option("--size <number>", "page size", Number, 25)
71
- .option("--after <cursor>", "keyset cursor from the previous page")
91
+ .description("List conversations: this checkout's agent (yours, newest first), or all of yours outside a checkout")
92
+ .option("--size <number>", "how many per page (1 to 100)", "25")
93
+ .option("--after <cursor>", "continue from the page before (its `More:` line names the cursor)")
94
+ .option("--commit <tag>", "only threads on this commit (inside a checkout)")
95
+ .option("--title <text>", "only threads whose title contains this (inside a checkout)")
96
+ .option("--everyone", "every user's threads with this agent, not only yours")
97
+ .option("--all-agents", "your threads with every agent, even inside a checkout")
72
98
  .action(async (options) => {
73
99
  const run = runtime();
74
- const result = await listThreads(run.context, createClients(run.context).runtime, { size: options.size, after: options.after });
75
- run.output.result(result, (value) => value
76
- .map((item) => {
77
- const turns = typeof item.turns === "number" ? item.turns : 0;
78
- return `${item.id}\t${item.title ?? ""}\t${turns}`;
79
- })
80
- .join("\n") || "No threads.");
100
+ const size = Number(options.size);
101
+ if (!Number.isInteger(size) || size < 1 || size > 100) {
102
+ throw new ConfigError(`--size takes 1 to 100 (got ${options.size}).`);
103
+ }
104
+ const page = await threadPage(run.context, createClients(run.context).runtime, {
105
+ size,
106
+ ...(options.after ? { after: options.after } : {}),
107
+ ...(options.commit ? { versionTag: options.commit } : {}),
108
+ ...(options.title ? { title: options.title } : {}),
109
+ ...(options.everyone === true ? { everyone: true } : {}),
110
+ ...(options.allAgents === true ? { allAgents: true } : {}),
111
+ });
112
+ const more = page.has_next === true && page.next_cursor ? page.next_cursor : undefined;
113
+ run.output.result(page.items, () => page.items.map(threadRow).join("\n") || "No threads.", { page: { has_next: page.has_next === true, ...(more ? { next_cursor: more } : {}) } });
114
+ if (more)
115
+ run.output.notice(`More: apollo thread list --after ${more}`);
81
116
  });
82
117
  thread
83
118
  .command("messages")
119
+ .description("Print a thread's transcript")
84
120
  .argument("<thread-id>")
85
121
  .action(async (threadId) => {
86
122
  const run = runtime();
@@ -91,6 +127,7 @@ export function registerOperate(program, runtime) {
91
127
  });
92
128
  thread
93
129
  .command("trace")
130
+ .description("Print a thread's runtime traces, oldest first")
94
131
  .argument("<thread-id>")
95
132
  .option("--interaction <id>", "return one interaction trace")
96
133
  .action(async (threadId, options) => {
@@ -102,33 +139,290 @@ export function registerOperate(program, runtime) {
102
139
  function collect(value, previous) {
103
140
  return [...previous, value];
104
141
  }
142
+ /** One message, one reply: what the agent did on stderr, the reply on stdout. */
143
+ async function oneTurn(run, options, text) {
144
+ const clients = createClients(run.context);
145
+ await assertRuntimeAvailable(run.context, clients);
146
+ const version = await resolveVersion(run, clients, options);
147
+ const view = liveView(run);
148
+ const controller = new AbortController();
149
+ const release = cancelOnInterrupt(controller);
150
+ const showTrace = options.trace === true;
151
+ try {
152
+ const { result, rest } = await runTurn(run, clients, view, options, sendInput(text, version, options, options.thread, wantsTrace(run, showTrace)), controller.signal, showTrace);
153
+ run.output.result(result, () => [...rest, `Thread: ${result.thread_id}`].join("\n"));
154
+ }
155
+ finally {
156
+ release();
157
+ }
158
+ }
159
+ /** `apollo chat -`: one message per stdin line, all on one thread, in order. */
160
+ async function scriptedTurns(run, options) {
161
+ const lines = (await readStdin())
162
+ .split(/\r?\n/)
163
+ .map((line) => line.trim())
164
+ .filter(Boolean);
165
+ if (lines.length === 0) {
166
+ throw new ConfigError("No messages on stdin.", "Pipe one message per line: `cat script.txt | apollo chat -`.");
167
+ }
168
+ if (lines.length > MAX_SCRIPTED_TURNS) {
169
+ throw new ConfigError(`The script has ${lines.length} messages; one run sends at most ${MAX_SCRIPTED_TURNS}.`, "Split it, and continue the conversation with --thread <id>.");
170
+ }
171
+ const clients = createClients(run.context);
172
+ await assertRuntimeAvailable(run.context, clients);
173
+ const version = await resolveVersion(run, clients, options);
174
+ const human = !run.output.options.json;
175
+ const colors = pc.createColors(Boolean(process.stdout.isTTY) && pc.isColorSupported);
176
+ const view = liveView(run);
177
+ const controller = new AbortController();
178
+ const release = cancelOnInterrupt(controller);
179
+ const showTrace = options.trace === true;
180
+ let threadId = options.thread;
181
+ const turns = [];
182
+ try {
183
+ for (const text of lines) {
184
+ if (human)
185
+ process.stdout.write(`${colors.bold(`› ${text}`)}\n`);
186
+ const { result, rest } = await runTurn(run, clients, view, options, sendInput(text, version, options, threadId, wantsTrace(run, showTrace)), controller.signal, showTrace);
187
+ threadId = result.thread_id;
188
+ turns.push({ text, message: result.message });
189
+ if (human)
190
+ process.stdout.write(`${[...rest, ""].join("\n")}\n`);
191
+ }
192
+ }
193
+ finally {
194
+ release();
195
+ }
196
+ run.output.result({ thread_id: threadId, turns }, () => `Thread: ${threadId ?? ""}`);
197
+ }
105
198
  async function repl(run, options) {
106
199
  const clients = createClients(run.context);
107
200
  await assertRuntimeAvailable(run.context, clients);
108
- const readline = createInterface({ input: process.stdin, output: process.stderr });
109
201
  const version = await resolveVersion(run, clients, options);
202
+ const colors = pc.createColors(Boolean(process.stdout.isTTY) && pc.isColorSupported);
203
+ const say = (line) => {
204
+ process.stderr.write(`${colors.dim(line)}\n`);
205
+ };
206
+ const readline = createInterface({ input: process.stdin, output: process.stderr });
207
+ const view = liveView(run);
110
208
  let threadId = options.thread;
209
+ let showTrace = options.trace === true;
210
+ let turn;
211
+ // Ctrl+C cancels the turn in flight; at the prompt it leaves.
212
+ readline.on("SIGINT", () => {
213
+ if (turn)
214
+ turn.abort();
215
+ else
216
+ readline.close();
217
+ });
218
+ say(`Chatting with ${run.context.agentId ? "this checkout's agent" : "a local program"}${version ? ` at ${version.tag}` : ""}` +
219
+ `${threadId ? ` on thread ${threadId}` : ""}. /help lists commands; Ctrl+C cancels a turn, Ctrl+D leaves.`);
111
220
  try {
112
221
  for (;;) {
113
- const text = (await readline.question("apollo> ")).trim();
114
- if (!text || text === "/exit" || text === "/quit")
222
+ const line = await ask(readline, colors.bold("you › "));
223
+ if (line === undefined)
115
224
  return;
116
- const result = await sendMessage(run.context, clients.runtime, {
117
- text,
118
- ...(version ? { version } : {}),
119
- ...(threadId ? { threadId } : {}),
120
- ...(options.local ? { localDir: options.local } : {}),
121
- variables: options.var,
122
- includeTrace: options.trace === true,
123
- });
124
- threadId = result.thread_id;
125
- process.stdout.write(`${result.message.text ?? ""}\n`);
225
+ const text = line.trim();
226
+ if (!text)
227
+ continue;
228
+ if (text.startsWith("/")) {
229
+ const command = text.split(/\s+/)[0];
230
+ if (command === "/exit" || command === "/quit")
231
+ return;
232
+ if (command === "/help")
233
+ say("/new start a new thread · /thread show this thread's id · /trace show how the agent got each reply (toggle) · /exit leave");
234
+ else if (command === "/new") {
235
+ threadId = undefined;
236
+ say("The next message starts a new thread.");
237
+ }
238
+ else if (command === "/thread")
239
+ say(threadId ? `Thread ${threadId}` : "No thread yet — send a message.");
240
+ else if (command === "/trace") {
241
+ showTrace = !showTrace;
242
+ say(`Trace ${showTrace ? "on" : "off"}.`);
243
+ }
244
+ else
245
+ say(`Unknown command ${command}; /help lists them.`);
246
+ continue;
247
+ }
248
+ turn = new AbortController();
249
+ try {
250
+ const { result, rest } = await runTurn(run, clients, view, options, sendInput(text, version, options, threadId, wantsTrace(run, showTrace)), turn.signal, showTrace, true);
251
+ const first = threadId === undefined;
252
+ threadId = result.thread_id;
253
+ if (rest.length)
254
+ process.stdout.write(`${rest.join("\n")}\n`);
255
+ if (first)
256
+ say(`Thread ${threadId} — /thread shows it again, /new starts another.`);
257
+ }
258
+ catch (error) {
259
+ // A failed turn is a message, never the end of the session.
260
+ run.output.error(toCliError(error));
261
+ }
262
+ finally {
263
+ turn = undefined;
264
+ }
126
265
  }
127
266
  }
128
267
  finally {
129
268
  readline.close();
130
269
  }
131
270
  }
271
+ /** One prompt; `undefined` once the session closed (Ctrl+D, or Ctrl+C at the prompt). */
272
+ function ask(readline, prompt) {
273
+ return new Promise((resolve) => {
274
+ const closed = () => resolve(undefined);
275
+ readline.once("close", closed);
276
+ readline.question(prompt).then((answer) => {
277
+ readline.off("close", closed);
278
+ resolve(answer);
279
+ }, () => {
280
+ readline.off("close", closed);
281
+ resolve(undefined);
282
+ });
283
+ });
284
+ }
285
+ function sendInput(text, version, options, threadId, includeTrace) {
286
+ return {
287
+ text,
288
+ ...(version ? { version } : {}),
289
+ ...(threadId ? { threadId } : {}),
290
+ ...(options.local ? { localDir: options.local } : {}),
291
+ variables: options.var,
292
+ includeTrace,
293
+ };
294
+ }
295
+ /**
296
+ * Whether the turn asks for its sealed trace: when the caller wants it shown,
297
+ * and whenever what the agent did is drawn — a streamed turn takes its checks
298
+ * verdict from it, a one-request turn every step. The server builds the trace
299
+ * on every turn either way; this only ships it. A JSON result carries it only
300
+ * when asked for (`--trace`).
301
+ */
302
+ function wantsTrace(run, shown) {
303
+ return shown || (!run.output.options.json && !run.output.options.quiet);
304
+ }
305
+ /**
306
+ * Whether the turn streams: when a person reads the live view at a terminal,
307
+ * or `--events` asks for every frame. Piped, under a coding agent, or with
308
+ * `--json`, it is one request — the reply lands as soon, the run ends the
309
+ * moment it does, and no follow-ups are written for a reader who never sees
310
+ * them; the same steps are then read off the reply's sealed trace.
311
+ */
312
+ function streams(run, options) {
313
+ if (!options.stream)
314
+ return false;
315
+ if (options.events === true)
316
+ return true;
317
+ return Boolean(process.stderr.isTTY) && !run.output.options.json && !run.output.options.quiet;
318
+ }
319
+ /**
320
+ * One turn, as this run shows it: what the agent did on stderr — live when the
321
+ * turn streams, read off its sealed trace when it was one request — the reply
322
+ * on stdout the moment it lands, and `--events` frames as JSON lines. Returns
323
+ * the result and what is left to print after the reply (its follow-ups, and
324
+ * the reply itself when it was not shown as it landed).
325
+ */
326
+ async function runTurn(run, clients, view, options, input, signal, showTrace, session = false) {
327
+ const human = !run.output.options.json;
328
+ // Set from the frames as they arrive: whether the turn streamed, and whether its reply is already out.
329
+ const seen = { streamed: false, shown: false };
330
+ view.begin();
331
+ try {
332
+ const result = await chatTurn(run.context, clients.runtime, input, {
333
+ stream: streams(run, options),
334
+ signal,
335
+ suggestionsWaitMs: suggestionsWait(options, session),
336
+ onEvent: (event) => {
337
+ seen.streamed = true;
338
+ view.onEvent(event);
339
+ if (options.events === true)
340
+ run.output.jsonLine(event);
341
+ else if (human && event.type === "message") {
342
+ // The reply as it lands; follow-ups the stream writes after it come below.
343
+ process.stdout.write(`${replyBody(event.data, showTrace)}\n`);
344
+ seen.shown = true;
345
+ }
346
+ },
347
+ onFallback: (reason) => run.output.debug(`The turn was sent as one request (${reason}).`),
348
+ });
349
+ if (!seen.streamed)
350
+ view.summarize(result.message.trace_info);
351
+ return { result, rest: [...(seen.shown ? [] : [replyBody(result.message, showTrace)]), ...suggestionLines(result)] };
352
+ }
353
+ finally {
354
+ view.end();
355
+ }
356
+ }
357
+ /**
358
+ * How long a streamed turn waits, after its reply, for the follow-ups the
359
+ * stream route writes late (a model round trip a one-request turn never
360
+ * makes): in the interactive session, where they help pick the next message,
361
+ * and when `--events` asks for every frame. A single `chat` ends with its reply.
362
+ */
363
+ function suggestionsWait(options, session) {
364
+ return session || options.events === true ? SUGGESTIONS_WAIT_MS : 0;
365
+ }
366
+ /** What the agent did, for this run: on stderr, drawn only when read as text. */
367
+ function liveView(run) {
368
+ return new LiveTurnView({
369
+ out: process.stderr,
370
+ tty: Boolean(process.stderr.isTTY),
371
+ enabled: !run.output.options.json && !run.output.options.quiet,
372
+ });
373
+ }
374
+ /** Ctrl+C aborts the turn; a second one leaves at once. Returns the undo. */
375
+ function cancelOnInterrupt(controller) {
376
+ let pressed = 0;
377
+ const onInterrupt = () => {
378
+ pressed += 1;
379
+ if (pressed > 1)
380
+ process.exit(ExitCode.interrupted);
381
+ controller.abort();
382
+ };
383
+ process.on("SIGINT", onInterrupt);
384
+ return () => {
385
+ process.off("SIGINT", onInterrupt);
386
+ };
387
+ }
388
+ /** The reply as a person reads it: the text, and how the agent got there (`--trace`). */
389
+ function replyBody(message, showTrace) {
390
+ const colors = pc.createColors(Boolean(process.stdout.isTTY) && pc.isColorSupported);
391
+ const lines = [message.text ?? ""];
392
+ if (showTrace)
393
+ lines.push(...traceLines(message.trace_info).map((line) => colors.dim(line)));
394
+ return lines.join("\n");
395
+ }
396
+ /** The follow-ups offered after the reply, as one line — none when there are none. */
397
+ function suggestionLines(result) {
398
+ const colors = pc.createColors(Boolean(process.stdout.isTTY) && pc.isColorSupported);
399
+ const suggestions = result.message.followup_suggestions ?? [];
400
+ return suggestions.length ? [colors.dim(`Suggestions: ${suggestions.map((s) => `“${s}”`).join(" · ")}`)] : [];
401
+ }
402
+ /** The sealed trace, for a person: its own narrative, else one line per entry. */
403
+ function traceLines(traceInfo) {
404
+ if (!traceInfo)
405
+ return [" (no trace came back for this turn)"];
406
+ const narrative = traceInfo.narrative;
407
+ if (typeof narrative === "string" && narrative.trim()) {
408
+ return ["", " How it went:", ...narrative.trim().split("\n").map((line) => ` ${line}`)];
409
+ }
410
+ const lines = [];
411
+ for (const [section, value] of Object.entries(traceInfo)) {
412
+ if (!Array.isArray(value) || value.length === 0)
413
+ continue;
414
+ for (const entry of value)
415
+ lines.push(` ${traceSectionLabel(section).padEnd(11)} ${describeTraceEntry(section, entry)}`);
416
+ }
417
+ return lines.length ? ["", " How it went:", ...lines] : [" (the trace has no steps to show)"];
418
+ }
419
+ /** One `thread list` row: id, last activity, commit, where it started, title. */
420
+ function threadRow(item) {
421
+ const when = item.updated_at.slice(0, 16).replace("T", " ");
422
+ const commit = item.agent?.version_tag ?? "-";
423
+ const origin = item.task_origin?.type;
424
+ return [item.id, when || "-", commit, typeof origin === "string" ? origin : "-", item.title || "(untitled)"].join(" ");
425
+ }
132
426
  async function resolveVersion(run, clients, options) {
133
427
  if (options.local) {
134
428
  if (options.at !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"operate.js","sourceRoot":"","sources":["../../../src/commands/operate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operate.js","sourceRoot":"","sources":["../../../src/commands/operate.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ import { resolveContext, } from "@aui.io/apollo-core/config/index.js";
22
22
  import { ConfigError, toCliError } from "@aui.io/apollo-core/errors/index.js";
23
23
  import { CLI_VERSION } from "./meta.js";
24
24
  import { Output } from "@aui.io/apollo-core/output/index.js";
25
+ import { exitOnBrokenPipe } from "./output/broken-pipe.js";
25
26
  import { renderWelcome, welcomeData } from "./output/welcome.js";
26
27
  export function createProgram(state = {}, extensions = []) {
27
28
  const program = new Command()
@@ -106,6 +107,8 @@ export function createProgram(state = {}, extensions = []) {
106
107
  return program;
107
108
  }
108
109
  export async function main(argv = process.argv, extensions = [], hooks = {}) {
110
+ exitOnBrokenPipe(process.stdout);
111
+ exitOnBrokenPipe(process.stderr);
109
112
  const state = {};
110
113
  const program = createProgram(state, extensions);
111
114
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * A reader that goes away (`apollo … | head`) ends the run the way it ends a
3
+ * Unix tool: quietly, with the status SIGPIPE leaves. Node ignores SIGPIPE,
4
+ * so without this the next write to the closed pipe dies on an unhandled
5
+ * EPIPE, stack trace and all — what an agent trimming output with `head` saw
6
+ * once `chat` began writing as the turn ran. Any other write error still throws.
7
+ */
8
+ export declare function exitOnBrokenPipe(stream: NodeJS.WritableStream, exit?: (code: number) => void): void;
@@ -0,0 +1,20 @@
1
+ import { ExitCode } from "@aui.io/apollo-core/errors/index.js";
2
+ const guarded = new WeakSet();
3
+ /**
4
+ * A reader that goes away (`apollo … | head`) ends the run the way it ends a
5
+ * Unix tool: quietly, with the status SIGPIPE leaves. Node ignores SIGPIPE,
6
+ * so without this the next write to the closed pipe dies on an unhandled
7
+ * EPIPE, stack trace and all — what an agent trimming output with `head` saw
8
+ * once `chat` began writing as the turn ran. Any other write error still throws.
9
+ */
10
+ export function exitOnBrokenPipe(stream, exit = (code) => process.exit(code)) {
11
+ if (guarded.has(stream))
12
+ return;
13
+ guarded.add(stream);
14
+ stream.on("error", (error) => {
15
+ if (error.code !== "EPIPE")
16
+ throw error;
17
+ exit(ExitCode.brokenPipe);
18
+ });
19
+ }
20
+ //# sourceMappingURL=broken-pipe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broken-pipe.js","sourceRoot":"","sources":["../../../src/output/broken-pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE/D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAyB,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAA6B,EAC7B,OAA+B,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAE3D,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO;IAChC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;QAClD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,MAAM,KAAK,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC"}