/** * Sandboxed Python REPL executor for the RLM engine. * * Spawns a persistent Python subprocess with pre-loaded variables. * Code execution is sandboxed: dangerous imports are blocked, * filesystem access is restricted, and each execution has a timeout. */ export declare class REPLExecutor { private process; private variables; private functions; private tempDir; private ready; constructor(); /** * Set a variable in the REPL environment. * Must be called before start() for the variable to be available. */ setVariable(name: string, value: string): void; /** * Register a callable function (e.g., recursive_llm). * These are intercepted via a special protocol in the REPL output. */ registerFunction(name: string, fn: (...args: string[]) => Promise): void; /** * Start the Python REPL subprocess. */ start(): Promise; /** * Execute a code string in the REPL and return the output. */ execute(code: string): Promise; /** * Check code for dangerous operations. */ private checkCodeSafety; /** * Wait for a specific sentinel string in the process output. */ private waitForOutput; /** * Build the Python bootstrap script that runs in the subprocess. */ private buildBootstrapScript; /** * Stop the REPL subprocess and clean up. */ stop(): Promise; } //# sourceMappingURL=repl-executor.d.ts.map