@animus-labs/cortex 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +73 -0
- package/dist/budget-guard.d.ts +75 -0
- package/dist/budget-guard.d.ts.map +1 -0
- package/dist/budget-guard.js +142 -0
- package/dist/budget-guard.js.map +1 -0
- package/dist/compaction/compaction.d.ts +99 -0
- package/dist/compaction/compaction.d.ts.map +1 -0
- package/dist/compaction/compaction.js +302 -0
- package/dist/compaction/compaction.js.map +1 -0
- package/dist/compaction/failsafe.d.ts +57 -0
- package/dist/compaction/failsafe.d.ts.map +1 -0
- package/dist/compaction/failsafe.js +135 -0
- package/dist/compaction/failsafe.js.map +1 -0
- package/dist/compaction/index.d.ts +381 -0
- package/dist/compaction/index.d.ts.map +1 -0
- package/dist/compaction/index.js +979 -0
- package/dist/compaction/index.js.map +1 -0
- package/dist/compaction/microcompaction.d.ts +219 -0
- package/dist/compaction/microcompaction.d.ts.map +1 -0
- package/dist/compaction/microcompaction.js +536 -0
- package/dist/compaction/microcompaction.js.map +1 -0
- package/dist/compaction/observational/buffering.d.ts +225 -0
- package/dist/compaction/observational/buffering.d.ts.map +1 -0
- package/dist/compaction/observational/buffering.js +354 -0
- package/dist/compaction/observational/buffering.js.map +1 -0
- package/dist/compaction/observational/constants.d.ts +70 -0
- package/dist/compaction/observational/constants.d.ts.map +1 -0
- package/dist/compaction/observational/constants.js +507 -0
- package/dist/compaction/observational/constants.js.map +1 -0
- package/dist/compaction/observational/index.d.ts +219 -0
- package/dist/compaction/observational/index.d.ts.map +1 -0
- package/dist/compaction/observational/index.js +641 -0
- package/dist/compaction/observational/index.js.map +1 -0
- package/dist/compaction/observational/observer.d.ts +97 -0
- package/dist/compaction/observational/observer.d.ts.map +1 -0
- package/dist/compaction/observational/observer.js +424 -0
- package/dist/compaction/observational/observer.js.map +1 -0
- package/dist/compaction/observational/recall-tool.d.ts +27 -0
- package/dist/compaction/observational/recall-tool.d.ts.map +1 -0
- package/dist/compaction/observational/recall-tool.js +93 -0
- package/dist/compaction/observational/recall-tool.js.map +1 -0
- package/dist/compaction/observational/reflector.d.ts +94 -0
- package/dist/compaction/observational/reflector.d.ts.map +1 -0
- package/dist/compaction/observational/reflector.js +167 -0
- package/dist/compaction/observational/reflector.js.map +1 -0
- package/dist/compaction/observational/types.d.ts +271 -0
- package/dist/compaction/observational/types.d.ts.map +1 -0
- package/dist/compaction/observational/types.js +15 -0
- package/dist/compaction/observational/types.js.map +1 -0
- package/dist/context-manager.d.ts +134 -0
- package/dist/context-manager.d.ts.map +1 -0
- package/dist/context-manager.js +170 -0
- package/dist/context-manager.js.map +1 -0
- package/dist/cortex-agent.d.ts +1020 -0
- package/dist/cortex-agent.d.ts.map +1 -0
- package/dist/cortex-agent.js +3589 -0
- package/dist/cortex-agent.js.map +1 -0
- package/dist/error-classifier.d.ts +48 -0
- package/dist/error-classifier.d.ts.map +1 -0
- package/dist/error-classifier.js +152 -0
- package/dist/error-classifier.js.map +1 -0
- package/dist/event-bridge.d.ts +166 -0
- package/dist/event-bridge.d.ts.map +1 -0
- package/dist/event-bridge.js +381 -0
- package/dist/event-bridge.js.map +1 -0
- package/dist/index.d.ts +55 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +57 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-client.d.ts +119 -0
- package/dist/mcp-client.d.ts.map +1 -0
- package/dist/mcp-client.js +474 -0
- package/dist/mcp-client.js.map +1 -0
- package/dist/model-wrapper.d.ts +58 -0
- package/dist/model-wrapper.d.ts.map +1 -0
- package/dist/model-wrapper.js +86 -0
- package/dist/model-wrapper.js.map +1 -0
- package/dist/noop-logger.d.ts +4 -0
- package/dist/noop-logger.d.ts.map +1 -0
- package/dist/noop-logger.js +8 -0
- package/dist/noop-logger.js.map +1 -0
- package/dist/prompt-diagnostics.d.ts +47 -0
- package/dist/prompt-diagnostics.d.ts.map +1 -0
- package/dist/prompt-diagnostics.js +230 -0
- package/dist/prompt-diagnostics.js.map +1 -0
- package/dist/provider-manager.d.ts +224 -0
- package/dist/provider-manager.d.ts.map +1 -0
- package/dist/provider-manager.js +563 -0
- package/dist/provider-manager.js.map +1 -0
- package/dist/provider-registry.d.ts +115 -0
- package/dist/provider-registry.d.ts.map +1 -0
- package/dist/provider-registry.js +305 -0
- package/dist/provider-registry.js.map +1 -0
- package/dist/schema-converter.d.ts +20 -0
- package/dist/schema-converter.d.ts.map +1 -0
- package/dist/schema-converter.js +48 -0
- package/dist/schema-converter.js.map +1 -0
- package/dist/skill-preprocessor.d.ts +46 -0
- package/dist/skill-preprocessor.d.ts.map +1 -0
- package/dist/skill-preprocessor.js +237 -0
- package/dist/skill-preprocessor.js.map +1 -0
- package/dist/skill-registry.d.ts +107 -0
- package/dist/skill-registry.d.ts.map +1 -0
- package/dist/skill-registry.js +330 -0
- package/dist/skill-registry.js.map +1 -0
- package/dist/skill-tool.d.ts +54 -0
- package/dist/skill-tool.d.ts.map +1 -0
- package/dist/skill-tool.js +88 -0
- package/dist/skill-tool.js.map +1 -0
- package/dist/sub-agent-manager.d.ts +90 -0
- package/dist/sub-agent-manager.d.ts.map +1 -0
- package/dist/sub-agent-manager.js +192 -0
- package/dist/sub-agent-manager.js.map +1 -0
- package/dist/token-estimator.d.ts +23 -0
- package/dist/token-estimator.d.ts.map +1 -0
- package/dist/token-estimator.js +27 -0
- package/dist/token-estimator.js.map +1 -0
- package/dist/tool-contract.d.ts +68 -0
- package/dist/tool-contract.d.ts.map +1 -0
- package/dist/tool-contract.js +35 -0
- package/dist/tool-contract.js.map +1 -0
- package/dist/tool-result-persistence.d.ts +89 -0
- package/dist/tool-result-persistence.d.ts.map +1 -0
- package/dist/tool-result-persistence.js +152 -0
- package/dist/tool-result-persistence.js.map +1 -0
- package/dist/tools/bash/index.d.ts +71 -0
- package/dist/tools/bash/index.d.ts.map +1 -0
- package/dist/tools/bash/index.js +485 -0
- package/dist/tools/bash/index.js.map +1 -0
- package/dist/tools/bash/interactive.d.ts +47 -0
- package/dist/tools/bash/interactive.d.ts.map +1 -0
- package/dist/tools/bash/interactive.js +262 -0
- package/dist/tools/bash/interactive.js.map +1 -0
- package/dist/tools/bash/safety.d.ts +149 -0
- package/dist/tools/bash/safety.d.ts.map +1 -0
- package/dist/tools/bash/safety.js +1116 -0
- package/dist/tools/bash/safety.js.map +1 -0
- package/dist/tools/edit.d.ts +57 -0
- package/dist/tools/edit.d.ts.map +1 -0
- package/dist/tools/edit.js +310 -0
- package/dist/tools/edit.js.map +1 -0
- package/dist/tools/glob.d.ts +34 -0
- package/dist/tools/glob.d.ts.map +1 -0
- package/dist/tools/glob.js +268 -0
- package/dist/tools/glob.js.map +1 -0
- package/dist/tools/grep.d.ts +53 -0
- package/dist/tools/grep.d.ts.map +1 -0
- package/dist/tools/grep.js +673 -0
- package/dist/tools/grep.js.map +1 -0
- package/dist/tools/index.d.ts +62 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +52 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/read.d.ts +43 -0
- package/dist/tools/read.d.ts.map +1 -0
- package/dist/tools/read.js +459 -0
- package/dist/tools/read.js.map +1 -0
- package/dist/tools/runtime.d.ts +62 -0
- package/dist/tools/runtime.d.ts.map +1 -0
- package/dist/tools/runtime.js +116 -0
- package/dist/tools/runtime.js.map +1 -0
- package/dist/tools/shared/cwd-tracker.d.ts +32 -0
- package/dist/tools/shared/cwd-tracker.d.ts.map +1 -0
- package/dist/tools/shared/cwd-tracker.js +44 -0
- package/dist/tools/shared/cwd-tracker.js.map +1 -0
- package/dist/tools/shared/edit-history.d.ts +55 -0
- package/dist/tools/shared/edit-history.d.ts.map +1 -0
- package/dist/tools/shared/edit-history.js +72 -0
- package/dist/tools/shared/edit-history.js.map +1 -0
- package/dist/tools/shared/edit-matcher.d.ts +83 -0
- package/dist/tools/shared/edit-matcher.d.ts.map +1 -0
- package/dist/tools/shared/edit-matcher.js +359 -0
- package/dist/tools/shared/edit-matcher.js.map +1 -0
- package/dist/tools/shared/file-mutation-lock.d.ts +22 -0
- package/dist/tools/shared/file-mutation-lock.d.ts.map +1 -0
- package/dist/tools/shared/file-mutation-lock.js +35 -0
- package/dist/tools/shared/file-mutation-lock.js.map +1 -0
- package/dist/tools/shared/gitignore.d.ts +17 -0
- package/dist/tools/shared/gitignore.d.ts.map +1 -0
- package/dist/tools/shared/gitignore.js +59 -0
- package/dist/tools/shared/gitignore.js.map +1 -0
- package/dist/tools/shared/pdf-extractor.d.ts +96 -0
- package/dist/tools/shared/pdf-extractor.d.ts.map +1 -0
- package/dist/tools/shared/pdf-extractor.js +196 -0
- package/dist/tools/shared/pdf-extractor.js.map +1 -0
- package/dist/tools/shared/read-registry.d.ts +66 -0
- package/dist/tools/shared/read-registry.d.ts.map +1 -0
- package/dist/tools/shared/read-registry.js +65 -0
- package/dist/tools/shared/read-registry.js.map +1 -0
- package/dist/tools/shared/safe-env.d.ts +18 -0
- package/dist/tools/shared/safe-env.d.ts.map +1 -0
- package/dist/tools/shared/safe-env.js +70 -0
- package/dist/tools/shared/safe-env.js.map +1 -0
- package/dist/tools/sub-agent.d.ts +91 -0
- package/dist/tools/sub-agent.d.ts.map +1 -0
- package/dist/tools/sub-agent.js +89 -0
- package/dist/tools/sub-agent.js.map +1 -0
- package/dist/tools/task-output.d.ts +38 -0
- package/dist/tools/task-output.d.ts.map +1 -0
- package/dist/tools/task-output.js +186 -0
- package/dist/tools/task-output.js.map +1 -0
- package/dist/tools/tool-search/index.d.ts +40 -0
- package/dist/tools/tool-search/index.d.ts.map +1 -0
- package/dist/tools/tool-search/index.js +110 -0
- package/dist/tools/tool-search/index.js.map +1 -0
- package/dist/tools/tool-search/registry.d.ts +82 -0
- package/dist/tools/tool-search/registry.d.ts.map +1 -0
- package/dist/tools/tool-search/registry.js +238 -0
- package/dist/tools/tool-search/registry.js.map +1 -0
- package/dist/tools/undo-edit.d.ts +51 -0
- package/dist/tools/undo-edit.d.ts.map +1 -0
- package/dist/tools/undo-edit.js +231 -0
- package/dist/tools/undo-edit.js.map +1 -0
- package/dist/tools/web-fetch/cache.d.ts +49 -0
- package/dist/tools/web-fetch/cache.d.ts.map +1 -0
- package/dist/tools/web-fetch/cache.js +89 -0
- package/dist/tools/web-fetch/cache.js.map +1 -0
- package/dist/tools/web-fetch/index.d.ts +53 -0
- package/dist/tools/web-fetch/index.d.ts.map +1 -0
- package/dist/tools/web-fetch/index.js +513 -0
- package/dist/tools/web-fetch/index.js.map +1 -0
- package/dist/tools/write.d.ts +59 -0
- package/dist/tools/write.d.ts.map +1 -0
- package/dist/tools/write.js +316 -0
- package/dist/tools/write.js.map +1 -0
- package/dist/types.d.ts +881 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +16 -0
- package/dist/types.js.map +1 -0
- package/dist/working-tags.d.ts +44 -0
- package/dist/working-tags.d.ts.map +1 -0
- package/dist/working-tags.js +103 -0
- package/dist/working-tags.js.map +1 -0
- package/package.json +87 -0
- package/src/budget-guard.ts +170 -0
- package/src/compaction/compaction.ts +386 -0
- package/src/compaction/failsafe.ts +185 -0
- package/src/compaction/index.ts +1199 -0
- package/src/compaction/microcompaction.ts +709 -0
- package/src/compaction/observational/buffering.ts +430 -0
- package/src/compaction/observational/constants.ts +532 -0
- package/src/compaction/observational/index.ts +837 -0
- package/src/compaction/observational/observer.ts +510 -0
- package/src/compaction/observational/recall-tool.ts +130 -0
- package/src/compaction/observational/reflector.ts +221 -0
- package/src/compaction/observational/types.ts +343 -0
- package/src/context-manager.ts +237 -0
- package/src/cortex-agent.ts +4297 -0
- package/src/error-classifier.ts +199 -0
- package/src/event-bridge.ts +508 -0
- package/src/index.ts +292 -0
- package/src/mcp-client.ts +582 -0
- package/src/model-wrapper.ts +128 -0
- package/src/noop-logger.ts +9 -0
- package/src/prompt-diagnostics.ts +296 -0
- package/src/provider-manager.ts +823 -0
- package/src/provider-registry.ts +386 -0
- package/src/schema-converter.ts +51 -0
- package/src/skill-preprocessor.ts +314 -0
- package/src/skill-registry.ts +378 -0
- package/src/skill-tool.ts +130 -0
- package/src/sub-agent-manager.ts +236 -0
- package/src/token-estimator.ts +26 -0
- package/src/tool-contract.ts +113 -0
- package/src/tool-result-persistence.ts +197 -0
- package/src/tools/bash/index.ts +633 -0
- package/src/tools/bash/interactive.ts +302 -0
- package/src/tools/bash/safety.ts +1297 -0
- package/src/tools/edit.ts +422 -0
- package/src/tools/glob.ts +330 -0
- package/src/tools/grep.ts +819 -0
- package/src/tools/index.ts +110 -0
- package/src/tools/read.ts +580 -0
- package/src/tools/runtime.ts +173 -0
- package/src/tools/shared/cwd-tracker.ts +50 -0
- package/src/tools/shared/edit-history.ts +96 -0
- package/src/tools/shared/edit-matcher.ts +457 -0
- package/src/tools/shared/file-mutation-lock.ts +40 -0
- package/src/tools/shared/gitignore.ts +61 -0
- package/src/tools/shared/pdf-extractor.ts +290 -0
- package/src/tools/shared/read-registry.ts +93 -0
- package/src/tools/shared/safe-env.ts +82 -0
- package/src/tools/sub-agent.ts +171 -0
- package/src/tools/task-output.ts +236 -0
- package/src/tools/tool-search/index.ts +167 -0
- package/src/tools/tool-search/registry.ts +278 -0
- package/src/tools/undo-edit.ts +314 -0
- package/src/tools/web-fetch/cache.ts +112 -0
- package/src/tools/web-fetch/index.ts +604 -0
- package/src/tools/write.ts +385 -0
- package/src/types.ts +1057 -0
- package/src/working-tags.ts +118 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/compaction/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layer 1: Microcompaction (tool result trimming).
|
|
3
|
+
*
|
|
4
|
+
* Progressively reduces the footprint of old tool results in conversation
|
|
5
|
+
* history. Operates in-memory only via transformContext; never modifies
|
|
6
|
+
* the persisted conversation history (agent.state.messages).
|
|
7
|
+
*
|
|
8
|
+
* Two sub-mechanisms:
|
|
9
|
+
* 1. Insertion-time cap: Truncate large tool results at insertion time.
|
|
10
|
+
* 2. Cache-aware token-offset trimming: When the prompt cache has gone
|
|
11
|
+
* cold and context utilization is above the trim floor, walk history
|
|
12
|
+
* from newest to oldest accumulating token offsets. Tool results
|
|
13
|
+
* within the hot zone stay full; beyond it, bookend size shrinks
|
|
14
|
+
* linearly across the degradation span; beyond the span, results
|
|
15
|
+
* become placeholder or clear based on tool category.
|
|
16
|
+
*
|
|
17
|
+
* When a persistResult callback is configured, full content is persisted
|
|
18
|
+
* to disk before any destructive trim (bookend, placeholder, clear) for
|
|
19
|
+
* non-reproducible and computational tools, and the in-context replacement
|
|
20
|
+
* includes the disk path so the agent can Read the content back.
|
|
21
|
+
*
|
|
22
|
+
* References:
|
|
23
|
+
* - compaction-strategy.md (Layer 1: Tool Result Trimming)
|
|
24
|
+
* - observational-memory-architecture.md (cache-aware L1)
|
|
25
|
+
* - tool-result-persistence.md (proactive persistence at execution)
|
|
26
|
+
*/
|
|
27
|
+
import type { AgentMessage } from '../context-manager.js';
|
|
28
|
+
import type { MicrocompactionConfig, ToolCategory } from '../types.js';
|
|
29
|
+
export declare const MICROCOMPACTION_DEFAULTS: MicrocompactionConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Trim instruction for a single tool result message.
|
|
32
|
+
* Describes how to transform the message content for the LLM context.
|
|
33
|
+
*/
|
|
34
|
+
export type TrimAction = {
|
|
35
|
+
kind: 'full';
|
|
36
|
+
} | {
|
|
37
|
+
kind: 'bookend';
|
|
38
|
+
headChars: number;
|
|
39
|
+
tailChars: number;
|
|
40
|
+
originalTokens: number;
|
|
41
|
+
} | {
|
|
42
|
+
kind: 'placeholder';
|
|
43
|
+
toolName: string;
|
|
44
|
+
preview: string;
|
|
45
|
+
} | {
|
|
46
|
+
kind: 'clear';
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Cached trim state. Keyed on history length and a coarse utilization band
|
|
50
|
+
* so the engine can replay identical trim decisions across consecutive
|
|
51
|
+
* transformContext calls when the underlying conversation hasn't changed
|
|
52
|
+
* meaningfully.
|
|
53
|
+
*/
|
|
54
|
+
export interface TrimState {
|
|
55
|
+
/** History length at the time the state was computed. */
|
|
56
|
+
historyLength: number;
|
|
57
|
+
/** Coarse utilization band: floor(usageRatio * 10). */
|
|
58
|
+
utilizationBand: number;
|
|
59
|
+
/** Map from conversation history index to trim action. */
|
|
60
|
+
actions: Map<number, TrimAction>;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Cap a tool result at insertion time. If the result exceeds maxResultTokens,
|
|
64
|
+
* truncate to head + tail bookend format using bookendMaxChars per side.
|
|
65
|
+
*
|
|
66
|
+
* This runs at insertion, NOT in transformContext. The truncated result is
|
|
67
|
+
* stored in conversation history.
|
|
68
|
+
*/
|
|
69
|
+
export declare function capToolResult(content: string, config: Pick<MicrocompactionConfig, 'maxResultTokens' | 'bookendMaxChars'>): string;
|
|
70
|
+
/**
|
|
71
|
+
* Extract the text content from a message's content field.
|
|
72
|
+
* Handles both string content and content arrays.
|
|
73
|
+
* For content arrays, extracts text from 'text' parts and also from
|
|
74
|
+
* 'tool_result' parts that have a 'text' field (which is where
|
|
75
|
+
* pi-agent-core stores tool output).
|
|
76
|
+
*/
|
|
77
|
+
export declare function extractTextContent(message: AgentMessage): string;
|
|
78
|
+
/**
|
|
79
|
+
* Check if a message is a tool result.
|
|
80
|
+
* Pi-agent-core stores tool results as messages with content arrays
|
|
81
|
+
* containing tool_result type parts.
|
|
82
|
+
*/
|
|
83
|
+
export declare function isToolResultMessage(message: AgentMessage): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Check if a message contains a tool use (tool call from the assistant).
|
|
86
|
+
*/
|
|
87
|
+
export declare function isToolUseMessage(message: AgentMessage): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Extract the tool name from a tool result or tool use message.
|
|
90
|
+
* Returns null if the message is not a tool-related message.
|
|
91
|
+
*/
|
|
92
|
+
export declare function extractToolName(message: AgentMessage): string | null;
|
|
93
|
+
/**
|
|
94
|
+
* Get the effective tool category for a tool name.
|
|
95
|
+
*/
|
|
96
|
+
export declare function getToolCategory(toolName: string, customCategories?: Record<string, ToolCategory>): ToolCategory | undefined;
|
|
97
|
+
/**
|
|
98
|
+
* Compute the effective hot zone size in tokens.
|
|
99
|
+
* `max(hotZoneMinTokens, contextWindow * hotZoneRatio)`.
|
|
100
|
+
*/
|
|
101
|
+
export declare function computeHotZone(contextWindow: number, config: Pick<MicrocompactionConfig, 'hotZoneMinTokens' | 'hotZoneRatio'>): number;
|
|
102
|
+
/**
|
|
103
|
+
* Resolve the effective extended retention multiplier. When the config value
|
|
104
|
+
* is undefined, use 1.0 if a persister is configured (content recoverable
|
|
105
|
+
* from disk) or 1.5 if not (content is truly lost on trim).
|
|
106
|
+
*/
|
|
107
|
+
export declare function resolveExtendedRetentionMultiplier(config: MicrocompactionConfig): number;
|
|
108
|
+
/**
|
|
109
|
+
* Determine the trim action for a tool result based on its token offset
|
|
110
|
+
* from the most recent message.
|
|
111
|
+
*
|
|
112
|
+
* @param message - The tool result message
|
|
113
|
+
* @param tokenOffset - Cumulative tokens between this message and the end of history
|
|
114
|
+
* @param hotZone - Hot zone size in tokens (preserved fully)
|
|
115
|
+
* @param degradationSpan - Degradation span in tokens (bookend size shrinks across this span)
|
|
116
|
+
* @param config - Microcompaction config
|
|
117
|
+
* @param extendedMultiplier - Resolved extended retention multiplier for non-reproducible tools
|
|
118
|
+
*/
|
|
119
|
+
export declare function computeAction(message: AgentMessage, tokenOffset: number, hotZone: number, degradationSpan: number, config: MicrocompactionConfig, extendedMultiplier: number): TrimAction;
|
|
120
|
+
/**
|
|
121
|
+
* Compute the full trim state by walking history from newest to oldest,
|
|
122
|
+
* accumulating token offsets.
|
|
123
|
+
*/
|
|
124
|
+
export declare function computeTrimState(history: AgentMessage[], contextWindow: number, usageRatio: number, config: MicrocompactionConfig): TrimState;
|
|
125
|
+
/**
|
|
126
|
+
* Apply a bookend trim to content.
|
|
127
|
+
*/
|
|
128
|
+
export declare function applyBookend(content: string, headChars: number, tailChars: number, originalTokens: number): string;
|
|
129
|
+
/**
|
|
130
|
+
* Apply a bookend trim with a persisted file reference. The agent can
|
|
131
|
+
* Read the path to recover the trimmed middle portion.
|
|
132
|
+
*/
|
|
133
|
+
export declare function applyBookendWithPersistence(content: string, headChars: number, tailChars: number, originalTokens: number, toolName: string, path: string): string;
|
|
134
|
+
/**
|
|
135
|
+
* Apply a trim action to a message, returning a new message.
|
|
136
|
+
*
|
|
137
|
+
* Preserves the content array structure for tool_result messages so that
|
|
138
|
+
* tool_use_id linkage is maintained. The Anthropic API requires every
|
|
139
|
+
* tool_use block to have a matching tool_result with the same tool_use_id;
|
|
140
|
+
* replacing the content with a plain string would break this contract.
|
|
141
|
+
*/
|
|
142
|
+
export declare function applyTrimAction(message: AgentMessage, action: TrimAction): AgentMessage;
|
|
143
|
+
/**
|
|
144
|
+
* Stateful engine for microcompaction. Caches trim state across consecutive
|
|
145
|
+
* calls with the same history length and utilization band so the same trim
|
|
146
|
+
* decisions are replayed when the conversation hasn't changed.
|
|
147
|
+
*/
|
|
148
|
+
export declare class MicrocompactionEngine {
|
|
149
|
+
private readonly config;
|
|
150
|
+
private cachedState;
|
|
151
|
+
constructor(config?: Partial<MicrocompactionConfig>);
|
|
152
|
+
/**
|
|
153
|
+
* Whether a persist callback is configured.
|
|
154
|
+
*/
|
|
155
|
+
get hasPersistCallback(): boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Get the current config (for testing/inspection).
|
|
158
|
+
*/
|
|
159
|
+
getConfig(): MicrocompactionConfig;
|
|
160
|
+
/**
|
|
161
|
+
* Cap a tool result at insertion time.
|
|
162
|
+
*/
|
|
163
|
+
capAtInsertion(content: string): string;
|
|
164
|
+
/**
|
|
165
|
+
* Apply microcompaction to conversation history messages.
|
|
166
|
+
* Called inside transformContext. Returns a new array; never modifies the input.
|
|
167
|
+
*
|
|
168
|
+
* Cache-aware gating:
|
|
169
|
+
* - When `cacheCold` is false (cache warm), L1 is dormant and history
|
|
170
|
+
* is returned untouched. This preserves cache hits during active use.
|
|
171
|
+
* - When `cacheCold` is true, L1 may run if utilization is at or above
|
|
172
|
+
* `trimFloorRatio` (default 25%).
|
|
173
|
+
*
|
|
174
|
+
* Token-offset trimming:
|
|
175
|
+
* Walks history from newest to oldest. Tool results within the hot zone
|
|
176
|
+
* stay full. Beyond the hot zone, bookend size shrinks linearly across
|
|
177
|
+
* the degradation span. Beyond the span, results become placeholder or
|
|
178
|
+
* clear based on tool category.
|
|
179
|
+
*
|
|
180
|
+
* Persistence:
|
|
181
|
+
* When a persistResult callback is configured, full content is saved to
|
|
182
|
+
* disk before any destructive action (bookend, placeholder, clear) for
|
|
183
|
+
* non-reproducible and computational tools. The in-context replacement
|
|
184
|
+
* includes the disk path so the agent can Read the content back.
|
|
185
|
+
*
|
|
186
|
+
* @param history - Conversation history messages (post-slot region)
|
|
187
|
+
* @param contextWindow - Total context window size in tokens
|
|
188
|
+
* @param currentTokens - Current estimated token count
|
|
189
|
+
* @param options.cacheCold - Whether the prompt cache has expired (or is unused)
|
|
190
|
+
* @returns Potentially trimmed conversation history
|
|
191
|
+
*/
|
|
192
|
+
apply(history: AgentMessage[], contextWindow: number, currentTokens: number, options?: {
|
|
193
|
+
cacheCold: boolean;
|
|
194
|
+
}): Promise<AgentMessage[]>;
|
|
195
|
+
/**
|
|
196
|
+
* If a persistResult callback is configured and the action is destructive
|
|
197
|
+
* (bookend, placeholder, or clear), persist each non-reproducible or
|
|
198
|
+
* computational tool_result part's content to disk individually and
|
|
199
|
+
* replace each part's text with a path-referencing representation.
|
|
200
|
+
*
|
|
201
|
+
* Multi-part messages (from parallel tool calls) get per-part treatment so
|
|
202
|
+
* each part's disk path maps back to its own content.
|
|
203
|
+
*
|
|
204
|
+
* Parts that don't qualify for persistence (rereadable, ephemeral, no
|
|
205
|
+
* callback, or non-tool-result parts) still get the standard trim action
|
|
206
|
+
* applied to their own text.
|
|
207
|
+
*/
|
|
208
|
+
private maybePersistBeforeTrim;
|
|
209
|
+
/**
|
|
210
|
+
* Reset the cached trim state. Called after Layer 2 compaction
|
|
211
|
+
* replaces conversation history.
|
|
212
|
+
*/
|
|
213
|
+
resetCache(): void;
|
|
214
|
+
/**
|
|
215
|
+
* Get the cached state (for testing/inspection).
|
|
216
|
+
*/
|
|
217
|
+
getCachedState(): TrimState | null;
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=microcompaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"microcompaction.d.ts","sourceRoot":"","sources":["../../src/compaction/microcompaction.ts"],"names":[],"mappings":"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"}
|