@mrtkrcm/acp-claude-code
Version:
ACP (Agent Client Protocol) bridge for Claude Code
67 lines • 1.95 kB
TypeScript
import { ContextMonitor } from './context-monitor.js';
interface ContextChunk {
id: string;
content: string;
type: 'system' | 'user' | 'assistant' | 'tool_result';
timestamp: number;
importance: number;
dependencies?: string[];
tokenCount: number;
}
export declare class ContextOptimizer {
private sessionContexts;
private contextSummaries;
private readonly logger;
private readonly contextMonitor;
private readonly strategies;
constructor(contextMonitor: ContextMonitor);
/**
* Add a new context chunk to a session
*/
addContextChunk(sessionId: string, chunk: ContextChunk): void;
/**
* Optimize context for a session based on current usage
*/
optimizeContext(sessionId: string, strategy?: keyof typeof this.strategies): {
optimizedContext: string;
stats: {
originalTokens: number;
optimizedTokens: number;
chunksRemoved: number;
compressionRatio: number;
};
};
private applyOptimizationStrategy;
private resolveDependencies;
private compressChunks;
private createSummaryChunk;
private extractivelyCompress;
/**
* Analyze context usage and recommend optimization
*/
analyzeContextHealth(sessionId: string): {
status: 'healthy' | 'warning' | 'critical';
recommendations: string[];
stats: {
totalTokens: number;
chunkCount: number;
avgChunkSize: number;
oldestChunk: number;
};
};
/**
* Clear context for a session
*/
clearSessionContext(sessionId: string): void;
/**
* Get optimization statistics
*/
getOptimizationStats(): {
totalSessions: number;
totalChunks: number;
totalTokens: number;
sessionsNeedingOptimization: number;
};
}
export {};
//# sourceMappingURL=context-optimizer.d.ts.map