bernard-agent 0.6.2 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +118 -52
  2. package/dist/agent.d.ts +7 -4
  3. package/dist/agent.js +120 -137
  4. package/dist/agent.js.map +1 -1
  5. package/dist/config.d.ts +19 -1
  6. package/dist/config.js +85 -13
  7. package/dist/config.js.map +1 -1
  8. package/dist/critic.d.ts +32 -0
  9. package/dist/critic.js +118 -0
  10. package/dist/critic.js.map +1 -0
  11. package/dist/cron/runner.js +54 -34
  12. package/dist/cron/runner.js.map +1 -1
  13. package/dist/output.d.ts +6 -4
  14. package/dist/output.js +31 -10
  15. package/dist/output.js.map +1 -1
  16. package/dist/overlap-checker.d.ts +61 -0
  17. package/dist/overlap-checker.js +106 -0
  18. package/dist/overlap-checker.js.map +1 -0
  19. package/dist/pac.d.ts +37 -0
  20. package/dist/pac.js +69 -0
  21. package/dist/pac.js.map +1 -0
  22. package/dist/rag-query.js +2 -1
  23. package/dist/rag-query.js.map +1 -1
  24. package/dist/rag-worker.js +4 -3
  25. package/dist/rag-worker.js.map +1 -1
  26. package/dist/repl.js +281 -92
  27. package/dist/repl.js.map +1 -1
  28. package/dist/specialist-candidates.d.ts +13 -0
  29. package/dist/specialist-candidates.js.map +1 -1
  30. package/dist/specialist-detector.d.ts +20 -5
  31. package/dist/specialist-detector.js +72 -9
  32. package/dist/specialist-detector.js.map +1 -1
  33. package/dist/specialist-matcher.d.ts +5 -0
  34. package/dist/specialist-matcher.js +1 -0
  35. package/dist/specialist-matcher.js.map +1 -1
  36. package/dist/specialists.d.ts +7 -3
  37. package/dist/specialists.js +28 -3
  38. package/dist/specialists.js.map +1 -1
  39. package/dist/tools/datetime.d.ts +6 -0
  40. package/dist/tools/datetime.js +38 -1
  41. package/dist/tools/datetime.js.map +1 -1
  42. package/dist/tools/file.d.ts +154 -0
  43. package/dist/tools/file.js +396 -0
  44. package/dist/tools/file.js.map +1 -0
  45. package/dist/tools/index.d.ts +3 -1
  46. package/dist/tools/index.js +5 -2
  47. package/dist/tools/index.js.map +1 -1
  48. package/dist/tools/mcp-url.js +1 -1
  49. package/dist/tools/mcp-url.js.map +1 -1
  50. package/dist/tools/shell.js +1 -1
  51. package/dist/tools/shell.js.map +1 -1
  52. package/dist/tools/specialist-run.d.ts +9 -1
  53. package/dist/tools/specialist-run.js +60 -14
  54. package/dist/tools/specialist-run.js.map +1 -1
  55. package/dist/tools/specialist.d.ts +10 -1
  56. package/dist/tools/specialist.js +57 -6
  57. package/dist/tools/specialist.js.map +1 -1
  58. package/dist/tools/subagent.d.ts +9 -1
  59. package/dist/tools/subagent.js +57 -14
  60. package/dist/tools/subagent.js.map +1 -1
  61. package/dist/tools/task.d.ts +52 -13
  62. package/dist/tools/task.js +96 -30
  63. package/dist/tools/task.js.map +1 -1
  64. package/package.json +1 -1
package/dist/output.js CHANGED
@@ -10,6 +10,7 @@ exports.printToolCall = printToolCall;
10
10
  exports.printToolResult = printToolResult;
11
11
  exports.printError = printError;
12
12
  exports.printInfo = printInfo;
13
+ exports.printWarning = printWarning;
13
14
  exports.printConversationReplay = printConversationReplay;
14
15
  exports.printSubAgentStart = printSubAgentStart;
15
16
  exports.printSubAgentEnd = printSubAgentEnd;
@@ -179,6 +180,11 @@ function printError(message) {
179
180
  function printInfo(message) {
180
181
  console.log((0, theme_js_1.getTheme)().muted(message));
181
182
  }
183
+ /** Prints a warning message in the theme's warning color. */
184
+ function printWarning(message) {
185
+ stopSpinner();
186
+ console.log((0, theme_js_1.getTheme)().warning(message));
187
+ }
182
188
  /**
183
189
  * Prints a dimmed summary of a prior conversation for session-resume context.
184
190
  *
@@ -268,16 +274,18 @@ function printTaskEnd(result) {
268
274
  }
269
275
  }
270
276
  /** Prints a colored top-border line when the critic starts verifying. */
271
- function printCriticStart() {
277
+ function printCriticStart(prefix) {
272
278
  stopSpinner();
273
279
  const t = (0, theme_js_1.getTheme)();
274
- console.log(t.accent('┌─ critic verifying response...'));
280
+ const label = formatPrefix(prefix);
281
+ console.log(label + t.accent('┌─ critic — verifying response...'));
275
282
  }
276
283
  /** Prints a retry indicator when the critic triggers a correction loop. */
277
- function printCriticRetry(attempt, maxRetries) {
284
+ function printCriticRetry(attempt, maxRetries, prefix) {
278
285
  stopSpinner();
279
286
  const t = (0, theme_js_1.getTheme)();
280
- console.log(t.warning(`├─ critic retrying (${attempt}/${maxRetries})...`));
287
+ const label = formatPrefix(prefix);
288
+ console.log(label + t.warning(`├─ critic — retrying (${attempt}/${maxRetries})...`));
281
289
  }
282
290
  /** Parses a critic response into a structured verdict and explanation. */
283
291
  function parseCriticVerdict(text) {
@@ -291,19 +299,30 @@ function parseCriticVerdict(text) {
291
299
  return { verdict, explanation };
292
300
  }
293
301
  /** Prints the critic's verdict with color based on PASS/WARN/FAIL. */
294
- function printCriticVerdict(text) {
302
+ function printCriticVerdict(text, prefix) {
295
303
  stopSpinner();
296
304
  const t = (0, theme_js_1.getTheme)();
305
+ const label = formatPrefix(prefix);
297
306
  const { verdict, explanation } = parseCriticVerdict(text);
298
307
  const colorFn = verdict === 'PASS' ? t.accent : verdict === 'WARN' ? t.warning : t.error;
299
- const suffix = explanation ? `: ${explanation}` : '';
300
- console.log(colorFn(`└─ critic ${verdict}${suffix}`));
308
+ if (verdict === 'PASS' || verdict === 'WARN') {
309
+ // Compact badge; include explanation only if single-line
310
+ const isSingleLine = !!explanation && !explanation.includes('\n');
311
+ const suffix = isSingleLine ? `: ${explanation}` : '';
312
+ console.log(label + colorFn(`└─ critic ${verdict}${suffix}`));
313
+ }
314
+ else {
315
+ // FAIL/UNKNOWN: always show full explanation
316
+ const suffix = explanation ? `: ${explanation}` : '';
317
+ console.log(label + colorFn(`└─ critic ${verdict}${suffix}`));
318
+ }
301
319
  }
302
320
  /** Prints a re-verify indicator when the critic re-checks after a retry. */
303
- function printCriticReVerify() {
321
+ function printCriticReVerify(prefix) {
304
322
  stopSpinner();
305
323
  const t = (0, theme_js_1.getTheme)();
306
- console.log(t.accent('├─ critic re-verifying response...'));
324
+ const label = formatPrefix(prefix);
325
+ console.log(label + t.accent('├─ critic — re-verifying response...'));
307
326
  }
308
327
  /** Prints the REPL help menu listing all available slash commands. */
309
328
  function printHelp() {
@@ -329,8 +348,10 @@ function printHelp() {
329
348
  console.log(t.text(' /candidates') + t.muted(' — Review specialist suggestions'));
330
349
  console.log(t.text(' /critic') + t.muted(' — Toggle critic mode (on/off) for response verification'));
331
350
  console.log(t.text(' /options') +
332
- t.muted(' — View and set options (max-tokens, shell-timeout, token-window)'));
351
+ t.muted(' — View and set options (max-tokens, max-steps, shell-timeout, token-window)'));
352
+ console.log(t.text(' /agent-options') + t.muted(' — Configure auto-creation for specialist agents'));
333
353
  console.log(t.text(' /update') + t.muted(' — Check for and install updates'));
354
+ console.log(t.text(' /debug') + t.muted(' — Print diagnostic report for troubleshooting'));
334
355
  console.log(t.text(' exit') + t.muted(' — Quit Bernard'));
335
356
  console.log();
336
357
  }
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":";;AA0BA,4CAIC;AAoBD,kDAiBC;AA6BD,oCAUC;AAGD,kCAMC;AAGD,oCAQC;AAGD,gDAMC;AAQD,sCASC;AAOD,0CAqBC;AAGD,gCAGC;AAGD,8BAEC;AAQD,0DAkBC;AA0BD,gDAKC;AAGD,4CAIC;AAGD,oDAKC;AAGD,gDAIC;AAGD,wCAIC;AAGD,oCAaC;AAGD,4CAIC;AAGD,4CAIC;AAGD,gDAWC;AAGD,gDAQC;AAGD,kDAIC;AAGD,8BAyCC;AA9XD,6CAAuE;AACvE,yCAAsC;AAEtC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AACpC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAkB9B;;GAEG;AACH,SAAgB,gBAAgB,CAAC,CAAS;IACxC,IAAI,CAAC,GAAG,IAAI;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACnB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5D,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,EAAU;IAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAC3C,IAAI,YAAY,GAAG,EAAE;QAAE,OAAO,GAAG,YAAY,GAAG,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAClC,OAAO,GAAG,OAAO,IAAI,OAAO,GAAG,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAmB;IACrD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IAE5D,IAAI,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,KAAK,CAAC,qBAAqB,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,aAAa,OAAO,GAAG,CAAC;IACjC,CAAC;IAED,MAAM,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAA,6BAAgB,EAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACjF,MAAM,eAAe,GAAG,aAAa,GAAG,kCAAqB,CAAC;IAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,GAAG,KAAK,CAAC,kBAAkB,CAAC,GAAG,eAAe,CAAC,GAAG,GAAG,CAAC,CACnF,CAAC;IAEF,OAAO,aAAa,OAAO,MAAM,EAAE,UAAU,IAAI,YAAY,YAAY,sBAAsB,CAAC;AAClG,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAe;IACnC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,YAAY,GAAG,IAAA,mBAAQ,GAAE,CAAC,YAAY,CAAC;IAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IACzC,OAAO,OAAO,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,gBAAgB;AAChB,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1E,IAAI,YAAY,GAA0C,IAAI,CAAC;AAC/D,IAAI,iBAAiB,GAAG,CAAC,CAAC;AAE1B;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,UAAmC,UAAU;IACxE,IAAI,YAAY;QAAE,OAAO,CAAC,kBAAkB;IAC5C,iBAAiB,GAAG,CAAC,CAAC;IACtB,MAAM,UAAU,GAAG,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;IACjD,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAG,cAAc,CAAC,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,IAAA,mBAAQ,GAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/F,iBAAiB,EAAE,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,mEAAmE;AACnE,SAAgB,WAAW;IACzB,IAAI,CAAC,YAAY;QAAE,OAAO;IAC1B,aAAa,CAAC,YAAY,CAAC,CAAC;IAC5B,YAAY,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa;IAChD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;AACnD,CAAC;AAED,yFAAyF;AACzF,SAAgB,YAAY,CAAC,QAAgB,EAAE,KAAa,EAAE,OAAgB;IAC5E,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,GAAG,GAAG,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAClG,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,eAAe,QAAQ,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,GAAG,EAAE,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,uEAAuE;AACvE,SAAgB,kBAAkB,CAAC,IAAY,EAAE,MAAe;IAC9D,WAAW,EAAE,CAAC;IACd,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,IAAA,mBAAQ,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,aAAa,CAC3B,QAAgB,EAChB,IAA6B,EAC7B,MAAe;IAEf,WAAW,EAAE,CAAC;IACd,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,IAAA,mBAAQ,GAAE,CAAC,QAAQ,CAAC,OAAO,QAAQ,EAAE,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;AACjG,CAAC;AAED;;;;GAIG;AACH,SAAgB,eAAe,CAAC,QAAgB,EAAE,MAAe,EAAE,MAAe;IAChF,WAAW,EAAE,CAAC;IACd,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAc,CAAC;IACnB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,MAAM,CAAC;IAClB,CAAC;SAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;QACtE,MAAM,GAAG,MAAM,CAAE,MAA6B,CAAC,MAAM,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QAC3C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,KAAK,GAAG,MAAM;SACjB,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;SACpD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACrB,CAAC;AAED,oEAAoE;AACpE,SAAgB,UAAU,CAAC,OAAe;IACxC,WAAW,EAAE,CAAC;IACd,OAAO,CAAC,KAAK,CAAC,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,kEAAkE;AAClE,SAAgB,SAAS,CAAC,OAAe;IACvC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,QAAuB;IAC7D,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAExD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;YAAE,SAAS;QAElC,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAElF,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAQ,GAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,GAAgB;IACnC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO;SAC1B,MAAM,CACL,CAAC,CAAC,EAAuC,EAAE,CACzC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAC1E;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEtB,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,iFAAiF;AACjF,SAAgB,kBAAkB,CAAC,EAAU,EAAE,IAAY;IACzD,MAAM,YAAY,GAAG,IAAA,mBAAQ,GAAE,CAAC,YAAY,CAAC;IAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,WAAW,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,qEAAqE;AACrE,SAAgB,gBAAgB,CAAC,EAAU;IACzC,MAAM,YAAY,GAAG,IAAA,mBAAQ,GAAE,CAAC,YAAY,CAAC;IAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,kFAAkF;AAClF,SAAgB,oBAAoB,CAAC,EAAU,EAAE,cAAsB,EAAE,IAAY;IACnF,MAAM,YAAY,GAAG,IAAA,mBAAQ,GAAE,CAAC,YAAY,CAAC;IAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,cAAc,OAAO,WAAW,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,sEAAsE;AACtE,SAAgB,kBAAkB,CAAC,EAAU;IAC3C,MAAM,YAAY,GAAG,IAAA,mBAAQ,GAAE,CAAC,YAAY,CAAC;IAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,qEAAqE;AACrE,SAAgB,cAAc,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,WAAW,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,2FAA2F;AAC3F,SAAgB,YAAY,CAAC,MAAc;IACzC,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACrE,MAAM,sBAAsB,GAAG,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM;YAC1B,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,sBAAsB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;YAC7H,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,SAAgB,gBAAgB;IAC9B,WAAW,EAAE,CAAC;IACd,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,2EAA2E;AAC3E,SAAgB,gBAAgB,CAAC,OAAe,EAAE,UAAkB;IAClE,WAAW,EAAE,CAAC;IACd,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB,OAAO,IAAI,UAAU,MAAM,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,0EAA0E;AAC1E,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACpE,IAAI,OAAO,GAAG,SAAS,CAAC;IACxB,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAE9B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,4CAA4C,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtF,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,sEAAsE;AACtE,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,WAAW,EAAE,CAAC;IACd,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzF,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,4EAA4E;AAC5E,SAAgB,mBAAmB;IACjC,WAAW,EAAE,CAAC;IACd,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,sEAAsE;AACtE,SAAgB,SAAS;IACvB,MAAM,CAAC,GAAG,IAAA,mBAAQ,GAAE,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,wDAAwD,CAAC,CACvF,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAC1F,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;IACrF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,+CAA+C,CAAC,CACvF,CAAC;IACF,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,oDAAoD,CAAC,CACzF,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAC7F,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAC5F,CAAC;IACF,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAClB,CAAC,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAChF,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;IACjF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ export interface OverlapResult {
2
+ score: number;
3
+ nameScore: number;
4
+ descriptionScore: number;
5
+ promptScore: number;
6
+ guidelineScore: number;
7
+ }
8
+ export interface OverlapCheckResult {
9
+ maxScore: number;
10
+ bestMatch: {
11
+ type: 'specialist' | 'candidate';
12
+ id: string;
13
+ name: string;
14
+ } | null;
15
+ details: string;
16
+ }
17
+ export declare const OVERLAP_THRESHOLD = 0.6;
18
+ /**
19
+ * Computes token-based Jaccard-like similarity between a candidate and a specialist/candidate.
20
+ */
21
+ export declare function computeOverlapScore(candidateTokens: {
22
+ name: string[];
23
+ description: string[];
24
+ systemPrompt: string[];
25
+ guidelines: string[];
26
+ }, targetTokens: {
27
+ name: string[];
28
+ description: string[];
29
+ systemPrompt: string[];
30
+ guidelines: string[];
31
+ }): OverlapResult;
32
+ /**
33
+ * Checks a candidate against all existing specialists and pending candidates for overlap.
34
+ */
35
+ export declare function checkOverlaps(candidate: {
36
+ name: string;
37
+ description: string;
38
+ systemPrompt: string;
39
+ guidelines: string[];
40
+ }, existingSpecialists: {
41
+ id: string;
42
+ name: string;
43
+ description: string;
44
+ systemPrompt?: string;
45
+ guidelines?: string[];
46
+ }[], pendingCandidates: {
47
+ draftId: string;
48
+ name: string;
49
+ description: string;
50
+ systemPrompt: string;
51
+ guidelines: string[];
52
+ }[]): OverlapCheckResult;
53
+ /**
54
+ * Computes a composite confidence score for a candidate.
55
+ */
56
+ export declare function computeConfidence(llmConfidence: number, overlapScore: number, candidate: {
57
+ systemPrompt: string;
58
+ guidelines: string[];
59
+ description: string;
60
+ draftId: string;
61
+ }, conversationLength: number): number;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OVERLAP_THRESHOLD = void 0;
4
+ exports.computeOverlapScore = computeOverlapScore;
5
+ exports.checkOverlaps = checkOverlaps;
6
+ exports.computeConfidence = computeConfidence;
7
+ const specialist_matcher_js_1 = require("./specialist-matcher.js");
8
+ exports.OVERLAP_THRESHOLD = 0.6;
9
+ /**
10
+ * Computes token-based Jaccard-like similarity between a candidate and a specialist/candidate.
11
+ */
12
+ function computeOverlapScore(candidateTokens, targetTokens) {
13
+ const nameScore = jaccardStemMatch(candidateTokens.name, targetTokens.name);
14
+ const descriptionScore = jaccardStemMatch(candidateTokens.description, targetTokens.description);
15
+ const promptScore = jaccardStemMatch(candidateTokens.systemPrompt, targetTokens.systemPrompt);
16
+ const guidelineScore = jaccardStemMatch(candidateTokens.guidelines, targetTokens.guidelines);
17
+ const score = nameScore * 0.3 + descriptionScore * 0.3 + promptScore * 0.2 + guidelineScore * 0.2;
18
+ return { score, nameScore, descriptionScore, promptScore, guidelineScore };
19
+ }
20
+ function jaccardStemMatch(tokensA, tokensB) {
21
+ if (tokensA.length === 0 && tokensB.length === 0)
22
+ return 0;
23
+ if (tokensA.length === 0 || tokensB.length === 0)
24
+ return 0;
25
+ let intersectionCount = 0;
26
+ const matched = new Set();
27
+ for (const a of tokensA) {
28
+ for (let j = 0; j < tokensB.length; j++) {
29
+ if (!matched.has(j) && (0, specialist_matcher_js_1.stemMatch)(a, tokensB[j])) {
30
+ intersectionCount++;
31
+ matched.add(j);
32
+ break;
33
+ }
34
+ }
35
+ }
36
+ const unionCount = tokensA.length + tokensB.length - intersectionCount;
37
+ return unionCount === 0 ? 0 : intersectionCount / unionCount;
38
+ }
39
+ /**
40
+ * Checks a candidate against all existing specialists and pending candidates for overlap.
41
+ */
42
+ function checkOverlaps(candidate, existingSpecialists, pendingCandidates) {
43
+ const candidateTokens = {
44
+ name: (0, specialist_matcher_js_1.tokenize)(candidate.name),
45
+ description: (0, specialist_matcher_js_1.tokenize)(candidate.description),
46
+ systemPrompt: (0, specialist_matcher_js_1.tokenize)(candidate.systemPrompt),
47
+ guidelines: candidate.guidelines.flatMap((g) => (0, specialist_matcher_js_1.tokenize)(g)),
48
+ };
49
+ let maxScore = 0;
50
+ let bestMatch = null;
51
+ for (const spec of existingSpecialists) {
52
+ const targetTokens = {
53
+ name: (0, specialist_matcher_js_1.tokenize)(spec.name),
54
+ description: (0, specialist_matcher_js_1.tokenize)(spec.description),
55
+ systemPrompt: (0, specialist_matcher_js_1.tokenize)(spec.systemPrompt ?? ''),
56
+ guidelines: (spec.guidelines ?? []).flatMap((g) => (0, specialist_matcher_js_1.tokenize)(g)),
57
+ };
58
+ const result = computeOverlapScore(candidateTokens, targetTokens);
59
+ if (result.score > maxScore) {
60
+ maxScore = result.score;
61
+ bestMatch = { type: 'specialist', id: spec.id, name: spec.name };
62
+ }
63
+ }
64
+ for (const cand of pendingCandidates) {
65
+ const targetTokens = {
66
+ name: (0, specialist_matcher_js_1.tokenize)(cand.name),
67
+ description: (0, specialist_matcher_js_1.tokenize)(cand.description),
68
+ systemPrompt: (0, specialist_matcher_js_1.tokenize)(cand.systemPrompt),
69
+ guidelines: cand.guidelines.flatMap((g) => (0, specialist_matcher_js_1.tokenize)(g)),
70
+ };
71
+ const result = computeOverlapScore(candidateTokens, targetTokens);
72
+ if (result.score > maxScore) {
73
+ maxScore = result.score;
74
+ bestMatch = { type: 'candidate', id: cand.draftId, name: cand.name };
75
+ }
76
+ }
77
+ const details = bestMatch
78
+ ? `Best match: ${bestMatch.name} (${bestMatch.type}, score: ${maxScore.toFixed(2)})`
79
+ : 'No significant overlap found';
80
+ return { maxScore, bestMatch, details };
81
+ }
82
+ /**
83
+ * Computes a composite confidence score for a candidate.
84
+ */
85
+ function computeConfidence(llmConfidence, overlapScore, candidate, conversationLength) {
86
+ // LLM confidence (weight 0.4)
87
+ const llmComponent = Math.max(0, Math.min(1, llmConfidence)) * 0.4;
88
+ // Overlap inverse (weight 0.3) — high overlap reduces confidence for new candidates
89
+ const overlapComponent = (1 - Math.max(0, Math.min(1, overlapScore))) * 0.3;
90
+ // Prompt completeness (weight 0.2)
91
+ let completeness = 0;
92
+ if (candidate.systemPrompt.length > 0)
93
+ completeness += 0.4;
94
+ if (candidate.guidelines.length > 0)
95
+ completeness += 0.3;
96
+ if (candidate.description.length > 10)
97
+ completeness += 0.2;
98
+ if (/^[a-z0-9][a-z0-9-]*[a-z0-9]$/.test(candidate.draftId))
99
+ completeness += 0.1;
100
+ const completenessComponent = completeness * 0.2;
101
+ // Conversation evidence strength (weight 0.1)
102
+ const evidenceStrength = Math.min(1, conversationLength / 2000);
103
+ const evidenceComponent = evidenceStrength * 0.1;
104
+ return llmComponent + overlapComponent + completenessComponent + evidenceComponent;
105
+ }
106
+ //# sourceMappingURL=overlap-checker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlap-checker.js","sourceRoot":"","sources":["../src/overlap-checker.ts"],"names":[],"mappings":"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"}
package/dist/pac.d.ts ADDED
@@ -0,0 +1,37 @@
1
+ import type { CoreMessage } from 'ai';
2
+ import type { BernardConfig } from './config.js';
3
+ export interface PACLoopResult {
4
+ /** The final generateText result after all PAC iterations. */
5
+ finalText: string;
6
+ /** Whether the critic passed on the final iteration. */
7
+ criticPassed: boolean;
8
+ /** Number of retry iterations used. */
9
+ retriesUsed: number;
10
+ }
11
+ /**
12
+ * Runs a Plan-Act-Critic loop around a generateText result.
13
+ *
14
+ * If tool calls were made, runs the critic. On FAIL, injects feedback
15
+ * and re-generates up to maxRetries times.
16
+ */
17
+ export declare function runPACLoop(opts: {
18
+ config: BernardConfig;
19
+ userInput: string;
20
+ initialResult: {
21
+ text: string;
22
+ steps: any[];
23
+ response: {
24
+ messages: CoreMessage[];
25
+ };
26
+ };
27
+ regenerate: (extraMessages: CoreMessage[]) => Promise<{
28
+ text: string;
29
+ steps: any[];
30
+ response: {
31
+ messages: CoreMessage[];
32
+ };
33
+ }>;
34
+ maxRetries?: number;
35
+ prefix?: string;
36
+ abortSignal?: AbortSignal;
37
+ }): Promise<PACLoopResult>;
package/dist/pac.js ADDED
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runPACLoop = runPACLoop;
4
+ const critic_js_1 = require("./critic.js");
5
+ const output_js_1 = require("./output.js");
6
+ const context_js_1 = require("./context.js");
7
+ const logger_js_1 = require("./logger.js");
8
+ /**
9
+ * Runs a Plan-Act-Critic loop around a generateText result.
10
+ *
11
+ * If tool calls were made, runs the critic. On FAIL, injects feedback
12
+ * and re-generates up to maxRetries times.
13
+ */
14
+ async function runPACLoop(opts) {
15
+ const { config, userInput, prefix, abortSignal } = opts;
16
+ const maxRetries = opts.maxRetries ?? critic_js_1.CRITIC_MAX_RETRIES;
17
+ let result = opts.initialResult;
18
+ let retriesUsed = 0;
19
+ let toolCallLog = (0, critic_js_1.extractToolCallLog)(result.steps);
20
+ if (toolCallLog.length === 0) {
21
+ return { finalText: result.text, criticPassed: true, retriesUsed: 0 };
22
+ }
23
+ const criticResult = await (0, critic_js_1.runCritic)(config, userInput, result.text, toolCallLog, {
24
+ prefix,
25
+ abortSignal,
26
+ });
27
+ if (!criticResult || criticResult.verdict === 'PASS' || criticResult.verdict === 'WARN') {
28
+ return { finalText: result.text, criticPassed: true, retriesUsed: 0 };
29
+ }
30
+ // FAIL — retry loop
31
+ let lastCriticResult = criticResult;
32
+ while (retriesUsed < maxRetries) {
33
+ if (abortSignal?.aborted)
34
+ break;
35
+ retriesUsed++;
36
+ (0, output_js_1.printCriticRetry)(retriesUsed, maxRetries, prefix);
37
+ const feedbackMessages = [
38
+ ...(0, context_js_1.truncateToolResults)(result.response.messages),
39
+ {
40
+ role: 'user',
41
+ content: `The critic agent reviewed your work and found issues:\n\nVERDICT: ${lastCriticResult.verdict}\n${lastCriticResult.explanation}\n\nPlease address these issues and try again.`,
42
+ },
43
+ ];
44
+ try {
45
+ result = await opts.regenerate(feedbackMessages);
46
+ toolCallLog = (0, critic_js_1.extractToolCallLog)(result.steps);
47
+ if (toolCallLog.length === 0) {
48
+ return { finalText: result.text, criticPassed: true, retriesUsed };
49
+ }
50
+ const retryCriticResult = await (0, critic_js_1.runCritic)(config, userInput, result.text, toolCallLog, {
51
+ isRetry: true,
52
+ prefix,
53
+ abortSignal,
54
+ });
55
+ if (!retryCriticResult ||
56
+ retryCriticResult.verdict === 'PASS' ||
57
+ retryCriticResult.verdict === 'WARN') {
58
+ return { finalText: result.text, criticPassed: true, retriesUsed };
59
+ }
60
+ lastCriticResult = retryCriticResult;
61
+ }
62
+ catch (err) {
63
+ (0, logger_js_1.debugLog)('pac:retry-error', err instanceof Error ? err.message : String(err));
64
+ break;
65
+ }
66
+ }
67
+ return { finalText: result.text, criticPassed: false, retriesUsed };
68
+ }
69
+ //# sourceMappingURL=pac.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pac.js","sourceRoot":"","sources":["../src/pac.ts"],"names":[],"mappings":"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"}
package/dist/rag-query.js CHANGED
@@ -7,6 +7,7 @@ exports.buildRAGQuery = buildRAGQuery;
7
7
  exports.applyStickiness = applyStickiness;
8
8
  const context_js_1 = require("./context.js");
9
9
  const rag_js_1 = require("./rag.js");
10
+ const datetime_js_1 = require("./tools/datetime.js");
10
11
  /** Number of recent user messages (beyond the current input) to include in the RAG query. */
11
12
  exports.DEFAULT_WINDOW_SIZE = 2;
12
13
  /** Maximum character length for the composed RAG search query. */
@@ -35,7 +36,7 @@ function extractRecentUserTexts(history, maxMessages = exports.DEFAULT_WINDOW_SI
35
36
  // Skip system-injected boundary messages
36
37
  if (BOUNDARY_PREFIXES.some((prefix) => text.startsWith(prefix)))
37
38
  continue;
38
- texts.push(text);
39
+ texts.push((0, datetime_js_1.stripTimestamp)(text));
39
40
  }
40
41
  // Reverse to chronological order (oldest first)
41
42
  texts.reverse();
@@ -1 +1 @@
1
- {"version":3,"file":"rag-query.js","sourceRoot":"","sources":["../src/rag-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rag-query.js","sourceRoot":"","sources":["../src/rag-query.ts"],"names":[],"mappings":"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"}
@@ -83,9 +83,10 @@ async function main() {
83
83
  const candidateStore = new specialist_candidates_js_1.CandidateStore();
84
84
  if (candidateStore.listPending().length < specialist_candidates_js_1.MAX_PENDING_CANDIDATES) {
85
85
  const specialistStore = new specialists_js_1.SpecialistStore();
86
- const candidate = await (0, specialist_detector_js_1.detectSpecialistCandidate)(payload.serialized, config, specialistStore.getSummaries(), candidateStore.listPending());
87
- if (candidate)
88
- candidateStore.create(candidate, 'exit');
86
+ const candidate = await (0, specialist_detector_js_1.detectSpecialistCandidate)(payload.serialized, config, specialistStore.list(), candidateStore.listPending());
87
+ if (candidate && candidate.type === 'new-candidate') {
88
+ candidateStore.create(candidate.candidate, 'exit');
89
+ }
89
90
  }
90
91
  }
91
92
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"rag-worker.js","sourceRoot":"","sources":["../src/rag-worker.ts"],"names":[],"mappings":";;AAEA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAA8B;AAC9B,2CAAyC;AACzC,6CAAkD;AAClD,qCAAoC;AACpC,yEAAoF;AACpF,qDAAmD;AACnD,qEAAqE;AAYrE,KAAK,UAAU,IAAI;IACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE/B,+BAA+B;IAC/B,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC/D,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,iFAAiF;IACjF,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEhF,0CAA0C;IAC1C,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAkB,EAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAEzE,+CAA+C;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7E,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,IAAI,iBAAQ,EAAE,CAAC;QAChC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,yCAAc,EAAE,CAAC;QAC5C,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,iDAAsB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,IAAI,gCAAe,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,kDAAyB,EAC/C,OAAO,CAAC,UAAU,EAClB,MAAM,EACN,eAAe,CAAC,YAAY,EAAE,EAC9B,cAAc,CAAC,WAAW,EAAE,CAC7B,CAAC;YACF,IAAI,SAAS;gBAAE,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,qDAAqD;IACvD,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"rag-worker.js","sourceRoot":"","sources":["../src/rag-worker.ts"],"names":[],"mappings":";;AAEA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAA8B;AAC9B,2CAAyC;AACzC,6CAAkD;AAClD,qCAAoC;AACpC,yEAAoF;AACpF,qDAAmD;AACnD,qEAAqE;AAYrE,KAAK,UAAU,IAAI;IACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE/B,+BAA+B;IAC/B,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC/D,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,iFAAiF;IACjF,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEhF,0CAA0C;IAC1C,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAkB,EAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAEzE,+CAA+C;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7E,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,IAAI,iBAAQ,EAAE,CAAC;QAChC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;YAC7B,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,yCAAc,EAAE,CAAC;QAC5C,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC,MAAM,GAAG,iDAAsB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,IAAI,gCAAe,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,IAAA,kDAAyB,EAC/C,OAAO,CAAC,UAAU,EAClB,MAAM,EACN,eAAe,CAAC,IAAI,EAAE,EACtB,cAAc,CAAC,WAAW,EAAE,CAC7B,CAAC;YACF,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBACpD,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,qDAAqD;IACvD,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC"}