@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.
- package/dist/agent/api-errors.js +1 -1
- package/dist/agent/api-errors.js.map +1 -1
- package/dist/agent/compression.d.ts +25 -0
- package/dist/agent/compression.d.ts.map +1 -0
- package/dist/agent/compression.js +105 -0
- package/dist/agent/compression.js.map +1 -0
- package/dist/agent/diff.js.map +1 -1
- package/dist/agent/file-ingest.d.ts +14 -0
- package/dist/agent/file-ingest.d.ts.map +1 -1
- package/dist/agent/file-ingest.js +125 -34
- package/dist/agent/file-ingest.js.map +1 -1
- package/dist/agent/light-compact.d.ts.map +1 -1
- package/dist/agent/light-compact.js +0 -19
- package/dist/agent/light-compact.js.map +1 -1
- package/dist/agent/loop-guard.d.ts.map +1 -1
- package/dist/agent/loop-guard.js.map +1 -1
- package/dist/agent/loop-state.d.ts.map +1 -1
- package/dist/agent/loop-state.js +8 -1
- package/dist/agent/loop-state.js.map +1 -1
- package/dist/agent/loop.d.ts +2 -3
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +53 -93
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/memory-extractor.d.ts +22 -0
- package/dist/agent/memory-extractor.d.ts.map +1 -0
- package/dist/agent/memory-extractor.js +253 -0
- package/dist/agent/memory-extractor.js.map +1 -0
- package/dist/agent/messages.d.ts +9 -0
- package/dist/agent/messages.d.ts.map +1 -1
- package/dist/agent/messages.js +15 -0
- package/dist/agent/messages.js.map +1 -1
- package/dist/agent/plan-storage.d.ts.map +1 -1
- package/dist/agent/plan-storage.js +1 -1
- package/dist/agent/plan-storage.js.map +1 -1
- package/dist/agent/plan-tools.d.ts +8 -0
- package/dist/agent/plan-tools.d.ts.map +1 -0
- package/dist/agent/plan-tools.js +150 -0
- package/dist/agent/plan-tools.js.map +1 -0
- package/dist/agent/provider-compat.d.ts.map +1 -1
- package/dist/agent/provider-compat.js.map +1 -1
- package/dist/agent/sub-agents/built-in.d.ts.map +1 -1
- package/dist/agent/sub-agents/built-in.js +41 -15
- package/dist/agent/sub-agents/built-in.js.map +1 -1
- package/dist/agent/sub-agents/loader.d.ts.map +1 -1
- package/dist/agent/sub-agents/loader.js.map +1 -1
- package/dist/agent/sub-agents/runner.d.ts.map +1 -1
- package/dist/agent/sub-agents/runner.js +12 -8
- package/dist/agent/sub-agents/runner.js.map +1 -1
- package/dist/agent/system-prompt.d.ts.map +1 -1
- package/dist/agent/system-prompt.js +0 -31
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/agent/tool-execution.d.ts +34 -2
- package/dist/agent/tool-execution.d.ts.map +1 -1
- package/dist/agent/tool-execution.js +363 -360
- package/dist/agent/tool-execution.js.map +1 -1
- package/dist/agent/tool-result-sanitize.d.ts +21 -7
- package/dist/agent/tool-result-sanitize.d.ts.map +1 -1
- package/dist/agent/tool-result-sanitize.js +56 -30
- package/dist/agent/tool-result-sanitize.js.map +1 -1
- package/dist/agent/vision-fallback.d.ts.map +1 -1
- package/dist/agent/vision-fallback.js +3 -14
- package/dist/agent/vision-fallback.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/knowledge/loader.d.ts.map +1 -1
- package/dist/knowledge/loader.js +50 -23
- package/dist/knowledge/loader.js.map +1 -1
- package/dist/permissions/index.d.ts +9 -4
- package/dist/permissions/index.d.ts.map +1 -1
- package/dist/permissions/index.js +41 -7
- package/dist/permissions/index.js.map +1 -1
- package/dist/permissions/session-store.d.ts +34 -20
- package/dist/permissions/session-store.d.ts.map +1 -1
- package/dist/permissions/session-store.js +94 -34
- package/dist/permissions/session-store.js.map +1 -1
- package/dist/providers/cache-control.d.ts.map +1 -1
- package/dist/providers/cache-control.js +0 -29
- package/dist/providers/cache-control.js.map +1 -1
- package/dist/providers/thinking.d.ts.map +1 -1
- package/dist/providers/thinking.js +2 -6
- package/dist/providers/thinking.js.map +1 -1
- package/dist/tools/ask-user.d.ts.map +1 -1
- package/dist/tools/ask-user.js +17 -7
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +8 -1
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/glob.d.ts.map +1 -1
- package/dist/tools/glob.js +9 -2
- package/dist/tools/glob.js.map +1 -1
- package/dist/tools/grep.d.ts +1 -1
- package/dist/tools/grep.d.ts.map +1 -1
- package/dist/tools/grep.js +29 -6
- package/dist/tools/grep.js.map +1 -1
- package/dist/tools/index.d.ts +2 -10
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +10 -3
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list-dir.d.ts.map +1 -1
- package/dist/tools/list-dir.js.map +1 -1
- package/dist/tools/read-file.d.ts.map +1 -1
- package/dist/tools/read-file.js +78 -36
- package/dist/tools/read-file.js.map +1 -1
- package/dist/tools/shell-provider.d.ts +1 -0
- package/dist/tools/shell-provider.d.ts.map +1 -1
- package/dist/tools/shell-provider.js +7 -0
- package/dist/tools/shell-provider.js.map +1 -1
- package/dist/tools/shell-utils.d.ts.map +1 -1
- package/dist/tools/shell-utils.js +45 -2
- package/dist/tools/shell-utils.js.map +1 -1
- package/dist/tools/shell.d.ts.map +1 -1
- package/dist/tools/shell.js +15 -1
- package/dist/tools/shell.js.map +1 -1
- package/dist/tools/task.d.ts.map +1 -1
- package/dist/tools/task.js +4 -4
- package/dist/tools/task.js.map +1 -1
- package/dist/tools/todo-write.d.ts.map +1 -1
- package/dist/tools/todo-write.js.map +1 -1
- package/dist/tools/web-fetch.d.ts +2 -0
- package/dist/tools/web-fetch.d.ts.map +1 -1
- package/dist/tools/web-fetch.js +92 -27
- package/dist/tools/web-fetch.js.map +1 -1
- package/dist/tools/write-file.d.ts.map +1 -1
- package/dist/tools/write-file.js +7 -1
- package/dist/tools/write-file.js.map +1 -1
- package/dist/types/index.d.ts +17 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/lru-cache.d.ts +17 -0
- package/dist/utils/lru-cache.d.ts.map +1 -0
- package/dist/utils/lru-cache.js +40 -0
- package/dist/utils/lru-cache.js.map +1 -0
- package/dist/utils/media-type.d.ts +5 -0
- package/dist/utils/media-type.d.ts.map +1 -0
- package/dist/utils/media-type.js +19 -0
- package/dist/utils/media-type.js.map +1 -0
- package/dist/utils/message-helpers.d.ts +6 -0
- package/dist/utils/message-helpers.d.ts.map +1 -0
- package/dist/utils/message-helpers.js +14 -0
- package/dist/utils/message-helpers.js.map +1 -0
- package/package.json +1 -1
- package/dist/tools/save-knowledge.d.ts +0 -8
- package/dist/tools/save-knowledge.d.ts.map +0 -1
- package/dist/tools/save-knowledge.js +0 -61
- package/dist/tools/save-knowledge.js.map +0 -1
package/dist/agent/api-errors.js
CHANGED
|
@@ -153,7 +153,7 @@ export function classifyApiError(err) {
|
|
|
153
153
|
}
|
|
154
154
|
if (isMaxTokensError(msg)) {
|
|
155
155
|
return {
|
|
156
|
-
message:
|
|
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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"}
|
package/dist/agent/diff.js.map
CHANGED
|
@@ -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,
|
|
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;
|
|
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',
|
|
33
|
-
'.
|
|
34
|
-
'.
|
|
35
|
-
'.
|
|
36
|
-
'.
|
|
37
|
-
'.
|
|
38
|
-
'.
|
|
39
|
-
'.
|
|
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
|
-
|
|
301
|
-
|
|
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":"
|
|
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":"
|
|
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":"
|
|
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;
|
|
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,
|
|
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"}
|
package/dist/agent/loop-state.js
CHANGED
|
@@ -13,7 +13,14 @@ function generateSessionId(now = new Date()) {
|
|
|
13
13
|
export function createLoopState(initialMode = 'default') {
|
|
14
14
|
return {
|
|
15
15
|
messages: [],
|
|
16
|
-
tokenUsage: {
|
|
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,
|
|
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"}
|