agent-nuvira 3.5.5 β†’ 3.5.6

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 (152) hide show
  1. package/README.md +66 -0
  2. package/dist/cli/chat.d.ts.map +1 -1
  3. package/dist/cli/chat.js +72 -19
  4. package/dist/cli/chat.js.map +1 -1
  5. package/dist/cli/config.d.ts.map +1 -1
  6. package/dist/cli/config.js +17 -3
  7. package/dist/cli/config.js.map +1 -1
  8. package/dist/cli/execute.d.ts.map +1 -1
  9. package/dist/cli/execute.js +63 -22
  10. package/dist/cli/execute.js.map +1 -1
  11. package/dist/cli/failover-runner.js +4 -4
  12. package/dist/cli/failover-runner.js.map +1 -1
  13. package/dist/cli/gateway.js +13 -13
  14. package/dist/cli/gateway.js.map +1 -1
  15. package/dist/cli/loop-executor.d.ts +22 -0
  16. package/dist/cli/loop-executor.d.ts.map +1 -1
  17. package/dist/cli/loop-executor.js +56 -12
  18. package/dist/cli/loop-executor.js.map +1 -1
  19. package/dist/cli/stats.d.ts +62 -4
  20. package/dist/cli/stats.d.ts.map +1 -1
  21. package/dist/cli/stats.js +282 -5
  22. package/dist/cli/stats.js.map +1 -1
  23. package/dist/cli/ui/index.d.ts +2 -2
  24. package/dist/cli/ui/index.d.ts.map +1 -1
  25. package/dist/cli/ui/index.js +1 -1
  26. package/dist/cli/ui/index.js.map +1 -1
  27. package/dist/cli/ui/presenter.d.ts +43 -0
  28. package/dist/cli/ui/presenter.d.ts.map +1 -1
  29. package/dist/cli/ui/presenter.js +88 -1
  30. package/dist/cli/ui/presenter.js.map +1 -1
  31. package/dist/config/manager.d.ts +29 -1
  32. package/dist/config/manager.d.ts.map +1 -1
  33. package/dist/config/manager.js +178 -143
  34. package/dist/config/manager.js.map +1 -1
  35. package/dist/config/paths.d.ts +48 -1
  36. package/dist/config/paths.d.ts.map +1 -1
  37. package/dist/config/paths.js +59 -9
  38. package/dist/config/paths.js.map +1 -1
  39. package/dist/config/service-catalog.js +1 -1
  40. package/dist/config/service-catalog.js.map +1 -1
  41. package/dist/config/service-probe.js +1 -1
  42. package/dist/config/service-probe.js.map +1 -1
  43. package/dist/config/types.d.ts +22 -0
  44. package/dist/config/types.d.ts.map +1 -1
  45. package/dist/gateway/adapters.js +8 -8
  46. package/dist/gateway/adapters.js.map +1 -1
  47. package/dist/gateway/registry.js +1 -1
  48. package/dist/gateway/registry.js.map +1 -1
  49. package/dist/learning/auto-router.d.ts +30 -4
  50. package/dist/learning/auto-router.d.ts.map +1 -1
  51. package/dist/learning/auto-router.js +54 -38
  52. package/dist/learning/auto-router.js.map +1 -1
  53. package/dist/learning/cost-classification.d.ts +188 -0
  54. package/dist/learning/cost-classification.d.ts.map +1 -0
  55. package/dist/learning/cost-classification.js +294 -0
  56. package/dist/learning/cost-classification.js.map +1 -0
  57. package/dist/learning/cost-ledger-maintenance.d.ts +122 -0
  58. package/dist/learning/cost-ledger-maintenance.d.ts.map +1 -0
  59. package/dist/learning/cost-ledger-maintenance.js +289 -0
  60. package/dist/learning/cost-ledger-maintenance.js.map +1 -0
  61. package/dist/learning/cost-reconcile.d.ts +160 -0
  62. package/dist/learning/cost-reconcile.d.ts.map +1 -0
  63. package/dist/learning/cost-reconcile.js +238 -0
  64. package/dist/learning/cost-reconcile.js.map +1 -0
  65. package/dist/learning/cost-tracker.d.ts +134 -13
  66. package/dist/learning/cost-tracker.d.ts.map +1 -1
  67. package/dist/learning/cost-tracker.js +190 -68
  68. package/dist/learning/cost-tracker.js.map +1 -1
  69. package/dist/learning/model-pricing.d.ts +240 -0
  70. package/dist/learning/model-pricing.d.ts.map +1 -0
  71. package/dist/learning/model-pricing.js +309 -0
  72. package/dist/learning/model-pricing.js.map +1 -0
  73. package/dist/learning/model-selection.d.ts +15 -0
  74. package/dist/learning/model-selection.d.ts.map +1 -1
  75. package/dist/learning/model-selection.js +22 -2
  76. package/dist/learning/model-selection.js.map +1 -1
  77. package/dist/learning/model-warmup.d.ts.map +1 -1
  78. package/dist/learning/model-warmup.js +4 -1
  79. package/dist/learning/model-warmup.js.map +1 -1
  80. package/dist/learning/session-store.d.ts +1 -5
  81. package/dist/learning/session-store.d.ts.map +1 -1
  82. package/dist/learning/session-store.js +10 -1
  83. package/dist/learning/session-store.js.map +1 -1
  84. package/dist/learning/step-checkpoint.d.ts +32 -3
  85. package/dist/learning/step-checkpoint.d.ts.map +1 -1
  86. package/dist/learning/step-checkpoint.js +33 -4
  87. package/dist/learning/step-checkpoint.js.map +1 -1
  88. package/dist/mcp/settings.d.ts +15 -3
  89. package/dist/mcp/settings.d.ts.map +1 -1
  90. package/dist/mcp/settings.js +30 -15
  91. package/dist/mcp/settings.js.map +1 -1
  92. package/dist/parity/drivers.d.ts.map +1 -1
  93. package/dist/parity/drivers.js +31 -5
  94. package/dist/parity/drivers.js.map +1 -1
  95. package/dist/tools/child-agent-runtime.d.ts.map +1 -1
  96. package/dist/tools/child-agent-runtime.js +13 -7
  97. package/dist/tools/child-agent-runtime.js.map +1 -1
  98. package/dist/tools/followup-utils.d.ts +36 -0
  99. package/dist/tools/followup-utils.d.ts.map +1 -1
  100. package/dist/tools/followup-utils.js +66 -0
  101. package/dist/tools/followup-utils.js.map +1 -1
  102. package/dist/tools/modality/browser.js +2 -2
  103. package/dist/tools/modality/browser.js.map +1 -1
  104. package/dist/tools/modality/image-gen.d.ts +1 -1
  105. package/dist/tools/modality/image-gen.js +1 -1
  106. package/dist/tools/modality/image-providers.js +1 -1
  107. package/dist/tools/modality/image-providers.js.map +1 -1
  108. package/dist/tools/modality/vision.d.ts +1 -1
  109. package/dist/tools/modality/vision.js +1 -1
  110. package/dist/tools/modality/voice.js +2 -2
  111. package/dist/tools/modality/voice.js.map +1 -1
  112. package/dist/tools/neutts-synth.d.ts +3 -3
  113. package/dist/tools/neutts-synth.js +3 -3
  114. package/dist/tools/neutts-synth.js.map +1 -1
  115. package/dist/tools/process-liveness.d.ts +50 -0
  116. package/dist/tools/process-liveness.d.ts.map +1 -1
  117. package/dist/tools/process-liveness.js +82 -9
  118. package/dist/tools/process-liveness.js.map +1 -1
  119. package/dist/tools/registry.d.ts +1 -1
  120. package/dist/tools/registry.d.ts.map +1 -1
  121. package/dist/tools/registry.js +27 -4
  122. package/dist/tools/registry.js.map +1 -1
  123. package/dist/tools/run-terminal.d.ts.map +1 -1
  124. package/dist/tools/run-terminal.js +18 -1
  125. package/dist/tools/run-terminal.js.map +1 -1
  126. package/dist/tools/tool-loop.d.ts.map +1 -1
  127. package/dist/tools/tool-loop.js +5 -3
  128. package/dist/tools/tool-loop.js.map +1 -1
  129. package/dist/tools/web-research.d.ts +1 -1
  130. package/dist/tools/web-research.js +3 -3
  131. package/dist/tools/web-research.js.map +1 -1
  132. package/dist/web-dashboard/chat-console.d.ts +56 -0
  133. package/dist/web-dashboard/chat-console.d.ts.map +1 -1
  134. package/dist/web-dashboard/chat-console.js +57 -1
  135. package/dist/web-dashboard/chat-console.js.map +1 -1
  136. package/dist/web-dashboard/server.d.ts.map +1 -1
  137. package/dist/web-dashboard/server.js +122 -2
  138. package/dist/web-dashboard/server.js.map +1 -1
  139. package/dist/web-dashboard/src/types.d.ts +63 -0
  140. package/dist/web-dashboard/src/types.d.ts.map +1 -1
  141. package/dist/web-dashboard/task-runner.d.ts +17 -1
  142. package/dist/web-dashboard/task-runner.d.ts.map +1 -1
  143. package/dist/web-dashboard/task-runner.js +40 -4
  144. package/dist/web-dashboard/task-runner.js.map +1 -1
  145. package/package.json +1 -1
  146. package/src/web-dashboard/public/assets/index-DeSsNU94.css +1 -0
  147. package/src/web-dashboard/public/assets/index-Do_O67Kv.js +236 -0
  148. package/src/web-dashboard/public/assets/index-Do_O67Kv.js.map +1 -0
  149. package/src/web-dashboard/public/index.html +2 -2
  150. package/src/web-dashboard/public/assets/index-DycGBWwy.js +0 -236
  151. package/src/web-dashboard/public/assets/index-DycGBWwy.js.map +0 -1
  152. package/src/web-dashboard/public/assets/index-aO3aG7ex.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,WAAW,EAAc,MAAM,eAAe,CAAC;AAkDxD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAU7E;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,MAAM,IAAI,OAAO;IAqBjB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,iBAAiB;IAQzB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAiG1B,OAAO,CAAC,aAAa;IAkErB,OAAO,CAAC,QAAQ;YAsBF,QAAQ;IA8btB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,aAAa;IA2CrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,oBAAoB;IAuE5B;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAgDtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA0E3B,sFAAsF;IACtF,OAAO,CAAC,aAAa;IA2CrB,wEAAwE;IACxE,OAAO,CAAC,YAAY;IAsBpB,0EAA0E;IAC1E,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,aAAa;YAaP,WAAW;YAsEX,cAAc;IAgC5B;;;;;OAKG;IACH;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,QAAQ;IAsBhB,OAAO,CAAC,UAAU;IAkBlB,uFAAuF;IACvF,OAAO,CAAC,eAAe;IAiBvB;;;;;;;;OAQG;IACH,OAAO,CAAC,uBAAuB;IAwB/B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,gBAAgB;YASV,qBAAqB;IAgBnC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,YAAY;YAkBN,UAAU;YAwEV,YAAY;CAkC3B"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,WAAW,EAAc,MAAM,eAAe,CAAC;AAmDxD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAU7E;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C,MAAM,IAAI,OAAO;IAqBjB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,iBAAiB;IAQzB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAiG1B,OAAO,CAAC,aAAa;IAkErB,OAAO,CAAC,QAAQ;YAsBF,QAAQ;IA4ctB;;;;;;;;OAQG;IACH,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,aAAa;IA2CrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,oBAAoB;IAuE5B;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAgDtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA0E3B,sFAAsF;IACtF,OAAO,CAAC,aAAa;IA2CrB,wEAAwE;IACxE,OAAO,CAAC,YAAY;IAsBpB,0EAA0E;IAC1E,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,aAAa;YAaP,WAAW;YAsEX,cAAc;IAgC5B;;;;;OAKG;IACH;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,QAAQ;IAsBhB,OAAO,CAAC,UAAU;IAkBlB,uFAAuF;IACvF,OAAO,CAAC,eAAe;IAiBvB;;;;;;;;OAQG;IACH,OAAO,CAAC,uBAAuB;IAwB/B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,gBAAgB;YASV,qBAAqB;IAgBnC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,oBAAoB;IAgC5B,OAAO,CAAC,YAAY;YAkBN,UAAU;YAwEV,YAAY;CAkC3B"}
@@ -5,6 +5,7 @@ import { resolve } from 'node:path';
5
5
  import { BaseCommand, getCliName } from './commands.js';
6
6
  import { getPluginRegistry } from '../plugins/registry.js';
7
7
  import { logger } from '../utils/logger.js';
8
+ import { BILLING_TIERS } from '../learning/model-pricing.js';
8
9
  import { clearModelListCache } from '../inference/model-validator.js';
9
10
  import { validateModelIdForProvider } from '../inference/model-id-validation.js';
10
11
  import { CATALOG_PROVIDER_IDS, getCatalogProvider, catalogEnvVar, isCatalogKeyless } from '../inference/provider-catalog.js';
@@ -292,7 +293,7 @@ export class ConfigCommand extends BaseCommand {
292
293
  this.configManager.save({ defaultProvider: value });
293
294
  }
294
295
  else {
295
- logger.error(`Unknown config key: ${key}. Expected formats:\n defaultProvider\n providers.<name>.<field>\n providers.<name>.apiKeys "k1,k2" (M2.3 multi-account rotation)\n pricing.<provider>.inputPer1K\n pricing.<provider>.outputPer1K\n history.retentionDays\n history.semanticSearch\n fallback.enabled\n fallback.providers\n routing.bandit\n routing.allowPaid\n routing.quota.<provider>.requestsPerWindow\n routing.governance.allowProviders "groq,local" (M2.4 admin policy)\n routing.contextWindows.<model> 16384 (M2.5 context preflight)\n routing.nuviraSidecar.enabled (P5 sidecar flag, default false)\n routing.compression.enabled (M4.4 conservative compression, default false)`);
296
+ logger.error(`Unknown config key: ${key}. Expected formats:\n defaultProvider\n providers.<name>.<field>\n providers.<name>.apiKeys "k1,k2" (M2.3 multi-account rotation)\n providers.<name>.billingTier paid|free|subscription|unknown (what this account is billed)\n pricing.<provider>.inputPer1K\n pricing.<provider>.outputPer1K\n history.retentionDays\n history.semanticSearch\n fallback.enabled\n fallback.providers\n routing.bandit\n routing.allowPaid\n routing.quota.<provider>.requestsPerWindow\n routing.governance.allowProviders "groq,local" (M2.4 admin policy)\n routing.contextWindows.<model> 16384 (M2.5 context preflight)\n routing.nuviraSidecar.enabled (P5 sidecar flag, default false)\n routing.compression.enabled (M4.4 conservative compression, default false)`);
296
297
  return;
297
298
  }
298
299
  }
@@ -332,7 +333,20 @@ export class ConfigCommand extends BaseCommand {
332
333
  const field = parts[2];
333
334
  const providerConfig = config.providers[providerName] || {};
334
335
  let typedValue = value;
335
- if (field === 'apiKeys') {
336
+ if (field === 'billingTier') {
337
+ // The ACCOUNT-billing fact the cost ledger classifies with. Validated
338
+ // here so a typo cannot be written and then read back as `unknown` while
339
+ // the user believes they declared their provider β€” the ledger would go
340
+ // on showing "list-priced, unverified" with no hint why.
341
+ const tier = value.trim().toLowerCase();
342
+ if (!BILLING_TIERS.includes(tier)) {
343
+ logger.error(`Invalid billingTier "${value}". Valid values: ${BILLING_TIERS.join(' | ')}.`);
344
+ logger.info(' Example: nuvira config set providers.groq.billingTier free');
345
+ return;
346
+ }
347
+ typedValue = tier;
348
+ }
349
+ else if (field === 'apiKeys') {
336
350
  // M2.3 multi-account rotation: comma-separated list of ADDITIONAL keys
337
351
  // for the same provider (the primary stays in `apiKey`). E.g.
338
352
  // nuvira config set providers.groq.apiKeys "k1,k2,k3"
@@ -752,7 +766,7 @@ export class ConfigCommand extends BaseCommand {
752
766
  this.configManager.save({ dashboard: { cwd: undefined } });
753
767
  }
754
768
  else {
755
- logger.error(`Invalid config key format: ${key}. Expected formats:\n defaultProvider\n providers.<name>.<field>\n providers.<name>.apiKeys "k1,k2"\n pricing.<provider>.inputPer1K\n pricing.<provider>.outputPer1K\n history.retentionDays\n history.semanticSearch\n fallback.enabled\n fallback.providers\n modality.image.provider\n modality.image.model\n dashboard.cwd "<dir>" (working dir for unattached dashboard chat turns)\n routing.bandit\n routing.allowPaid\n routing.quota.<provider>.requestsPerWindow\n routing.governance.allowProviders "groq,local"\n routing.nuviraSidecar.enabled\n routing.compression.enabled (M4.4, DEFAULT FALSE)\n routing.gatewayTelemetry.enabled (M7.4, DEFAULT FALSE)`);
769
+ logger.error(`Invalid config key format: ${key}. Expected formats:\n defaultProvider\n providers.<name>.<field>\n providers.<name>.apiKeys "k1,k2"\n providers.<name>.billingTier paid|free|subscription|unknown\n pricing.<provider>.inputPer1K\n pricing.<provider>.outputPer1K\n history.retentionDays\n history.semanticSearch\n fallback.enabled\n fallback.providers\n modality.image.provider\n modality.image.model\n dashboard.cwd "<dir>" (working dir for unattached dashboard chat turns)\n routing.bandit\n routing.allowPaid\n routing.quota.<provider>.requestsPerWindow\n routing.governance.allowProviders "groq,local"\n routing.nuviraSidecar.enabled\n routing.compression.enabled (M4.4, DEFAULT FALSE)\n routing.gatewayTelemetry.enabled (M7.4, DEFAULT FALSE)`);
756
770
  return;
757
771
  }
758
772
  logger.success(`Set ${key} = ${value}`);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/cli/execute.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AA+CrF;;;;;;;;;;;GAWG;AACH,KAAK,mBAAmB,GAAG,WAAW,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAwFrE,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAkGD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GACnC;IACD,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,eAAe,EAAE,OAAO,CAAC;CAC1B,CAMA;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GACnC,OAAO,CAIT;AAUD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAGtD;AAID;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG7B;IAEF,MAAM,IAAI,OAAO;YAwGH,OAAO;IA+IrB;;OAEG;YACW,qBAAqB;IA4OnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAsDhB;;OAEG;YACW,gBAAgB;IA0G9B;;OAEG;YACW,UAAU;IA0CxB;;OAEG;YACW,YAAY;IAoE1B;;OAEG;YACW,aAAa;IA8D3B;;;;;;;;;;OAUG;YACW,mBAAmB;IA0EjC;;;;;;OAMG;YACW,4BAA4B;IAsE1C;;;;;;OAMG;YACW,2BAA2B;IA0MzC;;;OAGG;IACH,OAAO,CAAC,cAAc;IA8HtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiC3B;;;OAGG;IACH;;;;;OAKG;YACW,0BAA0B;IAgHxC;;;;;;OAMG;YACW,iBAAiB;YAqIjB,aAAa;IAqV3B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB;IAgC/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;YA4BZ,eAAe;YA2Bf,WAAW;CAS1B;AAqCD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CA+C1E"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/cli/execute.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAkDrF;;;;;;;;;;;GAWG;AACH,KAAK,mBAAmB,GAAG,WAAW,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAwFrE,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AA0GD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GACnC;IACD,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,eAAe,EAAE,OAAO,CAAC;CAC1B,CAMA;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GACnC,OAAO,CAIT;AAUD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAGtD;AAID;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG7B;IAEF,MAAM,IAAI,OAAO;YAwGH,OAAO;IA+IrB;;OAEG;YACW,qBAAqB;IA4OnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAsDhB;;OAEG;YACW,gBAAgB;IA0G9B;;OAEG;YACW,UAAU;IA0CxB;;OAEG;YACW,YAAY;IAoE1B;;OAEG;YACW,aAAa;IA8D3B;;;;;;;;;;OAUG;YACW,mBAAmB;IA0EjC;;;;;;OAMG;YACW,4BAA4B;IA6E1C;;;;;;OAMG;YACW,2BAA2B;IA0MzC;;;OAGG;IACH,OAAO,CAAC,cAAc;IA8HtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiC3B;;;OAGG;IACH;;;;;OAKG;YACW,0BAA0B;IA+IxC;;;;;;OAMG;YACW,iBAAiB;YA+IjB,aAAa;IAqV3B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB;IAgC/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;YA4BZ,eAAe;YA2Bf,WAAW;CAS1B;AAqCD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CA+C1E"}
@@ -45,7 +45,7 @@ import { getTrajectoryStore } from '../memory/trajectory-store.js';
45
45
  import { listCheckpoints } from '../agents/checkpoint-store.js';
46
46
  import { logger, setSilent } from '../utils/logger.js';
47
47
  import { PipelineBoard, PipelineEventStream } from './pipeline-board.js';
48
- import { createCardSink, presentAnswer } from './ui/index.js';
48
+ import { createRunStream } from './ui/index.js';
49
49
  import { formatBatchReport, getUnattendedJob, jobPercent, UnattendedRunner, } from '../learning/unattended-job.js';
50
50
  import { measureUnattendedProgress, scheduleFromPendingWork, } from '../learning/unattended-progress.js';
51
51
  import { costSince } from '../learning/cost-tracker.js';
@@ -891,26 +891,31 @@ export class ExecuteCommand extends BaseCommand {
891
891
  */
892
892
  async generatePostExecutionActions(result, activeProvider, activeModel, _options) {
893
893
  const actions = [];
894
- if (result.success && result.orchestrationResult) {
894
+ if (result.success) {
895
895
  // ── Success: Show follow-up suggestions ─────────────────────────
896
- const followups = await this.generateFollowUpSuggestions(result.orchestrationResult, activeProvider, activeModel);
897
- if (followups.length > 0) {
898
- // Show top 3 follow-up suggestions
899
- const shown = followups.slice(0, 3);
900
- for (const f of shown) {
901
- const label = `πŸ’‘ ${f.label}`;
902
- actions.push({ name: label, value: `followup:${f.goal}` });
896
+ //
897
+ // E3b β€” the RUN's own suggestions come first, and they are the ones to
898
+ // prefer: the model already offered them for THIS answer, so spending a
899
+ // second model call to invent different ones would be both slower and less
900
+ // relevant. The generator stays for the pipeline arm, which reports no
901
+ // followups of its own.
902
+ const suggested = result.followups && result.followups.length > 0
903
+ ? result.followups.slice(0, 3).map((f) => ({
904
+ label: f.label || f.prompt,
905
+ goal: f.prompt,
906
+ }))
907
+ : result.orchestrationResult
908
+ ? await this.generateFollowUpSuggestions(result.orchestrationResult, activeProvider, activeModel)
909
+ : [];
910
+ if (suggested.length > 0) {
911
+ // Show top 3 follow-up suggestions β€” picking one runs it as the next goal.
912
+ for (const f of suggested) {
913
+ actions.push({ name: `πŸ’‘ ${f.label}`, value: `followup:${f.goal}` });
903
914
  }
904
915
  actions.push({ name: '───────────', value: 'separator' });
905
916
  }
906
917
  actions.push({ name: 'πŸ’¬ Enter another goal', value: 'continue' });
907
918
  }
908
- else if (result.success) {
909
- // P0.5 β€” direct-answer success (a question was answered; no pipeline
910
- // ran, so there are no pipeline followups to generate). Just the
911
- // standard next-step actions.
912
- actions.push({ name: 'πŸ’¬ Enter another goal', value: 'continue' });
913
- }
914
919
  else {
915
920
  // ── Failure: Show analysis + recovery options ───────────────────
916
921
  if (result.orchestrationResult) {
@@ -1307,6 +1312,16 @@ export class ExecuteCommand extends BaseCommand {
1307
1312
  * failing?" in execute mode spawned a python program to "answer" it.
1308
1313
  */
1309
1314
  async answerConversationDirectly(goal, provider, model, options) {
1315
+ // P7 β€” the LIVE view for a direct answer: mount first, stream the answer as
1316
+ // it is written, archive a card per tool call, then unmount and print the
1317
+ // authoritative text. `start()` before the call is what makes the wait
1318
+ // visible (`thinking…`) instead of looking like a hang β€” measured: a plain
1319
+ // question on a local model sat silent for ten seconds before its first
1320
+ // token. Inert off a real terminal, and forced inert under `--json-events`
1321
+ // (stdout is a machine-readable stream there, so a mounted frame would be a
1322
+ // corrupt event).
1323
+ const live = createRunStream({ header: `nuvira Β· ${provider ?? 'auto'}${model ? ` / ${model}` : ''}`, headerColor: 'assistant' }, options.jsonEvents ? { tty: false } : {});
1324
+ live.start();
1310
1325
  try {
1311
1326
  // Lazy import breaks the static execute↔chat cycle (chat.ts imports
1312
1327
  // printOrchestrationResult from execute.ts); the chat engine IS the
@@ -1325,12 +1340,19 @@ export class ExecuteCommand extends BaseCommand {
1325
1340
  const answer = await new ChatCommand().answerOnce(goal, {
1326
1341
  ...(provider ? { provider } : {}),
1327
1342
  ...(model ? { model } : {}),
1343
+ // The live view first (it wants `started` too β€” that is when the running
1344
+ // call is shown), then this arm's own bookkeeping, which counts a call
1345
+ // once it is DONE.
1328
1346
  onToolCall: (phase, info) => {
1347
+ live.overrides.onToolCall?.(phase, info);
1329
1348
  if (phase !== 'called')
1330
1349
  return;
1331
1350
  toolCalls.push(info.tool);
1332
1351
  toolOutcomes.push({ tool: info.tool, ...(typeof info.ok === 'boolean' ? { ok: info.ok } : {}) });
1333
1352
  },
1353
+ // Live token stream for the same preview the chat surfaces show.
1354
+ ...(live.overrides.onToken ? { onToken: live.overrides.onToken } : {}),
1355
+ ...(live.overrides.onGitDiff ? { onGitDiff: live.overrides.onGitDiff } : {}),
1334
1356
  onFinding: (finding) => {
1335
1357
  findings.push(finding);
1336
1358
  },
@@ -1381,7 +1403,9 @@ export class ExecuteCommand extends BaseCommand {
1381
1403
  }
1382
1404
  else if (content) {
1383
1405
  console.log('');
1384
- presentAnswer(content);
1406
+ // The live frame is unmounted here (it is a preview, and the engine's
1407
+ // sanitized text is authoritative) β€” never printing twice.
1408
+ live.commit(content);
1385
1409
  // E β€” the honest plan β†’ track β†’ verify close-out. Rendered only when the
1386
1410
  // report has something to say (a plan, changes, or a non-trivial
1387
1411
  // verdict), so an ordinary answer stays clean.
@@ -1399,6 +1423,10 @@ export class ExecuteCommand extends BaseCommand {
1399
1423
  return {
1400
1424
  success: !generationFailed,
1401
1425
  ...(typeof answer.content === 'string' ? { content: answer.content } : {}),
1426
+ // E3b β€” the same suggestions the chat surfaces render as chips, so the
1427
+ // menu below can offer them. The engine already recovered them from the
1428
+ // answer's own list when the model did not call the tool.
1429
+ ...(answer.followups && answer.followups.length > 0 ? { followups: answer.followups } : {}),
1402
1430
  ...(answer.provider ? { provider: answer.provider } : {}),
1403
1431
  ...(answer.model ? { model: answer.model } : {}),
1404
1432
  ...(answer.transport ? { transport: answer.transport } : {}),
@@ -1412,9 +1440,15 @@ export class ExecuteCommand extends BaseCommand {
1412
1440
  };
1413
1441
  }
1414
1442
  catch (err) {
1443
+ // Unmount BEFORE printing: Ink owns the frame, so an error written while it
1444
+ // is mounted collides with the next repaint.
1445
+ live.stop();
1415
1446
  logger.error(err instanceof Error ? err.message : String(err));
1416
1447
  return { success: false };
1417
1448
  }
1449
+ finally {
1450
+ live.stop();
1451
+ }
1418
1452
  }
1419
1453
  /**
1420
1454
  * Run the goal through the LOOP engine (assessment Addendum v4 Phase 1.1):
@@ -1437,13 +1471,18 @@ export class ExecuteCommand extends BaseCommand {
1437
1471
  }
1438
1472
  try {
1439
1473
  // P8 β€” render tool / shell / git-diff events as cards while the loop runs.
1440
- // The sink is inert off a real terminal, so a piped or CI run keeps its
1441
- // exact bytes (see `createCardSink`).
1442
- const cards = createCardSink();
1474
+ // P7 β€” the LIVE view for the loop arm: the same one the direct arm and
1475
+ // the chat surfaces use. It replaces the card-only sink this arm had, so
1476
+ // the run now shows a `thinking…` frame, the streamed answer, the step it
1477
+ // is on, and a card per completed tool call β€” then commits the
1478
+ // authoritative text once. Inert off a real terminal (a piped or CI run
1479
+ // keeps its exact bytes) and forced inert under `--json-events`.
1480
+ const live = createRunStream({ header: 'nuvira Β· execute', headerColor: 'assistant' }, options.jsonEvents ? { tty: false } : {});
1481
+ live.start();
1443
1482
  const result = await runLoopExecutor(goal, this.configManager, {
1444
1483
  provider,
1445
1484
  model,
1446
- ...cards.overrides,
1485
+ ...live.overrides,
1447
1486
  // WS5 (#27) β€” the command's own flags. `--resume` means the SAME run
1448
1487
  // here as it does on the pipeline arm: the last run of this ask in this
1449
1488
  // directory (both ids come from `checkpointIdFor`), so one flag resumes
@@ -1470,7 +1509,7 @@ export class ExecuteCommand extends BaseCommand {
1470
1509
  // it, "the gate applied the edit autonomously" and "the model passed
1471
1510
  // confirm:true" were indistinguishable from the console.
1472
1511
  verbose: options.verbose,
1473
- }).finally(() => cards.stop());
1512
+ }).finally(() => live.stop());
1474
1513
  // The loop engine's answer is rendered by THIS command while the gateway
1475
1514
  // and dashboard console both sanitize it before showing it. Without this
1476
1515
  // the execute CLI printed a `**suggest_followups**` caption plus its raw
@@ -1518,7 +1557,7 @@ export class ExecuteCommand extends BaseCommand {
1518
1557
  else {
1519
1558
  console.log('');
1520
1559
  if (content)
1521
- presentAnswer(content);
1560
+ live.commit(content);
1522
1561
  if (!success) {
1523
1562
  logger.error(content || 'The loop engine could not complete this goal.');
1524
1563
  }
@@ -1534,6 +1573,8 @@ export class ExecuteCommand extends BaseCommand {
1534
1573
  return {
1535
1574
  success,
1536
1575
  ...(result.content ? { content: result.content } : {}),
1576
+ // E3b β€” the loop's own suggest_followups (or its recovered prose list).
1577
+ ...(result.followups && result.followups.length > 0 ? { followups: result.followups } : {}),
1537
1578
  ...(result.provider ? { provider: result.provider } : {}),
1538
1579
  ...(result.model ? { model: result.model } : {}),
1539
1580
  ...(result.transport ? { transport: result.transport } : {}),