@x-code-cli/core 0.2.1 → 0.2.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 (147) hide show
  1. package/dist/agent/api-errors.js +1 -1
  2. package/dist/agent/api-errors.js.map +1 -1
  3. package/dist/agent/compression.d.ts +25 -0
  4. package/dist/agent/compression.d.ts.map +1 -0
  5. package/dist/agent/compression.js +105 -0
  6. package/dist/agent/compression.js.map +1 -0
  7. package/dist/agent/diff.js.map +1 -1
  8. package/dist/agent/file-ingest.d.ts +14 -0
  9. package/dist/agent/file-ingest.d.ts.map +1 -1
  10. package/dist/agent/file-ingest.js +125 -34
  11. package/dist/agent/file-ingest.js.map +1 -1
  12. package/dist/agent/light-compact.d.ts.map +1 -1
  13. package/dist/agent/light-compact.js +0 -19
  14. package/dist/agent/light-compact.js.map +1 -1
  15. package/dist/agent/loop-guard.d.ts.map +1 -1
  16. package/dist/agent/loop-guard.js.map +1 -1
  17. package/dist/agent/loop-state.d.ts.map +1 -1
  18. package/dist/agent/loop-state.js +8 -1
  19. package/dist/agent/loop-state.js.map +1 -1
  20. package/dist/agent/loop.d.ts +2 -3
  21. package/dist/agent/loop.d.ts.map +1 -1
  22. package/dist/agent/loop.js +53 -93
  23. package/dist/agent/loop.js.map +1 -1
  24. package/dist/agent/memory-extractor.d.ts +22 -0
  25. package/dist/agent/memory-extractor.d.ts.map +1 -0
  26. package/dist/agent/memory-extractor.js +253 -0
  27. package/dist/agent/memory-extractor.js.map +1 -0
  28. package/dist/agent/messages.d.ts +9 -0
  29. package/dist/agent/messages.d.ts.map +1 -1
  30. package/dist/agent/messages.js +15 -0
  31. package/dist/agent/messages.js.map +1 -1
  32. package/dist/agent/plan-storage.d.ts.map +1 -1
  33. package/dist/agent/plan-storage.js +1 -1
  34. package/dist/agent/plan-storage.js.map +1 -1
  35. package/dist/agent/plan-tools.d.ts +8 -0
  36. package/dist/agent/plan-tools.d.ts.map +1 -0
  37. package/dist/agent/plan-tools.js +150 -0
  38. package/dist/agent/plan-tools.js.map +1 -0
  39. package/dist/agent/provider-compat.d.ts.map +1 -1
  40. package/dist/agent/provider-compat.js.map +1 -1
  41. package/dist/agent/sub-agents/built-in.d.ts.map +1 -1
  42. package/dist/agent/sub-agents/built-in.js +41 -15
  43. package/dist/agent/sub-agents/built-in.js.map +1 -1
  44. package/dist/agent/sub-agents/loader.d.ts.map +1 -1
  45. package/dist/agent/sub-agents/loader.js.map +1 -1
  46. package/dist/agent/sub-agents/runner.d.ts.map +1 -1
  47. package/dist/agent/sub-agents/runner.js +12 -8
  48. package/dist/agent/sub-agents/runner.js.map +1 -1
  49. package/dist/agent/system-prompt.d.ts.map +1 -1
  50. package/dist/agent/system-prompt.js +0 -31
  51. package/dist/agent/system-prompt.js.map +1 -1
  52. package/dist/agent/tool-execution.d.ts +34 -2
  53. package/dist/agent/tool-execution.d.ts.map +1 -1
  54. package/dist/agent/tool-execution.js +363 -360
  55. package/dist/agent/tool-execution.js.map +1 -1
  56. package/dist/agent/tool-result-sanitize.d.ts +21 -7
  57. package/dist/agent/tool-result-sanitize.d.ts.map +1 -1
  58. package/dist/agent/tool-result-sanitize.js +56 -30
  59. package/dist/agent/tool-result-sanitize.js.map +1 -1
  60. package/dist/agent/vision-fallback.d.ts.map +1 -1
  61. package/dist/agent/vision-fallback.js +3 -14
  62. package/dist/agent/vision-fallback.js.map +1 -1
  63. package/dist/index.d.ts +3 -0
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +3 -0
  66. package/dist/index.js.map +1 -1
  67. package/dist/knowledge/loader.d.ts.map +1 -1
  68. package/dist/knowledge/loader.js +50 -23
  69. package/dist/knowledge/loader.js.map +1 -1
  70. package/dist/permissions/index.d.ts +9 -4
  71. package/dist/permissions/index.d.ts.map +1 -1
  72. package/dist/permissions/index.js +41 -7
  73. package/dist/permissions/index.js.map +1 -1
  74. package/dist/permissions/session-store.d.ts +34 -20
  75. package/dist/permissions/session-store.d.ts.map +1 -1
  76. package/dist/permissions/session-store.js +94 -34
  77. package/dist/permissions/session-store.js.map +1 -1
  78. package/dist/providers/cache-control.d.ts.map +1 -1
  79. package/dist/providers/cache-control.js +0 -29
  80. package/dist/providers/cache-control.js.map +1 -1
  81. package/dist/providers/thinking.d.ts.map +1 -1
  82. package/dist/providers/thinking.js +2 -6
  83. package/dist/providers/thinking.js.map +1 -1
  84. package/dist/tools/ask-user.d.ts.map +1 -1
  85. package/dist/tools/ask-user.js +17 -7
  86. package/dist/tools/ask-user.js.map +1 -1
  87. package/dist/tools/edit.d.ts.map +1 -1
  88. package/dist/tools/edit.js +8 -1
  89. package/dist/tools/edit.js.map +1 -1
  90. package/dist/tools/glob.d.ts.map +1 -1
  91. package/dist/tools/glob.js +9 -2
  92. package/dist/tools/glob.js.map +1 -1
  93. package/dist/tools/grep.d.ts +1 -1
  94. package/dist/tools/grep.d.ts.map +1 -1
  95. package/dist/tools/grep.js +29 -6
  96. package/dist/tools/grep.js.map +1 -1
  97. package/dist/tools/index.d.ts +2 -10
  98. package/dist/tools/index.d.ts.map +1 -1
  99. package/dist/tools/index.js +10 -3
  100. package/dist/tools/index.js.map +1 -1
  101. package/dist/tools/list-dir.d.ts.map +1 -1
  102. package/dist/tools/list-dir.js.map +1 -1
  103. package/dist/tools/read-file.d.ts.map +1 -1
  104. package/dist/tools/read-file.js +78 -36
  105. package/dist/tools/read-file.js.map +1 -1
  106. package/dist/tools/shell-provider.d.ts +1 -0
  107. package/dist/tools/shell-provider.d.ts.map +1 -1
  108. package/dist/tools/shell-provider.js +7 -0
  109. package/dist/tools/shell-provider.js.map +1 -1
  110. package/dist/tools/shell-utils.d.ts.map +1 -1
  111. package/dist/tools/shell-utils.js +45 -2
  112. package/dist/tools/shell-utils.js.map +1 -1
  113. package/dist/tools/shell.d.ts.map +1 -1
  114. package/dist/tools/shell.js +15 -1
  115. package/dist/tools/shell.js.map +1 -1
  116. package/dist/tools/task.d.ts.map +1 -1
  117. package/dist/tools/task.js +4 -4
  118. package/dist/tools/task.js.map +1 -1
  119. package/dist/tools/todo-write.d.ts.map +1 -1
  120. package/dist/tools/todo-write.js.map +1 -1
  121. package/dist/tools/web-fetch.d.ts +2 -0
  122. package/dist/tools/web-fetch.d.ts.map +1 -1
  123. package/dist/tools/web-fetch.js +92 -27
  124. package/dist/tools/web-fetch.js.map +1 -1
  125. package/dist/tools/write-file.d.ts.map +1 -1
  126. package/dist/tools/write-file.js +7 -1
  127. package/dist/tools/write-file.js.map +1 -1
  128. package/dist/types/index.d.ts +17 -1
  129. package/dist/types/index.d.ts.map +1 -1
  130. package/dist/types/index.js.map +1 -1
  131. package/dist/utils/lru-cache.d.ts +17 -0
  132. package/dist/utils/lru-cache.d.ts.map +1 -0
  133. package/dist/utils/lru-cache.js +40 -0
  134. package/dist/utils/lru-cache.js.map +1 -0
  135. package/dist/utils/media-type.d.ts +5 -0
  136. package/dist/utils/media-type.d.ts.map +1 -0
  137. package/dist/utils/media-type.js +19 -0
  138. package/dist/utils/media-type.js.map +1 -0
  139. package/dist/utils/message-helpers.d.ts +6 -0
  140. package/dist/utils/message-helpers.d.ts.map +1 -0
  141. package/dist/utils/message-helpers.js +14 -0
  142. package/dist/utils/message-helpers.js.map +1 -0
  143. package/package.json +1 -1
  144. package/dist/tools/save-knowledge.d.ts +0 -8
  145. package/dist/tools/save-knowledge.d.ts.map +0 -1
  146. package/dist/tools/save-knowledge.js +0 -61
  147. package/dist/tools/save-knowledge.js.map +0 -1
@@ -153,7 +153,7 @@ export function classifyApiError(err) {
153
153
  }
154
154
  if (isMaxTokensError(msg)) {
155
155
  return {
156
- message: 'The configured max_tokens exceeds this model\'s limit. Try switching to a different model with /model, or report this issue so we can add the correct ceiling.',
156
+ message: "The configured max_tokens exceeds this model's limit. Try switching to a different model with /model, or report this issue so we can add the correct ceiling.",
157
157
  retryable: false,
158
158
  };
159
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"api-errors.js","sourceRoot":"","sources":["../../src/agent/api-errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-errors.js","sourceRoot":"","sources":["../../src/agent/api-errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { LanguageModel, ModelMessage } from 'ai';
2
+ import type { AgentCallbacks } from '../types/index.js';
3
+ import type { LoopState } from './loop-state.js';
4
+ /** Number of recent messages to keep verbatim when compressing. */
5
+ export declare const KEEP_RECENT = 6;
6
+ /** Compress old messages into a summary. */
7
+ export declare function compressMessages(messages: ModelMessage[], model: LanguageModel): Promise<ModelMessage[]>;
8
+ /**
9
+ * Proactive compression: compress when either the last real input-token count
10
+ * or the character-based estimate has crossed the threshold.
11
+ *
12
+ * Runs a light O(n) compaction first (drops loop-guard pairs — no LLM call,
13
+ * no network). If that brings us back under the threshold, we skip the
14
+ * expensive LLM-summary path entirely. This is the difference between a
15
+ * $0 10ms pass and a full summarisation round trip — for loop-induced
16
+ * bloat (by far the common case), the light path is enough.
17
+ */
18
+ export declare function checkAndCompressContext(state: LoopState, model: LanguageModel, threshold: number, callbacks: AgentCallbacks): Promise<void>;
19
+ /**
20
+ * Reactive compact: when a stream errors because the prompt was too long,
21
+ * compress and signal the caller to retry. Mirrors Claude Code's reactiveCompact.
22
+ * Returns true if compression happened (caller should retry this turn).
23
+ */
24
+ export declare function handleContextTooLong(state: LoopState, model: LanguageModel, callbacks: AgentCallbacks): Promise<boolean>;
25
+ //# sourceMappingURL=compression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAGrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAGvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD,mEAAmE;AACnE,eAAO,MAAM,WAAW,IAAI,CAAA;AAE5B,4CAA4C;AAC5C,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAqB9G;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,GACxB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,cAAc,GACxB,OAAO,CAAC,OAAO,CAAC,CAUlB"}
@@ -0,0 +1,105 @@
1
+ // @x-code-cli/core — Context-window compression
2
+ //
3
+ // Two paths share the same primitives:
4
+ // - Proactive (`checkAndCompressContext`): runs before every turn and
5
+ // trims old messages once we cross the per-model token threshold.
6
+ // - Reactive (`handleContextTooLong`): runs when a stream errors with
7
+ // a "prompt too long" classification; compresses and signals retry.
8
+ //
9
+ // Both first try a cheap, in-process light compaction (drops loop-guard
10
+ // pairs — no LLM call). Only if that's insufficient do we fall through
11
+ // to `compressMessages`, which makes a generateText round-trip for an
12
+ // LLM-written summary.
13
+ import { generateText } from 'ai';
14
+ import { generateSessionSummary } from '../knowledge/session.js';
15
+ import { estimateTokenCount } from './context-window.js';
16
+ import { lightCompactMessages } from './light-compact.js';
17
+ import { markBoundaryAndReflush } from './session-store.js';
18
+ /** Number of recent messages to keep verbatim when compressing. */
19
+ export const KEEP_RECENT = 6;
20
+ /** Compress old messages into a summary. */
21
+ export async function compressMessages(messages, model) {
22
+ // Ensure the "recent" slice doesn't start with an orphaned tool
23
+ // result — providers reject tool messages that lack a preceding
24
+ // assistant message with the matching tool_calls.
25
+ let keepCount = KEEP_RECENT;
26
+ while (keepCount < messages.length && messages[messages.length - keepCount]?.role === 'tool') {
27
+ keepCount++;
28
+ }
29
+ const recent = messages.slice(-keepCount);
30
+ const old = messages.slice(0, -keepCount);
31
+ if (old.length === 0)
32
+ return messages;
33
+ const { text: summary } = await generateText({
34
+ model,
35
+ system: 'Summarize the following conversation concisely, preserving key decisions, file changes, and context needed to continue.',
36
+ messages: old,
37
+ });
38
+ return [{ role: 'user', content: `[Previous conversation summary]\n${summary}` }, ...recent];
39
+ }
40
+ /**
41
+ * Proactive compression: compress when either the last real input-token count
42
+ * or the character-based estimate has crossed the threshold.
43
+ *
44
+ * Runs a light O(n) compaction first (drops loop-guard pairs — no LLM call,
45
+ * no network). If that brings us back under the threshold, we skip the
46
+ * expensive LLM-summary path entirely. This is the difference between a
47
+ * $0 10ms pass and a full summarisation round trip — for loop-induced
48
+ * bloat (by far the common case), the light path is enough.
49
+ */
50
+ export async function checkAndCompressContext(state, model, threshold, callbacks) {
51
+ const needsCompression = state.lastInputTokens > threshold || estimateTokenCount(state.messages) > threshold;
52
+ if (!needsCompression || state.messages.length <= KEEP_RECENT)
53
+ return;
54
+ const light = lightCompactMessages(state.messages);
55
+ if (light.dropped > 0) {
56
+ state.messages = light.messages;
57
+ const stillOver = estimateTokenCount(state.messages) > threshold;
58
+ callbacks.onContextCompressed(`Dropped ${light.dropped} looped tool-call message(s) to reclaim context${stillOver ? ' — still over threshold, summarising' : ''}.`);
59
+ if (!stillOver) {
60
+ // Light compaction succeeded — write a boundary so resume won't
61
+ // resurrect the dropped loop-guard pairs (they're still on disk
62
+ // pre-boundary, but the loader cuts at the latest boundary). The
63
+ // boundary carries no summary text since nothing was summarised.
64
+ void markBoundaryAndReflush(state);
65
+ return;
66
+ }
67
+ }
68
+ let summaryText = '';
69
+ try {
70
+ const summary = await generateSessionSummary(state.messages, model, state.sessionId, state.startedAt, [
71
+ ...state.filesModified,
72
+ ]);
73
+ summaryText = summary.summary;
74
+ }
75
+ catch {
76
+ // Summary generation failed — fall through with empty text. The
77
+ // compressMessages call below still runs its own LLM summarisation,
78
+ // so context still shrinks; we just lose the structured summary
79
+ // that would have ridden along on the boundary line for picker UX.
80
+ }
81
+ state.messages = await compressMessages(state.messages, model);
82
+ state.lastInputTokens = 0;
83
+ // Write a compact-boundary line + re-flush the trimmed messages so
84
+ // the post-boundary jsonl content equals the new in-memory state.
85
+ void markBoundaryAndReflush(state, summaryText);
86
+ callbacks.onContextCompressed('Context compressed to fit context window.');
87
+ }
88
+ /**
89
+ * Reactive compact: when a stream errors because the prompt was too long,
90
+ * compress and signal the caller to retry. Mirrors Claude Code's reactiveCompact.
91
+ * Returns true if compression happened (caller should retry this turn).
92
+ */
93
+ export async function handleContextTooLong(state, model, callbacks) {
94
+ if (state.messages.length <= KEEP_RECENT)
95
+ return false;
96
+ state.messages = await compressMessages(state.messages, model);
97
+ state.lastInputTokens = 0;
98
+ // Same boundary discipline as the proactive path — reactive compact
99
+ // also shrinks state.messages in place, so the jsonl needs a
100
+ // compact-boundary marker to keep loader semantics consistent.
101
+ void markBoundaryAndReflush(state);
102
+ callbacks.onContextCompressed('Context too long — automatically compressed. Retrying...');
103
+ return true;
104
+ }
105
+ //# sourceMappingURL=compression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/agent/diff.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,wEAAwE;AACxE,kEAAkE;AAClE,mEAAmE;AACnE,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,4CAA4C;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAA;AA8BtC,MAAM,aAAa,GAAG,CAAC,CAAA;AACvB,MAAM,eAAe,GAAG,KAAK,CAAA;AAE7B;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,UAAyB,EACzB,UAAkB;IAElB,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,UAAU,CAAC,UAAU,CAAC;YACjC,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,UAAU;SACpB,CAAA;IACH,CAAC;IAED,IAAI,UAAU,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAE1C,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE;QAC/F,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,eAAe;KACzB,CAAC,CAAA;IAEF,sEAAsE;IACtE,oEAAoE;IACpE,qEAAqE;IACrE,mDAAmD;IACnD,MAAM,KAAK,GAAmB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAE3E,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS,EAAE,CAAA;iBAChC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,QAAQ,EAAE,CAAA;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,SAAS,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,oEAAoE;QACpE,uEAAuE;QACvE,mEAAmE;QACnE,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;QACvC,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;QACvC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAA;QAC5C,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC,CAAA;IAC7C,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAClE,CAAC;AAED,SAAS,MAAM,CAAC,CAA8F;IAC5G,OAAO;QACL,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,KAAK,EAAE,CAAC,CAAC,KAAK;KACf,CAAA;AACH,CAAC;AAED;;iCAEiC;AACjC,SAAS,UAAU,CAAC,CAAS;IAC3B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC3B,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAA;AAC3D,CAAC"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/agent/diff.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,20 @@ export interface FileReference {
12
12
  /** Resolved absolute path. */
13
13
  absolutePath: string;
14
14
  }
15
+ /** Max bytes a single inlined file can contribute to a user message before
16
+ * we replace its content with a help message. Picked at 256 KB to mirror
17
+ * Claude Code's Read-tool default — large enough for typical configs and
18
+ * source files, small enough that even a multi-file paste can't blow past
19
+ * a 1M context window.
20
+ *
21
+ * Without this cap, `@really-large-file.txt` (or a bare absolute path like
22
+ * `D:\novels\book.txt`) silently shoves the entire file into the user
23
+ * message, since `buildUserContent` bypasses the readFile tool's per-call
24
+ * line guard. The model never gets a chance to react — the request just
25
+ * fails at the API with `context_length_exceeded`. With the cap, the model
26
+ * sees a short hint instead and can call readFile with offset/limit or
27
+ * grep to narrow down. */
28
+ export declare const MAX_INGEST_BYTES: number;
15
29
  /** Classify a file by extension first, falling back to magic-byte detection
16
30
  * when the extension is missing or unrecognized. */
17
31
  export declare function classifyFile(filePath: string): Promise<FileKind>;
@@ -1 +1 @@
1
- {"version":3,"file":"file-ingest.d.ts","sourceRoot":"","sources":["../../src/agent/file-ingest.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAA;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAgBxE;;wCAEwC;AACxC,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEtE,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,GAAG,EAAE,MAAM,CAAA;IACX,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAA;CACrB;AAkBD;qDACqD;AACrD,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAuBtE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,EAAE,CAwBpE;AA8DD;;;oDAGoD;AACpD,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBhE;AAoDD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,YAAY,EAAE,CAAC,CAsGzB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC,CAU1D"}
1
+ {"version":3,"file":"file-ingest.d.ts","sourceRoot":"","sources":["../../src/agent/file-ingest.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAA;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAiBxE;;wCAEwC;AACxC,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEtE,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,GAAG,EAAE,MAAM,CAAA;IACX,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAA;CACrB;AAuED;;;;;;;;;;;;2BAY2B;AAC3B,eAAO,MAAM,gBAAgB,QAAa,CAAA;AA0B1C;qDACqD;AACrD,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAoBtE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,EAAE,CAwBpE;AA8DD;;;oDAGoD;AACpD,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBhE;AAuCD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,YAAY,EAAE,CAAC,CAyHzB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC,CAU1D"}
@@ -14,6 +14,7 @@
14
14
  import fs from 'node:fs/promises';
15
15
  import path from 'node:path';
16
16
  import { GLOBAL_XCODE_DIR } from '../utils.js';
17
+ import { mediaTypeFor } from '../utils/media-type.js';
17
18
  import { captionImage, pickVisionProvider } from './vision-fallback.js';
18
19
  /** Where tesseract.js caches its language model weights (`eng.traineddata`,
19
20
  * `chi_sim.traineddata`, ~7.6 MB total). Without this the worker writes
@@ -29,17 +30,106 @@ async function tesseractCacheDir() {
29
30
  /** Extensions we treat as inline text without inspection. Order doesn't
30
31
  * matter; this is just a membership check. */
31
32
  const TEXT_EXTENSIONS = new Set([
32
- '.txt', '.md', '.mdx', '.rst', '.log', '.csv', '.tsv', '.json', '.jsonc',
33
- '.yaml', '.yml', '.toml', '.ini', '.env', '.cfg', '.conf',
34
- '.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs',
35
- '.py', '.rb', '.go', '.rs', '.java', '.kt', '.swift', '.c', '.h',
36
- '.cpp', '.cc', '.hpp', '.cs', '.php', '.pl', '.lua', '.sh', '.bash',
37
- '.zsh', '.fish', '.ps1', '.sql', '.graphql', '.gql', '.proto',
38
- '.html', '.htm', '.css', '.scss', '.sass', '.less', '.vue', '.svelte',
39
- '.xml', '.svg', '.dockerfile', '.makefile', '.gitignore', '.editorconfig',
33
+ '.txt',
34
+ '.md',
35
+ '.mdx',
36
+ '.rst',
37
+ '.log',
38
+ '.csv',
39
+ '.tsv',
40
+ '.json',
41
+ '.jsonc',
42
+ '.yaml',
43
+ '.yml',
44
+ '.toml',
45
+ '.ini',
46
+ '.env',
47
+ '.cfg',
48
+ '.conf',
49
+ '.ts',
50
+ '.tsx',
51
+ '.js',
52
+ '.jsx',
53
+ '.mjs',
54
+ '.cjs',
55
+ '.py',
56
+ '.rb',
57
+ '.go',
58
+ '.rs',
59
+ '.java',
60
+ '.kt',
61
+ '.swift',
62
+ '.c',
63
+ '.h',
64
+ '.cpp',
65
+ '.cc',
66
+ '.hpp',
67
+ '.cs',
68
+ '.php',
69
+ '.pl',
70
+ '.lua',
71
+ '.sh',
72
+ '.bash',
73
+ '.zsh',
74
+ '.fish',
75
+ '.ps1',
76
+ '.sql',
77
+ '.graphql',
78
+ '.gql',
79
+ '.proto',
80
+ '.html',
81
+ '.htm',
82
+ '.css',
83
+ '.scss',
84
+ '.sass',
85
+ '.less',
86
+ '.vue',
87
+ '.svelte',
88
+ '.xml',
89
+ '.svg',
90
+ '.dockerfile',
91
+ '.makefile',
92
+ '.gitignore',
93
+ '.editorconfig',
40
94
  ]);
41
95
  const IMAGE_EXTENSIONS = new Set(['.png', '.jpg', '.jpeg', '.webp', '.gif', '.bmp']);
42
96
  const OFFICE_EXTENSIONS = new Set(['.docx', '.xlsx', '.pptx', '.odt', '.ods', '.odp']);
97
+ /** Max bytes a single inlined file can contribute to a user message before
98
+ * we replace its content with a help message. Picked at 256 KB to mirror
99
+ * Claude Code's Read-tool default — large enough for typical configs and
100
+ * source files, small enough that even a multi-file paste can't blow past
101
+ * a 1M context window.
102
+ *
103
+ * Without this cap, `@really-large-file.txt` (or a bare absolute path like
104
+ * `D:\novels\book.txt`) silently shoves the entire file into the user
105
+ * message, since `buildUserContent` bypasses the readFile tool's per-call
106
+ * line guard. The model never gets a chance to react — the request just
107
+ * fails at the API with `context_length_exceeded`. With the cap, the model
108
+ * sees a short hint instead and can call readFile with offset/limit or
109
+ * grep to narrow down. */
110
+ export const MAX_INGEST_BYTES = 256 * 1024;
111
+ function formatBytes(bytes) {
112
+ if (bytes < 1024)
113
+ return `${bytes} B`;
114
+ if (bytes < 1024 * 1024)
115
+ return `${(bytes / 1024).toFixed(1)} KB`;
116
+ return `${(bytes / (1024 * 1024)).toFixed(2)} MB`;
117
+ }
118
+ /** The human/model-facing message we substitute when an attachment is too
119
+ * large to inline. Mirrors Claude Code's `MaxFileReadTokenExceededError`
120
+ * message but adds the sub-agent escape hatch — for "summarize this whole
121
+ * novel" / "review this entire log" requests, chunk-by-chunk readFile
122
+ * iteration burns the parent context fast (each tool_result sticks around).
123
+ * Delegating to a sub-agent keeps only the summary in the parent. */
124
+ function tooLargeMessage(filePath, sizeBytes) {
125
+ return (`[File ${filePath} is too large to inline (${formatBytes(sizeBytes)}, ` +
126
+ `cap ${formatBytes(MAX_INGEST_BYTES)}). ` +
127
+ `Use the readFile tool with offset/limit to read specific portions, ` +
128
+ `or grep to search for specific content. ` +
129
+ `For whole-file analysis (summarization, full review), prefer delegating to ` +
130
+ `a sub-agent via the task tool — each sub-agent reads in isolated context ` +
131
+ `and returns only its conclusions, keeping the parent context lean.]`);
132
+ }
43
133
  /** Classify a file by extension first, falling back to magic-byte detection
44
134
  * when the extension is missing or unrecognized. */
45
135
  export async function classifyFile(filePath) {
@@ -62,8 +152,7 @@ export async function classifyFile(filePath) {
62
152
  return 'image';
63
153
  if (detected.mime === 'application/pdf')
64
154
  return 'pdf';
65
- if (detected.mime.includes('officedocument') ||
66
- detected.mime.includes('opendocument'))
155
+ if (detected.mime.includes('officedocument') || detected.mime.includes('opendocument'))
67
156
  return 'office';
68
157
  if (detected.mime.startsWith('text/'))
69
158
  return 'text';
@@ -237,23 +326,6 @@ async function ocrPdf(filePath) {
237
326
  return `[PDF OCR failed: ${msg}]`;
238
327
  }
239
328
  }
240
- /** Map a file extension to an IANA media type. Used for ImagePart mediaType
241
- * hints; returning `image/png` for unknown extensions is safe — the SDK
242
- * mostly treats mediaType as advisory. */
243
- function mediaTypeFor(filePath) {
244
- const ext = path.extname(filePath).toLowerCase();
245
- if (ext === '.jpg' || ext === '.jpeg')
246
- return 'image/jpeg';
247
- if (ext === '.png')
248
- return 'image/png';
249
- if (ext === '.webp')
250
- return 'image/webp';
251
- if (ext === '.gif')
252
- return 'image/gif';
253
- if (ext === '.bmp')
254
- return 'image/bmp';
255
- return 'image/png';
256
- }
257
329
  /**
258
330
  * Resolve a single file reference into one or more content parts, taking
259
331
  * the active provider's multi-modal capabilities into account.
@@ -270,8 +342,9 @@ function mediaTypeFor(filePath) {
270
342
  */
271
343
  export async function ingestFile(ref, caps, onNotice) {
272
344
  let kind;
345
+ let stats;
273
346
  try {
274
- await fs.stat(ref.absolutePath);
347
+ stats = await fs.stat(ref.absolutePath);
275
348
  kind = await classifyFile(ref.absolutePath);
276
349
  }
277
350
  catch (err) {
@@ -279,6 +352,13 @@ export async function ingestFile(ref, caps, onNotice) {
279
352
  return [{ type: 'text', text: `[Cannot read ${ref.raw}: ${msg}]` }];
280
353
  }
281
354
  if (kind === 'text' || kind === 'unknown') {
355
+ // For text files, on-disk byte size is a tight upper bound on the
356
+ // inlined text size (numbered-line wrapper adds <1% overhead). Check
357
+ // before reading so we don't pull a multi-MB file into memory just to
358
+ // discard it.
359
+ if (stats.size > MAX_INGEST_BYTES) {
360
+ return [{ type: 'text', text: tooLargeMessage(ref.absolutePath, stats.size) }];
361
+ }
282
362
  try {
283
363
  const body = await readTextFile(ref.absolutePath);
284
364
  return [{ type: 'text', text: `<<file path="${ref.absolutePath}">>\n${body}\n<</file>>` }];
@@ -290,6 +370,13 @@ export async function ingestFile(ref, caps, onNotice) {
290
370
  }
291
371
  if (kind === 'office') {
292
372
  const text = await extractOfficeText(ref.absolutePath);
373
+ // Office binaries are usually much larger than their extracted text
374
+ // (compression + media), so check post-extraction. A book-length .docx
375
+ // can still exceed the cap.
376
+ const textBytes = Buffer.byteLength(text, 'utf-8');
377
+ if (textBytes > MAX_INGEST_BYTES) {
378
+ return [{ type: 'text', text: tooLargeMessage(ref.absolutePath, textBytes) }];
379
+ }
293
380
  return [{ type: 'text', text: `<<file path="${ref.absolutePath}" kind="office">>\n${text}\n<</file>>` }];
294
381
  }
295
382
  if (kind === 'pdf') {
@@ -297,17 +384,17 @@ export async function ingestFile(ref, caps, onNotice) {
297
384
  // Heuristic: a "real" text PDF yields at least a couple hundred chars.
298
385
  // Scanned PDFs typically yield empty strings or a few stray ligatures.
299
386
  if (extracted.trim().length > 200) {
300
- return [
301
- { type: 'text', text: `<<file path="${ref.absolutePath}" kind="pdf-text">>\n${extracted}\n<</file>>` },
302
- ];
387
+ const textBytes = Buffer.byteLength(extracted, 'utf-8');
388
+ if (textBytes > MAX_INGEST_BYTES) {
389
+ return [{ type: 'text', text: tooLargeMessage(ref.absolutePath, textBytes) }];
390
+ }
391
+ return [{ type: 'text', text: `<<file path="${ref.absolutePath}" kind="pdf-text">>\n${extracted}\n<</file>>` }];
303
392
  }
304
393
  // Scanned / image-based PDF.
305
394
  if (caps.pdf) {
306
395
  try {
307
396
  const buffer = await fs.readFile(ref.absolutePath);
308
- return [
309
- { type: 'file', data: buffer, mediaType: 'application/pdf', filename: path.basename(ref.absolutePath) },
310
- ];
397
+ return [{ type: 'file', data: buffer, mediaType: 'application/pdf', filename: path.basename(ref.absolutePath) }];
311
398
  }
312
399
  catch (err) {
313
400
  const msg = err instanceof Error ? err.message : String(err);
@@ -316,6 +403,10 @@ export async function ingestFile(ref, caps, onNotice) {
316
403
  }
317
404
  // DeepSeek + scanned PDF: OCR locally.
318
405
  const ocr = await ocrPdf(ref.absolutePath);
406
+ const ocrBytes = Buffer.byteLength(ocr, 'utf-8');
407
+ if (ocrBytes > MAX_INGEST_BYTES) {
408
+ return [{ type: 'text', text: tooLargeMessage(ref.absolutePath, ocrBytes) }];
409
+ }
319
410
  return [
320
411
  {
321
412
  type: 'text',
@@ -1 +1 @@
1
- {"version":3,"file":"file-ingest.js","sourceRoot":"","sources":["../../src/agent/file-ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-ingest.js","sourceRoot":"","sources":["../../src/agent/file-ingest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"light-compact.d.ts","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAmEtC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB;uEACmE;IACnE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAmBjF"}
1
+ {"version":3,"file":"light-compact.d.ts","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAmEtC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB;uEACmE;IACnE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAmBjF"}
@@ -1,22 +1,3 @@
1
- // @x-code-cli/core — Light-weight message compaction (no LLM call)
2
- //
3
- // The main compression path (`compressMessages` in loop.ts) summarises old
4
- // turns by making a separate `generateText` call — that's a network round
5
- // trip plus a full pass over the messages, which is wasteful when the bulk
6
- // of the context comes from a narrow, obvious source: repeated tool-call
7
- // failures that the loop guard already flagged.
8
- //
9
- // This module runs a cheap O(n) pass that drops the messages we can safely
10
- // throw away without losing signal:
11
- // - tool-call + tool-result pairs whose result is a `[loop-guard]` notice
12
- // (the model has already been told to stop; the blocked calls don't
13
- // teach it anything new on replay)
14
- // - tool-result payloads that are PowerShell noise stacks older than the
15
- // most recent one (keep at most the latest so the model can still see
16
- // the current error shape, drop older duplicates)
17
- //
18
- // Callers should run this BEFORE invoking the LLM summariser so the
19
- // summariser operates on the signal-rich remainder.
20
1
  /** Content of a tool-result part that we should drop on sight. */
21
2
  const LOOP_GUARD_SENTINEL = '[loop-guard]';
22
3
  function isToolResultDropTarget(part) {
@@ -1 +1 @@
1
- {"version":3,"file":"light-compact.js","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"light-compact.js","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loop-guard.d.ts","sourceRoot":"","sources":["../../src/agent/loop-guard.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD;uBACuB;AACvB,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,yDAAyD;AACzD,eAAO,MAAM,gBAAgB,IAAI,CAAA;AAWjC;;sCAEsC;AACtC,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAGrE;AAED;8EAC8E;AAC9E,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,MAAM,SAAS;AACnB,2DAA2D;AACzD,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AAClC;;;mCAGmC;GACjC,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/E,4EAA4E;GAC1E,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE/E;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CAiC9G;AAED;;4EAE4E;AAC5E,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAUtG;AAED;;4CAE4C;AAC5C,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,6BAE7F"}
1
+ {"version":3,"file":"loop-guard.d.ts","sourceRoot":"","sources":["../../src/agent/loop-guard.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD;uBACuB;AACvB,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,yDAAyD;AACzD,eAAO,MAAM,gBAAgB,IAAI,CAAA;AAWjC;;sCAEsC;AACtC,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAGrE;AAED;8EAC8E;AAC9E,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,MAAM,SAAS;AACnB,2DAA2D;AACzD,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AAClC;;;mCAGmC;GACjC,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/E,4EAA4E;GAC1E,CAAC,aAAa,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE/E;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,CAiC9G;AAED;;4EAE4E;AAC5E,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAUtG;AAED;;4CAE4C;AAC5C,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,6BAE7F"}
@@ -1 +1 @@
1
- {"version":3,"file":"loop-guard.js","sourceRoot":"","sources":["../../src/agent/loop-guard.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,EAAE;AACF,0EAA0E;AAC1E,4EAA4E;AAC5E,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,kCAAkC;AAClC,EAAE;AACF,cAAc;AACd,6EAA6E;AAC7E,4EAA4E;AAC5E,6EAA6E;AAC7E,4EAA4E;AAC5E,6EAA6E;AAC7E,sDAAsD;AACtD,EAAE;AACF,8EAA8E;AAC9E,2EAA2E;AAC3E,EAAE;AACF,sEAAsE;AACtE,6EAA6E;AAC7E,yEAAyE;AACzE,yEAAyE;AAEzE,OAAO,MAAM,MAAM,aAAa,CAAA;AAGhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD;uBACuB;AACvB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAEpC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAEpC,yDAAyD;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAEjC;uEACuE;AACvE,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAC7E,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IACjF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACjH,OAAO,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;AACpG,CAAC;AAED;;sCAEsC;AACtC,MAAM,UAAU,YAAY,CAAC,QAAgB,EAAE,KAAc;IAC3D,MAAM,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;IAC1D,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AAC/E,CAAC;AAmBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,KAAgB,EAAE,QAAgB,EAAE,KAAc,EAAE,UAAkB;IACjG,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,CAAA;IAE7D,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI;YAAE,YAAY,EAAE,CAAA;IACxE,CAAC;IAED,wEAAwE;IACxE,qCAAqC;IAErC,IAAI,YAAY,GAAG,CAAC,IAAI,mBAAmB,EAAE,CAAC;QAC5C,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI;YACJ,QAAQ;YACR,OAAO,EAAE,QAAQ,QAAQ,6CAA6C,YAAY,GAAG,CAAC,4DAA4D;SACnJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY,GAAG,CAAC,IAAI,mBAAmB,EAAE,CAAC;QAC5C,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI;YACJ,UAAU;YACV,OAAO,EACL,cAAc,QAAQ,qDAAqD,YAAY,GAAG,CAAC,4CAA4C;gBACvI,qIAAqI;SACxI,CAAA;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;AAC7B,CAAC;AAED;;4EAE4E;AAC5E,MAAM,UAAU,cAAc,CAAC,KAAgB,EAAE,QAAgB,EAAE,KAAc,EAAE,IAAa;IAC9F,MAAM,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC/C,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;IACjD,yEAAyE;IACzE,wEAAwE;IACxE,0BAA0B;IAC1B,MAAM,GAAG,GAAG,gBAAgB,GAAG,CAAC,CAAA;IAChC,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACvC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,GAAG,CAAC,CAAA;IACrE,CAAC;AACH,CAAC;AAED;;4CAE4C;AAC5C,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,UAAkB,EAAE,OAAe;IAC5F,OAAO,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,gBAAgB,OAAO,EAAE,CAAC,CAAA;AAC3E,CAAC"}
1
+ {"version":3,"file":"loop-guard.js","sourceRoot":"","sources":["../../src/agent/loop-guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE7E,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB;;qEAEiE;IACjE,eAAe,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D;;;;4DAIwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;;kDAG8C;IAC9C,cAAc,EAAE,cAAc,CAAA;IAC9B;;;oCAGgC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;;;;;8BAM0B;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;+DAK2D;IAC3D,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB;;;;;;;mEAO+D;IAC/D,qBAAqB,EAAE,MAAM,CAAA;IAI7B;;8EAE0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAiBD,wBAAgB,eAAe,CAAC,WAAW,GAAE,cAA0B,GAAG,SAAS,CAqBlF"}
1
+ {"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE7E,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB;;qEAEiE;IACjE,eAAe,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D;;;;4DAIwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;;kDAG8C;IAC9C,cAAc,EAAE,cAAc,CAAA;IAC9B;;;oCAGgC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;;;;;8BAM0B;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;+DAK2D;IAC3D,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB;;;;;;;mEAO+D;IAC/D,qBAAqB,EAAE,MAAM,CAAA;IAI7B;;8EAE0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAiBD,wBAAgB,eAAe,CAAC,WAAW,GAAE,cAA0B,GAAG,SAAS,CA4BlF"}
@@ -13,7 +13,14 @@ function generateSessionId(now = new Date()) {
13
13
  export function createLoopState(initialMode = 'default') {
14
14
  return {
15
15
  messages: [],
16
- tokenUsage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, cacheReadTokens: 0, cacheCreationTokens: 0, currentContextTokens: 0 },
16
+ tokenUsage: {
17
+ inputTokens: 0,
18
+ outputTokens: 0,
19
+ totalTokens: 0,
20
+ cacheReadTokens: 0,
21
+ cacheCreationTokens: 0,
22
+ currentContextTokens: 0,
23
+ },
17
24
  lastInputTokens: 0,
18
25
  sessionId: generateSessionId(),
19
26
  startedAt: new Date().toISOString(),
@@ -1 +1 @@
1
- {"version":3,"file":"loop-state.js","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AAqEA;;;;;yBAKyB;AACzB,SAAS,iBAAiB,CAAC,MAAY,IAAI,IAAI,EAAE;IAC/C,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,CACL,GAAG,GAAG,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;QACrE,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE;QACzE,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,CACpC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,cAA8B,SAAS;IACrE,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE;QACpI,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,iBAAiB,EAAE;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,SAAS,EAAE,CAAC;QACZ,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,WAAW;QAC3B,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,6BAA6B;QAC7B,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,qBAAqB,EAAE,CAAC;KACzB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"loop-state.js","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AAqEA;;;;;yBAKyB;AACzB,SAAS,iBAAiB,CAAC,MAAY,IAAI,IAAI,EAAE;IAC/C,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,CACL,GAAG,GAAG,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;QACrE,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE;QACzE,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,CACpC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,cAA8B,SAAS;IACrE,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE;YACV,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,CAAC;YACd,eAAe,EAAE,CAAC;YAClB,mBAAmB,EAAE,CAAC;YACtB,oBAAoB,EAAE,CAAC;SACxB;QACD,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,iBAAiB,EAAE;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,SAAS,EAAE,CAAC;QACZ,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,WAAW;QAC3B,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,6BAA6B;QAC7B,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,qBAAqB,EAAE,CAAC;KACzB,CAAA;AACH,CAAC"}