UNPKG

@vfarcic/dot-ai

Version:

AI-powered development productivity platform that enhances software development workflows through intelligent automation and AI-driven assistance

69 lines 2.19 kB
/** * Query Tool - Natural Language Cluster Intelligence * * Provides natural language query interface to discover and understand * cluster capabilities and resources. * * PRD #291: Cluster Query Tool - Natural Language Cluster Intelligence */ import { z } from 'zod'; import { PluginManager } from '../core/plugin-manager'; import { CachedVisualization } from '../core/visualization'; export declare const QUERY_TOOL_NAME = "query"; export declare const QUERY_TOOL_DESCRIPTION = "Natural language query interface for Kubernetes cluster intelligence. Ask any questions about your cluster resources, capabilities, and status in plain English. Examples: \"What databases are running?\", \"Describe the nginx deployment\", \"Show me pods in the kube-system namespace\", \"What operators are installed?\", \"Is my-postgres healthy?\""; export declare const QUERY_TOOL_INPUT_SCHEMA: { intent: z.ZodString; interaction_id: z.ZodOptional<z.ZodString>; }; export interface QueryInput { intent: string; interaction_id?: string; } export interface QuerySessionData { toolName: 'query'; intent: string; summary: string; toolsUsed: string[]; iterations: number; toolCallsExecuted: Array<{ tool: string; input: unknown; output: unknown; }>; cachedVisualization?: CachedVisualization; } export interface QueryOutput { success: boolean; summary: string; toolsUsed: string[]; iterations: number; sessionId?: string; visualizationUrl?: string; agentInstructions: string; error?: { code: string; message: string; }; content?: Array<{ type: string; text: string; }>; } /** * Main query tool handler * * PRD #343: When pluginManager is provided, kubectl tools are routed through * the plugin system instead of local execution. */ interface QueryToolArgs { intent?: string; interaction_id?: string; } export declare function handleQueryTool(args: QueryToolArgs, pluginManager?: PluginManager): Promise<QueryOutput | { content: Array<{ type: string; text: string; }>; }>; export {}; //# sourceMappingURL=query.d.ts.map