@darkiceinteractive/mcp-conductor 1.0.0 → 2.0.0-alpha.1

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 (117) hide show
  1. package/README.md +263 -432
  2. package/dist/bridge/http-server.d.ts +39 -1
  3. package/dist/bridge/http-server.d.ts.map +1 -1
  4. package/dist/bridge/http-server.js +187 -10
  5. package/dist/bridge/http-server.js.map +1 -1
  6. package/dist/bridge/index.d.ts +4 -1
  7. package/dist/bridge/index.d.ts.map +1 -1
  8. package/dist/bridge/index.js +4 -1
  9. package/dist/bridge/index.js.map +1 -1
  10. package/dist/bridge/session-registry.d.ts +64 -0
  11. package/dist/bridge/session-registry.d.ts.map +1 -0
  12. package/dist/bridge/session-registry.js +124 -0
  13. package/dist/bridge/session-registry.js.map +1 -0
  14. package/dist/config/defaults.d.ts +58 -2
  15. package/dist/config/defaults.d.ts.map +1 -1
  16. package/dist/config/defaults.js +61 -3
  17. package/dist/config/defaults.js.map +1 -1
  18. package/dist/config/index.d.ts +3 -1
  19. package/dist/config/index.d.ts.map +1 -1
  20. package/dist/config/index.js +3 -1
  21. package/dist/config/index.js.map +1 -1
  22. package/dist/config/loader.d.ts +3 -0
  23. package/dist/config/loader.d.ts.map +1 -1
  24. package/dist/config/loader.js +29 -6
  25. package/dist/config/loader.js.map +1 -1
  26. package/dist/config/schema.d.ts +2 -0
  27. package/dist/config/schema.d.ts.map +1 -1
  28. package/dist/hub/index.d.ts +3 -1
  29. package/dist/hub/index.d.ts.map +1 -1
  30. package/dist/hub/index.js +3 -1
  31. package/dist/hub/index.js.map +1 -1
  32. package/dist/hub/mcp-hub.d.ts +1 -0
  33. package/dist/hub/mcp-hub.d.ts.map +1 -1
  34. package/dist/hub/mcp-hub.js +47 -14
  35. package/dist/hub/mcp-hub.js.map +1 -1
  36. package/dist/index.d.ts +21 -4
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +71 -7
  39. package/dist/index.js.map +1 -1
  40. package/dist/metrics/index.d.ts +3 -1
  41. package/dist/metrics/index.d.ts.map +1 -1
  42. package/dist/metrics/index.js +3 -1
  43. package/dist/metrics/index.js.map +1 -1
  44. package/dist/metrics/metrics-collector.d.ts.map +1 -1
  45. package/dist/metrics/metrics-collector.js +1 -1
  46. package/dist/metrics/metrics-collector.js.map +1 -1
  47. package/dist/modes/index.d.ts +3 -1
  48. package/dist/modes/index.d.ts.map +1 -1
  49. package/dist/modes/index.js +3 -1
  50. package/dist/modes/index.js.map +1 -1
  51. package/dist/runtime/executor.d.ts +36 -1
  52. package/dist/runtime/executor.d.ts.map +1 -1
  53. package/dist/runtime/executor.js +245 -16
  54. package/dist/runtime/executor.js.map +1 -1
  55. package/dist/runtime/index.d.ts +3 -1
  56. package/dist/runtime/index.d.ts.map +1 -1
  57. package/dist/runtime/index.js +3 -1
  58. package/dist/runtime/index.js.map +1 -1
  59. package/dist/server/index.d.ts +3 -1
  60. package/dist/server/index.d.ts.map +1 -1
  61. package/dist/server/index.js +3 -1
  62. package/dist/server/index.js.map +1 -1
  63. package/dist/server/mcp-server.d.ts +5 -0
  64. package/dist/server/mcp-server.d.ts.map +1 -1
  65. package/dist/server/mcp-server.js +243 -44
  66. package/dist/server/mcp-server.js.map +1 -1
  67. package/dist/skills/index.d.ts +3 -1
  68. package/dist/skills/index.d.ts.map +1 -1
  69. package/dist/skills/index.js +3 -1
  70. package/dist/skills/index.js.map +1 -1
  71. package/dist/streaming/execution-stream.d.ts.map +1 -1
  72. package/dist/streaming/execution-stream.js +22 -5
  73. package/dist/streaming/execution-stream.js.map +1 -1
  74. package/dist/streaming/index.d.ts +3 -1
  75. package/dist/streaming/index.d.ts.map +1 -1
  76. package/dist/streaming/index.js +3 -1
  77. package/dist/streaming/index.js.map +1 -1
  78. package/dist/utils/env.d.ts +20 -0
  79. package/dist/utils/env.d.ts.map +1 -0
  80. package/dist/utils/env.js +33 -0
  81. package/dist/utils/env.js.map +1 -0
  82. package/dist/utils/errors.d.ts +17 -1
  83. package/dist/utils/errors.d.ts.map +1 -1
  84. package/dist/utils/errors.js +16 -1
  85. package/dist/utils/errors.js.map +1 -1
  86. package/dist/utils/index.d.ts +6 -1
  87. package/dist/utils/index.d.ts.map +1 -1
  88. package/dist/utils/index.js +6 -1
  89. package/dist/utils/index.js.map +1 -1
  90. package/dist/utils/logger.d.ts +8 -1
  91. package/dist/utils/logger.d.ts.map +1 -1
  92. package/dist/utils/logger.js +13 -2
  93. package/dist/utils/logger.js.map +1 -1
  94. package/dist/utils/orphan-watch.d.ts +34 -0
  95. package/dist/utils/orphan-watch.d.ts.map +1 -0
  96. package/dist/utils/orphan-watch.js +54 -0
  97. package/dist/utils/orphan-watch.js.map +1 -0
  98. package/dist/utils/rate-limiter.d.ts.map +1 -1
  99. package/dist/utils/rate-limiter.js +6 -0
  100. package/dist/utils/rate-limiter.js.map +1 -1
  101. package/dist/utils/redact.d.ts +15 -0
  102. package/dist/utils/redact.d.ts.map +1 -0
  103. package/dist/utils/redact.js +48 -0
  104. package/dist/utils/redact.js.map +1 -0
  105. package/dist/version.d.ts +4 -0
  106. package/dist/version.d.ts.map +1 -0
  107. package/dist/version.js +4 -0
  108. package/dist/version.js.map +1 -0
  109. package/dist/watcher/index.d.ts +3 -1
  110. package/dist/watcher/index.d.ts.map +1 -1
  111. package/dist/watcher/index.js +3 -1
  112. package/dist/watcher/index.js.map +1 -1
  113. package/package.json +4 -5
  114. package/dist/bin/cli.d.ts +0 -8
  115. package/dist/bin/cli.d.ts.map +0 -1
  116. package/dist/bin/cli.js +0 -940
  117. package/dist/bin/cli.js.map +0 -1
@@ -12,7 +12,12 @@ import { DenoExecutor } from '../runtime/index.js';
12
12
  import { MCPHub } from '../hub/index.js';
13
13
  import { ModeHandler } from '../modes/index.js';
14
14
  import { MetricsCollector } from '../metrics/index.js';
15
+ import { shutdownStreamManager } from '../streaming/index.js';
16
+ import { shutdownMetricsCollector } from '../metrics/index.js';
17
+ import { shutdownModeHandler } from '../modes/index.js';
18
+ import { shutdownSkillsEngine } from '../skills/index.js';
15
19
  import { loadConductorConfig, saveConductorConfig, getDefaultConductorConfigPath } from '../config/index.js';
20
+ import { VERSION } from '../version.js';
16
21
  /**
17
22
  * MCP Executor Server
18
23
  */
@@ -45,7 +50,7 @@ export class MCPExecutorServer {
45
50
  this.server = new McpServer({
46
51
  name: 'mcp-conductor',
47
52
  title: 'MCP Conductor',
48
- version: '0.1.0',
53
+ version: VERSION,
49
54
  websiteUrl: 'https://github.com/darkiceinteractive/mcp-conductor',
50
55
  icons: [
51
56
  {
@@ -109,6 +114,46 @@ export class MCPExecutorServer {
109
114
  /**
110
115
  * Register all MCP tools
111
116
  */
117
+ /**
118
+ * Record metrics + shape the execute_code tool response. Extracted so the
119
+ * progress/cancel wiring in the handler stays readable.
120
+ */
121
+ finaliseExecuteCodeResult(result, code, servers, verbose) {
122
+ const executionMetrics = this.metricsCollector.recordExecution({
123
+ executionId: result.executionId,
124
+ code,
125
+ result: result.result,
126
+ success: result.success,
127
+ durationMs: result.metrics.executionTimeMs,
128
+ toolCalls: result.metrics.toolCalls,
129
+ dataProcessedBytes: result.metrics.dataProcessedBytes,
130
+ resultSizeBytes: result.metrics.resultSizeBytes,
131
+ mode: 'execution',
132
+ serversUsed: servers || [],
133
+ errorType: result.error?.type,
134
+ });
135
+ this.modeHandler.recordExecutionCall(executionMetrics.estimatedTokensSaved);
136
+ const output = {
137
+ success: result.success,
138
+ result: result.result,
139
+ error: result.error,
140
+ };
141
+ if (verbose) {
142
+ output.metrics = {
143
+ execution_time_ms: result.metrics.executionTimeMs,
144
+ tool_calls: result.metrics.toolCalls,
145
+ data_processed_bytes: result.metrics.dataProcessedBytes,
146
+ result_size_bytes: result.metrics.resultSizeBytes,
147
+ estimated_tokens_saved: executionMetrics.estimatedTokensSaved,
148
+ savings_percent: executionMetrics.savingsPercent,
149
+ };
150
+ output.logs = result.logs;
151
+ }
152
+ return {
153
+ content: [{ type: 'text', text: JSON.stringify(output) }],
154
+ structuredContent: output,
155
+ };
156
+ }
112
157
  registerTools() {
113
158
  // Register execute_code tool
114
159
  this.server.registerTool('execute_code', {
@@ -122,6 +167,14 @@ export class MCPExecutorServer {
122
167
  **Example:** \`const files = await mcp.filesystem.call('list_directory', { path: '/src' }); return files;\`
123
168
 
124
169
  Use passthrough_call only for debugging - it has HIGH token cost.`,
170
+ annotations: {
171
+ // execute_code proxies arbitrary code that can call any backend MCP
172
+ // tool, so it inherits the most permissive capability surface.
173
+ readOnlyHint: false,
174
+ destructiveHint: true,
175
+ idempotentHint: false,
176
+ openWorldHint: true,
177
+ },
125
178
  inputSchema: {
126
179
  code: z.string().describe('TypeScript/JavaScript code to execute. Must include a return statement.'),
127
180
  servers: z.array(z.string()).optional().describe('Optional: List of MCP server names to load.'),
@@ -147,60 +200,87 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
147
200
  }).optional(),
148
201
  logs: z.array(z.string()).optional(),
149
202
  },
150
- }, async ({ code, servers, timeout_ms, stream, verbose }) => {
203
+ }, async ({ code, servers, timeout_ms, stream, verbose }, extra) => {
151
204
  const timeoutMs = Math.min(timeout_ms || this.config.execution.defaultTimeoutMs, this.config.execution.maxTimeoutMs);
152
205
  logger.info('Executing code', {
153
206
  codeLength: code.length,
154
207
  timeout: timeoutMs,
155
208
  servers: servers || 'all',
156
209
  });
157
- const result = await this.executor.execute(code, {
158
- timeoutMs,
159
- bridgeUrl: this.bridge.getUrl(),
160
- servers: servers || [],
161
- });
162
- // Record execution with enhanced metrics collector
163
- const executionMetrics = this.metricsCollector.recordExecution({
164
- executionId: result.executionId,
165
- code,
166
- result: result.result,
167
- success: result.success,
168
- durationMs: result.metrics.executionTimeMs,
169
- toolCalls: result.metrics.toolCalls,
170
- dataProcessedBytes: result.metrics.dataProcessedBytes,
171
- resultSizeBytes: result.metrics.resultSizeBytes,
172
- mode: 'execution',
173
- serversUsed: servers || [],
174
- errorType: result.error?.type,
175
- });
176
- // Track with mode handler
177
- this.modeHandler.recordExecutionCall(executionMetrics.estimatedTokensSaved);
178
- const output = {
179
- success: result.success,
180
- result: result.result,
181
- error: result.error,
210
+ // If the client supplied a progressToken in _meta, forward sandbox
211
+ // progress() calls as MCP notifications/progress. We preallocate the
212
+ // execution id + stream so we never miss the first event.
213
+ const progressToken = extra?._meta?.progressToken;
214
+ const wantProgress = progressToken !== undefined;
215
+ const wantStream = stream || wantProgress;
216
+ const executionId = wantStream ? this.executor.generateExecutionId() : undefined;
217
+ const execStream = executionId ? this.bridge.createStream(executionId) : undefined;
218
+ const forwardProgress = (percent, message) => {
219
+ if (!wantProgress || !extra?.sendNotification)
220
+ return;
221
+ void extra
222
+ .sendNotification({
223
+ method: 'notifications/progress',
224
+ params: {
225
+ progressToken,
226
+ progress: percent,
227
+ total: 100,
228
+ ...(message ? { message } : {}),
229
+ },
230
+ })
231
+ .catch((err) => {
232
+ logger.debug('Failed to forward progress notification', { error: String(err) });
233
+ });
182
234
  };
183
- // Only include metrics when verbose is true (saves ~150-300 tokens per response)
184
- if (verbose) {
185
- output.metrics = {
186
- execution_time_ms: result.metrics.executionTimeMs,
187
- tool_calls: result.metrics.toolCalls,
188
- data_processed_bytes: result.metrics.dataProcessedBytes,
189
- result_size_bytes: result.metrics.resultSizeBytes,
190
- estimated_tokens_saved: executionMetrics.estimatedTokensSaved,
191
- savings_percent: executionMetrics.savingsPercent,
192
- };
193
- output.logs = result.logs;
235
+ if (execStream && wantProgress) {
236
+ execStream.on('progress', (ev) => {
237
+ forwardProgress(ev.data.percent, ev.data.message);
238
+ });
239
+ }
240
+ let result;
241
+ try {
242
+ result = await this.executor.execute(code, {
243
+ timeoutMs,
244
+ bridgeUrl: this.bridge.getUrl(),
245
+ servers: servers || [],
246
+ stream: wantStream,
247
+ signal: extra?.signal,
248
+ executionId,
249
+ });
250
+ return this.finaliseExecuteCodeResult(result, code, servers, verbose);
251
+ }
252
+ finally {
253
+ if (execStream) {
254
+ // Flip the stream out of `running` so StreamManager's normal
255
+ // 5/10-min cleanup applies instead of the 15-min stuck-stream
256
+ // sweep. Only fire complete() if we actually got a result —
257
+ // if execute() threw, the stream will time out via the stuck
258
+ // path which is the right safety net.
259
+ if (result) {
260
+ execStream.complete({
261
+ success: result.success,
262
+ result: result.result,
263
+ error: result.error,
264
+ metrics: {
265
+ executionTimeMs: result.metrics.executionTimeMs,
266
+ toolCalls: result.metrics.toolCalls,
267
+ dataProcessedBytes: result.metrics.dataProcessedBytes,
268
+ },
269
+ });
270
+ }
271
+ execStream.removeAllListeners('progress');
272
+ }
194
273
  }
195
- return {
196
- content: [{ type: 'text', text: JSON.stringify(output) }],
197
- structuredContent: output,
198
- };
199
274
  });
200
275
  // Register list_servers tool
201
276
  this.server.registerTool('list_servers', {
202
277
  title: 'List Servers',
203
278
  description: 'List all MCP servers connected through MCP Executor.',
279
+ annotations: {
280
+ readOnlyHint: true,
281
+ idempotentHint: true,
282
+ openWorldHint: false,
283
+ },
204
284
  inputSchema: {
205
285
  include_tools: z.boolean().optional().describe('If true, include list of tool names.'),
206
286
  },
@@ -249,6 +329,11 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
249
329
  this.server.registerTool('discover_tools', {
250
330
  title: 'Discover Tools',
251
331
  description: 'Search for available tools across all connected MCP servers.',
332
+ annotations: {
333
+ readOnlyHint: true,
334
+ idempotentHint: true,
335
+ openWorldHint: false,
336
+ },
252
337
  inputSchema: {
253
338
  query: z.string().optional().describe('Search query. Matches against tool names and descriptions.'),
254
339
  server: z.string().optional().describe('Optional: limit search to a specific server.'),
@@ -330,6 +415,11 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
330
415
  this.server.registerTool('get_metrics', {
331
416
  title: 'Get Metrics',
332
417
  description: 'Get detailed aggregated metrics for the current session including token savings, performance, and usage patterns.',
418
+ annotations: {
419
+ readOnlyHint: true,
420
+ idempotentHint: true,
421
+ openWorldHint: false,
422
+ },
333
423
  inputSchema: {
334
424
  reset: z.boolean().optional().describe('Reset metrics after returning.'),
335
425
  include_details: z.boolean().optional().describe('Include detailed breakdowns (servers, tools, recent executions).'),
@@ -439,6 +529,13 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
439
529
  - execution: All requests go through the code executor (default, maximum token savings)
440
530
  - passthrough: Direct tool calls without code execution (for debugging/comparison)
441
531
  - hybrid: Automatic selection based on task complexity`,
532
+ annotations: {
533
+ // Changes global server behaviour; future tool calls take the new path.
534
+ readOnlyHint: false,
535
+ destructiveHint: true,
536
+ idempotentHint: true,
537
+ openWorldHint: false,
538
+ },
442
539
  inputSchema: {
443
540
  mode: z.enum(['execution', 'passthrough', 'hybrid']).describe('The operation mode to switch to.'),
444
541
  },
@@ -465,6 +562,11 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
465
562
  this.server.registerTool('reload_servers', {
466
563
  title: 'Reload Servers',
467
564
  description: 'Reload MCP server configurations. Useful after modifying claude_desktop_config.json.',
565
+ annotations: {
566
+ destructiveHint: true,
567
+ idempotentHint: false,
568
+ openWorldHint: true,
569
+ },
468
570
  inputSchema: {},
469
571
  outputSchema: {
470
572
  added: z.array(z.string()),
@@ -489,6 +591,11 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
489
591
  this.server.registerTool('get_capabilities', {
490
592
  title: 'Get Capabilities',
491
593
  description: 'Get detailed information about MCP Executor capabilities and configuration.',
594
+ annotations: {
595
+ readOnlyHint: true,
596
+ idempotentHint: true,
597
+ openWorldHint: false,
598
+ },
492
599
  inputSchema: {},
493
600
  outputSchema: {
494
601
  version: z.string(),
@@ -518,7 +625,7 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
518
625
  ? { loaded: this.skills.getSkillCount(), categories: this.skills.getCategories() }
519
626
  : { loaded: 0, categories: [] };
520
627
  const output = {
521
- version: '0.1.0',
628
+ version: VERSION,
522
629
  current_mode: this.currentMode,
523
630
  features: {
524
631
  streaming: this.config.execution.streamingEnabled,
@@ -546,6 +653,11 @@ Use passthrough_call only for debugging - it has HIGH token cost.`,
546
653
  title: 'Compare Modes',
547
654
  description: `Analyse how a task would be handled in different modes.
548
655
  Returns estimated token usage and approach for each mode.`,
656
+ annotations: {
657
+ readOnlyHint: true,
658
+ idempotentHint: true,
659
+ openWorldHint: false,
660
+ },
549
661
  inputSchema: {
550
662
  task_description: z.string().describe('Description of the task to analyse.'),
551
663
  estimated_tool_calls: z.number().optional().describe('Estimated number of tool calls needed.'),
@@ -624,6 +736,14 @@ Returns estimated token usage and approach for each mode.`,
624
736
  description: `⚠️ DEBUGGING TOOL - Direct MCP tool call. HIGH TOKEN COST (10-100x vs execute_code).
625
737
 
626
738
  Only use for debugging raw tool input/output. Use execute_code for all normal operations.`,
739
+ annotations: {
740
+ // Proxies into a backend MCP server so the effect depends on the
741
+ // downstream tool. Conservative defaults: assume external + mutable.
742
+ readOnlyHint: false,
743
+ destructiveHint: true,
744
+ idempotentHint: false,
745
+ openWorldHint: true,
746
+ },
627
747
  inputSchema: {
628
748
  server: z.string().describe('Name of the MCP server to call.'),
629
749
  tool: z.string().describe('Name of the tool to invoke.'),
@@ -769,6 +889,11 @@ Only use for debugging raw tool input/output. Use execute_code for all normal op
769
889
  description: `Web search via Brave Search API. Uses 90% fewer tokens than native WebSearch.
770
890
 
771
891
  Routes to brave-search MCP server internally. Requires brave-search server to be configured.`,
892
+ annotations: {
893
+ readOnlyHint: true,
894
+ idempotentHint: false, // Web results change between calls
895
+ openWorldHint: true,
896
+ },
772
897
  inputSchema: {
773
898
  query: z.string().describe('Search query (max 400 chars, 50 words).'),
774
899
  count: z.number().optional().describe('Number of results (1-20, default 10).'),
@@ -830,6 +955,12 @@ Routes to brave-search MCP server internally. Requires brave-search server to be
830
955
 
831
956
  Saves the server configuration to ~/.mcp-conductor.json and triggers a reload.
832
957
  Use this to dynamically add servers without restarting Claude.`,
958
+ annotations: {
959
+ readOnlyHint: false,
960
+ destructiveHint: false, // Adds a new server; not destructive by itself
961
+ idempotentHint: false, // Re-adding the same name returns an error
962
+ openWorldHint: false,
963
+ },
833
964
  inputSchema: {
834
965
  name: z.string().describe('Unique server name (e.g., "github", "filesystem").'),
835
966
  command: z.string().describe('Command to run the server (e.g., "npx", "node", "python").'),
@@ -917,6 +1048,12 @@ Use this to dynamically add servers without restarting Claude.`,
917
1048
 
918
1049
  Removes the server configuration from ~/.mcp-conductor.json and triggers a reload.
919
1050
  Use this to dynamically remove servers without restarting Claude.`,
1051
+ annotations: {
1052
+ readOnlyHint: false,
1053
+ destructiveHint: true,
1054
+ idempotentHint: true, // Removing an already-gone server is a safe no-op
1055
+ openWorldHint: false,
1056
+ },
920
1057
  inputSchema: {
921
1058
  name: z.string().describe('Name of the server to remove.'),
922
1059
  },
@@ -1002,6 +1139,12 @@ Use this to dynamically remove servers without restarting Claude.`,
1002
1139
 
1003
1140
  Use this to update API keys or other settings without removing and re-adding the server.
1004
1141
  Triggers a reload to apply changes immediately.`,
1142
+ annotations: {
1143
+ readOnlyHint: false,
1144
+ destructiveHint: true, // Overwrites existing config; may disconnect/reconnect
1145
+ idempotentHint: true,
1146
+ openWorldHint: false,
1147
+ },
1005
1148
  inputSchema: {
1006
1149
  name: z.string().describe('Name of the server to update.'),
1007
1150
  command: z.string().optional().describe('New command (optional, keeps existing if not provided).'),
@@ -1116,6 +1259,53 @@ Triggers a reload to apply changes immediately.`,
1116
1259
  };
1117
1260
  }
1118
1261
  });
1262
+ // Register get_memory_stats tool for runtime diagnostics
1263
+ this.server.registerTool('get_memory_stats', {
1264
+ title: 'Get Memory Stats',
1265
+ description: 'Returns live memory usage and resource counts for the conductor process. Use this to diagnose memory issues.',
1266
+ annotations: {
1267
+ readOnlyHint: true,
1268
+ idempotentHint: true,
1269
+ openWorldHint: false,
1270
+ },
1271
+ inputSchema: {},
1272
+ outputSchema: {
1273
+ heap_used_mb: z.number(),
1274
+ heap_total_mb: z.number(),
1275
+ rss_mb: z.number(),
1276
+ external_mb: z.number(),
1277
+ array_buffers_mb: z.number(),
1278
+ active_deno_processes: z.number(),
1279
+ connected_servers: z.object({
1280
+ total: z.number(),
1281
+ connected: z.number(),
1282
+ error: z.number(),
1283
+ disconnected: z.number(),
1284
+ }),
1285
+ active_streams: z.number(),
1286
+ uptime_seconds: z.number(),
1287
+ },
1288
+ }, async () => {
1289
+ const mem = process.memoryUsage();
1290
+ const toMB = (bytes) => Math.round(bytes / 1024 / 1024 * 100) / 100;
1291
+ const { getStreamManager } = await import('../streaming/index.js');
1292
+ const streamManager = getStreamManager();
1293
+ const output = {
1294
+ heap_used_mb: toMB(mem.heapUsed),
1295
+ heap_total_mb: toMB(mem.heapTotal),
1296
+ rss_mb: toMB(mem.rss),
1297
+ external_mb: toMB(mem.external),
1298
+ array_buffers_mb: toMB(mem.arrayBuffers),
1299
+ active_deno_processes: this.executor.getActiveProcessCount(),
1300
+ connected_servers: this.hub.getStats(),
1301
+ active_streams: streamManager.getStreamCount(),
1302
+ uptime_seconds: Math.round(process.uptime()),
1303
+ };
1304
+ return {
1305
+ content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
1306
+ structuredContent: output,
1307
+ };
1308
+ });
1119
1309
  }
1120
1310
  /**
1121
1311
  * Start the server
@@ -1230,10 +1420,19 @@ Triggers a reload to apply changes immediately.`,
1230
1420
  * Stop the server
1231
1421
  */
1232
1422
  async stop() {
1233
- // Shutdown hub connections
1423
+ logger.info('Stopping MCP Executor server...');
1424
+ // 1. Kill all in-flight Deno processes first
1425
+ await this.executor.shutdown();
1426
+ // 2. Shutdown hub connections (disconnects backend MCP servers)
1234
1427
  if (!this.useMockServers) {
1235
1428
  await this.hub.shutdown();
1236
1429
  }
1430
+ // 3. Shutdown global singletons (intervals, listeners, caches)
1431
+ shutdownStreamManager();
1432
+ shutdownMetricsCollector();
1433
+ shutdownModeHandler();
1434
+ shutdownSkillsEngine();
1435
+ // 4. Stop HTTP bridge last (Deno processes may still be calling it during cleanup)
1237
1436
  await this.bridge.stop();
1238
1437
  logger.info('MCP Executor server stopped');
1239
1438
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAwC,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAwB,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAE7G;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACpB,MAAM,CAAY;IAClB,MAAM,CAAa;IACnB,QAAQ,CAAe;IACvB,GAAG,CAAS;IACZ,MAAM,GAAwB,IAAI,CAAC;IACnC,WAAW,CAAc;IACzB,gBAAgB,CAAmB;IACnC,MAAM,CAAoB;IAC1B,cAAc,CAAU;IACxB,WAAW,CAAgB;IAEnC,+DAA+D;IACvD,WAAW,GAAyE,IAAI,GAAG,EAAE,CAAC;IAEtG,YAAY,MAAyB,EAAE,OAAsC;QAC3E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,KAAK,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QAEzC,0BAA0B;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC;YACjC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;YAClC,uBAAuB,EAAE,CAAC;YAC1B,mBAAmB,EAAE,CAAC;SACvB,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE7D,sCAAsC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC;YAC1B,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,OAAO;YAChB,UAAU,EAAE,qDAAqD;YACjE,KAAK,EAAE;gBACL;oBACE,mDAAmD;oBACnD,GAAG,EAAE,4BAA4B,GAAG,MAAM,CAAC,IAAI,CAAC;;;;;;;;;;;;;WAa/C,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBACrB,QAAQ,EAAE,eAAe;oBACzB,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC;iBACxB;aACF;SACF,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE5C,2BAA2B;QAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEjD,iDAAiD;QACjD,IAAI,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,IAAI;YACtB,oBAAoB,EAAE,CAAC;SACxB,CAAC,CAAC;QAEH,2CAA2C;QAC3C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,iBAAiB;QACjB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,yBAAyB;QACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE;YACjC,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,6BAA6B,EAAE;gBACjE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,yBAAyB,EAAE;gBAC9D,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,2BAA2B,EAAE;gBACpE,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,qCAAqC,EAAE;aAC7E;SACF,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE;YAC3B,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,6BAA6B,EAAE;gBAC5D,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;aAC7D;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,6BAA6B;QAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,cAAc,EACd;YACE,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE;;;;;;;;kEAQ6C;YAC1D,WAAW,EAAE;gBACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;gBACpG,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;gBAC/F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;gBACrG,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;gBAC5F,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;aAC3G;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;oBACd,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;oBACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;iBAC5B,CAAC,CAAC,QAAQ,EAAE;gBACb,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;oBAChB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;oBACtB,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC7B,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE;iBACnC,CAAC,CAAC,QAAQ,EAAE;gBACb,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACrC;SACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EACpD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CACnC,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBAC5B,UAAU,EAAE,IAAI,CAAC,MAAM;gBACvB,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,OAAO,IAAI,KAAK;aAC1B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE;gBAC/C,SAAS;gBACT,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC/B,OAAO,EAAE,OAAO,IAAI,EAAE;aACvB,CAAC,CAAC;YAEH,mDAAmD;YACnD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;gBAC7D,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,IAAI;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;gBAC1C,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;gBACnC,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,kBAAkB;gBACrD,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;gBAC/C,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,OAAO,IAAI,EAAE;gBAC1B,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI;aAC9B,CAAC,CAAC;YAEH,0BAA0B;YAC1B,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;YAE5E,MAAM,MAAM,GAA4B;gBACtC,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;aACpB,CAAC;YAEF,iFAAiF;YACjF,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,OAAO,GAAG;oBACf,iBAAiB,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;oBACjD,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;oBACpC,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,kBAAkB;oBACvD,iBAAiB,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe;oBACjD,sBAAsB,EAAE,gBAAgB,CAAC,oBAAoB;oBAC7D,eAAe,EAAE,gBAAgB,CAAC,cAAc;iBACjD,CAAC;gBACF,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAC5B,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,6BAA6B;QAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,cAAc,EACd;YACE,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,sDAAsD;YACnE,WAAW,EAAE;gBACX,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;aACvF;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;oBACtD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;oBACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;iBACtC,CAAC,CAAC;gBACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;gBACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;aACxB;SACF,EACD,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;YAC1B,IAAI,OAKF,CAAC;YAEH,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,+BAA+B;gBAC/B,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;oBACtE,IAAI;oBACJ,MAAM,EAAE,WAAoB;oBAC5B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;oBAC7B,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;iBACjE,CAAC,CAAC,CAAC;YACN,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC3C,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc;oBAChG,UAAU,EAAE,CAAC,CAAC,SAAS;oBACvB,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;iBACtF,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAErE,MAAM,MAAM,GAAG;gBACb,OAAO;gBACP,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,WAAW,EAAE,UAAU;aACxB,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,gBAAgB,EAChB;YACE,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,8DAA8D;YAC3E,WAAW,EAAE;gBACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;gBACnG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;gBACtF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;aACjF;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;oBAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;oBACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;iBACtB,CAAC,CAAC;gBACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;gBACzB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;aAC7B;SACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YACjC,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAoF,EAAE,CAAC;YACpG,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAChD,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,sBAAsB;gBACtB,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC5D,IAAI,MAAM,IAAI,UAAU,KAAK,MAAM;wBAAE,SAAS;oBAC9C,eAAe,EAAE,CAAC;oBAElB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAChE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAEvE,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;4BACrC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;4BAC1D,OAAO,CAAC,IAAI,CAAC;gCACX,MAAM,EAAE,UAAU;gCAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gCACf,WAAW,EAAE,IAAI,CAAC,WAAW;gCAC7B,SAAS;6BACV,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACnC,IAAI,MAAM,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM;wBAAE,SAAS;oBAClD,eAAe,EAAE,CAAC;oBAElB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBACtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAChE,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;wBAE/E,IAAI,CAAC,KAAK,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;4BACrC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;4BAC1D,OAAO,CAAC,IAAI,CAAC;gCACX,MAAM,EAAE,SAAS,CAAC,IAAI;gCACtB,IAAI,EAAE,IAAI,CAAC,IAAI;gCACf,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;gCACnC,SAAS;6BACV,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,8BAA8B;YAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;YAClD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YAE7C,MAAM,MAAM,GAAG;gBACb,OAAO,EAAE,OAAO;gBAChB,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,gBAAgB,EAAE,eAAe;aAClC,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,4BAA4B;QAC5B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,aAAa,EACb;YACE,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,mHAAmH;YAChI,WAAW,EAAE;gBACX,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;gBACxE,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;aACrH;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;oBAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;oBACtB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;oBACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;iBACtB,CAAC;gBACF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;oBACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;oBACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;iBACnB,CAAC;gBACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;oBACf,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;oBACvB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;oBACzB,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE;iBACpC,CAAC;gBACF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;oBACpB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC/B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC3B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;iBAC5B,CAAC;gBACF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;oBACb,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE;oBACjC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE;iBAC/B,CAAC;gBACF,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;oBACvB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC3B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;iBAC9B,CAAC;gBACF,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAC5D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;oBAChB,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;oBACpF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;oBAChF,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;wBAClC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;wBACxB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;wBACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;wBACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;qBACzB,CAAC,CAAC,CAAC,QAAQ,EAAE;iBACf,CAAC,CAAC,QAAQ,EAAE;aACd;SACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE;YACnC,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;YAEjE,MAAM,MAAM,GAA4B;gBACtC,OAAO,EAAE;oBACP,UAAU,EAAE,cAAc,CAAC,SAAS;oBACpC,aAAa,EAAE,cAAc,CAAC,YAAY,CAAC,WAAW,EAAE;oBACxD,SAAS,EAAE,cAAc,CAAC,MAAM;iBACjC;gBACD,UAAU,EAAE;oBACV,KAAK,EAAE,cAAc,CAAC,eAAe;oBACrC,UAAU,EAAE,cAAc,CAAC,oBAAoB;oBAC/C,MAAM,EAAE,cAAc,CAAC,gBAAgB;iBACxC;gBACD,MAAM,EAAE;oBACN,WAAW,EAAE,cAAc,CAAC,gBAAgB;oBAC5C,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,kBAAkB,CAAC;oBAC5D,uBAAuB,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC;iBAC1E;gBACD,WAAW,EAAE;oBACX,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC;oBACjE,eAAe,EAAE,cAAc,CAAC,aAAa;oBAC7C,eAAe,EAAE,cAAc,CAAC,aAAa;iBAC9C;gBACD,IAAI,EAAE;oBACJ,qBAAqB,EAAE,cAAc,CAAC,uBAAuB;oBAC7D,kBAAkB,EAAE,cAAc,CAAC,gBAAgB;iBACpD;gBACD,cAAc,EAAE;oBACd,eAAe,EAAE,cAAc,CAAC,kBAAkB;oBAClD,iBAAiB,EAAE,cAAc,CAAC,oBAAoB;iBACvD;gBACD,YAAY,EAAE,IAAI,CAAC,WAAW;aAC/B,CAAC;YAEF,2CAA2C;YAC3C,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBACtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;gBAEtE,MAAM,CAAC,SAAS,CAAC,GAAG;oBAClB,WAAW,EAAE,UAAU;oBACvB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAC5C,YAAY,EAAE,CAAC,CAAC,WAAW;wBAC3B,OAAO,EAAE,CAAC,CAAC,OAAO;wBAClB,WAAW,EAAE,CAAC,CAAC,UAAU;wBACzB,YAAY,EAAE,CAAC,CAAC,oBAAoB;qBACrC,CAAC,CAAC;iBACJ,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAChC,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,yBAAyB;QACzB,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,UAAU,EACV;YACE,KAAK,EAAE,oBAAoB;YAC3B,WAAW,EAAE;;;uDAGkC;YAC/C,WAAW,EAAE;gBACX,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;aAClG;YACD,YAAY,EAAE;gBACZ,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAC7D,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAC5D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB;SACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACjB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAE/B,MAAM,MAAM,GAAG;gBACb,aAAa,EAAE,YAAY;gBAC3B,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE,sBAAsB,YAAY,SAAS,IAAI,GAAG;aAC5D,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,gBAAgB,EAChB;YACE,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,sFAAsF;YACnG,WAAW,EAAE,EAAE;YACf,YAAY,EAAE;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC1B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC5B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;gBACzB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB;SACF,EACD,KAAK,IAAI,EAAE;YACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAE1C,MAAM,MAAM,GAAG;gBACb,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK;gBACxC,OAAO,EAAE,4BAA4B,MAAM,CAAC,KAAK,CAAC,MAAM,cAAc,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE;aAC9F,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,iCAAiC;QACjC,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,kBAAkB,EAClB;YACE,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,6EAA6E;YAC1F,WAAW,EAAE,EAAE;YACf,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;gBACnB,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;gBAC5D,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;oBACjB,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;oBACtB,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;oBACvB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;iBACpB,CAAC;gBACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;oBACf,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC1B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE;oBAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;iBAC1B,CAAC;gBACF,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;oBAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;iBACtB,CAAC;gBACF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;oBACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;oBAClB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBAChC,CAAC;aACH;SACF,EACD,KAAK,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM;gBAC5B,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE;gBAClF,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;YAElC,MAAM,MAAM,GAAG;gBACb,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,IAAI,CAAC,WAAW;gBAC9B,QAAQ,EAAE;oBACR,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB;oBACjD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO;oBACzC,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;iBACvD;gBACD,MAAM,EAAE;oBACN,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY;oBAClD,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB;oBAC1D,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW;iBAC/C;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;iBAC9B;gBACD,MAAM,EAAE,UAAU;aACnB,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,8BAA8B;QAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,eAAe,EACf;YACE,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE;0DACqC;YAClD,WAAW,EAAE;gBACX,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;gBAC5E,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;gBAC9F,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;aACtF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;oBACd,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;wBAClB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;wBACpB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;wBAC5B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;qBAChC,CAAC;oBACF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;wBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;wBACpB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;wBAC5B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;qBAChC,CAAC;iBACH,CAAC;gBACF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;gBAC1B,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE;aAClC;SACF,EACD,KAAK,EAAE,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,EAAE,EAAE;YACtE,MAAM,SAAS,GAAG,oBAAoB,IAAI,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,iBAAiB,IAAI,EAAE,CAAC;YAEvC,uCAAuC;YACvC,wDAAwD;YACxD,MAAM,iBAAiB,GAAG,GAAG,CAAC,CAAC,wCAAwC;YACvE,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,oCAAoC;YAC7D,MAAM,iBAAiB,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;YAEnF,qCAAqC;YACrC,2BAA2B;YAC3B,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,qBAAqB;YAC7C,MAAM,YAAY,GAAG,EAAE,CAAC,CAAC,oBAAoB;YAC7C,MAAM,eAAe,GAAG,UAAU,GAAG,YAAY,CAAC;YAElD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,GAAG,eAAe,CAAC,GAAG,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC;YAErG,MAAM,MAAM,GAAG;gBACb,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACL,SAAS,EAAE;wBACT,QAAQ,EAAE,sEAAsE;wBAChF,gBAAgB,EAAE,eAAe;wBACjC,UAAU,EAAE;4BACV,uBAAuB;4BACvB,oCAAoC;4BACpC,uCAAuC;4BACvC,uCAAuC;yBACxC;qBACF;oBACD,WAAW,EAAE;wBACX,QAAQ,EAAE,qDAAqD;wBAC/D,gBAAgB,EAAE,iBAAiB;wBACnC,UAAU,EAAE;4BACV,sCAAsC;4BACtC,0BAA0B;4BAC1B,sCAAsC;4BACtC,sBAAsB;yBACvB;qBACF;iBACF;gBACD,cAAc,EAAE,cAAc,GAAG,EAAE;oBACjC,CAAC,CAAC,kDAAkD;oBACpD,CAAC,CAAC,cAAc,GAAG,EAAE;wBACrB,CAAC,CAAC,iDAAiD;wBACnD,CAAC,CAAC,+CAA+C;gBACnD,qBAAqB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC;aACnD,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,6DAA6D;QAC7D,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,kBAAkB,EAClB;YACE,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE;;0FAEqE;YAClF,WAAW,EAAE;gBACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;gBAC9D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;gBACxD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;aACrF;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;oBAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;oBACvB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;iBACxC,CAAC;aACH;SACF,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,aAAa,GAAG,eAAe,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAE5F,yCAAyC;YACzC,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,IAAI,CAAC;gBACH,IAAI,MAAe,CAAC;gBAEpB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,gCAAgC;oBAChC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAChD,IAAI,CAAC,UAAU,EAAE,CAAC;wBAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;oBACjD,CAAC;oBACD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;oBACvD,CAAC;oBAED,uBAAuB;oBACvB,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;wBACzC,MAAM,GAAG,EAAE,OAAO,EAAG,MAAkC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC/E,CAAC;yBAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;wBACnD,MAAM,GAAG,GAAG,MAAM,CAAE,MAAkC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC3E,MAAM,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1D,CAAC;yBAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;wBACnC,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;4BAC9B,MAAM,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;wBAC7D,CAAC;6BAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;4BAChC,MAAM,GAAG,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;wBAC/C,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,eAAe;oBACf,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAE1C,0CAA0C;gBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACzC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;oBACpC,WAAW,EAAE,aAAa;oBAC1B,IAAI,EAAE,EAAE,EAAE,0BAA0B;oBACpC,MAAM;oBACN,OAAO,EAAE,IAAI;oBACb,UAAU;oBACV,SAAS,EAAE,CAAC;oBACZ,kBAAkB,EAAE,SAAS,CAAC,MAAM;oBACpC,eAAe,EAAE,SAAS,CAAC,MAAM;oBACjC,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,CAAC,MAAM,CAAC;oBACrB,SAAS,EAAE,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;iBACjC,CAAC,CAAC;gBAEH,0BAA0B;gBAC1B,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC;oBACrC,MAAM;oBACN,IAAI;oBACJ,MAAM,EAAE,MAAM,IAAI,EAAE;oBACpB,OAAO,EAAE,IAAI;oBACb,UAAU;iBACX,CAAC,CAAC;gBAEH,MAAM,MAAM,GAA4B;oBACtC,OAAO,EAAE,IAAI;oBACb,MAAM;oBACN,OAAO,EAAE;wBACP,WAAW,EAAE,UAAU;wBACvB,IAAI,EAAE,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAiB,CAAC,CAAC,CAAC,aAAsB;qBACjF;iBACF,CAAC;gBAEF,0CAA0C;gBAC1C,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;oBACrC,MAAM,CAAC,SAAS,CAAC,GAAG,iLAAiL,CAAC;gBACxM,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAE1C,sCAAsC;gBACtC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;oBACpC,WAAW,EAAE,aAAa;oBAC1B,IAAI,EAAE,EAAE,EAAE,0BAA0B;oBACpC,MAAM,EAAE,IAAI;oBACZ,OAAO,EAAE,KAAK;oBACd,UAAU;oBACV,SAAS,EAAE,CAAC;oBACZ,kBAAkB,EAAE,CAAC;oBACrB,eAAe,EAAE,CAAC;oBAClB,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,CAAC,MAAM,CAAC;oBACrB,SAAS,EAAE,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;oBAChC,SAAS,EAAE,SAAS;iBACrB,CAAC,CAAC;gBAEH,0BAA0B;gBAC1B,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC;oBACrC,MAAM;oBACN,IAAI;oBACJ,MAAM,EAAE,MAAM,IAAI,EAAE;oBACpB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;oBACpB,UAAU;iBACX,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;oBACpB,OAAO,EAAE;wBACP,WAAW,EAAE,UAAU;wBACvB,IAAI,EAAE,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAiB,CAAC,CAAC,CAAC,aAAsB;qBACjF;iBACF,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,qEAAqE;QACrE,kEAAkE;QAClE,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,kBAAkB,EAClB;YACE,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE;;6FAEwE;YACrF,WAAW,EAAE;gBACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;gBACrE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;aAC/E;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;oBACxB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;oBACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;oBACvB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;iBAChB,CAAC,CAAC,CAAC,QAAQ,EAAE;gBACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC7B;SACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;YACzB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAE9C,IAAI,CAAC;gBACH,mCAAmC;gBACnC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,kBAAkB,EAAE;oBAC5E,KAAK;oBACL,KAAK,EAAE,WAAW;iBACnB,CAAC,CAAC;gBAEH,oEAAoE;gBACpE,MAAM,YAAY,GAAG,CAAC,IAAa,EAA8D,EAAE;oBACjG,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;wBAAE,OAAO,EAAE,CAAC;oBACrE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,CAAS,EAAE,EAAE;wBAC/D,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;wBAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;wBAC9D,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;wBAC1D,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;wBACnE,OAAO,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oBACjE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAA4D,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;gBACzF,CAAC,CAAC;gBAEF,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;gBAExC,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,IAAI;oBACb,OAAO;iBACR,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,wBAAwB,MAAM,CAAC,KAAK,CAAC,6CAA6C;iBAC1F,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,yDAAyD;QACzD,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,YAAY,EACZ;YACE,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE;;;+DAG0C;YACvD,WAAW,EAAE;gBACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;gBAC/E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;gBAC1F,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;gBACzH,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;aACzH;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;gBACnB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;aAC1B;SACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,mDAAmD;gBACnD,IAAI,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBACnC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,GAAG;wBACP,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,EAAE;qBACZ,CAAC;gBACJ,CAAC;gBAED,iCAAiC;gBACjC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,WAAW,IAAI,0DAA0D;oCAClF,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;iCAClD,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,iBAAiB;gBACjB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;oBACrB,OAAO;oBACP,IAAI,EAAE,IAAI,IAAI,EAAE;oBAChB,GAAG,EAAE,GAAG,IAAI,EAAE;iBACf,CAAC;gBAEF,cAAc;gBACd,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC/C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oCAC5B,OAAO,EAAE,0BAA0B,UAAU,CAAC,KAAK,EAAE;oCACrD,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;iCACtD,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,2CAA2C;gBAC3C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAEhD,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,IAAI;oBACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oBAC5B,OAAO,EAAE,WAAW,IAAI,yBAAyB,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,sCAAsC,EAAE;oBAC5I,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;iBAClD,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,KAAK;gCACd,WAAW,EAAE,IAAI;gCACjB,WAAW,EAAE,6BAA6B,EAAE;gCAC5C,OAAO,EAAE,wBAAwB,MAAM,CAAC,KAAK,CAAC,EAAE;gCAChD,aAAa,EAAE,CAAC;6BACjB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACf,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,4DAA4D;QAC5D,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,eAAe,EACf;YACE,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE;;;kEAG6C;YAC1D,WAAW,EAAE;gBACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;aAC3D;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;gBACnB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;aAC1B;SACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YACjB,IAAI,CAAC;gBACH,iCAAiC;gBACjC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,+CAA+C;oCACxD,aAAa,EAAE,CAAC;iCACjB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,yBAAyB;gBACzB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,WAAW,IAAI,kCAAkC;oCAC1D,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;iCAClD,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,gBAAgB;gBAChB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE5B,cAAc;gBACd,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC/C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oCAC5B,OAAO,EAAE,0BAA0B,UAAU,CAAC,KAAK,EAAE;oCACrD,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;iCACtD,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAEhD,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,IAAI;oBACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oBAC5B,OAAO,EAAE,WAAW,IAAI,2BAA2B,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,yCAAyC,EAAE;oBACtJ,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM;iBAClD,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,KAAK;gCACd,WAAW,EAAE,IAAI;gCACjB,WAAW,EAAE,6BAA6B,EAAE;gCAC5C,OAAO,EAAE,0BAA0B,MAAM,CAAC,KAAK,CAAC,EAAE;gCAClD,aAAa,EAAE,CAAC;6BACjB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACf,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;QAEF,0EAA0E;QAC1E,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,eAAe,EACf;YACE,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE;;;gDAG2B;YACxC,WAAW,EAAE;gBACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;gBAClG,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;gBAC1G,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;gBACxG,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oEAAoE,CAAC;aACnH;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;gBACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;gBACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;gBACnB,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACpC;SACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE;YAClD,IAAI,CAAC;gBACH,iCAAiC;gBACjC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;gBACrC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,4BAA4B;oCACrC,cAAc,EAAE,EAAE;iCACnB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,yBAAyB;gBACzB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,WAAW,IAAI,iDAAiD;oCACzE,cAAc,EAAE,EAAE;iCACnB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,MAAM,aAAa,GAAa,EAAE,CAAC;gBACnC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE1C,6BAA6B;gBAC7B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC/B,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAChC,CAAC;gBAED,0BAA0B;gBAC1B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;oBACzB,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBAED,kBAAkB;gBAClB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,IAAI,WAAW,EAAE,CAAC;wBAChB,YAAY,CAAC,GAAG,GAAG,GAAG,CAAC;wBACvB,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,YAAY,CAAC,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;wBACnD,aAAa,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;gBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,6BAA6B,EAAE;oCAC5C,OAAO,EAAE,qDAAqD;oCAC9D,cAAc,EAAE,EAAE;iCACnB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,cAAc;gBACd,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC/C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oCAC7C,OAAO,EAAE,KAAK;oCACd,WAAW,EAAE,IAAI;oCACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oCAC5B,OAAO,EAAE,0BAA0B,UAAU,CAAC,KAAK,EAAE;oCACrD,cAAc,EAAE,EAAE;iCACnB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACf,CAAC;gBACJ,CAAC;gBAED,kCAAkC;gBAClC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAE3B,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,IAAI;oBACb,WAAW,EAAE,IAAI;oBACjB,WAAW,EAAE,UAAU,CAAC,IAAI;oBAC5B,OAAO,EAAE,WAAW,IAAI,0CAA0C;oBAClE,cAAc,EAAE,aAAa;iBAC9B,CAAC;gBAEF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,iBAAiB,EAAE,MAAM;iBAC1B,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCAC7C,OAAO,EAAE,KAAK;gCACd,WAAW,EAAE,IAAI;gCACjB,WAAW,EAAE,6BAA6B,EAAE;gCAC5C,OAAO,EAAE,0BAA0B,MAAM,CAAC,KAAK,CAAC,EAAE;gCAClD,cAAc,EAAE,EAAE;6BACnB,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBACf,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,mDAAmD;QACnD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;gBACjC,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC,CAAC;QACL,CAAC;QAED,yBAAyB;QACzB,MAAM,QAAQ,GAAmB;YAC/B,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;gBAC/C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,uCAAuC;oBACvC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;wBAC1B,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;4BACxB,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC9C,CAAC;wBACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;4BAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC5C,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;wBACxD,CAAC;oBACH,CAAC;oBAED,4BAA4B;oBAC5B,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;wBAChC,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;4BAClC,OAAO;gCACL,OAAO,EAAE;oCACP,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;oCAClC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;oCAClC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE;iCACnC;6BACF,CAAC;wBACJ,CAAC;wBACD,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;4BAC7B,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;wBAC7C,CAAC;oBACH,CAAC;oBAED,MAAM,IAAI,KAAK,CAAC,iBAAiB,UAAU,IAAI,QAAQ,EAAE,CAAC,CAAC;gBAC7D,CAAC;qBAAM,CAAC;oBACN,8BAA8B;oBAC9B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,WAAW,EAAE,GAAiB,EAAE;gBAC9B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnE,IAAI;wBACJ,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;wBAC5B,MAAM,EAAE,WAAW;qBACpB,CAAC,CAAC,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxC,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc;qBACjG,CAAC,CAAC,CAAC;gBACN,CAAC;YACH,CAAC;YAED,SAAS,EAAE,CAAC,UAAkB,EAAE,EAAE;gBAChC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAChD,OAAO,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACrD,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;qBACjC,CAAC,CAAC,CAAC;gBACN,CAAC;YACH,CAAC;YAED,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC7B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAiE,EAAE,CAAC;oBACjF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;oBAExC,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;wBAC5D,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;4BAC9B,IACE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gCAC7C,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EACpD,CAAC;gCACD,OAAO,CAAC,IAAI,CAAC;oCACX,MAAM,EAAE,UAAU;oCAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oCACf,WAAW,EAAE,IAAI,CAAC,WAAW;iCAC9B,CAAC,CAAC;4BACL,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,OAAO,OAAO,CAAC;gBACjB,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;SACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAElC,sBAAsB;QACtB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAE1B,6BAA6B;QAC7B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,2BAA2B;QAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,kBAAkB;QAChB,wEAAwE;QACxE,6DAA6D;QAC7D,8DAA8D;QAC9D,MAAM,QAAQ,GAAI,IAAI,CAAC,MAAc,CAAC,gBAGrC,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA8D,CAAC;QACvF,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  /**
2
- * Skills module exports
2
+ * Skills engine — loads YAML-defined reusable code templates from a
3
+ * directory, supports search/list/execute, and hot-reloads on change.
4
+ * @module skills
3
5
  */
4
6
  export { SkillsEngine, getSkillsEngine, shutdownSkillsEngine, type SkillMetadata, type SkillInput, type SkillOutput, type Skill, type SkillSearchResult, type SkillListItem, type SkillsEngineConfig, } from './skills-engine.js';
5
7
  //# sourceMappingURL=index.d.ts.map