/** * LEAN CODING AGENT * * A streamlined, unified coding assistant that consolidates all * capabilities into a single, efficient agent architecture. * * Features: * - Unified tool suite (filesystem, edit, search, bash, git, web) * - Context management with auto-pruning * - Loop detection and recovery * - Multi-provider support * - Streaming responses */ import { type AgentCallbacks } from './core/agent.js'; import { type UnifiedCodingOptions } from './capabilities/unifiedCodingCapability.js'; import type { LLMProvider } from './core/types.js'; export interface LeanAgentConfig { /** LLM provider instance */ provider: LLMProvider; /** Working directory for file operations */ workingDir?: string; /** System prompt for the agent */ systemPrompt?: string; /** Capability options */ capabilities?: UnifiedCodingOptions; /** Context window size for pruning */ contextWindowSize?: number; /** Provider ID for tracking */ providerId?: string; /** Model ID for tracking */ modelId?: string; /** Event callbacks */ callbacks?: AgentCallbacks; } export interface LeanAgentResponse { content: string; toolsUsed: string[]; tokensUsed?: number; elapsedMs?: number; } export declare class LeanAgent { private runtime; private toolRuntime; private config; private toolsUsed; private initialized; constructor(config: LeanAgentConfig); private initializeCapability; /** * Send a message to the agent and get a response */ chat(message: string, streaming?: boolean): Promise; /** * Request cancellation of current operation */ cancel(): void; /** * Check if agent is currently processing */ isRunning(): boolean; /** * Clear conversation history */ clearHistory(): void; /** * Get conversation history */ getHistory(): import("./core/types.js").ConversationMessage[]; private getDefaultSystemPrompt; } export declare function createLeanAgent(config: LeanAgentConfig): LeanAgent; export default LeanAgent; //# sourceMappingURL=leanAgent.d.ts.map