@songsid/agend 2.3.3-beta.1 → 2.3.3-beta.3

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 (84) hide show
  1. package/dist/authority/authority-state.js +1 -1
  2. package/dist/authority/authority-state.js.map +1 -1
  3. package/dist/authority/web-authority.d.ts +9 -4
  4. package/dist/authority/web-authority.js +10 -5
  5. package/dist/authority/web-authority.js.map +1 -1
  6. package/dist/backend/claude-code.js +3 -25
  7. package/dist/backend/claude-code.js.map +1 -1
  8. package/dist/backend/claude-transcript-errors.d.ts +18 -0
  9. package/dist/backend/claude-transcript-errors.js +19 -0
  10. package/dist/backend/claude-transcript-errors.js.map +1 -0
  11. package/dist/backend/codex-session-lookup.d.ts +16 -3
  12. package/dist/backend/codex-session-lookup.js +45 -11
  13. package/dist/backend/codex-session-lookup.js.map +1 -1
  14. package/dist/classic-channel-manager.d.ts +4 -1
  15. package/dist/classic-channel-manager.js +21 -7
  16. package/dist/classic-channel-manager.js.map +1 -1
  17. package/dist/cli.js +18 -3
  18. package/dist/cli.js.map +1 -1
  19. package/dist/config-history.d.ts +50 -0
  20. package/dist/config-history.js +263 -0
  21. package/dist/config-history.js.map +1 -0
  22. package/dist/config-validator.js +1 -4
  23. package/dist/config-validator.js.map +1 -1
  24. package/dist/config.d.ts +3 -0
  25. package/dist/config.js +11 -4
  26. package/dist/config.js.map +1 -1
  27. package/dist/daemon.d.ts +37 -0
  28. package/dist/daemon.js +156 -4
  29. package/dist/daemon.js.map +1 -1
  30. package/dist/daily-summary.d.ts +8 -1
  31. package/dist/daily-summary.js +8 -5
  32. package/dist/daily-summary.js.map +1 -1
  33. package/dist/delivery-outbox.d.ts +4 -0
  34. package/dist/delivery-outbox.js +12 -2
  35. package/dist/delivery-outbox.js.map +1 -1
  36. package/dist/fleet-level-config.js +1 -1
  37. package/dist/fleet-level-config.js.map +1 -1
  38. package/dist/fleet-manager.d.ts +8 -10
  39. package/dist/fleet-manager.js +57 -83
  40. package/dist/fleet-manager.js.map +1 -1
  41. package/dist/fleet-process-handlers.d.ts +5 -0
  42. package/dist/fleet-process-handlers.js +21 -0
  43. package/dist/fleet-process-handlers.js.map +1 -1
  44. package/dist/fleet-service-owner.d.ts +11 -0
  45. package/dist/fleet-service-owner.js +3 -0
  46. package/dist/fleet-service-owner.js.map +1 -0
  47. package/dist/general-knowledge/skills/web-dashboard/SKILL.canvas-worker-off.md +3 -4
  48. package/dist/general-knowledge/skills/web-dashboard/SKILL.md +3 -4
  49. package/dist/instance-lifecycle.js +2 -0
  50. package/dist/instance-lifecycle.js.map +1 -1
  51. package/dist/locale.js +24 -36
  52. package/dist/locale.js.map +1 -1
  53. package/dist/needs-you-hub.d.ts +1 -0
  54. package/dist/needs-you-hub.js +6 -3
  55. package/dist/needs-you-hub.js.map +1 -1
  56. package/dist/needs-you-live.d.ts +3 -1
  57. package/dist/needs-you-live.js +24 -2
  58. package/dist/needs-you-live.js.map +1 -1
  59. package/dist/needs-you.d.ts +13 -2
  60. package/dist/needs-you.js +11 -1
  61. package/dist/needs-you.js.map +1 -1
  62. package/dist/scheduler/task-board.d.ts +0 -13
  63. package/dist/scheduler/task-board.js +0 -14
  64. package/dist/scheduler/task-board.js.map +1 -1
  65. package/dist/setup-wizard.d.ts +3 -0
  66. package/dist/setup-wizard.js +4 -2
  67. package/dist/setup-wizard.js.map +1 -1
  68. package/dist/transcript-monitor.d.ts +7 -0
  69. package/dist/transcript-monitor.js +48 -3
  70. package/dist/transcript-monitor.js.map +1 -1
  71. package/dist/types.d.ts +6 -5
  72. package/dist/ui/panel-needs.js +11 -9
  73. package/dist/ui/settings-strings.js +2 -2
  74. package/dist/ui/settings-web-authority.js +4 -3
  75. package/dist/ui/shared/app-i18n.js +2 -2
  76. package/dist/ui/shared/app-needs.js +5 -1
  77. package/dist/web-api.js +2 -0
  78. package/dist/web-api.js.map +1 -1
  79. package/launcher/agend-install.cjs +7 -1
  80. package/launcher/fleet-service-owner.cjs +138 -0
  81. package/package.json +1 -1
  82. package/dist/task-board-summary.d.ts +0 -101
  83. package/dist/task-board-summary.js +0 -177
  84. package/dist/task-board-summary.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/daemon.d.ts CHANGED
@@ -534,6 +534,8 @@ export declare class Daemon extends EventEmitter {
534
534
  private bootSkippedResume;
535
535
  private recoveryCrashLoopFresh;
536
536
  private recoveryFreshChoice;
537
+ /** The current boot found a crash-loop marker and is attempting resume rather than going fresh immediately. */
538
+ private bootCrashLoopResume;
537
539
  private startupAborted;
538
540
  /** First time the current on-screen blocking dialog was seen (0 = none); drives the parked report. */
539
541
  private dialogParkedSince;
@@ -929,6 +931,41 @@ export declare class Daemon extends EventEmitter {
929
931
  private lastErrorCount;
930
932
  private seededErrorCountBaselines;
931
933
  private lastDetectedErrorType;
934
+ /**
935
+ * #2822: Claude's per-model usage limit (`You've reached your <model> limit.`), known only from Claude's own record of
936
+ * the failed call in its transcript (`isApiErrorMessage`, a 429) — never from pane text, which an agent can print. It
937
+ * names no reset time. While it holds it is told once, and the reply guard stays quiet while the transcript's newest
938
+ * event is that error; any later assistant output (of any turn, from a person or not) ends it. The order is Claude's
939
+ * own: a 429 is recorded within a second, often before AgEnD has armed the turn, so no AgEnD-side clock is used.
940
+ */
941
+ private usageLimitHold;
942
+ /** Transcript events in Claude's order (prompts, output, every API error): the newest, and the latest limit error. */
943
+ private transcriptEventSeq;
944
+ private usageLimitErrorSeq;
945
+ static readonly MODEL_USAGE_LIMIT: RegExp;
946
+ /** #2822: the usage-limit hold, while it lasts — Needs you lists it. */
947
+ usageHold(): {
948
+ model: string;
949
+ since: number;
950
+ } | null;
951
+ /** #2834: Claude's account is out of API credits — its own record; the same pause as the pane pattern it replaces. */
952
+ static readonly CREDIT_BALANCE_LOW: RegExp;
953
+ /** #2834 (#816): Claude's usage-limit auto-continue note, as it records it (`system` / `informational`). */
954
+ static readonly USAGE_LIMIT_PAUSE: RegExp;
955
+ /** #2834 (#816): Claude paused itself until its usage window opens — the same notice the screen pattern gave. */
956
+ private noteClaudeInformational;
957
+ /** #2822: Claude recorded a failed API call. */
958
+ private noteClaudeApiError;
959
+ /** #2822: Claude produced output (text or a tool call): the model answers again, so a hold ends. */
960
+ private noteClaudeOutput;
961
+ /** #2822: a prompt reached Claude (recorded in its transcript). */
962
+ private noteClaudePrompt;
963
+ /**
964
+ * #2822: the turn ended on the limit error — the transcript's newest event of any kind. A prompt after it (a new
965
+ * message the error is older than), output after it (the model answered) or another API error after it (a 500, a
966
+ * different 429) means the limit error is not this turn's end.
967
+ */
968
+ private personTurnEndedOnUsageLimit;
932
969
  private static errorPatternKey;
933
970
  /** Read the occurrence baseline so a lifecycle-owned restart can carry it forward. */
934
971
  /** #2648: kiro only — what a model error on the current launch should do (see kiro-retired-model.ts). */
package/dist/daemon.js CHANGED
@@ -53,6 +53,7 @@ import { formatHumanInboundMessage, prepareDeliveryWire, steerInboundEnvelope, B
53
53
  import { formatCrossInstanceInboundMessage, renderCrossInstanceHandoffMetadata, } from "./cross-instance-envelope.js";
54
54
  import { agendMessageInInput, bottomRowIsReady, inputAreaText, inputShowsPastedText, pastedTextSignature, pasteLeftInInput, strandedAgendMessageInInput } from "./pane-input-residue.js";
55
55
  import { TurnReplyGuard, formatReplyDropDetection, turnExpectsPersonReply } from "./turn-reply-guard.js";
56
+ import { CLAUDE_CREDIT_BALANCE_LOW, CLAUDE_MODEL_USAGE_LIMIT, CLAUDE_USAGE_LIMIT_PAUSE } from "./backend/claude-transcript-errors.js";
56
57
  import { t } from "./locale.js";
57
58
  import { MuseUsageRelay, clearMuseUsageSnapshot } from "./muse-usage-relay.js";
58
59
  import { deliveryContentDigest } from "./delivery-outbox.js";
@@ -1263,6 +1264,8 @@ export class Daemon extends EventEmitter {
1263
1264
  bootSkippedResume = false;
1264
1265
  recoveryCrashLoopFresh = false;
1265
1266
  recoveryFreshChoice = false;
1267
+ /** The current boot found a crash-loop marker and is attempting resume rather than going fresh immediately. */
1268
+ bootCrashLoopResume = false;
1266
1269
  startupAborted = false;
1267
1270
  /** First time the current on-screen blocking dialog was seen (0 = none); drives the parked report. */
1268
1271
  dialogParkedSince = 0;
@@ -1765,6 +1768,76 @@ export class Daemon extends EventEmitter {
1765
1768
  // old transcript, so pre-ready scans must not lower this seeded baseline.
1766
1769
  seededErrorCountBaselines = new Map();
1767
1770
  lastDetectedErrorType = null;
1771
+ /**
1772
+ * #2822: Claude's per-model usage limit (`You've reached your <model> limit.`), known only from Claude's own record of
1773
+ * the failed call in its transcript (`isApiErrorMessage`, a 429) — never from pane text, which an agent can print. It
1774
+ * names no reset time. While it holds it is told once, and the reply guard stays quiet while the transcript's newest
1775
+ * event is that error; any later assistant output (of any turn, from a person or not) ends it. The order is Claude's
1776
+ * own: a 429 is recorded within a second, often before AgEnD has armed the turn, so no AgEnD-side clock is used.
1777
+ */
1778
+ usageLimitHold = null;
1779
+ /** Transcript events in Claude's order (prompts, output, every API error): the newest, and the latest limit error. */
1780
+ transcriptEventSeq = 0;
1781
+ usageLimitErrorSeq = 0;
1782
+ static MODEL_USAGE_LIMIT = CLAUDE_MODEL_USAGE_LIMIT;
1783
+ /** #2822: the usage-limit hold, while it lasts — Needs you lists it. */
1784
+ usageHold() {
1785
+ return this.usageLimitHold ? { ...this.usageLimitHold } : null;
1786
+ }
1787
+ /** #2834: Claude's account is out of API credits — its own record; the same pause as the pane pattern it replaces. */
1788
+ static CREDIT_BALANCE_LOW = CLAUDE_CREDIT_BALANCE_LOW;
1789
+ /** #2834 (#816): Claude's usage-limit auto-continue note, as it records it (`system` / `informational`). */
1790
+ static USAGE_LIMIT_PAUSE = CLAUDE_USAGE_LIMIT_PAUSE;
1791
+ /** #2834 (#816): Claude paused itself until its usage window opens — the same notice the screen pattern gave. */
1792
+ noteClaudeInformational(text) {
1793
+ const match = Daemon.USAGE_LIMIT_PAUSE.exec(text.trim());
1794
+ if (!match)
1795
+ return;
1796
+ const when = match[1].trim();
1797
+ this.emit("pty_error", { name: this.name, type: "quota", action: "notify", verifyQuota: true, skipCooldown: true, skipRecoveryWait: true,
1798
+ message: `Claude Code usage limit reached — paused; continuing automatically ${when}` });
1799
+ }
1800
+ /** #2822: Claude recorded a failed API call. */
1801
+ noteClaudeApiError(text, status, errorKind = null) {
1802
+ const seq = ++this.transcriptEventSeq;
1803
+ if (errorKind === "billing_error" || (status === 400 && Daemon.CREDIT_BALANCE_LOW.test(text))) {
1804
+ this.emit("pty_error", { name: this.name, type: "quota", action: "pause", message: "Insufficient API credits" });
1805
+ return;
1806
+ }
1807
+ const match = status === 429 ? Daemon.MODEL_USAGE_LIMIT.exec(text.trim()) : null;
1808
+ if (!match)
1809
+ return;
1810
+ this.usageLimitErrorSeq = seq;
1811
+ if (this.usageLimitHold)
1812
+ return; // told already: one notice per hold
1813
+ const model = match[1].trim();
1814
+ this.usageLimitHold = { model, since: Date.now() };
1815
+ const message = t("inst.model_usage_limit", model);
1816
+ this.logger.warn({ model }, "Usage-limit hold started (reset time unknown)");
1817
+ this.emit("usage_hold", { name: this.name, held: true });
1818
+ this.emit("pty_error", { name: this.name, type: "quota", action: "notify", message, skipCooldown: true, skipRecoveryWait: true });
1819
+ }
1820
+ /** #2822: Claude produced output (text or a tool call): the model answers again, so a hold ends. */
1821
+ noteClaudeOutput() {
1822
+ ++this.transcriptEventSeq;
1823
+ if (!this.usageLimitHold)
1824
+ return;
1825
+ this.logger.info({ model: this.usageLimitHold.model }, "Usage-limit hold cleared — Claude answered again");
1826
+ this.usageLimitHold = null;
1827
+ this.emit("usage_hold", { name: this.name, held: false });
1828
+ }
1829
+ /** #2822: a prompt reached Claude (recorded in its transcript). */
1830
+ noteClaudePrompt() {
1831
+ ++this.transcriptEventSeq;
1832
+ }
1833
+ /**
1834
+ * #2822: the turn ended on the limit error — the transcript's newest event of any kind. A prompt after it (a new
1835
+ * message the error is older than), output after it (the model answered) or another API error after it (a 500, a
1836
+ * different 429) means the limit error is not this turn's end.
1837
+ */
1838
+ personTurnEndedOnUsageLimit() {
1839
+ return this.usageLimitErrorSeq > 0 && this.usageLimitErrorSeq === this.transcriptEventSeq;
1840
+ }
1768
1841
  static errorPatternKey(ep) {
1769
1842
  return `${ep.type}:${ep.pattern.source}`;
1770
1843
  }
@@ -2265,19 +2338,40 @@ export class Daemon extends EventEmitter {
2265
2338
  this.bootSkippedResume = false;
2266
2339
  this.recoveryCrashLoopFresh = false;
2267
2340
  this.recoveryFreshChoice = false;
2341
+ this.bootCrashLoopResume = false;
2268
2342
  try {
2269
2343
  if (existsSync(crashStatePath)) {
2270
2344
  const content = readFileSync(crashStatePath, "utf-8");
2271
2345
  try {
2272
2346
  const state = JSON.parse(content);
2273
- if (state?.resumeDisabled === true) {
2347
+ if (state?.resumeFailed === true) {
2348
+ // The previous start tried resume after a crash loop but the resumed
2349
+ // session died before reaching ready. Go fresh this time.
2274
2350
  this.skipResume = true;
2275
2351
  this.bootSkippedResume = true;
2276
- this.recoveryCrashLoopFresh = (state.reason === undefined || state.reason === "crash_loop")
2352
+ this.recoveryCrashLoopFresh = true;
2353
+ this.recoveryFreshChoice = false;
2354
+ this.logger.warn("Previously resumed session died quickly after a crash loop — starting fresh");
2355
+ }
2356
+ else if (state?.resumeDisabled === true) {
2357
+ // Crash loop detected, but the session is not proven broken.
2358
+ // Try resume first; if it dies before reaching ready, the next
2359
+ // boot will see resumeFailed and go fresh (PR #2809).
2360
+ const isCrashLoop = (state.reason === undefined || state.reason === "crash_loop")
2277
2361
  && Number.isInteger(state.crashesInWindow) && state.crashesInWindow >= 3
2278
2362
  && Number.isFinite(state.lastCrashAt) && state.lastCrashAt > 0;
2279
- this.recoveryFreshChoice = !this.recoveryCrashLoopFresh;
2280
- this.logger.warn("Previous crash loop detected — starting without resume");
2363
+ if (isCrashLoop) {
2364
+ this.bootCrashLoopResume = true;
2365
+ this.logger.warn("Previous crash loop detected — attempting resume (will fall back to fresh if session is broken)");
2366
+ }
2367
+ else {
2368
+ // Explicit fresh-start request (not a crash loop); honour it.
2369
+ this.skipResume = true;
2370
+ this.bootSkippedResume = true;
2371
+ this.recoveryCrashLoopFresh = false;
2372
+ this.recoveryFreshChoice = true;
2373
+ this.logger.warn("Previous crash loop detected — starting without resume");
2374
+ }
2281
2375
  }
2282
2376
  }
2283
2377
  finally {
@@ -2465,6 +2559,7 @@ export class Daemon extends EventEmitter {
2465
2559
  .catch(e => this.logger.debug({ err: e.message }, "Ack react failed"));
2466
2560
  };
2467
2561
  this.transcriptMonitor.on("tool_use", (name, input) => {
2562
+ this.noteClaudeOutput();
2468
2563
  this.logger.debug({ tool: name }, "Tool use");
2469
2564
  ackIfPending();
2470
2565
  this.recordRecentEvent({ type: "tool_use", name, preview: this.summarizeTool(name, input) });
@@ -2478,7 +2573,11 @@ export class Daemon extends EventEmitter {
2478
2573
  // show only elapsed time than to leave a stale "Bash: npm test" on screen.
2479
2574
  this.publishActivity(null);
2480
2575
  });
2576
+ this.transcriptMonitor.on("api_error", (text, status, _at, errorKind) => this.noteClaudeApiError(text, status, errorKind));
2577
+ this.transcriptMonitor.on("system_informational", (text) => this.noteClaudeInformational(text));
2578
+ this.transcriptMonitor.on("user_prompt", () => this.noteClaudePrompt());
2481
2579
  this.transcriptMonitor.on("assistant_text", (text) => {
2580
+ this.noteClaudeOutput();
2482
2581
  this.logger.debug({ text: text.slice(0, 200) }, "Claude response");
2483
2582
  ackIfPending();
2484
2583
  this.recordRecentEvent({ type: "assistant_text", preview: text.slice(0, 100) });
@@ -5662,6 +5761,15 @@ export class Daemon extends EventEmitter {
5662
5761
  this.turnReplyGuard.complete(turn.generation);
5663
5762
  return;
5664
5763
  }
5764
+ // #2822: a turn whose newest transcript event is Claude's usage-limit error could not have replied — no recovery
5765
+ // turn, no drop report: the limit is told once (the notice and Needs you). Only that record counts: pane text and
5766
+ // an error from before this turn began do not.
5767
+ if (this.personTurnEndedOnUsageLimit()) {
5768
+ this.logger.info({ correlationId: turn.target.correlationId }, "Turn ended on Claude's usage-limit error — no reply recovery");
5769
+ this.clearReplyGuardConfirm();
5770
+ this.turnReplyGuard.complete(turn.generation);
5771
+ return;
5772
+ }
5665
5773
  // A second idle edge ends the one permitted recovery turn. Never create a
5666
5774
  // third turn or guess at terminal text; make the failure visible instead.
5667
5775
  if (turn.phase === "recovering") {
@@ -11563,6 +11671,8 @@ export class Daemon extends EventEmitter {
11563
11671
  // as this backend's and resumed by the next start.
11564
11672
  this.startupAdmission?.();
11565
11673
  this.setAsideForeignSession();
11674
+ // A crash-loop-resume boot should attempt resume even though skipResume is false:
11675
+ // bootCrashLoopResume set at boot means we had a crash loop but try resume first.
11566
11676
  const attemptedResume = !this.skipResume;
11567
11677
  // A resume launch may get a longer budget than a fresh one (kiro: the
11568
11678
  // conversation must come back from the backend before anything paints).
@@ -11647,6 +11757,20 @@ export class Daemon extends EventEmitter {
11647
11757
  }
11648
11758
  this.setSessionAside(proven ? "cli_reported_no_conversation" : "resume_failed_repeatedly");
11649
11759
  this.skipResume = true;
11760
+ // If this was a crash-loop-resume attempt, the session is now proven
11761
+ // broken. Persist resumeFailed so the next restart goes fresh without
11762
+ // attempting resume again.
11763
+ if (this.bootCrashLoopResume) {
11764
+ try {
11765
+ writeFileSync(join(this.instanceDir, "crash-state.json"), JSON.stringify({
11766
+ resumeFailed: true,
11767
+ failedAt: Date.now(),
11768
+ }));
11769
+ }
11770
+ catch { /* best effort */ }
11771
+ this.logger.warn("Crash-loop-resume: session abandoned — next boot will go fresh");
11772
+ this.bootCrashLoopResume = false;
11773
+ }
11650
11774
  }
11651
11775
  // A fresh start that also failed retries once, as before. It never clears
11652
11776
  // a session: nothing about a failed fresh launch says the stored
@@ -11664,9 +11788,37 @@ export class Daemon extends EventEmitter {
11664
11788
  this.startupAdmission?.();
11665
11789
  throw new Error("CLI failed to start after retry");
11666
11790
  }
11791
+ // Fresh fallback succeeded. Clear any resumeFailed marker written during this
11792
+ // boot's setSessionAside path, so the next normal restart is not forced fresh.
11793
+ // NOTE: bootCrashLoopResume is already false here (cleared by setSessionAside path),
11794
+ // so check the marker directly rather than relying on the flag.
11795
+ try {
11796
+ const p = join(this.instanceDir, "crash-state.json");
11797
+ if (existsSync(p)) {
11798
+ const s = JSON.parse(readFileSync(p, "utf-8"));
11799
+ if (s?.resumeFailed === true)
11800
+ unlinkSync(p);
11801
+ }
11802
+ }
11803
+ catch { /* best effort */ }
11667
11804
  }
11668
11805
  else if (attemptedResume) {
11669
11806
  resumedSuccessfully = true;
11807
+ if (this.bootCrashLoopResume) {
11808
+ // Resume succeeded after a crash loop — clear any stale resumeFailed marker
11809
+ // that might have been written by a concurrent write or a previous attempt,
11810
+ // so the next restart is not forced fresh.
11811
+ this.bootCrashLoopResume = false;
11812
+ try {
11813
+ const p = join(this.instanceDir, "crash-state.json");
11814
+ if (existsSync(p)) {
11815
+ const s = JSON.parse(readFileSync(p, "utf-8"));
11816
+ if (s?.resumeFailed === true)
11817
+ unlinkSync(p);
11818
+ }
11819
+ }
11820
+ catch { /* best effort */ }
11821
+ }
11670
11822
  this.clearUnprovenResumeFailures();
11671
11823
  // A resume needs the backend: its success is positive proof the backend
11672
11824
  // is reachable again (a fresh prompt is local and proves nothing).