ciscollm-cli 1.0.9 → 1.0.11

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/index.js CHANGED
@@ -17,6 +17,8 @@ const NetconfSession_1 = require("./infrastructure/protocols/NetconfSession");
17
17
  const CmlSession_1 = require("./infrastructure/protocols/CmlSession");
18
18
  const ui_1 = require("./cli/ui/ui");
19
19
  const fs_1 = require("fs");
20
+ const path_1 = require("path");
21
+ const server_1 = require("./server");
20
22
  const program = new commander_1.Command();
21
23
  let activeCoordinator = null;
22
24
  const cleanup = async () => {
@@ -59,10 +61,17 @@ process.on('uncaughtException', async (err) => {
59
61
  await cleanup();
60
62
  process.exit(1);
61
63
  });
64
+ let cliVersion = '1.0.0';
65
+ try {
66
+ const pkgPath = (0, path_1.join)(__dirname, '../package.json');
67
+ const pkg = JSON.parse((0, fs_1.readFileSync)(pkgPath, 'utf8'));
68
+ cliVersion = pkg.version;
69
+ }
70
+ catch (e) { }
62
71
  program
63
72
  .name('ciscollm')
64
73
  .description('Autonomous Agent Interface managing local Cisco Hardware using LLM Tooling.')
65
- .version('1.0.0');
74
+ .version(cliVersion);
66
75
  program
67
76
  .command('run')
68
77
  .description('Execute network configuration or optimization tasks on target Cisco hardware')
@@ -793,5 +802,17 @@ program
793
802
  process.exit(0);
794
803
  }
795
804
  });
805
+ program
806
+ .command('server')
807
+ .description('Start the Cisco IOS Multi-Protocol Test Simulator (SSH, Telnet, NETCONF, and HTTP LLM Mock)')
808
+ .option('--ssh-port <port>', 'Port for the mock SSH & NETCONF server', '2222')
809
+ .option('--telnet-port <port>', 'Port for the mock Telnet server', '2323')
810
+ .option('--http-port <port>', 'Port for the mock HTTP LLM server', '11434')
811
+ .action((options) => {
812
+ const sshPort = parseInt(options.sshPort, 10);
813
+ const telnetPort = parseInt(options.telnetPort, 10);
814
+ const httpPort = parseInt(options.httpPort, 10);
815
+ (0, server_1.startSimulator)({ sshPort, telnetPort, httpPort });
816
+ });
796
817
  program.parse(process.argv);
797
818
  //# sourceMappingURL=index.js.map
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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"}
@@ -0,0 +1,5 @@
1
+ export declare function startSimulator(options: {
2
+ sshPort: number;
3
+ telnetPort: number;
4
+ httpPort: number;
5
+ }): void;
@@ -0,0 +1,257 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.startSimulator = startSimulator;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const http_1 = __importDefault(require("http"));
9
+ const ssh_1 = require("./ssh");
10
+ const telnet_1 = require("./telnet");
11
+ const SSH_PORT = 2222;
12
+ const TELNET_PORT = 2323;
13
+ const HTTP_PORT = 11434;
14
+ const availableModels = [];
15
+ let loadedModel = null;
16
+ const jobs = new Map();
17
+ function getTimestamp() {
18
+ const now = new Date();
19
+ return chalk_1.default.dim(`[${now.toLocaleTimeString()}]`);
20
+ }
21
+ function printDashboard(httpPort) {
22
+ console.clear();
23
+ console.log(chalk_1.default.bold.cyan(`
24
+ ::::::::: :::::::: :::::::: :::::::: :::::::: :::: :::: :::: ::::
25
+ :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+:+: :+:+:+ +:+ +:+:+:
26
+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ +:+
27
+ +#++:++#+ +#+ +:+ +#++:++#++ +#++:++#++ +#+ +:+ +#+ +:+ +#+ +#+ +#++:++#+
28
+ +#+ +#+ +:+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+
29
+ #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#
30
+ ### ######## ######## ######## ######## ### ### ######### ###
31
+ `));
32
+ console.log(chalk_1.default.bold.yellow(' Cisco IOS Multi-Protocol Test Simulator \n'));
33
+ console.log(chalk_1.default.cyan('┌─────────────────────────────────────────────────────────────────────────────┐'));
34
+ console.log(chalk_1.default.cyan('│') + chalk_1.default.bold.white(' PROTOCOL │ PORT │ STATUS │ CONNECTION URI ') + chalk_1.default.cyan('│'));
35
+ console.log(chalk_1.default.cyan('├────────────┼──────┼───────────┼─────────────────────────────────────────────┤'));
36
+ console.log(chalk_1.default.cyan('│') + ` SSH ` + chalk_1.default.cyan('│') + ` 2222 ` + chalk_1.default.cyan('│') + chalk_1.default.bold.green(' ACTIVE ') + chalk_1.default.cyan('│') + ` ssh://127.0.0.1:2222 ` + chalk_1.default.cyan('│'));
37
+ console.log(chalk_1.default.cyan('│') + ` Telnet ` + chalk_1.default.cyan('│') + ` 2323 ` + chalk_1.default.cyan('│') + chalk_1.default.bold.green(' ACTIVE ') + chalk_1.default.cyan('│') + ` telnet://127.0.0.1:2323 ` + chalk_1.default.cyan('│'));
38
+ console.log(chalk_1.default.cyan('│') + ` NETCONF ` + chalk_1.default.cyan('│') + ` 2222 ` + chalk_1.default.cyan('│') + chalk_1.default.bold.green(' ACTIVE ') + chalk_1.default.cyan('│') + ` netconf://127.0.0.1:2222 (Subsystem) ` + chalk_1.default.cyan('│'));
39
+ const portStr = ` ${httpPort}`.padEnd(6);
40
+ const uriStr = ` http://127.0.0.1:${httpPort}/v1`.padEnd(46);
41
+ console.log(chalk_1.default.cyan('│') + ` HTTP (LLM) ` + chalk_1.default.cyan('│') + portStr + chalk_1.default.cyan('│') + chalk_1.default.bold.green(' ACTIVE ') + chalk_1.default.cyan('│') + uriStr + chalk_1.default.cyan('│'));
42
+ console.log(chalk_1.default.cyan('└─────────────────────────────────────────────────────────────────────────────┘'));
43
+ console.log(chalk_1.default.bold.magenta('\nLogs:'));
44
+ console.log(chalk_1.default.dim('-------------------------------------------------------------------------------'));
45
+ }
46
+ function log(msg) {
47
+ console.log(`${getTimestamp()} ${msg}`);
48
+ }
49
+ function startHttpServer(port, logCb, onBound) {
50
+ const server = http_1.default.createServer((req, res) => {
51
+ const url = req.url || '';
52
+ const method = req.method || 'GET';
53
+ res.setHeader('Access-Control-Allow-Origin', '*');
54
+ res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
55
+ res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
56
+ if (method === 'OPTIONS') {
57
+ res.writeHead(200);
58
+ res.end();
59
+ return;
60
+ }
61
+ logCb(`${chalk_1.default.bold.green('[HTTP]')} ${method} ${url}`);
62
+ if (method === 'GET' && (url === '/api/v1/models' || url === '/v1/models' || url === '/api/tags')) {
63
+ res.writeHead(200, { 'Content-Type': 'application/json' });
64
+ res.end(JSON.stringify({ models: availableModels }));
65
+ return;
66
+ }
67
+ if (method === 'GET' && url === '/api/v1/models/loaded') {
68
+ res.writeHead(200, { 'Content-Type': 'application/json' });
69
+ res.end(JSON.stringify({ model: loadedModel }));
70
+ return;
71
+ }
72
+ if (method === 'POST' && url === '/api/v1/models/download') {
73
+ let body = '';
74
+ req.on('data', chunk => { body += chunk; });
75
+ req.on('end', () => {
76
+ try {
77
+ const data = JSON.parse(body);
78
+ const model = data.model;
79
+ if (!model) {
80
+ res.writeHead(400, { 'Content-Type': 'application/json' });
81
+ res.end(JSON.stringify({ error: 'model parameter is required' }));
82
+ return;
83
+ }
84
+ const jobId = `job-${Math.random().toString(36).substring(2, 9)}`;
85
+ jobs.set(jobId, { model, progress: 0, status: 'downloading' });
86
+ logCb(`Starting download job ${jobId} for model ${model}`);
87
+ const interval = setInterval(() => {
88
+ const job = jobs.get(jobId);
89
+ if (job) {
90
+ if (job.progress < 100) {
91
+ job.progress = Math.min(100, job.progress + 30);
92
+ logCb(`Job ${jobId} progress: ${job.progress}%`);
93
+ if (job.progress === 100) {
94
+ job.status = 'completed';
95
+ if (!availableModels.includes(job.model)) {
96
+ availableModels.push(job.model);
97
+ }
98
+ logCb(`Job ${jobId} completed. Added model ${job.model} to available models.`);
99
+ clearInterval(interval);
100
+ }
101
+ }
102
+ }
103
+ else {
104
+ clearInterval(interval);
105
+ }
106
+ }, 1500);
107
+ res.writeHead(200, { 'Content-Type': 'application/json' });
108
+ res.end(JSON.stringify({ job_id: jobId }));
109
+ }
110
+ catch (e) {
111
+ res.writeHead(400, { 'Content-Type': 'application/json' });
112
+ res.end(JSON.stringify({ error: 'invalid json' }));
113
+ }
114
+ });
115
+ return;
116
+ }
117
+ if (method === 'GET' && url.startsWith('/api/v1/models/download/status/')) {
118
+ const jobId = url.substring('/api/v1/models/download/status/'.length);
119
+ const job = jobs.get(jobId);
120
+ if (!job) {
121
+ res.writeHead(404, { 'Content-Type': 'application/json' });
122
+ res.end(JSON.stringify({ error: 'job not found' }));
123
+ return;
124
+ }
125
+ res.writeHead(200, { 'Content-Type': 'application/json' });
126
+ res.end(JSON.stringify({
127
+ status: job.status,
128
+ progress: `${job.progress}%`
129
+ }));
130
+ return;
131
+ }
132
+ if (method === 'POST' && url === '/api/v1/models/load') {
133
+ let body = '';
134
+ req.on('data', chunk => { body += chunk; });
135
+ req.on('end', () => {
136
+ try {
137
+ const data = JSON.parse(body);
138
+ const model = data.model;
139
+ if (!model) {
140
+ res.writeHead(400, { 'Content-Type': 'application/json' });
141
+ res.end(JSON.stringify({ error: 'model parameter is required' }));
142
+ return;
143
+ }
144
+ logCb(`Loading model ${model} into memory`);
145
+ loadedModel = model;
146
+ res.writeHead(200, { 'Content-Type': 'application/json' });
147
+ res.end(JSON.stringify({ status: 'success', message: `Model ${model} loaded successfully` }));
148
+ }
149
+ catch (e) {
150
+ res.writeHead(400, { 'Content-Type': 'application/json' });
151
+ res.end(JSON.stringify({ error: 'invalid json' }));
152
+ }
153
+ });
154
+ return;
155
+ }
156
+ if (method === 'POST' && (url === '/v1/chat/completions' || url === '/api/v1/chat')) {
157
+ let body = '';
158
+ req.on('data', chunk => { body += chunk; });
159
+ req.on('end', () => {
160
+ try {
161
+ const data = JSON.parse(body);
162
+ if (data.stream) {
163
+ res.writeHead(200, {
164
+ 'Content-Type': 'text/event-stream',
165
+ 'Cache-Control': 'no-cache',
166
+ 'Connection': 'keep-alive'
167
+ });
168
+ const responseChunks = [
169
+ { choices: [{ delta: { role: 'assistant', content: 'Hello' } }] },
170
+ { choices: [{ delta: { content: '!' } }] },
171
+ { choices: [{ delta: { content: ' How **can**' } }] },
172
+ { choices: [{ delta: { content: ' I **' } }] },
173
+ { choices: [{ delta: { content: 'assist**' } }] },
174
+ { choices: [{ delta: { content: ' you?' } }] }
175
+ ];
176
+ let i = 0;
177
+ const interval = setInterval(() => {
178
+ if (i < responseChunks.length) {
179
+ res.write(`data: ${JSON.stringify(responseChunks[i])}\n\n`);
180
+ i++;
181
+ }
182
+ else {
183
+ res.write('data: [DONE]\n\n');
184
+ res.end();
185
+ clearInterval(interval);
186
+ }
187
+ }, 50);
188
+ }
189
+ else {
190
+ res.writeHead(200, { 'Content-Type': 'application/json' });
191
+ res.end(JSON.stringify({
192
+ choices: [{
193
+ message: {
194
+ role: 'assistant',
195
+ content: 'Hello! I am a simulated LLM.'
196
+ }
197
+ }]
198
+ }));
199
+ }
200
+ }
201
+ catch (e) {
202
+ res.writeHead(400, { 'Content-Type': 'application/json' });
203
+ res.end(JSON.stringify({ error: 'invalid json' }));
204
+ }
205
+ });
206
+ return;
207
+ }
208
+ res.writeHead(404, { 'Content-Type': 'application/json' });
209
+ res.end(JSON.stringify({ error: 'not found' }));
210
+ });
211
+ server.on('error', (err) => {
212
+ if (err.code === 'EADDRINUSE') {
213
+ startHttpServer(port + 1, logCb, onBound);
214
+ }
215
+ else {
216
+ logCb(`${chalk_1.default.bold.red('[HTTP]')} Server error: ${err.message}`);
217
+ }
218
+ });
219
+ server.listen(port, '127.0.0.1', () => {
220
+ onBound(port);
221
+ });
222
+ return server;
223
+ }
224
+ function startSimulator(options) {
225
+ let httpServer = null;
226
+ try {
227
+ const sshServer = (0, ssh_1.startSshServer)(options.sshPort, (msg) => {
228
+ log(`${chalk_1.default.bold.blue('[SSH]')} ${msg}`);
229
+ });
230
+ const telnetServer = (0, telnet_1.startTelnetServer)(options.telnetPort, (msg) => {
231
+ log(`${chalk_1.default.bold.yellow('[Telnet]')} ${msg}`);
232
+ });
233
+ httpServer = startHttpServer(options.httpPort, (msg) => {
234
+ log(msg);
235
+ }, (actualPort) => {
236
+ printDashboard(actualPort);
237
+ log(`${chalk_1.default.bold.green('[HTTP]')} HTTP Server listening on port ${actualPort}`);
238
+ log(`${chalk_1.default.bold.blue('[SSH]')} SSH & NETCONF Server listening on port ${options.sshPort}`);
239
+ log(`${chalk_1.default.bold.yellow('[Telnet]')} Telnet Server listening on port ${options.telnetPort}`);
240
+ });
241
+ process.on('SIGINT', () => {
242
+ log(chalk_1.default.red('Shutting down simulator servers...'));
243
+ sshServer.close();
244
+ telnetServer.close();
245
+ if (httpServer)
246
+ httpServer.close();
247
+ process.exit(0);
248
+ });
249
+ }
250
+ catch (e) {
251
+ console.error(chalk_1.default.red(`Failed to start simulator: ${e.message}`));
252
+ }
253
+ }
254
+ if (require.main === module) {
255
+ startSimulator({ sshPort: SSH_PORT, telnetPort: TELNET_PORT, httpPort: HTTP_PORT });
256
+ }
257
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";;;;;AAgPA,wCA8BC;AA9QD,kDAA0B;AAC1B,gDAAwB;AACxB,+BAAuC;AACvC,qCAA6C;AAG7C,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,WAAW,GAAG,IAAI,CAAC;AACzB,MAAM,SAAS,GAAG,KAAK,CAAC;AAExB,MAAM,eAAe,GAAa,EAAE,CAAC;AACrC,IAAI,WAAW,GAAkB,IAAI,CAAC;AACtC,MAAM,IAAI,GAAG,IAAI,GAAG,EAA+D,CAAC;AAEpF,SAAS,YAAY;IACjB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO,eAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACpC,OAAO,CAAC,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;KAQ3B,CAAC,CAAC,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAAC,CAAC;IAE5F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC,CAAC;IAC3G,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,gFAAgF,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACpJ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC,CAAC;IAC3G,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,gDAAgD,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACvN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,gDAAgD,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACvN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,gDAAgD,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACvN,MAAM,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,qBAAqB,QAAQ,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5K,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC,CAAC;IAC3G,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,iFAAiF,CAAC,CAAC,CAAC;AAC9G,CAAC;AAGD,SAAS,GAAG,CAAC,GAAW;IACpB,OAAO,CAAC,GAAG,CAAC,GAAG,YAAY,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,KAA4B,EAAE,OAAqC;IACtG,MAAM,MAAM,GAAG,cAAI,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC;QAEnC,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAClD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,oBAAoB,CAAC,CAAC;QACpE,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,6BAA6B,CAAC,CAAC;QAE7E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QAED,KAAK,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC,CAAC;QAExD,IAAI,MAAM,KAAK,KAAK,IAAI,CAAC,GAAG,KAAK,gBAAgB,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,KAAK,WAAW,CAAC,EAAE,CAAC;YAChG,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YACrD,OAAO;QACX,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,IAAI,GAAG,KAAK,uBAAuB,EAAE,CAAC;YACtD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YAChD,OAAO;QACX,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;YACzD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;oBACzB,IAAI,CAAC,KAAK,EAAE,CAAC;wBACT,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC;wBAClE,OAAO;oBACX,CAAC;oBACD,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAClE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;oBAE/D,KAAK,CAAC,yBAAyB,KAAK,cAAc,KAAK,EAAE,CAAC,CAAC;oBAE3D,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;wBAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC5B,IAAI,GAAG,EAAE,CAAC;4BACN,IAAI,GAAG,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;gCACrB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;gCAChD,KAAK,CAAC,OAAO,KAAK,cAAc,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;gCACjD,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;oCACvB,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC;oCACzB,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wCACvC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oCACpC,CAAC;oCACD,KAAK,CAAC,OAAO,KAAK,2BAA2B,GAAG,CAAC,KAAK,uBAAuB,CAAC,CAAC;oCAC/E,aAAa,CAAC,QAAQ,CAAC,CAAC;gCAC5B,CAAC;4BACL,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACJ,aAAa,CAAC,QAAQ,CAAC,CAAC;wBAC5B,CAAC;oBACL,CAAC,EAAE,IAAI,CAAC,CAAC;oBAET,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACd,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,iCAAiC,CAAC,EAAE,CAAC;YACxE,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,iCAAiC,CAAC,MAAM,CAAC,CAAC;YACtE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;gBACpD,OAAO;YACX,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACnB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,GAAG;aAC/B,CAAC,CAAC,CAAC;YACJ,OAAO;QACX,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,IAAI,GAAG,KAAK,qBAAqB,EAAE,CAAC;YACrD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;oBACzB,IAAI,CAAC,KAAK,EAAE,CAAC;wBACT,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC;wBAClE,OAAO;oBACX,CAAC;oBACD,KAAK,CAAC,iBAAiB,KAAK,cAAc,CAAC,CAAC;oBAC5C,WAAW,GAAG,KAAK,CAAC;oBACpB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,KAAK,sBAAsB,EAAE,CAAC,CAAC,CAAC;gBAClG,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACd,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAGD,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,GAAG,KAAK,sBAAsB,IAAI,GAAG,KAAK,cAAc,CAAC,EAAE,CAAC;YAClF,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACf,IAAI,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBACd,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;4BACf,cAAc,EAAE,mBAAmB;4BACnC,eAAe,EAAE,UAAU;4BAC3B,YAAY,EAAE,YAAY;yBAC7B,CAAC,CAAC;wBAEH,MAAM,cAAc,GAAG;4BACnB,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE;4BACjE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE;4BAC1C,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,EAAE;4BACrD,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE;4BAC9C,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE;4BACjD,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE;yBACjD,CAAC;wBAEF,IAAI,CAAC,GAAG,CAAC,CAAC;wBACV,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;4BAC9B,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;gCAC5B,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gCAC5D,CAAC,EAAE,CAAC;4BACR,CAAC;iCAAM,CAAC;gCACJ,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gCAC9B,GAAG,CAAC,GAAG,EAAE,CAAC;gCACV,aAAa,CAAC,QAAQ,CAAC,CAAC;4BAC5B,CAAC;wBACL,CAAC,EAAE,EAAE,CAAC,CAAC;oBACX,CAAC;yBAAM,CAAC;wBACJ,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;4BACnB,OAAO,EAAE,CAAC;oCACN,OAAO,EAAE;wCACL,IAAI,EAAE,WAAW;wCACjB,OAAO,EAAE,8BAA8B;qCAC1C;iCACJ,CAAC;yBACL,CAAC,CAAC,CAAC;oBACR,CAAC;gBACL,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACd,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;QAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC5B,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACtE,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;QAClC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAClB,CAAC;AAGD,SAAgB,cAAc,CAAC,OAAkE;IAC7F,IAAI,UAAU,GAAuB,IAAI,CAAC;IAC1C,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,IAAA,oBAAc,EAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,IAAA,0BAAiB,EAAC,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;YAC/D,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;YACnD,GAAG,CAAC,GAAG,CAAC,CAAC;QACb,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE;YACd,cAAc,CAAC,UAAU,CAAC,CAAC;YAC3B,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,kCAAkC,UAAU,EAAE,CAAC,CAAC;YACjF,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,2CAA2C,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7F,GAAG,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,oCAAoC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAClG,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;YACrD,SAAS,CAAC,KAAK,EAAE,CAAC;YAClB,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,UAAU;gBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;AACL,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;AACxF,CAAC"}
@@ -0,0 +1,43 @@
1
+ export type CliMode = 'USER_EXEC' | 'PRIVILEGED_EXEC' | 'GLOBAL_CONFIG' | 'INTERFACE_CONFIG' | 'OSPF_CONFIG' | 'DHCP_CONFIG' | 'ACL_CONFIG';
2
+ export interface InterfaceState {
3
+ name: string;
4
+ ip: string | null;
5
+ subnet: string | null;
6
+ adminShutdown: boolean;
7
+ lineProtocolUp: boolean;
8
+ description: string | null;
9
+ }
10
+ export interface RouteState {
11
+ network: string;
12
+ mask: string;
13
+ nextHop: string | null;
14
+ outgoingInterface: string | null;
15
+ connected: boolean;
16
+ }
17
+ export declare class ShellSimulator {
18
+ hostname: string;
19
+ mode: CliMode;
20
+ activeInterface: string | null;
21
+ interfaces: Map<string, InterfaceState>;
22
+ vlans: Set<number>;
23
+ vlanNames: Map<number, string>;
24
+ activeVlan: number | null;
25
+ routes: RouteState[];
26
+ shellEnabled: boolean;
27
+ shellVariables: Record<string, string>;
28
+ shellFunctions: Record<string, string>;
29
+ ospfEnabled: boolean;
30
+ ospfProcessId: string | null;
31
+ ipRoutingEnabled: boolean;
32
+ flashFiles: Set<string>;
33
+ private pendingCopyDest;
34
+ private backupState;
35
+ private saveBackupState;
36
+ private restoreBackupState;
37
+ constructor(initialHostname?: string);
38
+ getPrompt(): string;
39
+ execute(line: string): string;
40
+ private normalizeInterfaceName;
41
+ private getPrefixLength;
42
+ private calculateNetwork;
43
+ }