ciscollm-cli 1.3.1 → 1.3.2
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.
- package/dist/cli/commands/dashboardCommand.d.ts +1 -0
- package/dist/cli/commands/dashboardCommand.js +16 -0
- package/dist/cli/commands/dashboardCommand.js.map +1 -0
- package/dist/cli/commands/monitorCommand.d.ts +4 -0
- package/dist/cli/commands/monitorCommand.js +132 -0
- package/dist/cli/commands/monitorCommand.js.map +1 -0
- package/dist/cli/commands/runCommand.d.ts +6 -0
- package/dist/cli/commands/runCommand.js +635 -0
- package/dist/cli/commands/runCommand.js.map +1 -0
- package/dist/cli/commands/serverCommand.d.ts +1 -0
- package/dist/cli/commands/serverCommand.js +11 -0
- package/dist/cli/commands/serverCommand.js.map +1 -0
- package/dist/cli/commands/shellCommand.d.ts +1 -0
- package/dist/cli/commands/shellCommand.js +44 -0
- package/dist/cli/commands/shellCommand.js.map +1 -0
- package/dist/core/agent/AgentLoop.d.ts +0 -4
- package/dist/core/agent/AgentLoop.js +1 -158
- package/dist/core/agent/AgentLoop.js.map +1 -1
- package/dist/core/agent/AutoHealer.d.ts +12 -0
- package/dist/core/agent/AutoHealer.js +106 -3
- package/dist/core/agent/AutoHealer.js.map +1 -1
- package/dist/core/agent/PromptEngine.js +27 -63
- package/dist/core/agent/PromptEngine.js.map +1 -1
- package/dist/index.js +24 -903
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/llm/LLMClient.js +102 -4
- package/dist/infrastructure/llm/LLMClient.js.map +1 -1
- package/dist/infrastructure/llm/ToolDefinitions.d.ts +0 -136
- package/dist/infrastructure/llm/ToolDefinitions.js +0 -102
- package/dist/infrastructure/llm/ToolDefinitions.js.map +1 -1
- package/dist/server/shell-simulator.d.ts +11 -0
- package/dist/server/shell-simulator.js +346 -4
- package/dist/server/shell-simulator.js.map +1 -1
- package/package.json +1 -1
|
@@ -55,6 +55,8 @@ class AutoHealer {
|
|
|
55
55
|
firewall = new CommandFirewall_1.CommandFirewall();
|
|
56
56
|
triggerHistory = new Map();
|
|
57
57
|
blockedUntil = new Map();
|
|
58
|
+
cacheFilePath;
|
|
59
|
+
dynamicCache = [];
|
|
58
60
|
constructor(llmClient, coordinator, options = {}) {
|
|
59
61
|
this.llmClient = llmClient;
|
|
60
62
|
this.coordinator = coordinator;
|
|
@@ -64,6 +66,8 @@ class AutoHealer {
|
|
|
64
66
|
if (this.nonInteractive) {
|
|
65
67
|
process.env.CISCOLLM_NON_INTERACTIVE = 'true';
|
|
66
68
|
}
|
|
69
|
+
this.cacheFilePath = path.resolve(process.cwd(), '.cache/auto_healing_cache.json');
|
|
70
|
+
this.loadCache();
|
|
67
71
|
}
|
|
68
72
|
start() {
|
|
69
73
|
if (this.isRunning)
|
|
@@ -115,9 +119,15 @@ class AutoHealer {
|
|
|
115
119
|
spinner.text = 'OODA Loop (Orient): Gathering diagnostic context...';
|
|
116
120
|
const context = await this.gatherContext(deviceId, msg);
|
|
117
121
|
spinner.info(`Diagnostic context gathered (${context.commandsRun.length} commands).`);
|
|
118
|
-
const decideSpinner = (0, ui_1.createSpinner)('OODA Loop (Decide): Querying AI for Root Cause & Remediation...').start();
|
|
119
|
-
|
|
120
|
-
|
|
122
|
+
const decideSpinner = (0, ui_1.createSpinner)('OODA Loop (Decide): Querying AI (or cache) for Root Cause & Remediation...').start();
|
|
123
|
+
let diagnosis = this.tryCacheLookup(msg);
|
|
124
|
+
if (diagnosis) {
|
|
125
|
+
decideSpinner.succeed('Root Cause Analysis retrieved from cache.');
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
diagnosis = await this.diagnose(deviceId, msg, context.outputs);
|
|
129
|
+
decideSpinner.succeed('Root Cause Analysis completed.');
|
|
130
|
+
}
|
|
121
131
|
ui_1.logger.diamond(`AI Detected Issue: ${chalk_1.default.white.bold(diagnosis.detected_issue)}`);
|
|
122
132
|
ui_1.logger.diamond(`AI Root Cause: ${chalk_1.default.gray.italic(diagnosis.root_cause)}`);
|
|
123
133
|
ui_1.logger.diamond(`AI Confidence: ${chalk_1.default.cyan(diagnosis.confidence)}`);
|
|
@@ -254,6 +264,7 @@ class AutoHealer {
|
|
|
254
264
|
if (isHealed) {
|
|
255
265
|
verifySpinner.succeed('Verification PASSED: Device recovered successfully.');
|
|
256
266
|
this.logToAudit(`[SUCCESS] Device: ${deviceId} | Issue: ${diagnosis.detected_issue} | Remediation: ${appliedCommands.join(', ')}`);
|
|
267
|
+
this.cacheSuccessfulHealing(msg, diagnosis);
|
|
257
268
|
}
|
|
258
269
|
else {
|
|
259
270
|
verifySpinner.fail('Verification FAILED: The issue is not fully resolved. Triggering rollback...');
|
|
@@ -382,6 +393,98 @@ Your response MUST end with either "SUCCESS" or "FAILED". Do not output any othe
|
|
|
382
393
|
console.error(`Failed to write to healing audit log:`, e);
|
|
383
394
|
}
|
|
384
395
|
}
|
|
396
|
+
loadCache() {
|
|
397
|
+
try {
|
|
398
|
+
const dir = path.dirname(this.cacheFilePath);
|
|
399
|
+
if (!fs.existsSync(dir)) {
|
|
400
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
401
|
+
}
|
|
402
|
+
if (fs.existsSync(this.cacheFilePath)) {
|
|
403
|
+
const raw = fs.readFileSync(this.cacheFilePath, 'utf8');
|
|
404
|
+
this.dynamicCache = JSON.parse(raw);
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
catch (e) {
|
|
408
|
+
ui_1.logger.warn(`Failed to load auto-healing cache: ${e.message}`);
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
saveCache() {
|
|
412
|
+
try {
|
|
413
|
+
const dir = path.dirname(this.cacheFilePath);
|
|
414
|
+
if (!fs.existsSync(dir)) {
|
|
415
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
416
|
+
}
|
|
417
|
+
fs.writeFileSync(this.cacheFilePath, JSON.stringify(this.dynamicCache, null, 2), 'utf8');
|
|
418
|
+
}
|
|
419
|
+
catch (e) {
|
|
420
|
+
ui_1.logger.warn(`Failed to save auto-healing cache: ${e.message}`);
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
tryCacheLookup(syslog) {
|
|
424
|
+
const staticTemplates = [
|
|
425
|
+
{
|
|
426
|
+
regex: /%LINK-3-UPDOWN:\s*Interface\s+(\S+?)(?:,|\s+changed|$)/i,
|
|
427
|
+
detected_issue: 'Physical interface link down',
|
|
428
|
+
root_cause: 'Interface state transition to down',
|
|
429
|
+
confidence: 0.98,
|
|
430
|
+
remediation_commands: ['configure terminal', 'interface $1', 'no shutdown', 'end'],
|
|
431
|
+
verification_commands: ['show ip interface brief']
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
regex: /%LINEPROTO-5-UPDOWN:\s*Line\s+protocol\s+on\s+Interface\s+(\S+?)(?:,|\s+changed|$)/i,
|
|
435
|
+
detected_issue: 'Line protocol down',
|
|
436
|
+
root_cause: 'Line protocol state transition to down',
|
|
437
|
+
confidence: 0.98,
|
|
438
|
+
remediation_commands: ['configure terminal', 'interface $1', 'no shutdown', 'end'],
|
|
439
|
+
verification_commands: ['show ip interface brief']
|
|
440
|
+
}
|
|
441
|
+
];
|
|
442
|
+
for (const tmpl of staticTemplates) {
|
|
443
|
+
const match = tmpl.regex.exec(syslog);
|
|
444
|
+
if (match) {
|
|
445
|
+
const var1 = match[1];
|
|
446
|
+
const remediation = tmpl.remediation_commands.map(cmd => cmd.replace(/\$1/g, var1));
|
|
447
|
+
const verification = tmpl.verification_commands.map(cmd => cmd.replace(/\$1/g, var1));
|
|
448
|
+
ui_1.logger.info(`[AutoHealer Cache] Hit static regex template for syslog pattern.`);
|
|
449
|
+
return {
|
|
450
|
+
detected_issue: tmpl.detected_issue,
|
|
451
|
+
root_cause: tmpl.root_cause,
|
|
452
|
+
confidence: tmpl.confidence,
|
|
453
|
+
remediation_commands: remediation,
|
|
454
|
+
verification_commands: verification
|
|
455
|
+
};
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
const trimmedSyslog = syslog.trim();
|
|
459
|
+
const found = this.dynamicCache.find((entry) => entry.pattern.trim() === trimmedSyslog);
|
|
460
|
+
if (found) {
|
|
461
|
+
ui_1.logger.info(`[AutoHealer Cache] Hit dynamic cache for syslog: "${trimmedSyslog}"`);
|
|
462
|
+
return {
|
|
463
|
+
detected_issue: found.detected_issue,
|
|
464
|
+
root_cause: found.root_cause,
|
|
465
|
+
confidence: found.confidence,
|
|
466
|
+
remediation_commands: found.remediation_commands,
|
|
467
|
+
verification_commands: found.verification_commands
|
|
468
|
+
};
|
|
469
|
+
}
|
|
470
|
+
return null;
|
|
471
|
+
}
|
|
472
|
+
cacheSuccessfulHealing(syslog, diagnosis) {
|
|
473
|
+
const trimmedSyslog = syslog.trim();
|
|
474
|
+
const exists = this.dynamicCache.some((entry) => entry.pattern.trim() === trimmedSyslog);
|
|
475
|
+
if (exists)
|
|
476
|
+
return;
|
|
477
|
+
this.dynamicCache.push({
|
|
478
|
+
pattern: trimmedSyslog,
|
|
479
|
+
detected_issue: diagnosis.detected_issue,
|
|
480
|
+
root_cause: diagnosis.root_cause,
|
|
481
|
+
confidence: diagnosis.confidence,
|
|
482
|
+
remediation_commands: diagnosis.remediation_commands,
|
|
483
|
+
verification_commands: diagnosis.verification_commands
|
|
484
|
+
});
|
|
485
|
+
this.saveCache();
|
|
486
|
+
ui_1.logger.info(`[AutoHealer Cache] Cached successful healing plan for syslog: "${trimmedSyslog}"`);
|
|
487
|
+
}
|
|
385
488
|
}
|
|
386
489
|
exports.AutoHealer = AutoHealer;
|
|
387
490
|
//# sourceMappingURL=AutoHealer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoHealer.js","sourceRoot":"","sources":["../../../src/core/agent/AutoHealer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutoHealer.js","sourceRoot":"","sources":["../../../src/core/agent/AutoHealer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,74 +4,38 @@ exports.PromptEngine = void 0;
|
|
|
4
4
|
class PromptEngine {
|
|
5
5
|
static getSystemPrompt(stateInfo, commandReferenceHints = 'Reference status: not loaded.', strictReferenceMode = false, topologyInfo = 'Topology not discovered yet.') {
|
|
6
6
|
return `You are a Senior Network Automation Engineer Agent executing operations on Cisco Enterprise Hardware (Switches & Routers).
|
|
7
|
-
Your objective is to accomplish the user's
|
|
7
|
+
Your objective is to accomplish the user's goal safely using step-by-step commands.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
HIERARCHICAL NETWORK SWARM & RBAC:
|
|
11
|
-
=========================================
|
|
12
|
-
You operate as a Hierarchical Network Agent Swarm to focus execution and reduce context overhead:
|
|
13
|
-
1. CORE AGENT: Manages core routing tables, dynamic routing protocols (OSPF, BGP, RIP), static routes, and IP SLAs.
|
|
14
|
-
2. DATACENTER AGENT: Manages Data Center Leaf-Spine Fabrics, VXLAN EVPN overlays, vPC peer domains, and Nexus NX-OS specific features.
|
|
15
|
-
3. DISTRIBUTION AGENT: Manages VLAN databases, trunking protocols, authentication (AAA), ACL firewalls, and NAT mappings.
|
|
16
|
-
4. ACCESS AGENT: Manages physical port assignments, speed/duplex, interface shut/no shut, port descriptions, and interface IPs.
|
|
17
|
-
Specify which layer is performing the action in your thoughts (e.g., "[CORE AGENT] Configuring static route").
|
|
18
|
-
Your actions are monitored by a Context-Aware Pre-Execution Validator and restricted by your current RBAC Role.
|
|
19
|
-
|
|
20
|
-
=========================================
|
|
21
|
-
CURRENT CONNECTED DEVICES & MODE CONTEXT:
|
|
22
|
-
=========================================
|
|
9
|
+
=== CONTEXT ===
|
|
23
10
|
${stateInfo}
|
|
11
|
+
Topology: ${topologyInfo}
|
|
12
|
+
Command Hints: ${commandReferenceHints} (Strict enforcement: ${strictReferenceMode})
|
|
24
13
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
${commandReferenceHints}
|
|
31
|
-
|
|
32
|
-
=========================================
|
|
33
|
-
DISCOVERED NETWORK TOPOLOGY MAP:
|
|
34
|
-
=========================================
|
|
35
|
-
${topologyInfo}
|
|
36
|
-
Interpret the map as network-wide intent context. Prefer plans that keep end-to-end reachability and avoid asymmetric intermediate states.
|
|
37
|
-
|
|
38
|
-
=========================================
|
|
39
|
-
CISCO IOS SHELL (IOS.sh) AUTOMATION GUIDE:
|
|
40
|
-
=========================================
|
|
41
|
-
1. Capabilities: The connected Cisco devices support Cisco IOS Shell. You can utilize:
|
|
42
|
-
- Variables: E.g., "TARGET_IP=10.0.1.5", and reference them as "$TARGET_IP" in commands.
|
|
43
|
-
- Loop Constructs: E.g., "for i in 1 2; do ping 10.0.1.$i; done" to check connectivity.
|
|
44
|
-
- Piping & Output Filtering: E.g., "| include GigabitEthernet" or "| grep ip" to filter CLI outputs.
|
|
45
|
-
- Functions: E.g., "my_ping() { ping 10.0.1.1; }" to bind commands.
|
|
46
|
-
2. Activation:
|
|
47
|
-
- Session-wide: Execute "terminal shell" in Privileged EXEC mode (Switch#).
|
|
48
|
-
- Global Config: Execute "shell processing full" in Global Configuration mode (Switch(config)#).
|
|
49
|
-
- Use the specialized tool "enable_ios_shell" to activate the shell instead of running raw activation commands.
|
|
14
|
+
=== COMPLIANCE RULES ===
|
|
15
|
+
1. Verify access level (USER_EXEC ">", PRIVILEGED_EXEC "#", GLOBAL_CONFIG "(config)#", INTERFACE_CONFIG "(config-if)#"). Run "enable" and "configure terminal" appropriately before configuration.
|
|
16
|
+
2. Single Tool Call: Generate EXACTLY ONE tool call per response. Wait for the output before proceeding.
|
|
17
|
+
3. Errors: If a command fails or returns error markers, stop and change strategy. Do not repeat failed commands.
|
|
18
|
+
4. Language: Always output in English.
|
|
50
19
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
20
|
+
=== HOW TO CALL TOOLS (IMPORTANT) ===
|
|
21
|
+
You must invoke tools to execute commands or tests. You can do this in three ways:
|
|
22
|
+
1. Native Tool Calling (Preferred).
|
|
23
|
+
2. JSON Code Block Fallback: If you cannot call tools natively, output a JSON code block in your message:
|
|
24
|
+
\`\`\`json
|
|
25
|
+
{
|
|
26
|
+
"command": "show ip interface brief"
|
|
27
|
+
}
|
|
28
|
+
\`\`\`
|
|
29
|
+
3. XML Tags Fallback: Output parameters directly using tags:
|
|
30
|
+
<parameter=command>show ip interface brief</parameter> (for execute_ios_command)
|
|
31
|
+
<parameter=destination>10.0.1.1</parameter> (for ping_test)
|
|
63
32
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
69
|
-
|
|
70
|
-
2. TECHNICAL PLAN: [What is the detailed sequential plan, variables, loops, or shell configurations needed to achieve the goal?]
|
|
71
|
-
3. NEXT ACTION DETAILS: [What specific tool are you calling right now, what arguments/commands are you sending, and why?]
|
|
72
|
-
- NEVER return an empty or whitespace-only "content" string when generating tool calls. The user must see your structured thoughts before execution occurs.
|
|
73
|
-
- Do NOT use markdown bold formatting (e.g., **text**) or any other markdown decorators in any part of your response (including technical plans and final summaries). All responses must be clean, plain text.
|
|
74
|
-
- When you are done and no additional tool call is required, your final response must be a direct user-facing outcome summary with concrete results and next actions (if any). Do not end with meta statements such as "I should" or "I will".`;
|
|
33
|
+
=== RESPONSE FORMAT ===
|
|
34
|
+
First, write your thoughts:
|
|
35
|
+
- CURRENT STATE: [Access level, device prompt]
|
|
36
|
+
- PLAN: [Commands to execute next]
|
|
37
|
+
- ACTION: [Tool to run]
|
|
38
|
+
Then, invoke the tool (or output one of the fallback blocks above).`;
|
|
75
39
|
}
|
|
76
40
|
}
|
|
77
41
|
exports.PromptEngine = PromptEngine;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptEngine.js","sourceRoot":"","sources":["../../../src/core/agent/PromptEngine.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACf,MAAM,CAAC,eAAe,CACvB,SAAiB,EACjB,wBAAgC,+BAA+B,EAC/D,sBAA+B,KAAK,EACpC,eAAuB,8BAA8B;
|
|
1
|
+
{"version":3,"file":"PromptEngine.js","sourceRoot":"","sources":["../../../src/core/agent/PromptEngine.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACf,MAAM,CAAC,eAAe,CACvB,SAAiB,EACjB,wBAAgC,+BAA+B,EAC/D,sBAA+B,KAAK,EACpC,eAAuB,8BAA8B;QAErD,OAAO;;;;EAId,SAAS;YACC,YAAY;iBACP,qBAAqB,yBAAyB,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;oEA0Bd,CAAC;IAClE,CAAC;CACH;AAzCD,oCAyCC"}
|