@defai.digital/ax-cli 3.1.4 → 3.2.0

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 (70) hide show
  1. package/.ax-cli/memory.json +4 -4
  2. package/README.md +85 -4
  3. package/dist/agent/context-manager.js +19 -8
  4. package/dist/agent/context-manager.js.map +1 -1
  5. package/dist/agent/llm-agent.d.ts +8 -0
  6. package/dist/agent/llm-agent.js +35 -33
  7. package/dist/agent/llm-agent.js.map +1 -1
  8. package/dist/agent/subagent-orchestrator.js +12 -0
  9. package/dist/agent/subagent-orchestrator.js.map +1 -1
  10. package/dist/agent/subagent.js +18 -0
  11. package/dist/agent/subagent.js.map +1 -1
  12. package/dist/commands/doctor.d.ts +6 -0
  13. package/dist/commands/doctor.js +527 -0
  14. package/dist/commands/doctor.js.map +1 -0
  15. package/dist/commands/memory.js +5 -1
  16. package/dist/commands/memory.js.map +1 -1
  17. package/dist/constants.d.ts +12 -2
  18. package/dist/constants.js +15 -2
  19. package/dist/constants.js.map +1 -1
  20. package/dist/hooks/use-input-handler.d.ts +5 -1
  21. package/dist/hooks/use-input-handler.js +114 -31
  22. package/dist/hooks/use-input-handler.js.map +1 -1
  23. package/dist/index.js +24 -3
  24. package/dist/index.js.map +1 -1
  25. package/dist/memory/context-injector.d.ts +15 -1
  26. package/dist/memory/context-injector.js +18 -1
  27. package/dist/memory/context-injector.js.map +1 -1
  28. package/dist/memory/context-store.d.ts +27 -0
  29. package/dist/memory/context-store.js +60 -6
  30. package/dist/memory/context-store.js.map +1 -1
  31. package/dist/schemas/settings-schemas.d.ts +14 -0
  32. package/dist/schemas/settings-schemas.js +10 -0
  33. package/dist/schemas/settings-schemas.js.map +1 -1
  34. package/dist/tools/search.js +39 -16
  35. package/dist/tools/search.js.map +1 -1
  36. package/dist/ui/components/chat-history.js +52 -19
  37. package/dist/ui/components/chat-history.js.map +1 -1
  38. package/dist/ui/components/chat-input.js +12 -5
  39. package/dist/ui/components/chat-input.js.map +1 -1
  40. package/dist/ui/components/command-suggestions.d.ts +12 -0
  41. package/dist/ui/components/command-suggestions.js +68 -3
  42. package/dist/ui/components/command-suggestions.js.map +1 -1
  43. package/dist/ui/components/confirmation-dialog.js +8 -2
  44. package/dist/ui/components/confirmation-dialog.js.map +1 -1
  45. package/dist/ui/components/loading-spinner.js +12 -3
  46. package/dist/ui/components/loading-spinner.js.map +1 -1
  47. package/dist/ui/components/reasoning-display.d.ts +8 -1
  48. package/dist/ui/components/reasoning-display.js +14 -8
  49. package/dist/ui/components/reasoning-display.js.map +1 -1
  50. package/dist/ui/components/status-bar.d.ts +4 -1
  51. package/dist/ui/components/status-bar.js +65 -4
  52. package/dist/ui/components/status-bar.js.map +1 -1
  53. package/dist/ui/components/subagent-monitor.d.ts +8 -0
  54. package/dist/ui/components/subagent-monitor.js +36 -50
  55. package/dist/ui/components/subagent-monitor.js.map +1 -1
  56. package/dist/ui/components/virtualized-chat-history.js +10 -10
  57. package/dist/ui/components/virtualized-chat-history.js.map +1 -1
  58. package/dist/ui/components/welcome-panel.d.ts +1 -1
  59. package/dist/ui/components/welcome-panel.js +2 -4
  60. package/dist/ui/components/welcome-panel.js.map +1 -1
  61. package/dist/utils/error-handler.d.ts +8 -1
  62. package/dist/utils/error-handler.js +61 -1
  63. package/dist/utils/error-handler.js.map +1 -1
  64. package/dist/utils/settings-manager.d.ts +21 -1
  65. package/dist/utils/settings-manager.js +67 -0
  66. package/dist/utils/settings-manager.js.map +1 -1
  67. package/dist/utils/token-counter.d.ts +6 -0
  68. package/dist/utils/token-counter.js +24 -1
  69. package/dist/utils/token-counter.js.map +1 -1
  70. package/package.json +1 -1
@@ -38,12 +38,10 @@ const EXAMPLE_PROMPTS = [
38
38
  ],
39
39
  },
40
40
  ];
41
- export function WelcomePanel({ projectName }) {
41
+ export function WelcomePanel({ projectName: _projectName }) {
42
42
  return (React.createElement(Box, { flexDirection: "column", marginBottom: 2 },
43
43
  React.createElement(Box, { marginBottom: 1 },
44
- React.createElement(Text, { color: "cyan", bold: true },
45
- "Welcome to ",
46
- projectName)),
44
+ React.createElement(Text, { color: "cyan", bold: true }, "Welcome to DEFAI ax-cli")),
47
45
  React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "cyan", paddingX: 2, paddingY: 1, marginBottom: 1 },
48
46
  React.createElement(Box, { marginBottom: 1 },
49
47
  React.createElement(Text, { color: "cyan", bold: true }, "\u2328\uFE0F Essential Shortcuts")),
@@ -1 +1 @@
1
- {"version":3,"file":"welcome-panel.js","sourceRoot":"","sources":["../../../src/ui/components/welcome-panel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"welcome-panel.js","sourceRoot":"","sources":["../../../src/ui/components/welcome-panel.tsx"],"names":[],"mappings":"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"}
@@ -13,10 +13,17 @@ export declare enum ErrorCategory {
13
13
  TOOL_EXECUTION = "Tool Execution",
14
14
  VALIDATION = "Validation",
15
15
  NETWORK = "Network",
16
- CONFIGURATION = "Configuration"
16
+ CONFIGURATION = "Configuration",
17
+ API_ERROR = "API Error",
18
+ AUTHENTICATION = "Authentication",
19
+ RATE_LIMIT = "Rate Limit",
20
+ MODEL_UNAVAILABLE = "Model Unavailable",
21
+ PARSING = "Parsing",
22
+ TIMEOUT = "Timeout"
17
23
  }
18
24
  /**
19
25
  * Create a standardized error message
26
+ * Phase 3: Enhanced with actionable suggestions
20
27
  */
21
28
  export declare function createErrorMessage(category: ErrorCategory, operation: string, error: unknown): string;
22
29
  /**
@@ -14,12 +14,72 @@ export var ErrorCategory;
14
14
  ErrorCategory["VALIDATION"] = "Validation";
15
15
  ErrorCategory["NETWORK"] = "Network";
16
16
  ErrorCategory["CONFIGURATION"] = "Configuration";
17
+ ErrorCategory["API_ERROR"] = "API Error";
18
+ ErrorCategory["AUTHENTICATION"] = "Authentication";
19
+ ErrorCategory["RATE_LIMIT"] = "Rate Limit";
20
+ ErrorCategory["MODEL_UNAVAILABLE"] = "Model Unavailable";
21
+ ErrorCategory["PARSING"] = "Parsing";
22
+ ErrorCategory["TIMEOUT"] = "Timeout";
17
23
  })(ErrorCategory || (ErrorCategory = {}));
24
+ /**
25
+ * Get actionable suggestion based on error type
26
+ * Phase 3: Enhanced error recovery
27
+ */
28
+ function getErrorSuggestion(category, errorMessage) {
29
+ const lowerError = errorMessage.toLowerCase();
30
+ // File operation errors
31
+ if (category === ErrorCategory.FILE_OPERATION) {
32
+ if (lowerError.includes('enoent') || lowerError.includes('no such file')) {
33
+ return "💡 Suggestion: Check if the file path is correct and the file exists.";
34
+ }
35
+ if (lowerError.includes('eacces') || lowerError.includes('permission denied')) {
36
+ return "💡 Suggestion: Check file permissions or try running with appropriate access.";
37
+ }
38
+ if (lowerError.includes('eisdir') || lowerError.includes('is a directory')) {
39
+ return "💡 Suggestion: The path points to a directory, not a file. Specify a file path.";
40
+ }
41
+ }
42
+ // API errors
43
+ if (category === ErrorCategory.API_ERROR || category === ErrorCategory.AUTHENTICATION) {
44
+ if (lowerError.includes('api key') || lowerError.includes('unauthorized')) {
45
+ return "💡 Suggestion: Verify your API key in ~/.ax-cli/config.json or use 'ax setup' to reconfigure.";
46
+ }
47
+ if (lowerError.includes('network') || lowerError.includes('timeout')) {
48
+ return "💡 Suggestion: Check your internet connection and try again.";
49
+ }
50
+ }
51
+ // Rate limit errors
52
+ if (category === ErrorCategory.RATE_LIMIT) {
53
+ return "💡 Suggestion: Wait a few moments before retrying. Consider upgrading your API plan if this happens frequently.";
54
+ }
55
+ // MCP connection errors
56
+ if (category === ErrorCategory.MCP_CONNECTION) {
57
+ return "💡 Suggestion: Check your MCP server configuration in .ax-cli/settings.json and ensure the server is running.";
58
+ }
59
+ // Bash command errors
60
+ if (category === ErrorCategory.BASH_COMMAND) {
61
+ if (lowerError.includes('command not found')) {
62
+ return "💡 Suggestion: Install the required command or check if it's in your PATH.";
63
+ }
64
+ if (lowerError.includes('exit code')) {
65
+ return "💡 Suggestion: Check the command output above for specific error details.";
66
+ }
67
+ }
68
+ return null;
69
+ }
18
70
  /**
19
71
  * Create a standardized error message
72
+ * Phase 3: Enhanced with actionable suggestions
20
73
  */
21
74
  export function createErrorMessage(category, operation, error) {
22
- return `[${category}] ${operation} failed: ${extractErrorMessage(error)}`;
75
+ const errorMsg = extractErrorMessage(error);
76
+ const baseMessage = `[${category}] ${operation} failed: ${errorMsg}`;
77
+ // Add suggestion if available
78
+ const suggestion = getErrorSuggestion(category, errorMsg);
79
+ if (suggestion) {
80
+ return `${baseMessage}\n${suggestion}`;
81
+ }
82
+ return baseMessage;
23
83
  }
24
84
  /**
25
85
  * Create a standardized ToolResult error
@@ -1 +1 @@
1
- {"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/utils/error-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,kDAAiC,CAAA;IACjC,8CAA6B,CAAA;IAC7B,kDAAiC,CAAA;IACjC,kDAAiC,CAAA;IACjC,0CAAyB,CAAA;IACzB,oCAAmB,CAAA;IACnB,gDAA+B,CAAA;AACjC,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAuB,EACvB,SAAiB,EACjB,KAAc;IAEd,OAAO,IAAI,QAAQ,KAAK,SAAS,YAAY,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAuB,EACvB,SAAiB,EACjB,KAAc;IAEd,OAAO;QACL,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,kBAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC;KACtD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,OAAO;QACL,OAAO,EAAE,IAAI;QACb,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY;IAEZ,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAuB,EACvB,SAAiB,EACjB,EAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QAC1B,OAAO,iBAAiB,CACtB,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAC7D,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/utils/error-handler.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { UserSettings, ProjectSettings, SamplingSettings, ThinkingSettings } from "../schemas/settings-schemas.js";
1
+ import type { UserSettings, ProjectSettings, SamplingSettings, ThinkingSettings, DualModelSettings } from "../schemas/settings-schemas.js";
2
2
  export type { UserSettings, ProjectSettings };
3
3
  /**
4
4
  * Unified settings manager that handles both user-level and project-level settings
@@ -100,6 +100,26 @@ export declare class SettingsManager {
100
100
  * @returns Thinking settings or undefined for default behavior
101
101
  */
102
102
  getThinkingSettings(): ThinkingSettings | undefined;
103
+ /**
104
+ * Get dual-model settings with proper fallback logic:
105
+ * 1. Environment variables (AI_DUAL_MODEL_ENABLED, AI_CHAT_MODEL, AI_CODING_MODEL)
106
+ * 2. Project-specific dual-model settings
107
+ * 3. User's default dual-model settings
108
+ * 4. Undefined (default behavior - dual-model disabled)
109
+ *
110
+ * @returns Dual-model settings or undefined for default behavior
111
+ */
112
+ getDualModelSettings(): DualModelSettings | undefined;
113
+ /**
114
+ * Check if dual-model mode is enabled
115
+ */
116
+ isDualModelEnabled(): boolean;
117
+ /**
118
+ * Get the appropriate model based on chat mode
119
+ * @param isChatMode - Whether to use chat model (true) or coding model (false)
120
+ * @returns Model to use, or undefined to use default
121
+ */
122
+ getModelForMode(isChatMode: boolean): string | undefined;
103
123
  /**
104
124
  * Get the actual user settings path being used
105
125
  */
@@ -379,6 +379,73 @@ export class SettingsManager {
379
379
  }
380
380
  return result;
381
381
  }
382
+ /**
383
+ * Get dual-model settings with proper fallback logic:
384
+ * 1. Environment variables (AI_DUAL_MODEL_ENABLED, AI_CHAT_MODEL, AI_CODING_MODEL)
385
+ * 2. Project-specific dual-model settings
386
+ * 3. User's default dual-model settings
387
+ * 4. Undefined (default behavior - dual-model disabled)
388
+ *
389
+ * @returns Dual-model settings or undefined for default behavior
390
+ */
391
+ getDualModelSettings() {
392
+ // Start with user settings as base
393
+ const userDualModel = this.getUserSetting("dualModel");
394
+ const projectDualModel = this.getProjectSetting("dualModel");
395
+ // Merge project settings over user settings
396
+ const baseDualModel = { ...(userDualModel || {}), ...(projectDualModel || {}) };
397
+ // Environment variables take highest priority
398
+ const envEnabled = process.env.AI_DUAL_MODEL_ENABLED;
399
+ const envChatModel = process.env.AI_CHAT_MODEL;
400
+ const envCodingModel = process.env.AI_CODING_MODEL;
401
+ let result = { ...baseDualModel };
402
+ if (envEnabled !== undefined) {
403
+ if (!result)
404
+ result = {};
405
+ result.enabled = envEnabled.toLowerCase() === "true";
406
+ }
407
+ if (envChatModel !== undefined) {
408
+ if (!result)
409
+ result = {};
410
+ result.chatModel = envChatModel;
411
+ }
412
+ if (envCodingModel !== undefined) {
413
+ if (!result)
414
+ result = {};
415
+ result.codingModel = envCodingModel;
416
+ }
417
+ // Return undefined if no settings were configured (use defaults)
418
+ if (!result || Object.keys(result).length === 0) {
419
+ return undefined;
420
+ }
421
+ return result;
422
+ }
423
+ /**
424
+ * Check if dual-model mode is enabled
425
+ */
426
+ isDualModelEnabled() {
427
+ const dualModel = this.getDualModelSettings();
428
+ return dualModel?.enabled === true;
429
+ }
430
+ /**
431
+ * Get the appropriate model based on chat mode
432
+ * @param isChatMode - Whether to use chat model (true) or coding model (false)
433
+ * @returns Model to use, or undefined to use default
434
+ */
435
+ getModelForMode(isChatMode) {
436
+ const dualModel = this.getDualModelSettings();
437
+ // If dual-model is not enabled, return undefined (use default)
438
+ if (!dualModel?.enabled) {
439
+ return undefined;
440
+ }
441
+ // Return appropriate model based on mode
442
+ if (isChatMode) {
443
+ return dualModel.chatModel || this.getCurrentModel();
444
+ }
445
+ else {
446
+ return dualModel.codingModel || this.getCurrentModel();
447
+ }
448
+ }
382
449
  /**
383
450
  * Get the actual user settings path being used
384
451
  */
@@ -1 +1 @@
1
- {"version":3,"file":"settings-manager.js","sourceRoot":"","sources":["../../src/utils/settings-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-manager.js","sourceRoot":"","sources":["../../src/utils/settings-manager.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,13 @@ import type { ChatCompletionMessageParam } from 'openai/resources/chat.js';
2
2
  export declare class TokenCounter {
3
3
  private encoder;
4
4
  private cache;
5
+ private fingerprintToHashCache;
5
6
  constructor(model?: string);
7
+ /**
8
+ * Create quick fingerprint to avoid redundant hashing
9
+ * Uses length and first/last chars for fast identity check
10
+ */
11
+ private quickFingerprint;
6
12
  /**
7
13
  * Create cache key from text
8
14
  * For long texts, use hash to avoid storing large keys in memory
@@ -5,6 +5,7 @@ import * as crypto from 'crypto';
5
5
  export class TokenCounter {
6
6
  encoder;
7
7
  cache;
8
+ fingerprintToHashCache = new Map();
8
9
  constructor(model = TOKEN_CONFIG.DEFAULT_MODEL) {
9
10
  try {
10
11
  // Try to get encoding for specific model
@@ -17,6 +18,13 @@ export class TokenCounter {
17
18
  // Initialize cache with configured limit
18
19
  this.cache = new LRUCache({ maxSize: TOKEN_CONFIG.CACHE_MAX_SIZE });
19
20
  }
21
+ /**
22
+ * Create quick fingerprint to avoid redundant hashing
23
+ * Uses length and first/last chars for fast identity check
24
+ */
25
+ quickFingerprint(text) {
26
+ return `${text.length}:${text.charCodeAt(0)}:${text.charCodeAt(text.length - 1)}`;
27
+ }
20
28
  /**
21
29
  * Create cache key from text
22
30
  * For long texts, use hash to avoid storing large keys in memory
@@ -26,9 +34,23 @@ export class TokenCounter {
26
34
  if (text.length < 1024) {
27
35
  return text;
28
36
  }
37
+ // Use fingerprint to check if we've already hashed this text
38
+ const fingerprint = this.quickFingerprint(text);
39
+ const cached = this.fingerprintToHashCache.get(fingerprint);
40
+ if (cached) {
41
+ return cached;
42
+ }
29
43
  // For longer texts, use SHA-256 hash to reduce memory footprint
30
44
  // A 10KB text becomes a 64-char hash, saving ~9.9KB per cache entry
31
- return crypto.createHash('sha256').update(text).digest('hex');
45
+ const hash = crypto.createHash('sha256').update(text).digest('hex');
46
+ // Limit fingerprint cache size to prevent unbounded growth
47
+ if (this.fingerprintToHashCache.size > 1000) {
48
+ // Clear oldest entries (Map iteration order is insertion order)
49
+ const keysToDelete = Array.from(this.fingerprintToHashCache.keys()).slice(0, 100);
50
+ keysToDelete.forEach(k => this.fingerprintToHashCache.delete(k));
51
+ }
52
+ this.fingerprintToHashCache.set(fingerprint, hash);
53
+ return hash;
32
54
  }
33
55
  /**
34
56
  * Count tokens in a string with LRU caching for performance
@@ -95,6 +117,7 @@ export class TokenCounter {
95
117
  */
96
118
  dispose() {
97
119
  this.cache.clear();
120
+ this.fingerprintToHashCache.clear();
98
121
  this.encoder.free();
99
122
  }
100
123
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"token-counter.js","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAY,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,OAAO,YAAY;IACf,OAAO,CAAW;IAClB,KAAK,CAA2B;IAExC,YAAY,QAAgB,YAAY,CAAC,aAAa;QACpD,IAAI,CAAC;YACH,yCAAyC;YACzC,IAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,KAAY,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;YACjE,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,YAAY,CAAC,gBAAuB,CAAC,CAAC;QACpE,CAAC;QACD,yCAAyC;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IACtE,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,IAAY;QACjC,oDAAoD;QACpD,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,gEAAgE;QAChE,oEAAoE;QACpE,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAY;QACtB,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC;QAEpB,wCAAwC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,eAAe;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QAE/C,oDAAoD;QACpD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEhC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,QAAsC;QACvD,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,iEAAiE;YACjE,WAAW,IAAI,YAAY,CAAC,kBAAkB,CAAC;YAE/C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACxC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACnD,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1C,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACtC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7C,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,8DAA8D;oBAC9D,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;YAED,6CAA6C;YAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,YAAY,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/J,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,WAAW,IAAI,YAAY,CAAC,wBAAwB,CAAC;QAErD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,uBAAuB,CAAC,kBAA0B;QAChD,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,GAAG,KAAK,GAAG,SAAS,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"token-counter.js","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defai.digital/ax-cli",
3
- "version": "3.1.4",
3
+ "version": "3.2.0",
4
4
  "description": "Enterprise-Class AI Command Line Interface - Primary support for GLM (General Language Model) with multi-provider AI orchestration powered by AutomatosX.",
5
5
  "type": "module",
6
6
  "workspaces": [