stigmergy 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/cli/router.js +31 -2
package/package.json
CHANGED
package/src/cli/router.js
CHANGED
|
@@ -264,11 +264,40 @@ async function main() {
|
|
|
264
264
|
console.log(`[ROUTE] Analyzing prompt: ${prompt}`);
|
|
265
265
|
|
|
266
266
|
// Route to appropriate AI CLI tool
|
|
267
|
-
const route = await router.
|
|
267
|
+
const route = await router.smartRoute(prompt);
|
|
268
268
|
console.log(`[ROUTE] Selected tool: ${route.tool}`);
|
|
269
269
|
|
|
270
270
|
// Prepare tool arguments
|
|
271
|
-
|
|
271
|
+
let toolArgs = [];
|
|
272
|
+
|
|
273
|
+
try {
|
|
274
|
+
// Get CLI pattern for this tool
|
|
275
|
+
const cliPattern = await router.analyzer.getCLIPattern(route.tool);
|
|
276
|
+
|
|
277
|
+
// Use the unified CLI parameter handler
|
|
278
|
+
const CLIParameterHandler = require('../core/cli_parameter_handler');
|
|
279
|
+
toolArgs = CLIParameterHandler.generateArguments(
|
|
280
|
+
route.tool,
|
|
281
|
+
route.prompt,
|
|
282
|
+
cliPattern,
|
|
283
|
+
);
|
|
284
|
+
} catch (patternError) {
|
|
285
|
+
// Fallback to original logic if pattern analysis fails
|
|
286
|
+
if (route.tool === 'claude') {
|
|
287
|
+
// Claude CLI expects the prompt with -p flag for non-interactive mode
|
|
288
|
+
toolArgs = ['-p', `"${route.prompt}"`];
|
|
289
|
+
} else if (route.tool === 'qodercli' || route.tool === 'iflow') {
|
|
290
|
+
// Qoder CLI and iFlow expect the prompt with -p flag
|
|
291
|
+
toolArgs = ['-p', `"${route.prompt}"`];
|
|
292
|
+
} else if (route.tool === 'codex') {
|
|
293
|
+
// Codex CLI needs 'exec' subcommand for non-interactive mode
|
|
294
|
+
toolArgs = ['exec', '-p', `"${route.prompt}"`];
|
|
295
|
+
} else {
|
|
296
|
+
// For other tools, pass the prompt with -p flag
|
|
297
|
+
toolArgs = ['-p', `"${route.prompt}"`];
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
|
|
272
301
|
const toolPath = route.tool;
|
|
273
302
|
|
|
274
303
|
console.log(`[EXEC] Running: ${toolPath} ${toolArgs.join(' ')}`);
|