@defai.digital/ax-cli 3.12.10 → 3.13.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.
- package/README.md +17 -5
- package/dist/agent/loop-detector.d.ts +2 -0
- package/dist/agent/loop-detector.js +11 -15
- package/dist/agent/loop-detector.js.map +1 -1
- package/dist/agent/subagent.js +3 -3
- package/dist/agent/subagent.js.map +1 -1
- package/dist/analyzers/git/churn-calculator.js +4 -1
- package/dist/analyzers/git/churn-calculator.js.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/hooks/hook-runner.js +1 -1
- package/dist/hooks/hook-runner.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/llm/tools.d.ts +39 -0
- package/dist/llm/tools.js +55 -0
- package/dist/llm/tools.js.map +1 -1
- package/dist/mcp/client-v2.d.ts +43 -0
- package/dist/mcp/client-v2.js +96 -0
- package/dist/mcp/client-v2.js.map +1 -1
- package/dist/mcp/client.d.ts +27 -0
- package/dist/mcp/client.js +24 -0
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/error-formatter.js +219 -33
- package/dist/mcp/error-formatter.js.map +1 -1
- package/dist/mcp/index.d.ts +3 -1
- package/dist/mcp/index.js +3 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/prompts.d.ts +68 -0
- package/dist/mcp/prompts.js +129 -0
- package/dist/mcp/prompts.js.map +1 -0
- package/dist/mcp/resources.d.ts +1 -0
- package/dist/mcp/resources.js +9 -2
- package/dist/mcp/resources.js.map +1 -1
- package/dist/planner/task-planner.js +2 -2
- package/dist/planner/task-planner.js.map +1 -1
- package/dist/sdk/index.d.ts +5 -1
- package/dist/sdk/index.js +9 -1
- package/dist/sdk/index.js.map +1 -1
- package/dist/tools/ask-user.js +2 -1
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/bash.js +4 -5
- package/dist/tools/bash.js.map +1 -1
- package/dist/ui/components/chat-history.js +2 -63
- package/dist/ui/components/chat-history.js.map +1 -1
- package/dist/ui/components/chat-interface.js +11 -5
- package/dist/ui/components/chat-interface.js.map +1 -1
- package/dist/ui/components/collapsible-tool-result.d.ts +12 -0
- package/dist/ui/components/collapsible-tool-result.js +56 -50
- package/dist/ui/components/collapsible-tool-result.js.map +1 -1
- package/dist/ui/components/mcp-dashboard.d.ts +15 -0
- package/dist/ui/components/mcp-dashboard.js +520 -0
- package/dist/ui/components/mcp-dashboard.js.map +1 -0
- package/dist/ui/components/mcp-status.js +37 -15
- package/dist/ui/components/mcp-status.js.map +1 -1
- package/dist/ui/components/phase-progress.js +26 -69
- package/dist/ui/components/phase-progress.js.map +1 -1
- package/dist/ui/components/status-bar.d.ts +8 -0
- package/dist/ui/components/status-bar.js +53 -19
- package/dist/ui/components/status-bar.js.map +1 -1
- package/dist/ui/components/subagent-monitor.js +2 -25
- package/dist/ui/components/subagent-monitor.js.map +1 -1
- package/dist/ui/components/toast-notification.js +9 -14
- package/dist/ui/components/toast-notification.js.map +1 -1
- package/dist/ui/components/tool-group-display.js +8 -4
- package/dist/ui/components/tool-group-display.js.map +1 -1
- package/dist/ui/components/virtualized-chat-history.js +1 -44
- package/dist/ui/components/virtualized-chat-history.js.map +1 -1
- package/dist/ui/hooks/use-enhanced-input.js +10 -11
- package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
- package/dist/ui/hooks/use-input-handler.d.ts +5 -1
- package/dist/ui/hooks/use-input-handler.js +277 -14
- package/dist/ui/hooks/use-input-handler.js.map +1 -1
- package/dist/ui/utils/change-summarizer.js +25 -11
- package/dist/ui/utils/change-summarizer.js.map +1 -1
- package/dist/ui/utils/semantic-action-detector.js +33 -30
- package/dist/ui/utils/semantic-action-detector.js.map +1 -1
- package/dist/ui/utils/tool-grouper.d.ts +4 -0
- package/dist/ui/utils/tool-grouper.js +71 -67
- package/dist/ui/utils/tool-grouper.js.map +1 -1
- package/eslint.config.js +2 -0
- package/package.json +2 -2
|
@@ -148,47 +148,233 @@ export function formatConnectionError(serverName, error, transportType) {
|
|
|
148
148
|
lines.push(chalk.red('╰────────────────────────────────────────────────╯'));
|
|
149
149
|
return lines.join('\n');
|
|
150
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Comprehensive error code to remediation mapping
|
|
153
|
+
* Maps error codes/patterns to specific troubleshooting steps
|
|
154
|
+
*/
|
|
155
|
+
const ERROR_REMEDIATION = {
|
|
156
|
+
// Process/Command errors
|
|
157
|
+
'enoent': {
|
|
158
|
+
title: 'Command not found',
|
|
159
|
+
hints: [
|
|
160
|
+
'The MCP server command is not installed or not in PATH',
|
|
161
|
+
'Install the package: npm install -g <package-name>',
|
|
162
|
+
'Or use npx: npx <package-name>',
|
|
163
|
+
'Verify installation: which <command> or command -v <command>'
|
|
164
|
+
],
|
|
165
|
+
command: 'npm list -g --depth=0'
|
|
166
|
+
},
|
|
167
|
+
'eacces': {
|
|
168
|
+
title: 'Permission denied',
|
|
169
|
+
hints: [
|
|
170
|
+
'The command or file lacks execute permissions',
|
|
171
|
+
'Fix permissions: chmod +x <file>',
|
|
172
|
+
'Or install globally with proper permissions',
|
|
173
|
+
'Avoid using sudo with npm - fix npm permissions instead'
|
|
174
|
+
],
|
|
175
|
+
command: 'npm config set prefix ~/.npm-global'
|
|
176
|
+
},
|
|
177
|
+
'spawn': {
|
|
178
|
+
title: 'Failed to spawn process',
|
|
179
|
+
hints: [
|
|
180
|
+
'The command could not be started',
|
|
181
|
+
'Verify the command path is correct',
|
|
182
|
+
'Check if the binary is compatible with your system',
|
|
183
|
+
'Try running the command directly in terminal'
|
|
184
|
+
]
|
|
185
|
+
},
|
|
186
|
+
// Network errors
|
|
187
|
+
'econnrefused': {
|
|
188
|
+
title: 'Connection refused',
|
|
189
|
+
hints: [
|
|
190
|
+
'The MCP server is not running or not listening',
|
|
191
|
+
'Start the server first, then retry',
|
|
192
|
+
'Check if the port is correct',
|
|
193
|
+
'Verify no firewall is blocking the connection'
|
|
194
|
+
],
|
|
195
|
+
command: 'lsof -i :<port> # Check if port is in use'
|
|
196
|
+
},
|
|
197
|
+
'enotfound': {
|
|
198
|
+
title: 'Host not found',
|
|
199
|
+
hints: [
|
|
200
|
+
'The hostname could not be resolved',
|
|
201
|
+
'Check if the URL is spelled correctly',
|
|
202
|
+
'Verify your internet connection',
|
|
203
|
+
'Try using IP address instead of hostname'
|
|
204
|
+
],
|
|
205
|
+
command: 'nslookup <hostname>'
|
|
206
|
+
},
|
|
207
|
+
'econnreset': {
|
|
208
|
+
title: 'Connection reset',
|
|
209
|
+
hints: [
|
|
210
|
+
'The server closed the connection unexpectedly',
|
|
211
|
+
'The server may have crashed or restarted',
|
|
212
|
+
'Check server logs for errors',
|
|
213
|
+
'Retry the connection'
|
|
214
|
+
]
|
|
215
|
+
},
|
|
216
|
+
'etimedout': {
|
|
217
|
+
title: 'Connection timed out',
|
|
218
|
+
hints: [
|
|
219
|
+
'The server took too long to respond',
|
|
220
|
+
'Check if the server is overloaded',
|
|
221
|
+
'Verify network connectivity',
|
|
222
|
+
'Increase timeout in configuration if needed'
|
|
223
|
+
]
|
|
224
|
+
},
|
|
225
|
+
'esockettimedout': {
|
|
226
|
+
title: 'Socket timed out',
|
|
227
|
+
hints: [
|
|
228
|
+
'The connection was established but no response received',
|
|
229
|
+
'The server may be hanging or processing slowly',
|
|
230
|
+
'For stdio: ensure command has proper args (not a REPL)',
|
|
231
|
+
'Check if the MCP server is compatible with this client'
|
|
232
|
+
]
|
|
233
|
+
},
|
|
234
|
+
// SSL/TLS errors
|
|
235
|
+
'cert_': {
|
|
236
|
+
title: 'SSL Certificate error',
|
|
237
|
+
hints: [
|
|
238
|
+
'The server\'s SSL certificate is invalid or expired',
|
|
239
|
+
'For development: you can skip verification (not recommended)',
|
|
240
|
+
'For production: ensure valid certificate is installed',
|
|
241
|
+
'Check certificate chain: openssl s_client -connect <host>:443'
|
|
242
|
+
]
|
|
243
|
+
},
|
|
244
|
+
'unable_to_verify': {
|
|
245
|
+
title: 'SSL verification failed',
|
|
246
|
+
hints: [
|
|
247
|
+
'Cannot verify the server\'s SSL certificate',
|
|
248
|
+
'The certificate may be self-signed',
|
|
249
|
+
'CA certificates may need to be updated',
|
|
250
|
+
'Set NODE_TLS_REJECT_UNAUTHORIZED=0 for development only'
|
|
251
|
+
]
|
|
252
|
+
},
|
|
253
|
+
// Authentication errors
|
|
254
|
+
'401': {
|
|
255
|
+
title: 'Authentication failed',
|
|
256
|
+
hints: [
|
|
257
|
+
'The API key or token is invalid or expired',
|
|
258
|
+
'Check environment variable is set: echo $<VAR_NAME>',
|
|
259
|
+
'Regenerate the API key if expired',
|
|
260
|
+
'Verify the token has required permissions'
|
|
261
|
+
]
|
|
262
|
+
},
|
|
263
|
+
'403': {
|
|
264
|
+
title: 'Access forbidden',
|
|
265
|
+
hints: [
|
|
266
|
+
'You don\'t have permission to access this resource',
|
|
267
|
+
'Check if your API key has the required scopes',
|
|
268
|
+
'Verify the account has access to this feature',
|
|
269
|
+
'Contact the service provider for access'
|
|
270
|
+
]
|
|
271
|
+
},
|
|
272
|
+
// Server errors
|
|
273
|
+
'500': {
|
|
274
|
+
title: 'Server error',
|
|
275
|
+
hints: [
|
|
276
|
+
'The MCP server encountered an internal error',
|
|
277
|
+
'Check server logs for details',
|
|
278
|
+
'Try again later',
|
|
279
|
+
'Report the issue to the server maintainer'
|
|
280
|
+
]
|
|
281
|
+
},
|
|
282
|
+
'502': {
|
|
283
|
+
title: 'Bad gateway',
|
|
284
|
+
hints: [
|
|
285
|
+
'The server received an invalid response from upstream',
|
|
286
|
+
'The upstream server may be down',
|
|
287
|
+
'Try again later',
|
|
288
|
+
'Check if there are known outages'
|
|
289
|
+
]
|
|
290
|
+
},
|
|
291
|
+
'503': {
|
|
292
|
+
title: 'Service unavailable',
|
|
293
|
+
hints: [
|
|
294
|
+
'The server is temporarily unavailable',
|
|
295
|
+
'It may be overloaded or under maintenance',
|
|
296
|
+
'Wait a few minutes and retry',
|
|
297
|
+
'Check service status page'
|
|
298
|
+
]
|
|
299
|
+
},
|
|
300
|
+
// MCP-specific errors
|
|
301
|
+
'initialization failed': {
|
|
302
|
+
title: 'MCP initialization failed',
|
|
303
|
+
hints: [
|
|
304
|
+
'The MCP server failed to initialize properly',
|
|
305
|
+
'Check if all required environment variables are set',
|
|
306
|
+
'Verify the server version is compatible',
|
|
307
|
+
'Try running: ax-cli mcp test <server-name>'
|
|
308
|
+
]
|
|
309
|
+
},
|
|
310
|
+
'protocol error': {
|
|
311
|
+
title: 'MCP protocol error',
|
|
312
|
+
hints: [
|
|
313
|
+
'Invalid message format or unsupported protocol version',
|
|
314
|
+
'Ensure the server implements MCP protocol correctly',
|
|
315
|
+
'Check for server updates',
|
|
316
|
+
'Verify client and server versions are compatible'
|
|
317
|
+
]
|
|
318
|
+
},
|
|
319
|
+
'tool not found': {
|
|
320
|
+
title: 'MCP tool not found',
|
|
321
|
+
hints: [
|
|
322
|
+
'The requested tool is not available on the server',
|
|
323
|
+
'List available tools: ax-cli mcp tools <server-name>',
|
|
324
|
+
'The server may need to be restarted',
|
|
325
|
+
'Check if the tool requires additional configuration'
|
|
326
|
+
]
|
|
327
|
+
}
|
|
328
|
+
};
|
|
151
329
|
/**
|
|
152
330
|
* Get hints for connection errors
|
|
331
|
+
* Enhanced with comprehensive error code mapping
|
|
153
332
|
*/
|
|
154
333
|
function getConnectionErrorHints(error, transportType) {
|
|
155
334
|
const hints = [];
|
|
156
335
|
const message = error.message.toLowerCase();
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
hints.push('Connection refused. Server may not be running.');
|
|
169
|
-
hints.push('Check if the server is listening on the correct port.');
|
|
170
|
-
}
|
|
171
|
-
else if (message.includes('unauthorized') || message.includes('401')) {
|
|
172
|
-
hints.push('Authentication failed. Check your API keys/tokens.');
|
|
173
|
-
hints.push('Verify credentials in environment variables or config.');
|
|
174
|
-
}
|
|
175
|
-
else if (message.includes('not found') || message.includes('404')) {
|
|
176
|
-
hints.push('Endpoint not found. Check the URL path.');
|
|
177
|
-
hints.push('Verify the server supports MCP protocol.');
|
|
178
|
-
}
|
|
179
|
-
else if (message.includes('permission denied') || message.includes('eacces')) {
|
|
180
|
-
hints.push('Permission denied. Check file/command permissions.');
|
|
181
|
-
hints.push('You may need to run with sudo or adjust permissions.');
|
|
336
|
+
const errorCode = error.code?.toLowerCase() || '';
|
|
337
|
+
// Check for specific error codes first
|
|
338
|
+
for (const [pattern, remediation] of Object.entries(ERROR_REMEDIATION)) {
|
|
339
|
+
if (message.includes(pattern) || errorCode.includes(pattern)) {
|
|
340
|
+
hints.push(`${chalk.bold(remediation.title)}`);
|
|
341
|
+
hints.push(...remediation.hints);
|
|
342
|
+
if (remediation.command) {
|
|
343
|
+
hints.push(`Debug command: ${chalk.cyan(remediation.command)}`);
|
|
344
|
+
}
|
|
345
|
+
break;
|
|
346
|
+
}
|
|
182
347
|
}
|
|
183
|
-
//
|
|
184
|
-
if (
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
348
|
+
// If no specific match, provide transport-specific hints
|
|
349
|
+
if (hints.length === 0) {
|
|
350
|
+
if (transportType === 'stdio') {
|
|
351
|
+
hints.push('For stdio transport:');
|
|
352
|
+
hints.push('• Verify command is installed: which <command>');
|
|
353
|
+
hints.push('• Ensure args include a script path (not just the runtime)');
|
|
354
|
+
hints.push('• Example: ["@modelcontextprotocol/server-github"]');
|
|
355
|
+
hints.push('• Commands like "node" without args start a REPL and hang');
|
|
356
|
+
}
|
|
357
|
+
else if (transportType === 'http' || transportType === 'sse') {
|
|
358
|
+
hints.push('For HTTP/SSE transport:');
|
|
359
|
+
hints.push('• Verify server is running: curl <url>/health');
|
|
360
|
+
hints.push('• Check URL is accessible from your network');
|
|
361
|
+
hints.push('• Verify SSL certificate if using HTTPS');
|
|
362
|
+
hints.push('• Check authentication headers are correct');
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
hints.push('General troubleshooting:');
|
|
366
|
+
hints.push('• Check the server logs for more details');
|
|
367
|
+
hints.push('• Verify all required environment variables are set');
|
|
368
|
+
hints.push('• Try running ax-cli mcp test <server-name>');
|
|
369
|
+
}
|
|
188
370
|
}
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
hints.push('
|
|
371
|
+
// Add environment variable hints if relevant
|
|
372
|
+
if (message.includes('api_key') || message.includes('token') || message.includes('secret')) {
|
|
373
|
+
hints.push('');
|
|
374
|
+
hints.push('Environment variable tips:');
|
|
375
|
+
hints.push('• Set in shell: export VAR_NAME=value');
|
|
376
|
+
hints.push('• Or in .env file in project root');
|
|
377
|
+
hints.push('• Verify: echo $VAR_NAME');
|
|
192
378
|
}
|
|
193
379
|
return hints;
|
|
194
380
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-formatter.js","sourceRoot":"","sources":["../../src/mcp/error-formatter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"error-formatter.js","sourceRoot":"","sources":["../../src/mcp/error-formatter.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/index.d.ts
CHANGED
|
@@ -20,8 +20,10 @@
|
|
|
20
20
|
*/
|
|
21
21
|
export { MCPManager } from "./client.js";
|
|
22
22
|
export type { MCPTool, MCPServerConfig, MCPTransportConfig } from "./client.js";
|
|
23
|
-
export { MCPManagerV2, createServerName, createToolName, type ConnectionState, type ReconnectionConfig, } from "./client-v2.js";
|
|
23
|
+
export { MCPManagerV2, createServerName, createToolName, type ConnectionState, type ReconnectionConfig, type MCPPrompt, } from "./client-v2.js";
|
|
24
24
|
export type { ServerName, ToolName } from "./client-v2.js";
|
|
25
|
+
export { parseMCPIdentifier, // Shared utility for parsing MCP identifiers
|
|
26
|
+
promptToSlashCommand, parsePromptCommand, formatPromptResult, getPromptDescription, } from "./prompts.js";
|
|
25
27
|
export { loadMCPConfig, addMCPServer, removeMCPServer, PREDEFINED_SERVERS, getTemplate, generateConfigFromTemplate, } from "./config.js";
|
|
26
28
|
export type { MCPConfig } from "./config.js";
|
|
27
29
|
export { createTransport, type MCPTransport, type TransportType, type TransportConfig, type StdioFraming, } from "./transports.js";
|
package/dist/mcp/index.js
CHANGED
|
@@ -22,6 +22,9 @@
|
|
|
22
22
|
export { MCPManager } from "./client.js";
|
|
23
23
|
// Type-safe client (v2 API) - recommended for new code
|
|
24
24
|
export { MCPManagerV2, createServerName, createToolName, } from "./client-v2.js";
|
|
25
|
+
// Prompt utilities
|
|
26
|
+
export { parseMCPIdentifier, // Shared utility for parsing MCP identifiers
|
|
27
|
+
promptToSlashCommand, parsePromptCommand, formatPromptResult, getPromptDescription, } from "./prompts.js";
|
|
25
28
|
// Configuration
|
|
26
29
|
export { loadMCPConfig, addMCPServer, removeMCPServer, PREDEFINED_SERVERS, getTemplate, generateConfigFromTemplate, } from "./config.js";
|
|
27
30
|
// Transports
|
package/dist/mcp/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,qDAAqD;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,uDAAuD;AACvD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,qDAAqD;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,uDAAuD;AACvD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,GAIf,MAAM,gBAAgB,CAAC;AAGxB,mBAAmB;AACnB,OAAO,EACL,kBAAkB,EAAE,6CAA6C;AACjE,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AAEtB,gBAAgB;AAChB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAGrB,aAAa;AACb,OAAO,EACL,eAAe,GAKhB,MAAM,iBAAiB,CAAC;AAEzB,iCAAiC;AACjC,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAEtG,wBAAwB;AACxB,OAAO,EAAU,EAAE,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAEnD,oBAAoB;AACpB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Prompts Module
|
|
3
|
+
*
|
|
4
|
+
* Handles discovering and executing MCP server prompts.
|
|
5
|
+
* Prompts are exposed as slash commands with the format:
|
|
6
|
+
* /mcp__<servername>__<promptname>
|
|
7
|
+
*/
|
|
8
|
+
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
9
|
+
import type { GetPromptResult } from "@modelcontextprotocol/sdk/types.js";
|
|
10
|
+
/**
|
|
11
|
+
* Parse MCP identifier with double-underscore separator
|
|
12
|
+
* Handles formats like "mcp__server__name" or "/mcp__server__name"
|
|
13
|
+
*
|
|
14
|
+
* @param identifier - The MCP identifier string
|
|
15
|
+
* @param prefix - Optional prefix to strip (e.g., "/mcp__" or "mcp__")
|
|
16
|
+
* @returns Parsed server and name, or null if invalid
|
|
17
|
+
*/
|
|
18
|
+
export declare function parseMCPIdentifier(identifier: string, prefix: string): {
|
|
19
|
+
serverName: string;
|
|
20
|
+
name: string;
|
|
21
|
+
} | null;
|
|
22
|
+
/**
|
|
23
|
+
* MCP Prompt with server context
|
|
24
|
+
*/
|
|
25
|
+
export interface MCPPrompt {
|
|
26
|
+
/** Server this prompt belongs to */
|
|
27
|
+
serverName: string;
|
|
28
|
+
/** Prompt name from server */
|
|
29
|
+
name: string;
|
|
30
|
+
/** Human-readable description */
|
|
31
|
+
description?: string;
|
|
32
|
+
/** Required arguments for templating */
|
|
33
|
+
arguments?: Array<{
|
|
34
|
+
name: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
required?: boolean;
|
|
37
|
+
}>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* List prompts from an MCP server
|
|
41
|
+
*/
|
|
42
|
+
export declare function listServerPrompts(client: Client, serverName: string): Promise<MCPPrompt[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Get a specific prompt from an MCP server
|
|
45
|
+
*/
|
|
46
|
+
export declare function getServerPrompt(client: Client, _serverName: string, promptName: string, args?: Record<string, string>): Promise<GetPromptResult | null>;
|
|
47
|
+
/**
|
|
48
|
+
* Convert MCP prompt to slash command name
|
|
49
|
+
* Format: /mcp__servername__promptname
|
|
50
|
+
*/
|
|
51
|
+
export declare function promptToSlashCommand(prompt: MCPPrompt): string;
|
|
52
|
+
/**
|
|
53
|
+
* Parse slash command to extract server and prompt names
|
|
54
|
+
* Uses shared parseMCPIdentifier for consistency
|
|
55
|
+
*/
|
|
56
|
+
export declare function parsePromptCommand(command: string): {
|
|
57
|
+
serverName: string;
|
|
58
|
+
promptName: string;
|
|
59
|
+
} | null;
|
|
60
|
+
/**
|
|
61
|
+
* Format prompt result for chat display
|
|
62
|
+
* BUG FIX: Handle array content which is valid per MCP protocol
|
|
63
|
+
*/
|
|
64
|
+
export declare function formatPromptResult(result: GetPromptResult): string;
|
|
65
|
+
/**
|
|
66
|
+
* Generate command description for auto-complete
|
|
67
|
+
*/
|
|
68
|
+
export declare function getPromptDescription(prompt: MCPPrompt): string;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Prompts Module
|
|
3
|
+
*
|
|
4
|
+
* Handles discovering and executing MCP server prompts.
|
|
5
|
+
* Prompts are exposed as slash commands with the format:
|
|
6
|
+
* /mcp__<servername>__<promptname>
|
|
7
|
+
*/
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Shared MCP Identifier Parsing (used by prompts.ts and collapsible-tool-result.tsx)
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Parse MCP identifier with double-underscore separator
|
|
13
|
+
* Handles formats like "mcp__server__name" or "/mcp__server__name"
|
|
14
|
+
*
|
|
15
|
+
* @param identifier - The MCP identifier string
|
|
16
|
+
* @param prefix - Optional prefix to strip (e.g., "/mcp__" or "mcp__")
|
|
17
|
+
* @returns Parsed server and name, or null if invalid
|
|
18
|
+
*/
|
|
19
|
+
export function parseMCPIdentifier(identifier, prefix) {
|
|
20
|
+
if (!identifier.startsWith(prefix)) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
const withoutPrefix = identifier.slice(prefix.length);
|
|
24
|
+
const parts = withoutPrefix.split("__");
|
|
25
|
+
if (parts.length < 2) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
const serverName = parts[0];
|
|
29
|
+
const name = parts.slice(1).join("__");
|
|
30
|
+
// Validate non-empty parts
|
|
31
|
+
if (!serverName || !name) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
return { serverName, name };
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* List prompts from an MCP server
|
|
38
|
+
*/
|
|
39
|
+
export async function listServerPrompts(client, serverName) {
|
|
40
|
+
try {
|
|
41
|
+
const result = await client.listPrompts();
|
|
42
|
+
return result.prompts.map((prompt) => ({
|
|
43
|
+
serverName,
|
|
44
|
+
name: prompt.name,
|
|
45
|
+
description: prompt.description,
|
|
46
|
+
arguments: prompt.arguments,
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
// Server may not support prompts - this is not an error
|
|
51
|
+
return [];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Get a specific prompt from an MCP server
|
|
56
|
+
*/
|
|
57
|
+
export async function getServerPrompt(client, _serverName, promptName, args) {
|
|
58
|
+
try {
|
|
59
|
+
const result = await client.getPrompt({
|
|
60
|
+
name: promptName,
|
|
61
|
+
arguments: args,
|
|
62
|
+
});
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Convert MCP prompt to slash command name
|
|
71
|
+
* Format: /mcp__servername__promptname
|
|
72
|
+
*/
|
|
73
|
+
export function promptToSlashCommand(prompt) {
|
|
74
|
+
return `/mcp__${prompt.serverName}__${prompt.name}`;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Parse slash command to extract server and prompt names
|
|
78
|
+
* Uses shared parseMCPIdentifier for consistency
|
|
79
|
+
*/
|
|
80
|
+
export function parsePromptCommand(command) {
|
|
81
|
+
const parsed = parseMCPIdentifier(command, "/mcp__");
|
|
82
|
+
if (!parsed)
|
|
83
|
+
return null;
|
|
84
|
+
return { serverName: parsed.serverName, promptName: parsed.name };
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Format prompt result for chat display
|
|
88
|
+
* BUG FIX: Handle array content which is valid per MCP protocol
|
|
89
|
+
*/
|
|
90
|
+
export function formatPromptResult(result) {
|
|
91
|
+
const messages = result.messages || [];
|
|
92
|
+
if (messages.length === 0) {
|
|
93
|
+
return result.description || "No prompt content available";
|
|
94
|
+
}
|
|
95
|
+
// Helper to extract text from a single content item
|
|
96
|
+
const extractText = (content) => {
|
|
97
|
+
if (typeof content === "string") {
|
|
98
|
+
return content;
|
|
99
|
+
}
|
|
100
|
+
if (content && typeof content === "object" && "text" in content) {
|
|
101
|
+
const textValue = content.text;
|
|
102
|
+
// BUG FIX: Ensure text is actually a string before returning
|
|
103
|
+
return typeof textValue === "string" ? textValue : JSON.stringify(content);
|
|
104
|
+
}
|
|
105
|
+
return JSON.stringify(content);
|
|
106
|
+
};
|
|
107
|
+
// Combine all message contents
|
|
108
|
+
return messages
|
|
109
|
+
.map((msg) => {
|
|
110
|
+
// Handle array content (valid per MCP protocol)
|
|
111
|
+
if (Array.isArray(msg.content)) {
|
|
112
|
+
return msg.content.map(extractText).join("\n");
|
|
113
|
+
}
|
|
114
|
+
return extractText(msg.content);
|
|
115
|
+
})
|
|
116
|
+
.join("\n\n");
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Generate command description for auto-complete
|
|
120
|
+
*/
|
|
121
|
+
export function getPromptDescription(prompt) {
|
|
122
|
+
let desc = prompt.description || `MCP prompt from ${prompt.serverName}`;
|
|
123
|
+
if (prompt.arguments && prompt.arguments.length > 0) {
|
|
124
|
+
const argNames = prompt.arguments.map((a) => (a.required ? a.name : `[${a.name}]`));
|
|
125
|
+
desc += ` (${argNames.join(", ")})`;
|
|
126
|
+
}
|
|
127
|
+
return desc;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,+EAA+E;AAC/E,qFAAqF;AACrF,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAAkB,EAClB,MAAc;IAEd,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAExC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvC,2BAA2B;IAC3B,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AAC9B,CAAC;AAoBD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAc,EACd,UAAkB;IAElB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;YAC7C,UAAU;YACV,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;QACxD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,WAAmB,EACnB,UAAkB,EAClB,IAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;YACpC,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,OAAO,SAAS,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAe;IAEf,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAuB;IACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IACvC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC,WAAW,IAAI,6BAA6B,CAAC;IAC7D,CAAC;IAED,oDAAoD;IACpD,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAU,EAAE;QAC/C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YAChE,MAAM,SAAS,GAAI,OAA6B,CAAC,IAAI,CAAC;YACtD,6DAA6D;YAC7D,OAAO,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,+BAA+B;IAC/B,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,gDAAgD;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,IAAI,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,mBAAmB,MAAM,CAAC,UAAU,EAAE,CAAC;IACxE,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QACpF,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/mcp/resources.d.ts
CHANGED
|
@@ -41,6 +41,7 @@ export declare function parseMCPReference(reference: string): {
|
|
|
41
41
|
} | null;
|
|
42
42
|
/**
|
|
43
43
|
* Extract all MCP references from text
|
|
44
|
+
* BUG FIX: Exclude trailing punctuation that could be captured accidentally
|
|
44
45
|
*/
|
|
45
46
|
export declare function extractMCPReferences(text: string): string[];
|
|
46
47
|
/**
|
package/dist/mcp/resources.js
CHANGED
|
@@ -16,7 +16,7 @@ export async function listAllResources(mcpManager) {
|
|
|
16
16
|
const serverResources = await listServerResources(mcpManager, serverName);
|
|
17
17
|
resources.push(...serverResources);
|
|
18
18
|
}
|
|
19
|
-
catch
|
|
19
|
+
catch {
|
|
20
20
|
// Silently skip servers that don't support resources
|
|
21
21
|
console.warn(`Server "${serverName}" does not support resources or failed to list them`);
|
|
22
22
|
}
|
|
@@ -92,13 +92,20 @@ export function parseMCPReference(reference) {
|
|
|
92
92
|
}
|
|
93
93
|
const serverName = withoutPrefix.substring(0, slashIndex);
|
|
94
94
|
const uri = withoutPrefix.substring(slashIndex + 1);
|
|
95
|
+
// BUG FIX: Validate that both serverName and uri are non-empty
|
|
96
|
+
if (!serverName || !uri) {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
95
99
|
return { serverName, uri };
|
|
96
100
|
}
|
|
97
101
|
/**
|
|
98
102
|
* Extract all MCP references from text
|
|
103
|
+
* BUG FIX: Exclude trailing punctuation that could be captured accidentally
|
|
99
104
|
*/
|
|
100
105
|
export function extractMCPReferences(text) {
|
|
101
|
-
|
|
106
|
+
// Pattern captures @mcp:server/uri but excludes trailing punctuation
|
|
107
|
+
// [^\s.,;:!?)\]}>] ensures we don't capture sentence-ending punctuation
|
|
108
|
+
const pattern = /@mcp:[a-z0-9_-]+\/[^\s.,;:!?)\]}>]+/gi;
|
|
102
109
|
const matches = text.match(pattern);
|
|
103
110
|
return matches || [];
|
|
104
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/mcp/resources.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAiBhE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAsB;IAC3D,MAAM,SAAS,GAAkB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;IAExC,KAAK,MAAM,UAAU,IAAI,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAC1E,SAAS,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QACrC,CAAC;QAAC,
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/mcp/resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { EventEmitter } from "events";
|
|
8
8
|
import { PhaseStatus, PlanStatus, createDefaultExecutionOptions, createDefaultPlannerOptions, } from "./types.js";
|
|
9
|
+
import { extractErrorMessage } from "../utils/error-handler.js";
|
|
9
10
|
import { getPlanStorage } from "./plan-storage.js";
|
|
10
11
|
import { getPlanGenerator } from "./plan-generator.js";
|
|
11
12
|
import { getDependencyResolver, } from "./dependency-resolver.js";
|
|
12
13
|
import { getTokenEstimator } from "./token-estimator.js";
|
|
13
|
-
import { extractErrorMessage } from "../utils/error-handler.js";
|
|
14
14
|
import { TIMEOUT_CONFIG, MCP_CONFIG } from "../constants.js";
|
|
15
15
|
import { sleep, calculateExponentialBackoff } from "../utils/retry-helper.js";
|
|
16
16
|
// ============================================================================
|
|
@@ -226,7 +226,7 @@ export class TaskPlanner extends EventEmitter {
|
|
|
226
226
|
return {
|
|
227
227
|
phaseId: phase.id,
|
|
228
228
|
success: false,
|
|
229
|
-
error:
|
|
229
|
+
error: extractErrorMessage(result.reason),
|
|
230
230
|
duration: 0,
|
|
231
231
|
tokensUsed: 0,
|
|
232
232
|
filesModified: [],
|