ai-debug-local-mcp
Version:
🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh
91 lines • 2.58 kB
TypeScript
/**
* Intelligent Tool Selection System
* Limits tools based on context to improve LLM performance (following Wordware's <15 tools rule)
*/
import { EnhancedTool, DebugContext, ToolSelectionStrategy } from '../types/enhanced-tool-metadata';
export interface ToolScore {
tool: EnhancedTool;
score: number;
reasoning: string[];
}
export interface ToolSelectionResult {
selectedTools: EnhancedTool[];
totalAvailable: number;
selectionReasoning: string;
alternativeTools: EnhancedTool[];
}
/**
* Intelligent Tool Selector
* Selects optimal subset of tools based on current debugging context
*/
export declare class IntelligentToolSelector {
private allTools;
private userHistory;
private selectionStrategy;
constructor(strategy?: Partial<ToolSelectionStrategy>);
/**
* Register available tools
*/
registerTools(tools: EnhancedTool[]): void;
/**
* Select optimal tools for current context
*/
selectTools(context: DebugContext, requestedCategories?: string[]): ToolSelectionResult;
/**
* Score tools based on current context
*/
private scoreTools;
/**
* Calculate framework compatibility score
*/
private calculateFrameworkScore;
/**
* Calculate user history score based on past usage
*/
private calculateUserHistoryScore;
/**
* Calculate cost efficiency score
*/
private calculateCostScore;
/**
* Calculate authority level appropriateness score
*/
private calculateAuthorityScore;
/**
* Generate reasoning for tool selection
*/
private generateToolReasoning;
/**
* Generate overall selection reasoning
*/
private generateSelectionReasoning;
/**
* Get human-readable phase description
*/
private getPhaseDescription;
/**
* Count tools by category
*/
private countCategories;
/**
* Record tool usage for learning
*/
recordToolUsage(toolName: string): void;
/**
* Get tool recommendations based on current context
*/
getToolRecommendations(context: DebugContext, excludeTools?: string[]): EnhancedTool[];
/**
* Explain why a tool was or wasn't selected
*/
explainToolSelection(toolName: string, context: DebugContext): string;
/**
* Update selection strategy
*/
updateStrategy(updates: Partial<ToolSelectionStrategy>): void;
/**
* Get current selection strategy
*/
getStrategy(): ToolSelectionStrategy;
}
//# sourceMappingURL=tool-selector.d.ts.map