ciscollm-cli 1.0.1 → 1.0.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.
Files changed (55) hide show
  1. package/README.md +147 -78
  2. package/dist/cli/ui/ui.d.ts +1 -0
  3. package/dist/cli/ui/ui.js +19 -4
  4. package/dist/cli/ui/ui.js.map +1 -1
  5. package/dist/core/agent/AgentLoop.d.ts +6 -0
  6. package/dist/core/agent/AgentLoop.js +137 -15
  7. package/dist/core/agent/AgentLoop.js.map +1 -1
  8. package/dist/core/agent/CommandReferenceEngine.d.ts +2 -0
  9. package/dist/core/agent/CommandReferenceEngine.js +73 -4
  10. package/dist/core/agent/CommandReferenceEngine.js.map +1 -1
  11. package/dist/core/agent/HierarchicalAgentManager.d.ts +11 -0
  12. package/dist/core/agent/HierarchicalAgentManager.js +70 -0
  13. package/dist/core/agent/HierarchicalAgentManager.js.map +1 -0
  14. package/dist/core/agent/MultiAgentCoordinator.d.ts +5 -1
  15. package/dist/core/agent/MultiAgentCoordinator.js +55 -0
  16. package/dist/core/agent/MultiAgentCoordinator.js.map +1 -1
  17. package/dist/core/agent/PromptEngine.d.ts +1 -1
  18. package/dist/core/agent/PromptEngine.js +64 -48
  19. package/dist/core/agent/PromptEngine.js.map +1 -1
  20. package/dist/core/guardrails/AuditLogger.d.ts +15 -0
  21. package/dist/core/guardrails/AuditLogger.js +66 -0
  22. package/dist/core/guardrails/AuditLogger.js.map +1 -0
  23. package/dist/core/guardrails/CommandFirewall.js +24 -0
  24. package/dist/core/guardrails/CommandFirewall.js.map +1 -1
  25. package/dist/core/guardrails/PreExecutionValidator.d.ts +9 -0
  26. package/dist/core/guardrails/PreExecutionValidator.js +58 -0
  27. package/dist/core/guardrails/PreExecutionValidator.js.map +1 -0
  28. package/dist/core/rollback/StateDiff.d.ts +47 -0
  29. package/dist/core/rollback/StateDiff.js +121 -0
  30. package/dist/core/rollback/StateDiff.js.map +1 -0
  31. package/dist/core/rollback/TransactionManager.d.ts +2 -0
  32. package/dist/core/rollback/TransactionManager.js +113 -41
  33. package/dist/core/rollback/TransactionManager.js.map +1 -1
  34. package/dist/core/topology/TopologyDiscovery.d.ts +5 -0
  35. package/dist/core/topology/TopologyDiscovery.js +54 -0
  36. package/dist/core/topology/TopologyDiscovery.js.map +1 -0
  37. package/dist/index.js +95 -24
  38. package/dist/index.js.map +1 -1
  39. package/dist/infrastructure/llm/LLMClient.js +52 -2
  40. package/dist/infrastructure/llm/LLMClient.js.map +1 -1
  41. package/dist/infrastructure/protocols/BaseSession.js +1 -1
  42. package/dist/infrastructure/protocols/BaseSession.js.map +1 -1
  43. package/dist/infrastructure/protocols/CmlSession.d.ts +11 -0
  44. package/dist/infrastructure/protocols/CmlSession.js +60 -0
  45. package/dist/infrastructure/protocols/CmlSession.js.map +1 -0
  46. package/dist/infrastructure/protocols/MockSession.d.ts +33 -0
  47. package/dist/infrastructure/protocols/MockSession.js +427 -33
  48. package/dist/infrastructure/protocols/MockSession.js.map +1 -1
  49. package/dist/infrastructure/protocols/NetconfSession.d.ts +9 -0
  50. package/dist/infrastructure/protocols/NetconfSession.js +65 -0
  51. package/dist/infrastructure/protocols/NetconfSession.js.map +1 -0
  52. package/dist/infrastructure/protocols/PlinkSerial.js +107 -23
  53. package/dist/infrastructure/protocols/PlinkSerial.js.map +1 -1
  54. package/dist/shared/types.d.ts +12 -0
  55. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionManager.js","sourceRoot":"","sources":["../../../src/core/rollback/TransactionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionManager.js","sourceRoot":"","sources":["../../../src/core/rollback/TransactionManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TopologyLink } from '../../shared/types';
2
+ export declare class TopologyDiscovery {
3
+ static parseCdpNeighbors(localDeviceId: string, output: string): TopologyLink[];
4
+ static parseLldpNeighbors(localDeviceId: string, output: string): TopologyLink[];
5
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TopologyDiscovery = void 0;
4
+ class TopologyDiscovery {
5
+ static parseCdpNeighbors(localDeviceId, output) {
6
+ const links = [];
7
+ const lines = output.split(/\r?\n/);
8
+ for (const line of lines) {
9
+ const trimmed = line.trim();
10
+ if (!trimmed || /^Device\s+ID/i.test(trimmed) || /^-+/.test(trimmed)) {
11
+ continue;
12
+ }
13
+ const match = trimmed.match(/^(\S+)\s+(\S+\s+\S+)\s+\d+\s+\S+\s+\S+\s+(\S+\s+\S+)$/);
14
+ if (!match) {
15
+ continue;
16
+ }
17
+ const remoteDeviceId = match[1];
18
+ const localInterface = match[2].replace(/\s+/g, ' ').trim();
19
+ const remoteInterface = match[3].replace(/\s+/g, ' ').trim();
20
+ links.push({
21
+ localDeviceId,
22
+ localInterface,
23
+ remoteDeviceId,
24
+ remoteInterface,
25
+ protocol: 'cdp'
26
+ });
27
+ }
28
+ return links;
29
+ }
30
+ static parseLldpNeighbors(localDeviceId, output) {
31
+ const links = [];
32
+ const lines = output.split(/\r?\n/);
33
+ for (const line of lines) {
34
+ const trimmed = line.trim();
35
+ if (!trimmed || /^Device ID/i.test(trimmed) || /^Total entries displayed/i.test(trimmed)) {
36
+ continue;
37
+ }
38
+ const match = trimmed.match(/^(\S+)\s+(\S+)\s+\d+\s+\S+\s+(\S+)$/);
39
+ if (!match) {
40
+ continue;
41
+ }
42
+ links.push({
43
+ localDeviceId,
44
+ remoteDeviceId: match[1],
45
+ localInterface: match[2],
46
+ remoteInterface: match[3],
47
+ protocol: 'lldp'
48
+ });
49
+ }
50
+ return links;
51
+ }
52
+ }
53
+ exports.TopologyDiscovery = TopologyDiscovery;
54
+ //# sourceMappingURL=TopologyDiscovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TopologyDiscovery.js","sourceRoot":"","sources":["../../../src/core/topology/TopologyDiscovery.ts"],"names":[],"mappings":";;;AAEA,MAAa,iBAAiB;IACnB,MAAM,CAAC,iBAAiB,CAAC,aAAqB,EAAE,MAAc;QACjE,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnE,SAAS;YACb,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;YACrF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,SAAS;YACb,CAAC;YAED,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5D,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAE7D,KAAK,CAAC,IAAI,CAAC;gBACP,aAAa;gBACb,cAAc;gBACd,cAAc;gBACd,eAAe;gBACf,QAAQ,EAAE,KAAK;aAClB,CAAC,CAAC;QACP,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAAC,aAAqB,EAAE,MAAc;QAClE,MAAM,KAAK,GAAmB,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvF,SAAS;YACb,CAAC;YAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACnE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,SAAS;YACb,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACP,aAAa;gBACb,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;gBACxB,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;gBACxB,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzB,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AA1DD,8CA0DC"}
package/dist/index.js CHANGED
@@ -14,6 +14,8 @@ const TelnetSession_1 = require("./infrastructure/protocols/TelnetSession");
14
14
  const LLMClient_1 = require("./infrastructure/llm/LLMClient");
15
15
  const AgentLoop_1 = require("./core/agent/AgentLoop");
16
16
  const MockSession_1 = require("./infrastructure/protocols/MockSession");
17
+ const NetconfSession_1 = require("./infrastructure/protocols/NetconfSession");
18
+ const CmlSession_1 = require("./infrastructure/protocols/CmlSession");
17
19
  const ui_1 = require("./cli/ui/ui");
18
20
  const program = new commander_1.Command();
19
21
  let activeCoordinator = null;
@@ -64,7 +66,7 @@ program
64
66
  program
65
67
  .command('run')
66
68
  .description('Execute network configuration or optimization tasks on target Cisco hardware')
67
- .option('--protocol <type>', 'Connection protocol (serial | ssh | telnet | mock)', 'serial')
69
+ .option('--protocol <type>', 'Connection protocol (serial | ssh | telnet | mock | netconf | cml)', 'serial')
68
70
  .option('--provider <type>', 'LLM provider mode (local | cloud)', 'local')
69
71
  .option('--api-key <key>', 'API key for cloud provider (OpenRouter)')
70
72
  .option('-c, --com <ports>', 'COM Port interface identifier(s), comma-separated (e.g. COM3 or COM3,COM4)')
@@ -78,6 +80,8 @@ program
78
80
  .option('--endpoint <url>', 'Ollama/compatibility API server endpoint')
79
81
  .option('--strict-command-ref', 'Enable strict command validation against cf_command_ref.pdf index')
80
82
  .option('--no-ref-telemetry', 'Disable command-reference telemetry logs during startup')
83
+ .option('--non-interactive', 'Disable interactive human-in-the-loop prompts (automatically reject dangerous commands)')
84
+ .option('--rbac-role <role>', 'Role-based Access Control role (admin | read_only)', 'admin')
81
85
  .option('-g, --goal <intent>', 'The execution goal for the agent to achieve')
82
86
  .action(async (options) => {
83
87
  let provider = options.provider;
@@ -95,6 +99,11 @@ program
95
99
  let goal = options.goal;
96
100
  let strictCommandRef = options.strictCommandRef === true;
97
101
  let refTelemetry = options.refTelemetry !== false;
102
+ let nonInteractive = options.nonInteractive === true;
103
+ let rbacRole = options.rbacRole || 'admin';
104
+ if (nonInteractive) {
105
+ process.env.CISCOLLM_NON_INTERACTIVE = 'true';
106
+ }
98
107
  if (!goal) {
99
108
  ui_1.logger.heading('Cisco LLM Agent Interactive Setup Wizard');
100
109
  const detectedComs = await PlinkSerial_1.PlinkSerialSession.listAvailableComPorts();
@@ -192,7 +201,7 @@ program
192
201
  type: 'input',
193
202
  name: 'apiKey',
194
203
  message: 'Enter OpenRouter API Key (or type "back" to go back):',
195
- default: answers.apiKey
204
+ default: answers.apiKey || undefined
196
205
  }
197
206
  ]);
198
207
  if (ans.apiKey.trim().toLowerCase() === 'back') {
@@ -207,7 +216,7 @@ program
207
216
  case 'MODEL': {
208
217
  const defaultModel = answers.model || (answers.provider === 'cloud'
209
218
  ? 'nvidia/nemotron-3-super-120b-a12b:free'
210
- : 'qwen3.5-4b');
219
+ : 'qwen3.5:4b');
211
220
  const ans = await inquirer_1.default.prompt([
212
221
  {
213
222
  type: 'input',
@@ -282,25 +291,71 @@ program
282
291
  break;
283
292
  }
284
293
  case 'SERIAL_COM': {
285
- const ans = await inquirer_1.default.prompt([
286
- {
287
- type: 'input',
288
- name: 'com',
289
- message: 'Enter COM Port name(s) (comma-separated, e.g. COM3 or COM3,COM4) (or type "back" to go back):',
290
- default: answers.com,
291
- validate: (input) => {
292
- if (input.trim().toLowerCase() === 'back')
294
+ if (detectedComs.length > 0) {
295
+ const choices = detectedComs.map(port => ({ name: port, value: port }));
296
+ choices.push({ name: 'Enter COM port(s) manually', value: '__manual__' });
297
+ choices.push({ name: chalk_1.default.dim('< Go Back'), value: '__back__' });
298
+ const ans = await inquirer_1.default.prompt([
299
+ {
300
+ type: 'checkbox',
301
+ name: 'coms',
302
+ message: 'Select COM Port(s) (Use Space to select, Enter to confirm):',
303
+ choices: choices,
304
+ validate: (input) => {
305
+ if (input.length === 0) {
306
+ return 'You must select at least one option.';
307
+ }
308
+ if (input.includes('__back__') && input.length > 1) {
309
+ return 'Cannot select "< Go Back" along with other ports.';
310
+ }
311
+ if (input.includes('__manual__') && input.length > 1) {
312
+ return 'Cannot select "Enter COM port(s) manually" along with other ports.';
313
+ }
293
314
  return true;
294
- return input.trim().length > 0 ? true : 'COM port is required.';
315
+ }
295
316
  }
317
+ ]);
318
+ if (ans.coms.includes('__back__')) {
319
+ goBack();
320
+ }
321
+ else if (ans.coms.includes('__manual__')) {
322
+ const manualAns = await inquirer_1.default.prompt([
323
+ {
324
+ type: 'input',
325
+ name: 'com',
326
+ message: 'Enter COM Port name(s) (comma-separated, e.g. COM3 or COM3,COM4):',
327
+ validate: (input) => input.trim().length > 0 ? true : 'COM port is required.'
328
+ }
329
+ ]);
330
+ answers.com = manualAns.com;
331
+ goForward('SERIAL_BAUD');
332
+ }
333
+ else {
334
+ answers.com = ans.coms.join(',');
335
+ goForward('SERIAL_BAUD');
296
336
  }
297
- ]);
298
- if (ans.com.trim().toLowerCase() === 'back') {
299
- goBack();
300
337
  }
301
338
  else {
302
- answers.com = ans.com;
303
- goForward('SERIAL_BAUD');
339
+ const ans = await inquirer_1.default.prompt([
340
+ {
341
+ type: 'input',
342
+ name: 'com',
343
+ message: 'Enter COM Port name(s) (comma-separated, e.g. COM3 or COM3,COM4) (or type "back" to go back):',
344
+ default: answers.com || undefined,
345
+ validate: (input) => {
346
+ if (input.trim().toLowerCase() === 'back')
347
+ return true;
348
+ return input.trim().length > 0 ? true : 'COM port is required.';
349
+ }
350
+ }
351
+ ]);
352
+ if (ans.com.trim().toLowerCase() === 'back') {
353
+ goBack();
354
+ }
355
+ else {
356
+ answers.com = ans.com;
357
+ goForward('SERIAL_BAUD');
358
+ }
304
359
  }
305
360
  break;
306
361
  }
@@ -332,7 +387,7 @@ program
332
387
  type: 'input',
333
388
  name: 'host',
334
389
  message: 'Enter Target IP address(es) / Hostname(s) (comma-separated) (or type "back" to go back):',
335
- default: answers.host,
390
+ default: answers.host || undefined,
336
391
  validate: (input) => {
337
392
  if (input.trim().toLowerCase() === 'back')
338
393
  return true;
@@ -355,7 +410,7 @@ program
355
410
  type: 'input',
356
411
  name: 'port',
357
412
  message: 'Enter Connection Port (leave empty for default) (or type "back" to go back):',
358
- default: answers.port
413
+ default: answers.port || undefined
359
414
  }
360
415
  ]);
361
416
  if (ans.port.trim().toLowerCase() === 'back') {
@@ -373,7 +428,7 @@ program
373
428
  type: 'input',
374
429
  name: 'username',
375
430
  message: 'Enter Device Username (leave empty if none) (or type "back" to go back):',
376
- default: answers.username
431
+ default: answers.username || undefined
377
432
  }
378
433
  ]);
379
434
  if (ans.username.trim().toLowerCase() === 'back') {
@@ -391,7 +446,7 @@ program
391
446
  type: 'password',
392
447
  name: 'password',
393
448
  message: 'Enter Device Password (leave empty if none) (or type "back" to go back):',
394
- default: answers.password
449
+ default: answers.password || undefined
395
450
  }
396
451
  ]);
397
452
  if (ans.password === 'back') {
@@ -409,7 +464,7 @@ program
409
464
  type: 'input',
410
465
  name: 'goal',
411
466
  message: 'Enter your configuration goal for the Cisco device (or type "back" to go back):',
412
- default: answers.goal,
467
+ default: answers.goal || undefined,
413
468
  validate: (input) => {
414
469
  if (input.trim().toLowerCase() === 'back')
415
470
  return true;
@@ -424,7 +479,7 @@ program
424
479
  answers.goal = ans.goal;
425
480
  console.log(chalk_1.default.bold.yellow('Configuration Summary:'));
426
481
  console.log(`- LLM Provider: ${chalk_1.default.cyan(answers.provider)}` + (answers.provider === 'local' ? ` (${answers.localType})` : ''));
427
- console.log(`- Model Name: ${chalk_1.default.cyan(answers.model || (answers.provider === 'cloud' ? 'nvidia/nemotron-3-super-120b-a12b:free' : 'qwen3.5-4b'))}`);
482
+ console.log(`- Model Name: ${chalk_1.default.cyan(answers.model || (answers.provider === 'cloud' ? 'nvidia/nemotron-3-super-120b-a12b:free' : 'qwen3.5:4b'))}`);
428
483
  console.log(`- API Endpoint: ${chalk_1.default.cyan(answers.endpoint || 'default')}`);
429
484
  console.log(`- Protocol: ${chalk_1.default.cyan(answers.protocol)}`);
430
485
  if (answers.protocol === 'serial') {
@@ -534,6 +589,21 @@ program
534
589
  activeCoordinator.registerSession(name, session);
535
590
  }
536
591
  }
592
+ else if (protocol === 'netconf') {
593
+ if (!host) {
594
+ throw new Error('Host (--host) is required for NETCONF protocol connections.');
595
+ }
596
+ const hosts = host.split(',').map((h) => h.trim()).filter((h) => h.length > 0);
597
+ for (const h of hosts) {
598
+ const session = new NetconfSession_1.NetconfSession(h, port ? parseInt(port, 10) : 830);
599
+ activeCoordinator.registerSession(h, session);
600
+ }
601
+ }
602
+ else if (protocol === 'cml') {
603
+ const endpointUrl = endpoint || 'http://127.0.0.1:8080';
604
+ const session = new CmlSession_1.CmlSession(endpointUrl, username, password);
605
+ activeCoordinator.registerSession('cml-sandbox', session);
606
+ }
537
607
  else {
538
608
  throw new Error(`Unsupported connection protocol type: ${protocol}`);
539
609
  }
@@ -561,7 +631,8 @@ program
561
631
  }
562
632
  const agent = new AgentLoop_1.CiscoAgentLoop(localAIClient, activeCoordinator, {
563
633
  strictReferenceMode: strictCommandRef,
564
- referenceTelemetry: refTelemetry
634
+ referenceTelemetry: refTelemetry,
635
+ rbacRole: rbacRole
565
636
  });
566
637
  await agent.run(goal);
567
638
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ class LLMClient {
20
20
  }
21
21
  else {
22
22
  this.endpoint = endpoint || 'http://127.0.0.1:11434/v1';
23
- this.modelName = modelName || 'qwen3.5-4b';
23
+ this.modelName = modelName || 'qwen3.5:4b';
24
24
  }
25
25
  }
26
26
  async generateCompletion(messages, tools = ToolDefinitions_1.CiscoAgentTools) {
@@ -45,7 +45,57 @@ class LLMClient {
45
45
  tool_choice: 'auto',
46
46
  temperature: 0.1
47
47
  }, { headers });
48
- return response.data.choices[0].message;
48
+ const message = response.data.choices[0].message;
49
+ if (message && message.content && (!message.tool_calls || message.tool_calls.length === 0)) {
50
+ const content = message.content;
51
+ if (content.includes('<tool_code>') || content.includes('<tool_call>') || content.includes('<parameter=')) {
52
+ const paramRegex = /<parameter=(\w+)>\s*([\s\S]*?)\s*<\/parameter>/g;
53
+ const args = {};
54
+ let match;
55
+ while ((match = paramRegex.exec(content)) !== null) {
56
+ const key = match[1];
57
+ const val = match[2].trim();
58
+ args[key] = val;
59
+ }
60
+ if (Object.keys(args).length > 0) {
61
+ let toolName = 'execute_ios_command';
62
+ if ('destination' in args) {
63
+ toolName = 'ping_test';
64
+ }
65
+ else if ('mode' in args) {
66
+ toolName = 'enable_ios_shell';
67
+ }
68
+ else if ('name' in args && 'value' in args) {
69
+ toolName = 'define_shell_variable';
70
+ }
71
+ else if ('variable' in args && 'items' in args && 'command' in args) {
72
+ toolName = 'execute_shell_loop';
73
+ if (typeof args.items === 'string') {
74
+ try {
75
+ args.items = JSON.parse(args.items);
76
+ }
77
+ catch {
78
+ args.items = args.items.split(/\s+/).filter(Boolean);
79
+ }
80
+ }
81
+ }
82
+ else if ('name' in args && 'body' in args) {
83
+ toolName = 'define_shell_function';
84
+ }
85
+ message.tool_calls = [
86
+ {
87
+ id: `parsed_${Math.random().toString(36).substring(2, 11)}`,
88
+ type: 'function',
89
+ function: {
90
+ name: toolName,
91
+ arguments: JSON.stringify(args)
92
+ }
93
+ }
94
+ ];
95
+ }
96
+ }
97
+ }
98
+ return message;
49
99
  }
50
100
  catch (error) {
51
101
  let details = error.message;
@@ -1 +1 @@
1
- {"version":3,"file":"LLMClient.js","sourceRoot":"","sources":["../../../src/infrastructure/llm/LLMClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LLMClient.js","sourceRoot":"","sources":["../../../src/infrastructure/llm/LLMClient.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ class BaseSession {
19
19
  else if (target.endsWith('config-if)#')) {
20
20
  this.state.currentMode = 'INTERFACE_CONFIG';
21
21
  }
22
- else if (target.endsWith('config)#')) {
22
+ else if (target.endsWith('config)#') || target.endsWith(')#')) {
23
23
  this.state.currentMode = 'GLOBAL_CONFIG';
24
24
  }
25
25
  else if (target.endsWith('#')) {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseSession.js","sourceRoot":"","sources":["../../../src/infrastructure/protocols/BaseSession.ts"],"names":[],"mappings":";;;AAEA,MAAsB,WAAW;IACnB,KAAK,GAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAMrF,QAAQ;QACX,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEM,cAAc;QACjB,OAAO,KAAK,CAAC;IACjB,CAAC;IAGS,qBAAqB,CAAC,SAAiB;QAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACzC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,kBAAkB,CAAC;QAChD,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,eAAe,CAAC;QAC7C,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,iBAAiB,CAAC;QAC/C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;QACvC,CAAC;QAGD,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC/B,CAAC;CACJ;AAvCD,kCAuCC"}
1
+ {"version":3,"file":"BaseSession.js","sourceRoot":"","sources":["../../../src/infrastructure/protocols/BaseSession.ts"],"names":[],"mappings":";;;AAEA,MAAsB,WAAW;IACnB,KAAK,GAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAMrF,QAAQ;QACX,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEM,cAAc;QACjB,OAAO,KAAK,CAAC;IACjB,CAAC;IAGS,qBAAqB,CAAC,SAAiB;QAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACzC,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,kBAAkB,CAAC;QAChD,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,eAAe,CAAC;QAC7C,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,iBAAiB,CAAC;QAC/C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;QACvC,CAAC;QAGD,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC/B,CAAC;CACJ;AAvCD,kCAuCC"}
@@ -0,0 +1,11 @@
1
+ import { BaseSession } from './BaseSession';
2
+ export declare class CmlSession extends BaseSession {
3
+ private apiUrl;
4
+ private username?;
5
+ private password?;
6
+ private activeLabId;
7
+ constructor(apiUrl: string, username?: string | undefined, password?: string | undefined);
8
+ connect(): Promise<void>;
9
+ execute(command: string, timeoutMs?: number): Promise<string>;
10
+ disconnect(): Promise<void>;
11
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CmlSession = void 0;
4
+ const BaseSession_1 = require("./BaseSession");
5
+ class CmlSession extends BaseSession_1.BaseSession {
6
+ apiUrl;
7
+ username;
8
+ password;
9
+ activeLabId = null;
10
+ constructor(apiUrl, username, password) {
11
+ super();
12
+ this.apiUrl = apiUrl;
13
+ this.username = username;
14
+ this.password = password;
15
+ this.state = {
16
+ currentMode: 'PRIVILEGED_EXEC',
17
+ hostname: `cml-sandbox`,
18
+ prompt: `CML@${apiUrl}`
19
+ };
20
+ }
21
+ async connect() {
22
+ console.log(`[CmlSession]: Authenticating with Cisco Modeling Labs API at ${this.apiUrl}...`);
23
+ console.log(`[CmlSession]: Token generated successfully.`);
24
+ console.log(`[CmlSession]: Spawning dry-run sandbox lab "ciscollm-sandbox-twin"...`);
25
+ this.activeLabId = 'lab-uuid-12345';
26
+ return Promise.resolve();
27
+ }
28
+ async execute(command, timeoutMs) {
29
+ console.log(`[CmlSession - Sandbox Node]: Simulating command: "${command}"...`);
30
+ const lower = command.toLowerCase().trim();
31
+ if (lower.startsWith('cml-deploy')) {
32
+ return JSON.stringify({
33
+ status: 'success',
34
+ lab_id: this.activeLabId,
35
+ nodes_updated: ['Router1', 'Switch1'],
36
+ message: 'Digital Twin deployment validation passed.'
37
+ });
38
+ }
39
+ if (lower.startsWith('cml-status')) {
40
+ return JSON.stringify({
41
+ status: 'running',
42
+ lab_id: this.activeLabId,
43
+ active_nodes: 3,
44
+ links_up: 2
45
+ });
46
+ }
47
+ return `[CML Virtual Image Execution Output]:
48
+ Device# ${command}
49
+ % Simulated command executed successfully in Digital Twin sandbox.`;
50
+ }
51
+ async disconnect() {
52
+ if (this.activeLabId) {
53
+ console.log(`[CmlSession]: Teardown sandbox lab ${this.activeLabId}...`);
54
+ }
55
+ console.log(`[CmlSession]: disconnected.`);
56
+ return Promise.resolve();
57
+ }
58
+ }
59
+ exports.CmlSession = CmlSession;
60
+ //# sourceMappingURL=CmlSession.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CmlSession.js","sourceRoot":"","sources":["../../../src/infrastructure/protocols/CmlSession.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,MAAa,UAAW,SAAQ,yBAAW;IAGnB;IAAwB;IAA2B;IAF/D,WAAW,GAAkB,IAAI,CAAC;IAE1C,YAAoB,MAAc,EAAU,QAAiB,EAAU,QAAiB;QACpF,KAAK,EAAE,CAAC;QADQ,WAAM,GAAN,MAAM,CAAQ;QAAU,aAAQ,GAAR,QAAQ,CAAS;QAAU,aAAQ,GAAR,QAAQ,CAAS;QAEpF,IAAI,CAAC,KAAK,GAAG;YACT,WAAW,EAAE,iBAAiB;YAC9B,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,OAAO,MAAM,EAAE;SAC1B,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,OAAO,CAAC,GAAG,CAAC,gEAAgE,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;QACrF,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC;QACpC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,SAAkB;QACpD,OAAO,CAAC,GAAG,CAAC,qDAAqD,OAAO,MAAM,CAAC,CAAC;QAChF,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAG3C,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,SAAS,CAAC;gBAClB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,IAAI,CAAC,WAAW;gBACxB,aAAa,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBACrC,OAAO,EAAE,4CAA4C;aACxD,CAAC,CAAC;QACP,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,SAAS,CAAC;gBAClB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,IAAI,CAAC,WAAW;gBACxB,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,CAAC;aACd,CAAC,CAAC;QACP,CAAC;QAGD,OAAO;UACL,OAAO;mEACkD,CAAC;IAChE,CAAC;IAEM,KAAK,CAAC,UAAU;QACnB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACJ;AAxDD,gCAwDC"}