@vfarcic/dot-ai 0.89.0 → 0.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Remediate Tool - AI-powered Kubernetes issue analysis and remediation
3
+ */
4
+ import { z } from 'zod';
5
+ export declare const REMEDIATE_TOOL_NAME = "remediate";
6
+ export declare const REMEDIATE_TOOL_DESCRIPTION = "AI-powered Kubernetes issue analysis that provides root cause identification and actionable remediation steps. Unlike basic kubectl commands, this tool performs multi-step investigation, correlates cluster data, and generates intelligent solutions. Use when users want to understand WHY something is broken, not just see raw status. Ideal for: troubleshooting failures, diagnosing performance issues, analyzing pod problems, investigating networking/storage issues, or any \"what's wrong\" questions.";
7
+ export declare const SAFE_OPERATIONS: readonly ["get", "describe", "logs", "events", "top", "explain"];
8
+ export type SafeOperation = typeof SAFE_OPERATIONS[number];
9
+ export declare const REMEDIATE_TOOL_INPUT_SCHEMA: {
10
+ issue: z.ZodOptional<z.ZodString>;
11
+ context: z.ZodOptional<z.ZodObject<{
12
+ event: z.ZodOptional<z.ZodAny>;
13
+ logs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
14
+ metrics: z.ZodOptional<z.ZodAny>;
15
+ podSpec: z.ZodOptional<z.ZodAny>;
16
+ relatedEvents: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
17
+ }, "strip", z.ZodTypeAny, {
18
+ logs?: string[] | undefined;
19
+ event?: any;
20
+ metrics?: any;
21
+ podSpec?: any;
22
+ relatedEvents?: any[] | undefined;
23
+ }, {
24
+ logs?: string[] | undefined;
25
+ event?: any;
26
+ metrics?: any;
27
+ podSpec?: any;
28
+ relatedEvents?: any[] | undefined;
29
+ }>>;
30
+ mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<["manual", "automatic"]>>>;
31
+ confidenceThreshold: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
32
+ maxRiskLevel: z.ZodDefault<z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>>;
33
+ executeChoice: z.ZodOptional<z.ZodNumber>;
34
+ sessionId: z.ZodOptional<z.ZodString>;
35
+ executedCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
36
+ };
37
+ export interface RemediateInput {
38
+ issue?: string;
39
+ context?: {
40
+ event?: any;
41
+ logs?: string[];
42
+ metrics?: any;
43
+ podSpec?: any;
44
+ relatedEvents?: any[];
45
+ };
46
+ mode?: 'manual' | 'automatic';
47
+ confidenceThreshold?: number;
48
+ maxRiskLevel?: 'low' | 'medium' | 'high';
49
+ executeChoice?: number;
50
+ sessionId?: string;
51
+ executedCommands?: string[];
52
+ }
53
+ export interface DataRequest {
54
+ type: string;
55
+ resource: string;
56
+ namespace?: string;
57
+ args?: string[];
58
+ rationale: string;
59
+ }
60
+ export interface InvestigationIteration {
61
+ step: number;
62
+ aiAnalysis: string;
63
+ dataRequests: DataRequest[];
64
+ gatheredData: {
65
+ [key: string]: any;
66
+ };
67
+ complete: boolean;
68
+ timestamp: Date;
69
+ }
70
+ export interface RemediateSession {
71
+ sessionId: string;
72
+ issue: string;
73
+ initialContext: any;
74
+ mode: 'manual' | 'automatic';
75
+ iterations: InvestigationIteration[];
76
+ finalAnalysis?: RemediateOutput;
77
+ created: Date;
78
+ updated: Date;
79
+ status: 'investigating' | 'analysis_complete' | 'failed' | 'executed_successfully' | 'executed_with_errors' | 'cancelled';
80
+ executionResults?: ExecutionResult[];
81
+ }
82
+ export interface RemediationAction {
83
+ description: string;
84
+ command?: string;
85
+ risk: 'low' | 'medium' | 'high';
86
+ rationale: string;
87
+ }
88
+ export interface ExecutionResult {
89
+ action: string;
90
+ success: boolean;
91
+ output?: string;
92
+ error?: string;
93
+ timestamp: Date;
94
+ }
95
+ export interface ExecutionChoice {
96
+ id: number;
97
+ label: string;
98
+ description: string;
99
+ risk?: 'low' | 'medium' | 'high';
100
+ }
101
+ export interface RemediateOutput {
102
+ status: 'success' | 'failed' | 'awaiting_user_approval';
103
+ sessionId: string;
104
+ investigation: {
105
+ iterations: number;
106
+ dataGathered: string[];
107
+ };
108
+ analysis: {
109
+ rootCause: string;
110
+ confidence: number;
111
+ factors: string[];
112
+ };
113
+ remediation: {
114
+ summary: string;
115
+ actions: RemediationAction[];
116
+ risk: 'low' | 'medium' | 'high';
117
+ };
118
+ validationIntent?: string;
119
+ guidance?: string;
120
+ agentInstructions?: string;
121
+ nextAction?: string;
122
+ message?: string;
123
+ executionChoices?: ExecutionChoice[];
124
+ executed?: boolean;
125
+ results?: ExecutionResult[];
126
+ fallbackReason?: string;
127
+ mode?: 'manual' | 'automatic';
128
+ }
129
+ /**
130
+ * AI Response interface matching our prompt format
131
+ */
132
+ interface AIInvestigationResponse {
133
+ analysis: string;
134
+ dataRequests: DataRequest[];
135
+ investigationComplete: boolean;
136
+ confidence: number;
137
+ reasoning: string;
138
+ needsMoreSpecificInfo?: boolean;
139
+ }
140
+ /**
141
+ * AI Final Analysis Response interface matching final analysis prompt format
142
+ */
143
+ interface AIFinalAnalysisResponse {
144
+ issueStatus: 'active' | 'resolved' | 'non_existent';
145
+ rootCause: string;
146
+ confidence: number;
147
+ factors: string[];
148
+ remediation: {
149
+ summary: string;
150
+ actions: RemediationAction[];
151
+ risk: 'low' | 'medium' | 'high';
152
+ };
153
+ validationIntent?: string;
154
+ }
155
+ /**
156
+ * Parse AI final analysis response
157
+ */
158
+ export declare function parseAIFinalAnalysis(aiResponse: string): AIFinalAnalysisResponse;
159
+ /**
160
+ * Parse AI response for data requests and investigation status
161
+ */
162
+ export declare function parseAIResponse(aiResponse: string): {
163
+ dataRequests: DataRequest[];
164
+ isComplete: boolean;
165
+ needsMoreSpecificInfo?: boolean;
166
+ parsedResponse?: AIInvestigationResponse;
167
+ };
168
+ /**
169
+ * Main tool handler for remediate tool
170
+ */
171
+ export declare function handleRemediateTool(args: any): Promise<any>;
172
+ export {};
173
+ //# sourceMappingURL=remediate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remediate.d.ts","sourceRoot":"","sources":["../../src/tools/remediate.ts"],"names":[],"mappings":"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"}