@brainpilot/runtime 0.0.9 → 0.0.11

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 (68) hide show
  1. package/dist/agent-factory.d.ts.map +1 -1
  2. package/dist/agent-factory.js +5 -2
  3. package/dist/agent-factory.js.map +1 -1
  4. package/dist/events.d.ts +19 -1
  5. package/dist/events.d.ts.map +1 -1
  6. package/dist/events.js +19 -0
  7. package/dist/events.js.map +1 -1
  8. package/dist/extensions/agent-status.d.ts +13 -11
  9. package/dist/extensions/agent-status.d.ts.map +1 -1
  10. package/dist/extensions/agent-status.js +37 -21
  11. package/dist/extensions/agent-status.js.map +1 -1
  12. package/dist/extensions/trace-reminder.d.ts +7 -19
  13. package/dist/extensions/trace-reminder.d.ts.map +1 -1
  14. package/dist/extensions/trace-reminder.js +57 -33
  15. package/dist/extensions/trace-reminder.js.map +1 -1
  16. package/dist/mas-agent.d.ts +16 -0
  17. package/dist/mas-agent.d.ts.map +1 -1
  18. package/dist/mas-agent.js +93 -4
  19. package/dist/mas-agent.js.map +1 -1
  20. package/dist/mock-agent.d.ts +5 -2
  21. package/dist/mock-agent.d.ts.map +1 -1
  22. package/dist/mock-agent.js +17 -1
  23. package/dist/mock-agent.js.map +1 -1
  24. package/dist/personas.d.ts +1 -1
  25. package/dist/personas.d.ts.map +1 -1
  26. package/dist/personas.js +101 -22
  27. package/dist/personas.js.map +1 -1
  28. package/dist/server.d.ts.map +1 -1
  29. package/dist/server.js +22 -9
  30. package/dist/server.js.map +1 -1
  31. package/dist/session-manager.d.ts +56 -1
  32. package/dist/session-manager.d.ts.map +1 -1
  33. package/dist/session-manager.js +235 -34
  34. package/dist/session-manager.js.map +1 -1
  35. package/dist/tools/kb/paths.d.ts +24 -0
  36. package/dist/tools/kb/paths.d.ts.map +1 -0
  37. package/dist/tools/kb/paths.js +69 -0
  38. package/dist/tools/kb/paths.js.map +1 -0
  39. package/dist/tools/kb/python.d.ts +2 -0
  40. package/dist/tools/kb/python.d.ts.map +1 -0
  41. package/dist/tools/kb/python.js +42 -0
  42. package/dist/tools/kb/python.js.map +1 -0
  43. package/dist/tools/kb/retrieve.d.ts +20 -0
  44. package/dist/tools/kb/retrieve.d.ts.map +1 -0
  45. package/dist/tools/kb/retrieve.js +128 -0
  46. package/dist/tools/kb/retrieve.js.map +1 -0
  47. package/dist/tools/kb/search-papers.d.ts +39 -0
  48. package/dist/tools/kb/search-papers.d.ts.map +1 -0
  49. package/dist/tools/kb/search-papers.js +188 -0
  50. package/dist/tools/kb/search-papers.js.map +1 -0
  51. package/dist/tools/kb/sidecar.d.ts +11 -0
  52. package/dist/tools/kb/sidecar.d.ts.map +1 -0
  53. package/dist/tools/kb/sidecar.js +161 -0
  54. package/dist/tools/kb/sidecar.js.map +1 -0
  55. package/dist/tools/kb/store.d.ts +46 -0
  56. package/dist/tools/kb/store.d.ts.map +1 -0
  57. package/dist/tools/kb/store.js +191 -0
  58. package/dist/tools/kb/store.js.map +1 -0
  59. package/dist/tools/kb/tools.d.ts +24 -0
  60. package/dist/tools/kb/tools.d.ts.map +1 -0
  61. package/dist/tools/kb/tools.js +192 -0
  62. package/dist/tools/kb/tools.js.map +1 -0
  63. package/dist/tools/system-tools.d.ts.map +1 -1
  64. package/dist/tools/system-tools.js +41 -6
  65. package/dist/tools/system-tools.js.map +1 -1
  66. package/dist/types.d.ts +33 -1
  67. package/dist/types.d.ts.map +1 -1
  68. package/package.json +3 -3
package/dist/mas-agent.js CHANGED
@@ -129,6 +129,35 @@ export class MasAgent {
129
129
  this.currentPrompt = p;
130
130
  return p;
131
131
  }
132
+ /** True while a run is streaming — a plain prompt() would be rejected. */
133
+ get isStreaming() {
134
+ return this.session.isStreaming;
135
+ }
136
+ /**
137
+ * Queue a user message onto the *in-flight* run instead of starting a new one
138
+ * (#: concurrent send). The SDK's agent loop drains follow-ups before it emits
139
+ * agent_end, so the message is handled after the current turn without a fresh
140
+ * RUN_STARTED/runId — the events keep flowing under the current run. Unlike
141
+ * `prompt()`, this does NOT open a new run lifecycle. Error-isolated: a queue
142
+ * failure is surfaced as a run error, never thrown to the caller.
143
+ *
144
+ * Falls back to a normal `prompt()` if the run has already drained (not
145
+ * streaming anymore) by the time this lands, so a race can't drop the message.
146
+ */
147
+ followUp(text) {
148
+ if (!this.session.isStreaming) {
149
+ // Race: the run finished between the caller's check and here — just start
150
+ // a normal run so the message isn't lost.
151
+ return this.prompt(text);
152
+ }
153
+ return this.session.prompt(text, { streamingBehavior: "followUp" }).catch((err) => {
154
+ const raw = err?.message ?? String(err);
155
+ const { message, details } = normalizeAgentError(raw);
156
+ this.recordError(message, details, raw);
157
+ this.bus.emit(ev.runError({ sessionId: this.sessionId, agentName: this.name, runId: this.currentRunId }, message));
158
+ this.setStatus("error");
159
+ });
160
+ }
132
161
  async runPrompt(text) {
133
162
  this.currentRunId = newRunId();
134
163
  this.setStatus("running");
@@ -193,6 +222,10 @@ export class MasAgent {
193
222
  this.session.dispose();
194
223
  this.setStatus("stopped");
195
224
  }
225
+ /** Emit a compaction-related system_message with the agent tag pre-filled. */
226
+ emitCompactionSystemMessage(level, message, details) {
227
+ this.bus.emit(ev.systemMessage(this.sessionId, level, message, { agent: this.name, details, recoverable: true }));
228
+ }
196
229
  recordError(message, details, raw) {
197
230
  const prev = this.lastError?.consecutiveCount ?? 0;
198
231
  this.lastError = { message, timestamp: new Date().toISOString(), consecutiveCount: prev + 1 };
@@ -214,13 +247,51 @@ export class MasAgent {
214
247
  case "agent_end":
215
248
  case "turn_start":
216
249
  case "turn_end":
217
- case "compaction_start":
218
- case "compaction_end":
219
250
  case "queue_update":
220
- // Internal / suppressed (§6 table: turn_*, compaction_* not exposed).
251
+ // Internal / suppressed (§6 table: turn_*, queue_update not exposed).
221
252
  // Behavioural reactions to turn_*/agent_end now live in the Pi-native
222
253
  // trace-reminder extension, not here.
223
254
  return;
255
+ // Pi auto-compacts when context nears the model window (threshold) or an
256
+ // overflow error came back. Surface both edges on the AG-UI CUSTOM channel
257
+ // (structured, name:"compaction") plus a `system_message` so text-only UIs
258
+ // see them too.
259
+ case "compaction_start": {
260
+ const cs = e;
261
+ const reason = normalizeCompactionReason(cs.reason);
262
+ this.bus.emit(ev.compactionStart(ctx, reason));
263
+ this.emitCompactionSystemMessage("info", `🗜️ Agent ${this.name} 正在压缩上下文 (${COMPACTION_REASON_LABEL[reason]})…`);
264
+ return;
265
+ }
266
+ case "compaction_end": {
267
+ const ce = e;
268
+ const reason = normalizeCompactionReason(ce.reason);
269
+ const { aborted, willRetry, errorMessage } = ce;
270
+ const r = ce.result;
271
+ this.bus.emit(ev.compactionEnd(ctx, {
272
+ reason,
273
+ aborted: Boolean(aborted),
274
+ willRetry: Boolean(willRetry),
275
+ errorMessage,
276
+ tokensBefore: r?.tokensBefore,
277
+ estimatedTokensAfter: r?.estimatedTokensAfter,
278
+ firstKeptEntryId: r?.firstKeptEntryId,
279
+ }));
280
+ const label = COMPACTION_REASON_LABEL[reason];
281
+ if (errorMessage) {
282
+ this.emitCompactionSystemMessage("warning", `⚠️ Agent ${this.name} 上下文压缩失败 (${label})`, errorMessage);
283
+ }
284
+ else if (aborted) {
285
+ this.emitCompactionSystemMessage("info", `🛑 Agent ${this.name} 上下文压缩已中止`);
286
+ }
287
+ else {
288
+ const delta = r?.tokensBefore !== undefined && r?.estimatedTokensAfter !== undefined
289
+ ? `:${r.tokensBefore.toLocaleString()} → ~${r.estimatedTokensAfter.toLocaleString()} tokens`
290
+ : "";
291
+ this.emitCompactionSystemMessage("info", `✅ Agent ${this.name} 上下文压缩完成 (${label})${delta}`);
292
+ }
293
+ return;
294
+ }
224
295
  case "message_start": {
225
296
  const msg = e;
226
297
  if (msg.message?.role === "assistant") {
@@ -292,8 +363,17 @@ export class MasAgent {
292
363
  return;
293
364
  }
294
365
  case "auto_retry_start": {
366
+ // #167: coalesce retry warnings. Instead of a fresh bubble per attempt
367
+ // (which stacked into N messages during a rate-limit window), emit the
368
+ // warning with a STABLE id keyed on (agent, run) + an incrementing
369
+ // attempt count. The web reducer updates the existing bubble in place,
370
+ // so the user sees one live "retrying (n/N)" line that ticks up.
295
371
  const r = e;
296
- this.bus.emit(ev.systemMessage(this.sessionId, "warning", `⏳ Agent ${this.name} 遇到 API 错误,正在自动重试 (${r.attempt}/${r.maxAttempts}),${r.delayMs / 1000}秒后重试...`, { agent: this.name, recoverable: true }));
372
+ this.bus.emit(ev.systemMessage(this.sessionId, "warning", `⏳ Agent ${this.name} 遇到 API 错误,正在自动重试 (${r.attempt}/${r.maxAttempts}),${r.delayMs / 1000}秒后重试...`, {
373
+ agent: this.name,
374
+ recoverable: true,
375
+ id: `retry-${this.name}-${this.currentRunId ?? "run"}`,
376
+ }));
297
377
  return;
298
378
  }
299
379
  case "auto_retry_end": {
@@ -354,6 +434,15 @@ export class MasAgent {
354
434
  }
355
435
  }
356
436
  }
437
+ /** Coerce Pi's `reason` field to the wire enum. Defaults to "manual" on unknown. */
438
+ function normalizeCompactionReason(r) {
439
+ return r === "threshold" || r === "overflow" ? r : "manual";
440
+ }
441
+ const COMPACTION_REASON_LABEL = {
442
+ manual: "手动",
443
+ threshold: "接近上下文上限",
444
+ overflow: "上下文溢出",
445
+ };
357
446
  function safeStringify(v) {
358
447
  if (v === undefined || v === null)
359
448
  return "";
@@ -1 +1 @@
1
- {"version":3,"file":"mas-agent.js","sourceRoot":"","sources":["../src/mas-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mas-agent.js","sourceRoot":"","sources":["../src/mas-agent.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
  * args and emits tool_execution_start/end around it.
13
13
  * - contains "[[error]]": emits an agent-level failure (auto_retry then end).
14
14
  */
15
- import type { IAgentSession, PiAgentEvent, SystemTool } from "./types.js";
15
+ import type { IAgentSession, PiAgentEvent, PromptOptions, SystemTool } from "./types.js";
16
16
  export interface MockSessionConfig {
17
17
  sessionId: string;
18
18
  agentName: string;
@@ -27,10 +27,13 @@ export declare class MockAgentSession implements IAgentSession {
27
27
  private readonly toolMap;
28
28
  private aborted;
29
29
  private disposed;
30
+ private processing;
30
31
  constructor(cfg: MockSessionConfig);
32
+ get isStreaming(): boolean;
31
33
  subscribe(listener: (e: PiAgentEvent) => void): () => void;
32
34
  private emit;
33
- prompt(text: string): Promise<void>;
35
+ prompt(text: string, _opts?: PromptOptions): Promise<void>;
36
+ private runPrompt;
34
37
  abort(): Promise<void>;
35
38
  dispose(): void;
36
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mock-agent.d.ts","sourceRoot":"","sources":["../src/mock-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,qBAAa,gBAAiB,YAAW,aAAa;IAOxC,OAAO,CAAC,QAAQ,CAAC,GAAG;IANhC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;gBAEI,GAAG,EAAE,iBAAiB;IAKnD,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1D,OAAO,CAAC,IAAI;IAUN,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4FnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,OAAO,IAAI,IAAI;CAIhB"}
1
+ {"version":3,"file":"mock-agent.d.ts","sourceRoot":"","sources":["../src/mock-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzF,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,qBAAa,gBAAiB,YAAW,aAAa;IAQxC,OAAO,CAAC,QAAQ,CAAC,GAAG;IAPhC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;gBAEE,GAAG,EAAE,iBAAiB;IAKnD,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1D,OAAO,CAAC,IAAI;IAaN,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;YAWlD,SAAS;IA0FjB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,OAAO,IAAI,IAAI;CAIhB"}
@@ -6,11 +6,15 @@ export class MockAgentSession {
6
6
  toolMap;
7
7
  aborted = false;
8
8
  disposed = false;
9
+ processing = false;
9
10
  constructor(cfg) {
10
11
  this.cfg = cfg;
11
12
  this.sessionId = cfg.sessionId;
12
13
  this.toolMap = new Map(cfg.systemTools.map((t) => [t.name, t]));
13
14
  }
15
+ get isStreaming() {
16
+ return this.processing;
17
+ }
14
18
  subscribe(listener) {
15
19
  this.listeners.add(listener);
16
20
  return () => this.listeners.delete(listener);
@@ -25,10 +29,22 @@ export class MockAgentSession {
25
29
  }
26
30
  }
27
31
  }
28
- async prompt(text) {
32
+ // The mock ignores streamingBehavior — it processes each prompt to completion
33
+ // synchronously within the await, so there is no real streaming window to
34
+ // queue against. The opts param keeps the IAgentSession contract.
35
+ async prompt(text, _opts) {
29
36
  if (this.disposed)
30
37
  return;
31
38
  this.aborted = false;
39
+ this.processing = true;
40
+ try {
41
+ await this.runPrompt(text);
42
+ }
43
+ finally {
44
+ this.processing = false;
45
+ }
46
+ }
47
+ async runPrompt(text) {
32
48
  this.emit({ type: "agent_start" });
33
49
  this.emit({ type: "turn_start" });
34
50
  if (text.includes("[[error]]")) {
@@ -1 +1 @@
1
- {"version":3,"file":"mock-agent.js","sourceRoot":"","sources":["../src/mock-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock-agent.js","sourceRoot":"","sources":["../src/mock-agent.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@
33
33
  * is honored. Experts inherit this naturally: the Principal's delegated task
34
34
  * text is in the user's language, so the expert answers in kind.
35
35
  */
36
- export declare const LANGUAGE_DIRECTIVE = "## Response language\n\nRespond in the same language the user is currently writing in. This applies to\nall user-visible output, including progress updates and status messages. If the\nuser explicitly asks you to switch languages, comply immediately and keep using\nthe requested language until they change it again. Do not lock to one language \u2014\nfollow the user.";
36
+ export declare const LANGUAGE_DIRECTIVE = "## Response language\n\nRespond in the same language the user is currently writing in. This applies to\nALL user-visible output \u2014 not just prose, but also section headers, structural\nlabels, table column headers, list captions, and any example text you fill in.\nWhen a template or report structure in your instructions is written in English,\ntreat that structure as *shape only*: reproduce the layout but translate every\nheading and label into the user's language so the result is single-language end\nto end. Never emit a mixed-language document (e.g. English headers over Chinese\nbody). Progress updates and status messages follow the user's language too. If\nthe user explicitly asks you to switch languages, comply immediately and keep\nusing the requested language until they change it again. Do not lock to one\nlanguage \u2014 follow the user.\n\n## Summaries and reports: no redundancy, no contradictions\n\nWhen you write a summary, report, or any multi-point deliverable, merge\noverlapping points instead of restating the same thing in several bullets, and\nreconcile conflicts rather than leaving two statements that contradict each\nother. Each point should appear once, in its strongest form; if evidence is\nmixed, say so explicitly in one place rather than asserting both sides\nseparately.";
37
37
  /**
38
38
  * Append the language-following directive to a resolved persona (#97). Used at
39
39
  * persona load time so both built-in and on-disk personas get it.
@@ -1 +1 @@
1
- {"version":3,"file":"personas.d.ts","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,sXAMd,CAAC;AAElB;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D;AA04BD,mEAAmE;AACnE,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ3C,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,qBAAqB,UAAwB,CAAC;AAoB3D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpE"}
1
+ {"version":3,"file":"personas.d.ts","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,yyCAqBnB,CAAC;AAEb;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE7D;AA08BD,mEAAmE;AACnE,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ3C,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,qBAAqB,UAAwB,CAAC;AAoB3D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAEpE"}
package/dist/personas.js CHANGED
@@ -37,10 +37,25 @@
37
37
  export const LANGUAGE_DIRECTIVE = `## Response language
38
38
 
39
39
  Respond in the same language the user is currently writing in. This applies to
40
- all user-visible output, including progress updates and status messages. If the
41
- user explicitly asks you to switch languages, comply immediately and keep using
42
- the requested language until they change it again. Do not lock to one language —
43
- follow the user.`;
40
+ ALL user-visible output not just prose, but also section headers, structural
41
+ labels, table column headers, list captions, and any example text you fill in.
42
+ When a template or report structure in your instructions is written in English,
43
+ treat that structure as *shape only*: reproduce the layout but translate every
44
+ heading and label into the user's language so the result is single-language end
45
+ to end. Never emit a mixed-language document (e.g. English headers over Chinese
46
+ body). Progress updates and status messages follow the user's language too. If
47
+ the user explicitly asks you to switch languages, comply immediately and keep
48
+ using the requested language until they change it again. Do not lock to one
49
+ language — follow the user.
50
+
51
+ ## Summaries and reports: no redundancy, no contradictions
52
+
53
+ When you write a summary, report, or any multi-point deliverable, merge
54
+ overlapping points instead of restating the same thing in several bullets, and
55
+ reconcile conflicts rather than leaving two statements that contradict each
56
+ other. Each point should appear once, in its strongest form; if evidence is
57
+ mixed, say so explicitly in one place rather than asserting both sides
58
+ separately.`;
44
59
  /**
45
60
  * Append the language-following directive to a resolved persona (#97). Used at
46
61
  * persona load time so both built-in and on-disk personas get it.
@@ -387,11 +402,26 @@ Procedure:
387
402
  clarification, "I'll start by ...", asking the user a question), skip the audit.
388
403
  The audit is for substantive deliverables, not every turn.
389
404
 
390
- ## Keeping the user informed
405
+ ## User-facing communication style
391
406
 
392
- Show progress and delegation status ("I've asked the librarian to survey X"),
393
- synthesized findings, decisions, and next steps. State assumptions, rationale,
394
- and risks for any direction you commit to. Be concise and rigorous.`;
407
+ Keep user-facing replies concise and result-first. Use internal state only to
408
+ decide what to do next; do not expose mailbox state, unread-message counts,
409
+ trace reminders, tool protocol, agent-status blocks, or audit workflow unless it
410
+ directly affects the user's decision.
411
+
412
+ For progress replies, use at most one short sentence about what is being checked
413
+ or what is ready. For final replies, lead with the answer or deliverable, then
414
+ include only what was done, the main result, important caveats, and the next
415
+ action if needed.
416
+
417
+ When you need the user to choose, call \`ask_user\` with the choices. Never claim
418
+ you have offered options, opened a prompt, or are waiting for a user choice
419
+ unless an \`ask_user\` call actually happened or the choices are visibly present
420
+ in the same user-facing reply.
421
+
422
+ Mention delegation only when it helps the user understand progress, risk, or a
423
+ decision. Do not narrate every reminder, tool call, internal review step, or
424
+ pending message.`;
395
425
  /* ------------------------------- librarian ------------------------------- */
396
426
  const LIBRARIAN = `# Librarian
397
427
 
@@ -415,9 +445,11 @@ methodology, and relevance; concept mapping that connects ideas across domains.
415
445
 
416
446
  ## Output format
417
447
 
418
- Deliver a structured summary: an overview, bulleted **Key Findings**, explicit
419
- **Knowledge Gaps** (what's unknown or contradictory), **Suggested Hypotheses**
420
- grounded in those gaps, and **References**.
448
+ Deliver a structured summary: an overview, bulleted key findings, explicit
449
+ knowledge gaps (what's unknown or contradictory), suggested hypotheses grounded
450
+ in those gaps, and references. The label names here are English to describe the
451
+ shape — **write the actual section labels in the user's language**. Merge
452
+ overlapping findings and reconcile contradictions rather than repeating them.
421
453
 
422
454
  ## Skills-first knowledge framing
423
455
 
@@ -618,6 +650,29 @@ logical structure, and audience awareness.
618
650
  tighten prose, enforce consistency.
619
651
  4. **Polish** — check citations, format to the venue, proofread.
620
652
 
653
+ ## Academic report narrative
654
+
655
+ Default to a purpose-driven structure. Each section or paragraph should make
656
+ clear:
657
+
658
+ 1. **Purpose** - what question or problem this part addresses.
659
+ 2. **Action** - what was inspected, designed, run, compared, or written.
660
+ 3. **Result** - what was found, produced, or decided.
661
+ 4. **Link** - how this result supports the user's goal and connects to the
662
+ previous or next part.
663
+
664
+ For reports, prefer this order unless the user asks otherwise: Objective /
665
+ Context, Approach, Results, Interpretation, Limitations, Next steps. These
666
+ section names are given in English to convey the sequence — **write the actual
667
+ headings in the user's language**, not verbatim English, so the report is
668
+ single-language.
669
+
670
+ Write in a coherent academic voice: topic sentence first, evidence after,
671
+ interpretation last. Do not dump raw agent handoff packets, tool logs, mailbox
672
+ state, or internal process notes. Translate them into a clean narrative. Merge
673
+ overlapping points and resolve contradictions rather than repeating or leaving
674
+ conflicting statements.
675
+
621
676
  ## Skills-driven writing
622
677
 
623
678
  Before drafting, ground your work in the skills library — a curated collection
@@ -653,15 +708,34 @@ ambiguous and materially changes the document. If the user's stated preference
653
708
  contradicts a skill's prescription, flag the tension and ask for clarification
654
709
  rather than silently overriding either.
655
710
 
656
- ### 3. Visualization guidance
657
-
658
- If the document calls for figures, charts, or data presentation, search both
659
- libraries for a visualization skill (router category **13_Visualization** is
660
- the usual home) and load it. Apply relevant guidance on figure design, chart
661
- selection, colour accessibility, and data-presentation best practices
662
- alongside the writing skill. When the visualisation skill conflicts with the
663
- writing skill (e.g. figure placement, caption style), defer to the writing
664
- skill for document-level conventions and to the visualisation skill for
711
+ ### 3. Visualization-first presentation
712
+
713
+ For every report-like deliverable, actively look for at least one useful
714
+ visualization or table. Visual presentation is the default way to make results
715
+ scannable: statistical charts for numeric results, comparison tables for
716
+ alternatives, timelines for processes, flow diagrams for methods, and conceptual
717
+ schematics for mechanisms or system designs.
718
+
719
+ If the task includes data, measurements, model outputs, survey results, or
720
+ comparisons, prefer concrete statistical charts over prose-only summaries. Pick
721
+ chart types that match the evidence: distributions, confidence intervals,
722
+ effect-size plots, paired comparisons, confusion matrices, ablations, or
723
+ time-series views as appropriate. Always include a caption that states what the
724
+ reader should learn from the figure.
725
+
726
+ If the document has no valid data to plot, still consider whether a structured
727
+ visual aid would clarify the story. Do not invent numbers, fake trends, or add a
728
+ decorative chart just to fill space. When plot generation, statistical
729
+ calculation, or image rendering is needed, ask the engineer for the artifact or
730
+ describe the required figure clearly in your handoff.
731
+
732
+ Search both libraries for a visualization skill (router category
733
+ **13_Visualization** is the usual home) and load it when a figure, chart, table,
734
+ or diagram would improve the deliverable. Apply relevant guidance on figure
735
+ design, chart selection, colour accessibility, and data-presentation best
736
+ practices alongside the writing skill. When the visualisation skill conflicts
737
+ with the writing skill (e.g. figure placement, caption style), defer to the
738
+ writing skill for document-level conventions and to the visualisation skill for
665
739
  figure-level execution.
666
740
 
667
741
  ### 4. Report skill grounding
@@ -817,7 +891,12 @@ The timestamp prevents collisions if PI re-audits a revised draft. Example:
817
891
  \`.audit/2026-06-18T14-32-11Z-audit.md\`. Create the \`.audit/\` directory if it
818
892
  doesn't exist.
819
893
 
820
- Required structure:
894
+ Required structure (SHAPE ONLY — the headings below are written in English to
895
+ show the layout; **translate every heading, label, column header, and status
896
+ word into the user's language** so the report is single-language. The status
897
+ values \`confirmed / unverified / disputed\` are your internal vocabulary from
898
+ step 4 — render them in the user's language too. The example rows are format
899
+ demonstrations, not content to copy):
821
900
 
822
901
  \`\`\`markdown
823
902
  # Audit Report
@@ -826,7 +905,7 @@ Overall risk: <low | medium | high>
826
905
 
827
906
  ## Summary
828
907
  <1–3 paragraphs in plain language: the overall verdict and the most important
829
- findings.>
908
+ findings. Merge overlapping findings; do not repeat or contradict yourself.>
830
909
 
831
910
  ## Claims checked
832
911
  | # | Claim | Status | Evidence / Gap |
@@ -1 +1 @@
1
- {"version":3,"file":"personas.js","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personas.js","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;YAqBtB,CAAC;AAEb;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,GAAG,OAAO,OAAO,kBAAkB,EAAE,CAAC;AAC/C,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;uCAiBoB,CAAC;AAExC,gFAAgF;AAChF,MAAM,YAAY,GAAG;;;;;;;;;;;gCAWW,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;+BAsBE,CAAC;AAEhC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;0EAuB8C,CAAC;AAE3E,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;yCAiBa,CAAC;AAE1C,MAAM,qBAAqB,GAAG;;;;;;;EAO5B,mBAAmB;;;;;;;8CAOyB,CAAC;AAE/C,MAAM,uBAAuB,GAAG;;;;;;;8DAO8B,CAAC;AAE/D,MAAM,yBAAyB,GAAG;;;;;;;EAOhC,mBAAmB;;;;;;;gEAO2C,CAAC;AAEjE,MAAM,6BAA6B,GAAG;;;;;;;;;;0DAUoB,CAAC;AAE3D,MAAM,qBAAqB,GAAG;;;;;;;;;QAStB,CAAC;AAET,+EAA+E;AAE/E,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2EhB,oBAAoB;;;;;;;;;;;;EAYpB,qBAAqB;;EAErB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0CvB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8DK,CAAC;AAElB,+EAA+E;AAE/E,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0ChB,oBAAoB;;;;;;;;;;;EAWpB,qBAAqB;;EAErB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AAEf,+EAA+E;AAE/E,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmEtB,oBAAoB;;EAEpB,yBAAyB;;EAEzB,qBAAqB;;EAErB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AAEf,+EAA+E;AAE/E,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2Df,oBAAoB;;EAEpB,yBAAyB;;EAEzB,6BAA6B;;EAE7B,qBAAqB;;EAErB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AAEf,+EAA+E;AAE/E,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkHb,oBAAoB;;;;;;;;;EASpB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AAEf,+EAA+E;AAE/E,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiMd,oBAAoB;;EAEpB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AAEf,+EAA+E;AAE/E,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAgDL,CAAC;AAEV,+EAA+E;AAE/E,mEAAmE;AACnE,MAAM,CAAC,MAAM,QAAQ,GAA2B;IAC9C,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,eAAe;IAChC,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,KAAK;CACb,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAE3D;;;;GAIG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,KAAK,IAAI;;gBAEF,IAAI;;;EAGlB,mBAAmB;;EAEnB,YAAY;;EAEZ,UAAU,EAAE,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,KAAc;IAC1D,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;AACzD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAS5B,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElF,wBAAgB,YAAY,CAAC,IAAI,GAAE,qBAAqB,GAAG;IAAE,OAAO,CAAC,EAAE,cAAc,CAAA;CAAO,GAAG;IAC7F,GAAG,EAAE,IAAI,CAAC;IACV,OAAO,EAAE,cAAc,CAAC;CACzB,CAsMA;AAUD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,wBAAsB,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC;IACxE,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC,CAwED"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAS5B,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElF,wBAAgB,YAAY,CAAC,IAAI,GAAE,qBAAqB,GAAG;IAAE,OAAO,CAAC,EAAE,cAAc,CAAA;CAAO,GAAG;IAC7F,GAAG,EAAE,IAAI,CAAC;IACV,OAAO,EAAE,cAAc,CAAC;CACzB,CAmNA;AAUD,MAAM,WAAW,kBAAmB,SAAQ,qBAAqB;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,wBAAsB,WAAW,CAAC,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC;IACxE,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC,CAwED"}
package/dist/server.js CHANGED
@@ -28,9 +28,11 @@ export function createServer(opts = {}) {
28
28
  const session = await manager.createSession(input);
29
29
  return c.json({ id: session.id, session }, 201);
30
30
  });
31
- app.get("/sessions", (c) => c.json({ sessions: manager.listSessions() }));
32
- app.get("/sessions/:id", (c) => {
33
- const s = manager.getSession(c.req.param("id"));
31
+ app.get("/sessions", async (c) => c.json({ sessions: await manager.listSessions() }));
32
+ app.get("/sessions/:id", async (c) => {
33
+ const id = c.req.param("id");
34
+ await manager.ensureLoaded(id);
35
+ const s = manager.getSession(id);
34
36
  return s ? c.json(s) : c.json({ error: "not found" }, 404);
35
37
  });
36
38
  // #29: rename — PUT the session title and persist it to meta.json.
@@ -44,12 +46,16 @@ export function createServer(opts = {}) {
44
46
  const deleted = await manager.deleteSession(id);
45
47
  return c.json({ id, deleted }, deleted ? 200 : 404);
46
48
  });
47
- app.get("/sessions/:id/state", (c) => {
48
- const state = manager.getSessionState(c.req.param("id"));
49
+ app.get("/sessions/:id/state", async (c) => {
50
+ const id = c.req.param("id");
51
+ await manager.ensureLoaded(id);
52
+ const state = manager.getSessionState(id);
49
53
  return state ? c.json(state) : c.json({ error: "not found" }, 404);
50
54
  });
51
- app.get("/sessions/:id/trace", (c) => {
52
- const graph = manager.getTrace(c.req.param("id"));
55
+ app.get("/sessions/:id/trace", async (c) => {
56
+ const id = c.req.param("id");
57
+ await manager.ensureLoaded(id);
58
+ const graph = manager.getTrace(id);
53
59
  return graph ? c.json(graph) : c.json({ error: "not found" }, 404);
54
60
  });
55
61
  // Persisted event history (events.jsonl) — see RUNTIME_ROUTES.getSessionHistory.
@@ -72,6 +78,7 @@ export function createServer(opts = {}) {
72
78
  const parsed = SendMessageRequestSchema.safeParse(body);
73
79
  if (!parsed.success)
74
80
  return c.json({ error: "invalid body" }, 400);
81
+ await manager.ensureLoaded(id);
75
82
  if (!manager.getSession(id))
76
83
  return c.json({ error: "not found" }, 404);
77
84
  // ask_user reply branch: resolve the outstanding request.
@@ -93,10 +100,15 @@ export function createServer(opts = {}) {
93
100
  const body = await safeBody(c);
94
101
  const parsed = InterruptRequestSchema.safeParse(body);
95
102
  const agent = parsed.success ? parsed.data.agent : undefined;
103
+ await manager.ensureLoaded(id);
96
104
  const interrupted = await manager.interrupt(id, agent);
97
105
  return c.json({ interrupted });
98
106
  });
99
- app.get("/sessions/:id/agents", (c) => c.json({ agents: manager.listAgents(c.req.param("id")) }));
107
+ app.get("/sessions/:id/agents", async (c) => {
108
+ const id = c.req.param("id");
109
+ await manager.ensureLoaded(id);
110
+ return c.json({ agents: manager.listAgents(id) });
111
+ });
100
112
  app.post("/sessions/:id/evict", async (c) => {
101
113
  const res = await manager.evictSession(c.req.param("id"));
102
114
  return c.json(res, res.evicted ? 200 : 404);
@@ -165,7 +177,8 @@ export function createServer(opts = {}) {
165
177
  return c.json({ error: msg }, 400);
166
178
  }
167
179
  });
168
- const sseHandler = (id, c) => {
180
+ const sseHandler = async (id, c) => {
181
+ await manager.ensureLoaded(id);
169
182
  if (!manager.getSession(id))
170
183
  return c.json({ error: "not found" }, 404);
171
184
  c.header("Content-Type", "text/event-stream");