import type { ToolStubModeConfig } from "../config/types.tools.js"; import type { AnyAgentTool } from "./pi-tools.types.js"; /** * Strips a tool's parameter schema to a minimal stub. * The tool retains its name, description, and execute function, * but parameters become an empty object schema. */ export declare function stripToStubSchema(tool: AnyAgentTool): AnyAgentTool; /** * Apply stub mode to a list of tools based on configuration. * Tools in fullSchemaTools retain their full schemas. */ export declare function applyStubMode(tools: AnyAgentTool[], config: ToolStubModeConfig | undefined): AnyAgentTool[]; /** * Generate tool usage guidance for the system prompt. * This provides the model with parameter information that was stripped from schemas. */ export declare function generateToolStubGuidance(tools: AnyAgentTool[]): string; /** * Build compact tool guidance for common coding tools. * This is optimized for local models with limited context. * @param excludeTools - Tool names to exclude (e.g., tools with full schemas) */ export declare function buildCompactToolGuidance(excludeTools?: string[]): string;