@defai.digital/ax-cli 3.11.10 → 3.12.4

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 (53) hide show
  1. package/README.md +10 -59
  2. package/dist/agent/execution/tool-executor.d.ts +1 -1
  3. package/dist/agent/execution/tool-executor.js +55 -2
  4. package/dist/agent/execution/tool-executor.js.map +1 -1
  5. package/dist/commands/custom-commands.d.ts +77 -0
  6. package/dist/commands/custom-commands.js +249 -0
  7. package/dist/commands/custom-commands.js.map +1 -0
  8. package/dist/commands/vscode.js +62 -13
  9. package/dist/commands/vscode.js.map +1 -1
  10. package/dist/hooks/index.d.ts +6 -3
  11. package/dist/hooks/index.js +6 -3
  12. package/dist/hooks/index.js.map +1 -1
  13. package/dist/hooks/manager.d.ts +84 -0
  14. package/dist/hooks/manager.js +344 -0
  15. package/dist/hooks/manager.js.map +1 -0
  16. package/dist/hooks/types.d.ts +134 -0
  17. package/dist/hooks/types.js +9 -0
  18. package/dist/hooks/types.js.map +1 -0
  19. package/dist/llm/tools.js +53 -0
  20. package/dist/llm/tools.js.map +1 -1
  21. package/dist/sdk/version.d.ts +1 -1
  22. package/dist/sdk/version.js +1 -1
  23. package/dist/sdk/version.js.map +1 -1
  24. package/dist/tools/ask-user.d.ts +66 -0
  25. package/dist/tools/ask-user.js +96 -0
  26. package/dist/tools/ask-user.js.map +1 -0
  27. package/dist/tools/bash.js +6 -3
  28. package/dist/tools/bash.js.map +1 -1
  29. package/dist/ui/components/chat-interface.js +34 -3
  30. package/dist/ui/components/chat-interface.js.map +1 -1
  31. package/dist/ui/components/keyboard-hints.js +3 -1
  32. package/dist/ui/components/keyboard-hints.js.map +1 -1
  33. package/dist/ui/components/quick-actions.js +13 -5
  34. package/dist/ui/components/quick-actions.js.map +1 -1
  35. package/dist/ui/components/status-bar.js +2 -0
  36. package/dist/ui/components/status-bar.js.map +1 -1
  37. package/dist/ui/hooks/use-enhanced-input.js +28 -5
  38. package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
  39. package/dist/ui/hooks/use-input-handler.d.ts +10 -0
  40. package/dist/ui/hooks/use-input-handler.js +257 -45
  41. package/dist/ui/hooks/use-input-handler.js.map +1 -1
  42. package/dist/ui/utils/semantic-action-detector.js +19 -1
  43. package/dist/ui/utils/semantic-action-detector.js.map +1 -1
  44. package/dist/ui/utils/tool-grouper.js +13 -1
  45. package/dist/ui/utils/tool-grouper.js.map +1 -1
  46. package/dist/utils/background-task-manager.js +9 -5
  47. package/dist/utils/background-task-manager.js.map +1 -1
  48. package/dist/utils/file-mentions.d.ts +68 -0
  49. package/dist/utils/file-mentions.js +225 -0
  50. package/dist/utils/file-mentions.js.map +1 -0
  51. package/dist/utils/paste-utils.js +2 -1
  52. package/dist/utils/paste-utils.js.map +1 -1
  53. package/package.json +1 -1
package/README.md CHANGED
@@ -210,6 +210,7 @@ ax-cli -c
210
210
  | **Ctrl+K** | Quick actions menu |
211
211
  | **Shift+Tab** | Toggle auto-edit mode |
212
212
  | **Ctrl+C** | Clear input (press twice to exit) |
213
+ | **Esc×2** | Clear input (press Escape twice quickly) |
213
214
  | **↑/↓** | Navigate command history |
214
215
 
215
216
  ### Headless Mode
@@ -400,65 +401,6 @@ Email: **security@defai.digital** (private disclosure)
400
401
 
401
402
  ---
402
403
 
403
- ## Changelog
404
-
405
- ### v3.11.10 (Latest)
406
-
407
- - **Fix: Stress Test Timeout** - Increased process-pool 1000-search stress test timeout from 120s to 180s for CI reliability
408
- - **Code Quality Verification** - Verified background-task-manager.ts has comprehensive memory leak and race condition fixes
409
-
410
- ### v3.11.9
411
-
412
- - **Fix: Redundant Ternary in Paste Block Display** - Simplified redundant color ternary in chat-input.tsx paste block rendering
413
-
414
- ### v3.11.8
415
-
416
- - **Fix: Keyboard Help Documentation** - Fixed incorrect documentation for Ctrl+D (was "Exit AX CLI", should be "Delete character after cursor")
417
-
418
- ### v3.11.7
419
-
420
- - **Fix: Paste Block ID Display** - Fixed inconsistent paste block ID display (expanded view showed 0-based ID, collapsed showed 1-based)
421
-
422
- ### v3.11.6
423
-
424
- - **Fix: File Content Vertical Layout** - Fixed `renderFileContent` in chat-history to properly wrap lines in `flexDirection="column"` Box for vertical display
425
-
426
- ### v3.11.5
427
-
428
- - **Critical Fix: Multiline Input Rendering** - Fixed multiline input displaying on single line with `│` characters instead of proper newlines
429
- - **Root Cause** - Added missing `flexDirection="column"` to the Ink Box component containing multiline input lines
430
-
431
- ### v3.11.4
432
-
433
- - **Test Suite Fixes** - Fixed 12 failing tests in CI/CD pipeline for tool-grouper and change-summarizer modules
434
- - **Tool Grouper Updates** - Updated tests to reflect single-item group unwrapping behavior (returns original entry instead of wrapping in ToolGroup)
435
- - **Change Summarizer Updates** - Fixed line counting tests to match trimmed content behavior and 500+ line "large" file threshold
436
-
437
- ### v3.11.3
438
-
439
- - **Bug Fixes: CLI Message Grouping** - Fixed parseInt NaN in diff-renderer, keyboard-hints fallback, semantic group duration color, reasoning-display marginBottom, diff-renderer gap separator
440
- - **Bug Fixes: Paste Handling** - Fixed placeholder 1-based numbering, stale pastedBlocks closure, findBlockAtCursor guards, singular/plural line counts, negative ID guard, expandAllPlaceholders optimization
441
- - **Bug Fixes: Display** - Fixed getFilePath for multi_edit, config file matching, renderFileContent empty content, MarkdownRenderer Promise handling, isCompatibleTransition fallback
442
- - **Code Quality** - Removed console.error calls from paste error handling, added Shift+Enter detection normalization
443
-
444
- ### v3.10.1
445
-
446
- - **Bug Fixes: Race Conditions** - Fixed double-resolution race conditions in VSCode IPC client, MCP singleton initialization, and tool approval timeout handling
447
- - **Bug Fixes: Escape Sequence Handling** - Fixed broken escape sequence logic in input parsing (getStringState, hasCharOutsideStrings, isIncompleteInput)
448
- - **Bug Fixes: Cache Invalidation** - Fixed tool version comparison to properly detect tool upgrades and invalidate stale cache
449
- - **Code Quality** - Consistent flag-based escape tracking, improved error logging in debug mode
450
-
451
- ### v3.10.0
452
-
453
- - **pnpm CI Migration** - Switched CI/CD from npm to pnpm for 2-3x faster installs (users still use `npm install`)
454
- - **npm Compatibility Test** - Added dedicated CI job to verify npm users can still install and build
455
- - **Workspace Protocol** - Updated workspace dependency to use `workspace:*` for proper pnpm support
456
- - **CI Performance** - Follows pattern used by Vite, Vitest, Next.js for optimal CI speed
457
-
458
- [View full changelog →](https://github.com/defai-digital/ax-cli/releases)
459
-
460
- ---
461
-
462
404
  ## Documentation
463
405
 
464
406
  | Guide | Description |
@@ -493,6 +435,15 @@ Contact: **sales@defai.digital**
493
435
 
494
436
  This project was inspired by and partially based on [grok-cli](https://github.com/superagent-ai/grok-cli). Thanks to the original authors for their open-source contributions.
495
437
 
438
+ ### AI Co-Authors
439
+
440
+ This project is developed with assistance from multiple AI coding assistants:
441
+
442
+ - [AutomatosX](https://github.com/defai-digital/automatosx) - AI agent orchestration platform
443
+ - [Claude](https://github.com/claude) - Anthropic's AI assistant
444
+ - [Gemini Code Assist](https://github.com/apps/gemini-code-assist) - Google's AI coding assistant
445
+ - [Codex](https://github.com/openai/codex) - OpenAI's code generation model
446
+
496
447
  ---
497
448
 
498
449
  ## License
@@ -53,7 +53,7 @@ export declare class ToolExecutor {
53
53
  */
54
54
  parseToolArguments(toolCall: LLMToolCall, toolType?: string): ToolParseResult;
55
55
  /**
56
- * Execute a tool call
56
+ * Execute a tool call with hooks integration
57
57
  */
58
58
  execute(toolCall: LLMToolCall): Promise<ToolResult>;
59
59
  /**
@@ -11,7 +11,9 @@ import { TextEditorTool, BashTool, TodoTool, SearchTool, } from "../../tools/ind
11
11
  import { BashOutputTool } from "../../tools/bash-output.js";
12
12
  import { ArchitectureTool } from "../../tools/analysis-tools/architecture-tool.js";
13
13
  import { ValidationTool } from "../../tools/analysis-tools/validation-tool.js";
14
+ import { getAskUserTool } from "../../tools/ask-user.js";
14
15
  import { extractErrorMessage } from "../../utils/error-handler.js";
16
+ import { getHooksManager } from "../../hooks/index.js";
15
17
  /**
16
18
  * Tool Executor
17
19
  *
@@ -91,7 +93,7 @@ export class ToolExecutor {
91
93
  }
92
94
  }
93
95
  /**
94
- * Execute a tool call
96
+ * Execute a tool call with hooks integration
95
97
  */
96
98
  async execute(toolCall) {
97
99
  try {
@@ -100,6 +102,15 @@ export class ToolExecutor {
100
102
  return { success: false, error: parseResult.error };
101
103
  }
102
104
  const args = parseResult.args;
105
+ // Check PreToolUse hooks before execution
106
+ const hooksManager = getHooksManager();
107
+ const blockCheck = await hooksManager.shouldBlockTool(toolCall.function.name, args, toolCall.id);
108
+ if (blockCheck.blocked) {
109
+ return {
110
+ success: false,
111
+ error: `Tool blocked by hook: ${blockCheck.reason || 'No reason provided'}`,
112
+ };
113
+ }
103
114
  // Helper to safely get string argument with validation
104
115
  const getString = (key, required = true) => {
105
116
  const value = args[key];
@@ -196,10 +207,52 @@ export class ToolExecutor {
196
207
  }
197
208
  return await this.validationTool.execute({ path, pattern, rules });
198
209
  }
210
+ case "ask_user": {
211
+ const questions = args.questions;
212
+ if (!Array.isArray(questions)) {
213
+ return {
214
+ success: false,
215
+ error: "ask_user requires a 'questions' array",
216
+ };
217
+ }
218
+ // Validate and transform questions
219
+ const validQuestions = [];
220
+ for (const q of questions) {
221
+ if (typeof q !== 'object' || q === null)
222
+ continue;
223
+ const qObj = q;
224
+ if (typeof qObj.question !== 'string' || !Array.isArray(qObj.options))
225
+ continue;
226
+ const validOptions = qObj.options.filter((opt) => typeof opt === 'object' && opt !== null && typeof opt.label === 'string').map(opt => ({
227
+ label: opt.label,
228
+ description: typeof opt.description === 'string' ? opt.description : undefined,
229
+ }));
230
+ // Skip questions with fewer than 2 valid options
231
+ if (validOptions.length < 2)
232
+ continue;
233
+ validQuestions.push({
234
+ question: qObj.question,
235
+ header: typeof qObj.header === 'string' ? qObj.header : undefined,
236
+ options: validOptions,
237
+ multiSelect: typeof qObj.multiSelect === 'boolean' ? qObj.multiSelect : false,
238
+ });
239
+ }
240
+ if (validQuestions.length === 0) {
241
+ return {
242
+ success: false,
243
+ error: "No valid questions provided",
244
+ };
245
+ }
246
+ const askUserTool = getAskUserTool();
247
+ return await askUserTool.execute(validQuestions);
248
+ }
199
249
  default:
200
250
  // Check if this is an MCP tool
201
251
  if (toolCall.function.name.startsWith("mcp__")) {
202
- return await this.executeMCPTool(toolCall);
252
+ const mcpResult = await this.executeMCPTool(toolCall);
253
+ // Execute PostToolUse hooks (fire-and-forget)
254
+ hooksManager.executePostToolHooks(toolCall.function.name, args, toolCall.id, mcpResult);
255
+ return mcpResult;
203
256
  }
204
257
  return {
205
258
  success: false,
@@ -1 +1 @@
1
- {"version":3,"file":"tool-executor.js","sourceRoot":"","sources":["../../../src/agent/execution/tool-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-executor.js","sourceRoot":"","sources":["../../../src/agent/execution/tool-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Custom Commands System
3
+ *
4
+ * Allows users to create custom slash commands using markdown files.
5
+ * Commands can be project-level (.ax-cli/commands/) or personal (~/.ax-cli/commands/).
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ /**
10
+ * Custom command definition
11
+ */
12
+ export interface CustomCommand {
13
+ /** Command name (without leading slash) */
14
+ name: string;
15
+ /** Command description from frontmatter or first line */
16
+ description: string;
17
+ /** Full path to the command file */
18
+ filePath: string;
19
+ /** Whether this is a project-level or user-level command */
20
+ scope: "project" | "user";
21
+ /** The command content/prompt */
22
+ content: string;
23
+ /** Optional arguments configuration */
24
+ arguments?: {
25
+ /** Whether the command accepts arguments */
26
+ required?: boolean;
27
+ /** Description of expected arguments */
28
+ description?: string;
29
+ };
30
+ }
31
+ /**
32
+ * Custom Commands Manager
33
+ */
34
+ export declare class CustomCommandsManager {
35
+ private static instance;
36
+ private commands;
37
+ private projectDir;
38
+ private userDir;
39
+ private initialized;
40
+ private constructor();
41
+ /**
42
+ * Get the singleton instance
43
+ */
44
+ static getInstance(): CustomCommandsManager;
45
+ /**
46
+ * Reset the singleton (for testing)
47
+ */
48
+ static reset(): void;
49
+ /**
50
+ * Initialize by loading commands from all sources
51
+ */
52
+ initialize(): void;
53
+ /**
54
+ * Get a command by name
55
+ */
56
+ getCommand(name: string): CustomCommand | undefined;
57
+ /**
58
+ * Get all available commands
59
+ */
60
+ getAllCommands(): CustomCommand[];
61
+ /**
62
+ * Check if a command exists
63
+ */
64
+ hasCommand(name: string): boolean;
65
+ /**
66
+ * Expand a command with arguments
67
+ */
68
+ expandCommand(name: string, args: string): string | null;
69
+ /**
70
+ * Reload commands from disk
71
+ */
72
+ reload(): void;
73
+ }
74
+ /**
75
+ * Get the singleton custom commands manager instance
76
+ */
77
+ export declare function getCustomCommandsManager(): CustomCommandsManager;
@@ -0,0 +1,249 @@
1
+ /**
2
+ * Custom Commands System
3
+ *
4
+ * Allows users to create custom slash commands using markdown files.
5
+ * Commands can be project-level (.ax-cli/commands/) or personal (~/.ax-cli/commands/).
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import * as fs from "fs";
10
+ import * as path from "path";
11
+ import * as os from "os";
12
+ import { extractErrorMessage } from "../utils/error-handler.js";
13
+ /**
14
+ * Parse YAML-like frontmatter from a markdown file
15
+ */
16
+ function parseFrontmatter(content) {
17
+ // Normalize line endings to \n
18
+ const normalized = content.replace(/\r\n/g, "\n");
19
+ // Match frontmatter with optional trailing newline
20
+ const frontmatterMatch = normalized.match(/^---\n([\s\S]*?)\n---(?:\n|$)([\s\S]*)$/);
21
+ if (!frontmatterMatch) {
22
+ return { frontmatter: {}, body: content };
23
+ }
24
+ const frontmatterStr = frontmatterMatch[1];
25
+ const body = frontmatterMatch[2];
26
+ // Simple YAML parsing (key: value format)
27
+ const frontmatter = {};
28
+ const lines = frontmatterStr.split("\n");
29
+ let currentKey = null;
30
+ let inNestedObject = false;
31
+ let nestedObject = {};
32
+ for (const line of lines) {
33
+ const trimmed = line.trim();
34
+ if (!trimmed || trimmed.startsWith("#"))
35
+ continue;
36
+ // Check for nested object end
37
+ if (inNestedObject && !line.startsWith(" ")) {
38
+ if (currentKey === "arguments") {
39
+ frontmatter.arguments = nestedObject;
40
+ }
41
+ inNestedObject = false;
42
+ nestedObject = {};
43
+ currentKey = null;
44
+ }
45
+ // Check for nested object start
46
+ if (trimmed.endsWith(":") && !trimmed.includes(": ")) {
47
+ currentKey = trimmed.slice(0, -1);
48
+ inNestedObject = true;
49
+ nestedObject = {};
50
+ continue;
51
+ }
52
+ // Handle nested properties
53
+ if (inNestedObject && line.startsWith(" ")) {
54
+ const match = trimmed.match(/^(\w+):\s*(.*)$/);
55
+ if (match) {
56
+ const [, key, value] = match;
57
+ if (value === "true") {
58
+ nestedObject[key] = true;
59
+ }
60
+ else if (value === "false") {
61
+ nestedObject[key] = false;
62
+ }
63
+ else {
64
+ nestedObject[key] = value.replace(/^["']|["']$/g, "");
65
+ }
66
+ }
67
+ continue;
68
+ }
69
+ // Handle top-level properties
70
+ const match = trimmed.match(/^(\w+):\s*(.*)$/);
71
+ if (match) {
72
+ const [, key, value] = match;
73
+ if (key === "description") {
74
+ frontmatter.description = value.replace(/^["']|["']$/g, "");
75
+ }
76
+ }
77
+ }
78
+ // Handle case where nested object is at the end
79
+ if (inNestedObject && currentKey === "arguments") {
80
+ frontmatter.arguments = nestedObject;
81
+ }
82
+ return { frontmatter, body };
83
+ }
84
+ /**
85
+ * Get the first non-empty line as a description fallback
86
+ */
87
+ function getFirstLineDescription(content) {
88
+ const lines = content.trim().split("\n");
89
+ for (const line of lines) {
90
+ const trimmed = line.trim();
91
+ if (trimmed && !trimmed.startsWith("#")) {
92
+ return trimmed.slice(0, 100); // Limit length
93
+ }
94
+ }
95
+ return "Custom command";
96
+ }
97
+ /**
98
+ * Load custom commands from a directory
99
+ */
100
+ function loadCommandsFromDir(dir, scope) {
101
+ const commands = [];
102
+ if (!fs.existsSync(dir)) {
103
+ return commands;
104
+ }
105
+ try {
106
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
107
+ for (const entry of entries) {
108
+ if (entry.isFile() && entry.name.endsWith(".md")) {
109
+ const filePath = path.join(dir, entry.name);
110
+ const name = entry.name.slice(0, -3); // Remove .md extension
111
+ try {
112
+ const content = fs.readFileSync(filePath, "utf-8");
113
+ const { frontmatter, body } = parseFrontmatter(content);
114
+ commands.push({
115
+ name,
116
+ description: frontmatter.description || getFirstLineDescription(body),
117
+ filePath,
118
+ scope,
119
+ content: body.trim(),
120
+ arguments: frontmatter.arguments,
121
+ });
122
+ }
123
+ catch (error) {
124
+ console.warn(`Failed to load command ${name}:`, extractErrorMessage(error));
125
+ }
126
+ }
127
+ else if (entry.isDirectory()) {
128
+ // Support nested commands (e.g., commands/project/review.md -> /project:review)
129
+ const subDir = path.join(dir, entry.name);
130
+ const subCommands = loadCommandsFromDir(subDir, scope);
131
+ for (const cmd of subCommands) {
132
+ cmd.name = `${entry.name}:${cmd.name}`;
133
+ commands.push(cmd);
134
+ }
135
+ }
136
+ }
137
+ }
138
+ catch (error) {
139
+ console.warn(`Failed to read commands directory ${dir}:`, extractErrorMessage(error));
140
+ }
141
+ return commands;
142
+ }
143
+ /**
144
+ * Custom Commands Manager
145
+ */
146
+ export class CustomCommandsManager {
147
+ static instance = null;
148
+ commands = new Map();
149
+ projectDir;
150
+ userDir;
151
+ initialized = false;
152
+ constructor() {
153
+ this.projectDir = path.join(process.cwd(), ".ax-cli", "commands");
154
+ this.userDir = path.join(os.homedir(), ".ax-cli", "commands");
155
+ }
156
+ /**
157
+ * Get the singleton instance
158
+ */
159
+ static getInstance() {
160
+ if (!CustomCommandsManager.instance) {
161
+ CustomCommandsManager.instance = new CustomCommandsManager();
162
+ }
163
+ return CustomCommandsManager.instance;
164
+ }
165
+ /**
166
+ * Reset the singleton (for testing)
167
+ */
168
+ static reset() {
169
+ CustomCommandsManager.instance = null;
170
+ }
171
+ /**
172
+ * Initialize by loading commands from all sources
173
+ */
174
+ initialize() {
175
+ if (this.initialized)
176
+ return;
177
+ this.commands.clear();
178
+ // Load user-level commands first (lower priority)
179
+ const userCommands = loadCommandsFromDir(this.userDir, "user");
180
+ for (const cmd of userCommands) {
181
+ this.commands.set(cmd.name, cmd);
182
+ }
183
+ // Load project-level commands (higher priority, overrides user)
184
+ const projectCommands = loadCommandsFromDir(this.projectDir, "project");
185
+ for (const cmd of projectCommands) {
186
+ this.commands.set(cmd.name, cmd);
187
+ }
188
+ this.initialized = true;
189
+ }
190
+ /**
191
+ * Get a command by name
192
+ */
193
+ getCommand(name) {
194
+ if (!this.initialized) {
195
+ this.initialize();
196
+ }
197
+ return this.commands.get(name);
198
+ }
199
+ /**
200
+ * Get all available commands
201
+ */
202
+ getAllCommands() {
203
+ if (!this.initialized) {
204
+ this.initialize();
205
+ }
206
+ return Array.from(this.commands.values());
207
+ }
208
+ /**
209
+ * Check if a command exists
210
+ */
211
+ hasCommand(name) {
212
+ if (!this.initialized) {
213
+ this.initialize();
214
+ }
215
+ return this.commands.has(name);
216
+ }
217
+ /**
218
+ * Expand a command with arguments
219
+ */
220
+ expandCommand(name, args) {
221
+ const command = this.getCommand(name);
222
+ if (!command)
223
+ return null;
224
+ let content = command.content;
225
+ // Replace $ARGUMENTS with the full argument string
226
+ content = content.replace(/\$ARGUMENTS/g, args);
227
+ // Replace $1, $2, etc. with positional arguments
228
+ const argParts = args.split(/\s+/).filter(Boolean);
229
+ for (let i = 0; i < 10; i++) {
230
+ const value = argParts[i] || "";
231
+ content = content.replace(new RegExp(`\\$${i + 1}`, "g"), value);
232
+ }
233
+ return content;
234
+ }
235
+ /**
236
+ * Reload commands from disk
237
+ */
238
+ reload() {
239
+ this.initialized = false;
240
+ this.initialize();
241
+ }
242
+ }
243
+ /**
244
+ * Get the singleton custom commands manager instance
245
+ */
246
+ export function getCustomCommandsManager() {
247
+ return CustomCommandsManager.getInstance();
248
+ }
249
+ //# sourceMappingURL=custom-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-commands.js","sourceRoot":"","sources":["../../src/commands/custom-commands.ts"],"names":[],"mappings":"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"}