centaurus-cli 2.9.3 → 2.9.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 (92) hide show
  1. package/dist/cli-adapter.d.ts +72 -8
  2. package/dist/cli-adapter.d.ts.map +1 -1
  3. package/dist/cli-adapter.js +607 -141
  4. package/dist/cli-adapter.js.map +1 -1
  5. package/dist/commands/CommandParser.d.ts +1 -1
  6. package/dist/commands/CommandParser.d.ts.map +1 -1
  7. package/dist/commands/CommandParser.js +113 -0
  8. package/dist/commands/CommandParser.js.map +1 -1
  9. package/dist/config/slash-commands.d.ts +2 -0
  10. package/dist/config/slash-commands.d.ts.map +1 -1
  11. package/dist/config/slash-commands.js +28 -0
  12. package/dist/config/slash-commands.js.map +1 -1
  13. package/dist/context/context-manager.d.ts +1 -1
  14. package/dist/context/context-manager.d.ts.map +1 -1
  15. package/dist/context/context-manager.js +3 -1
  16. package/dist/context/context-manager.js.map +1 -1
  17. package/dist/context/handlers/docker-handler.d.ts +9 -0
  18. package/dist/context/handlers/docker-handler.d.ts.map +1 -1
  19. package/dist/context/handlers/docker-handler.js +99 -10
  20. package/dist/context/handlers/docker-handler.js.map +1 -1
  21. package/dist/context/handlers/ssh-handler.d.ts +20 -0
  22. package/dist/context/handlers/ssh-handler.d.ts.map +1 -1
  23. package/dist/context/handlers/ssh-handler.js +129 -1
  24. package/dist/context/handlers/ssh-handler.js.map +1 -1
  25. package/dist/context/subshell-handler.d.ts +15 -0
  26. package/dist/context/subshell-handler.d.ts.map +1 -1
  27. package/dist/index.js +10 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/services/ai-service-client.d.ts.map +1 -1
  30. package/dist/services/ai-service-client.js +33 -11
  31. package/dist/services/ai-service-client.js.map +1 -1
  32. package/dist/services/api-client.js +1 -1
  33. package/dist/services/api-client.js.map +1 -1
  34. package/dist/services/warpify-detector.d.ts +43 -0
  35. package/dist/services/warpify-detector.d.ts.map +1 -0
  36. package/dist/services/warpify-detector.js +203 -0
  37. package/dist/services/warpify-detector.js.map +1 -0
  38. package/dist/services/workflow-storage.d.ts +72 -0
  39. package/dist/services/workflow-storage.d.ts.map +1 -0
  40. package/dist/services/workflow-storage.js +239 -0
  41. package/dist/services/workflow-storage.js.map +1 -0
  42. package/dist/tools/command.d.ts.map +1 -1
  43. package/dist/tools/command.js +14 -0
  44. package/dist/tools/command.js.map +1 -1
  45. package/dist/tools/enter-remote-session.d.ts +13 -0
  46. package/dist/tools/enter-remote-session.d.ts.map +1 -0
  47. package/dist/tools/enter-remote-session.js +226 -0
  48. package/dist/tools/enter-remote-session.js.map +1 -0
  49. package/dist/tools/find-files.d.ts.map +1 -1
  50. package/dist/tools/find-files.js +9 -2
  51. package/dist/tools/find-files.js.map +1 -1
  52. package/dist/tools/grep-search.d.ts +104 -31
  53. package/dist/tools/grep-search.d.ts.map +1 -1
  54. package/dist/tools/grep-search.js +699 -430
  55. package/dist/tools/grep-search.js.map +1 -1
  56. package/dist/tools/workflow-tool.d.ts +11 -0
  57. package/dist/tools/workflow-tool.d.ts.map +1 -0
  58. package/dist/tools/workflow-tool.js +87 -0
  59. package/dist/tools/workflow-tool.js.map +1 -0
  60. package/dist/types/workflow.d.ts +110 -0
  61. package/dist/types/workflow.d.ts.map +1 -0
  62. package/dist/types/workflow.js +8 -0
  63. package/dist/types/workflow.js.map +1 -0
  64. package/dist/ui/components/App.d.ts +10 -1
  65. package/dist/ui/components/App.d.ts.map +1 -1
  66. package/dist/ui/components/App.js +117 -4
  67. package/dist/ui/components/App.js.map +1 -1
  68. package/dist/ui/components/Breadcrumbs.d.ts +4 -3
  69. package/dist/ui/components/Breadcrumbs.d.ts.map +1 -1
  70. package/dist/ui/components/Breadcrumbs.js +60 -54
  71. package/dist/ui/components/Breadcrumbs.js.map +1 -1
  72. package/dist/ui/components/ConnectionStatusMessage.js +2 -2
  73. package/dist/ui/components/ConnectionStatusMessage.js.map +1 -1
  74. package/dist/ui/components/InputBox.d.ts +1 -0
  75. package/dist/ui/components/InputBox.d.ts.map +1 -1
  76. package/dist/ui/components/InputBox.js +168 -2
  77. package/dist/ui/components/InputBox.js.map +1 -1
  78. package/dist/ui/components/InteractiveShell.d.ts +2 -0
  79. package/dist/ui/components/InteractiveShell.d.ts.map +1 -1
  80. package/dist/ui/components/InteractiveShell.js +13 -3
  81. package/dist/ui/components/InteractiveShell.js.map +1 -1
  82. package/dist/ui/components/ToolExecutionMessage.d.ts.map +1 -1
  83. package/dist/ui/components/ToolExecutionMessage.js +164 -25
  84. package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
  85. package/dist/ui/components/WorkflowCreatorScreen.d.ts +25 -0
  86. package/dist/ui/components/WorkflowCreatorScreen.d.ts.map +1 -0
  87. package/dist/ui/components/WorkflowCreatorScreen.js +164 -0
  88. package/dist/ui/components/WorkflowCreatorScreen.js.map +1 -0
  89. package/dist/utils/input-classifier.d.ts.map +1 -1
  90. package/dist/utils/input-classifier.js +2 -1
  91. package/dist/utils/input-classifier.js.map +1 -1
  92. package/package.json +1 -1
@@ -122,6 +122,13 @@ Commands will be run with PAGER=cat. You may want to limit the length of output
122
122
  throw new Error(`Path is not a directory: ${targetDir}\n\nAction: Verify the path points to a directory, not a file.`);
123
123
  }
124
124
  contextManager.updateWorkingDirectory(newCwd);
125
+ // Update CLI adapter CWD and notify UI
126
+ if (context.cliAdapter) {
127
+ context.cliAdapter.cwd = newCwd;
128
+ if (context.cliAdapter.onCwdChange) {
129
+ context.cliAdapter.onCwdChange(newCwd);
130
+ }
131
+ }
125
132
  return `Changed directory to: ${newCwd}`;
126
133
  }
127
134
  else {
@@ -134,6 +141,13 @@ Commands will be run with PAGER=cat. You may want to limit the length of output
134
141
  const newCwd = await currentContext.handler.getCurrentWorkingDirectory();
135
142
  if (newCwd) {
136
143
  contextManager.updateWorkingDirectory(newCwd);
144
+ // Update CLI adapter CWD and notify UI
145
+ if (context.cliAdapter) {
146
+ context.cliAdapter.cwd = newCwd;
147
+ if (context.cliAdapter.onCwdChange) {
148
+ context.cliAdapter.onCwdChange(newCwd);
149
+ }
150
+ }
137
151
  }
138
152
  }
139
153
  return `Changed directory to: ${contextManager.getCurrentContext().metadata.workingDirectory}`;
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/tools/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/tools/command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Enter Remote Session Tool
3
+ *
4
+ * Allows the AI agent to programmatically enter SSH, Docker, or WSL environments.
5
+ * When executed, the session context automatically switches ("auto-warpify")
6
+ * and subsequent commands run in the remote environment.
7
+ *
8
+ * Password prompts are handled by the existing password request callback,
9
+ * which prompts the user for input when needed.
10
+ */
11
+ import { Tool } from './types.js';
12
+ export declare const enterRemoteSessionTool: Tool;
13
+ //# sourceMappingURL=enter-remote-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enter-remote-session.d.ts","sourceRoot":"","sources":["../../src/tools/enter-remote-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AA2GlC,eAAO,MAAM,sBAAsB,EAAE,IAoIpC,CAAC"}
@@ -0,0 +1,226 @@
1
+ /**
2
+ * Enter Remote Session Tool
3
+ *
4
+ * Allows the AI agent to programmatically enter SSH, Docker, or WSL environments.
5
+ * When executed, the session context automatically switches ("auto-warpify")
6
+ * and subsequent commands run in the remote environment.
7
+ *
8
+ * Password prompts are handled by the existing password request callback,
9
+ * which prompts the user for input when needed.
10
+ */
11
+ /**
12
+ * Parse connection string from SSH command
13
+ * Examples:
14
+ * "ssh rohan@192.168.1.100" -> "rohan@192.168.1.100"
15
+ * "ssh -p 22 rohan@localhost" -> "rohan@localhost"
16
+ * "ssh -i ~/.ssh/id_rsa user@host" -> "user@host"
17
+ */
18
+ function parseSSHConnectionString(command) {
19
+ // Match user@host pattern in the command
20
+ const match = command.match(/(\S+)@(\S+)/);
21
+ if (match) {
22
+ return match[0];
23
+ }
24
+ return undefined;
25
+ }
26
+ /**
27
+ * Parse container name from Docker command
28
+ * Examples:
29
+ * "docker exec -it mycontainer bash" -> "mycontainer"
30
+ * "docker exec mycontainer sh" -> "mycontainer"
31
+ */
32
+ function parseDockerContainer(command) {
33
+ // docker exec pattern: look for container name after flags
34
+ const execMatch = command.match(/docker\s+exec\s+(?:-\w+\s+)*(\S+)/i);
35
+ if (execMatch) {
36
+ return execMatch[1];
37
+ }
38
+ // docker run pattern
39
+ const runMatch = command.match(/docker\s+run\s+(?:-\w+(?:\s+\S+)?\s+)*(\S+)/i);
40
+ if (runMatch) {
41
+ return runMatch[1];
42
+ }
43
+ return undefined;
44
+ }
45
+ /**
46
+ * Parse WSL distro name from command
47
+ * Examples:
48
+ * "wsl" -> "Ubuntu" (default)
49
+ * "wsl -d Ubuntu-22.04" -> "Ubuntu-22.04"
50
+ */
51
+ function parseWSLDistro(command) {
52
+ const match = command.match(/wsl\s+(?:-d|--distribution)\s+(\S+)/i);
53
+ if (match) {
54
+ return match[1];
55
+ }
56
+ return 'Ubuntu'; // Default distro
57
+ }
58
+ /**
59
+ * Validate that the command matches the expected session type
60
+ */
61
+ function validateCommand(command, sessionType) {
62
+ const trimmedCommand = command.trim().toLowerCase();
63
+ switch (sessionType) {
64
+ case 'ssh':
65
+ if (!trimmedCommand.startsWith('ssh ') && trimmedCommand !== 'ssh') {
66
+ return { valid: false, error: 'SSH command must start with "ssh"' };
67
+ }
68
+ // Validate it has a target
69
+ if (!command.match(/\S+@\S+/) && !command.match(/ssh\s+\S+/)) {
70
+ return { valid: false, error: 'SSH command must specify a host (e.g., "ssh user@host")' };
71
+ }
72
+ break;
73
+ case 'docker':
74
+ if (!trimmedCommand.startsWith('docker ')) {
75
+ return { valid: false, error: 'Docker command must start with "docker"' };
76
+ }
77
+ if (!trimmedCommand.includes('exec') && !trimmedCommand.includes('run')) {
78
+ return { valid: false, error: 'Docker command must use "exec" or "run" (e.g., "docker exec -it container bash")' };
79
+ }
80
+ break;
81
+ case 'wsl':
82
+ if (!trimmedCommand.startsWith('wsl') && trimmedCommand !== 'bash') {
83
+ return { valid: false, error: 'WSL command must start with "wsl" or be "bash"' };
84
+ }
85
+ break;
86
+ }
87
+ return { valid: true };
88
+ }
89
+ /**
90
+ * Get connection string based on session type and command
91
+ */
92
+ function getConnectionString(command, sessionType) {
93
+ switch (sessionType) {
94
+ case 'ssh':
95
+ return parseSSHConnectionString(command);
96
+ case 'docker':
97
+ return parseDockerContainer(command);
98
+ case 'wsl':
99
+ return parseWSLDistro(command);
100
+ default:
101
+ return undefined;
102
+ }
103
+ }
104
+ export const enterRemoteSessionTool = {
105
+ schema: {
106
+ name: 'enter_remote_session',
107
+ description: `Manage remote environment sessions (SSH, Docker, or WSL).
108
+
109
+ ACTIONS:
110
+ - enter: Switch context to a remote session. All subsequent commands will run in the remote environment.
111
+ - exit: Exit the current remote session and return to the parent environment.
112
+
113
+ **Enter action**:
114
+ After the tool executes successfully:
115
+ - All subsequent commands will run in the remote environment
116
+ - The working directory will change to the remote system's directory
117
+ - File operations will target remote files
118
+
119
+ Examples:
120
+ - SSH: action="enter", session_type="ssh", command="ssh rohan@192.168.1.100"
121
+ - Docker: action="enter", session_type="docker", command="docker exec -it mycontainer bash"
122
+ - WSL: action="enter", session_type="wsl", command="wsl -d Ubuntu"
123
+
124
+ **Exit action**:
125
+ Exits the current remote session and returns to the parent environment (local or outer remote session).
126
+ - Example: action="exit"
127
+
128
+ IMPORTANT:
129
+ - You CANNOT run raw ssh/docker/wsl commands via execute_command. Use this tool instead.
130
+ - To exit a remote session, use action="exit" instead of running the "exit" command.
131
+ - Password prompts go to the user; the tool will wait for user input.`,
132
+ parameters: {
133
+ type: 'object',
134
+ properties: {
135
+ action: {
136
+ type: 'string',
137
+ enum: ['enter', 'exit'],
138
+ description: 'The action to perform: "enter" to connect to a remote session, "exit" to leave the current remote session.'
139
+ },
140
+ reason_text: {
141
+ type: 'string',
142
+ description: 'A short, user-facing explanation of why you are entering/exiting this remote session.'
143
+ },
144
+ session_type: {
145
+ type: 'string',
146
+ enum: ['ssh', 'docker', 'wsl'],
147
+ description: 'The type of remote session to enter. Required for "enter" action.'
148
+ },
149
+ command: {
150
+ type: 'string',
151
+ description: 'The full command to establish the connection. Required for "enter" action. For SSH: "ssh user@host". For Docker: "docker exec -it container bash". For WSL: "wsl".'
152
+ }
153
+ },
154
+ required: ['action', 'reason_text']
155
+ }
156
+ },
157
+ async execute(args, context) {
158
+ const { action, session_type, command } = args;
159
+ // Check if cliAdapter is available
160
+ if (!context.cliAdapter) {
161
+ return 'Error: CLI adapter not available. Cannot manage remote session.';
162
+ }
163
+ // Handle exit action
164
+ if (action === 'exit') {
165
+ // Check if exitRemoteSession method exists
166
+ if (typeof context.cliAdapter.exitRemoteSession !== 'function') {
167
+ return 'Error: exitRemoteSession method not available on CLI adapter.';
168
+ }
169
+ try {
170
+ const success = await context.cliAdapter.exitRemoteSession();
171
+ if (success) {
172
+ return 'Successfully exited remote session. Commands will now execute in the parent environment.';
173
+ }
174
+ else {
175
+ return 'No remote session to exit. Already in local environment.';
176
+ }
177
+ }
178
+ catch (error) {
179
+ const errorMessage = error?.message || String(error);
180
+ return `Error exiting remote session: ${errorMessage}`;
181
+ }
182
+ }
183
+ // Handle enter action (default behavior)
184
+ // Validate session type
185
+ const validTypes = ['ssh', 'docker', 'wsl'];
186
+ if (!validTypes.includes(session_type)) {
187
+ return `Error: Invalid session_type "${session_type}". Must be one of: ssh, docker, wsl`;
188
+ }
189
+ if (!command) {
190
+ return 'Error: command is required for the "enter" action.';
191
+ }
192
+ // Validate command matches session type
193
+ const validation = validateCommand(command, session_type);
194
+ if (!validation.valid) {
195
+ return `Error: ${validation.error}`;
196
+ }
197
+ // Check if warpifySession method exists
198
+ if (typeof context.cliAdapter.warpifySession !== 'function') {
199
+ return 'Error: warpifySession method not available on CLI adapter.';
200
+ }
201
+ // Get connection string for display purposes
202
+ const connectionString = getConnectionString(command, session_type);
203
+ try {
204
+ // Call warpifySession - this handles:
205
+ // 1. Password prompting via onPasswordRequest callback
206
+ // 2. Connection establishment via the appropriate handler
207
+ // 3. Context switching via contextManager
208
+ // 4. CWD updates
209
+ const success = await context.cliAdapter.warpifySession(command, session_type, connectionString);
210
+ if (success) {
211
+ const sessionDesc = connectionString
212
+ ? `${session_type.toUpperCase()}: ${connectionString}`
213
+ : session_type.toUpperCase();
214
+ return `Successfully entered remote session: ${sessionDesc}. All subsequent commands will now execute in this remote environment.`;
215
+ }
216
+ else {
217
+ return `Failed to enter remote session. Check the connection details and try again. The connection may have been rejected or timed out.`;
218
+ }
219
+ }
220
+ catch (error) {
221
+ const errorMessage = error?.message || String(error);
222
+ return `Error entering remote session: ${errorMessage}`;
223
+ }
224
+ }
225
+ };
226
+ //# sourceMappingURL=enter-remote-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enter-remote-session.js","sourceRoot":"","sources":["../../src/tools/enter-remote-session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"find-files.d.ts","sourceRoot":"","sources":["../../src/tools/find-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAwB,MAAM,YAAY,CAAC;AAIxD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,aAAa,CAAC;CAC9C;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAM;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAYtC;IAEF;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;CA+F9E;AA0BD;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,IAyD3B,CAAC"}
1
+ {"version":3,"file":"find-files.d.ts","sourceRoot":"","sources":["../../src/tools/find-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAwB,MAAM,YAAY,CAAC;AAIxD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,aAAa,CAAC;CAC9C;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAM;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAYtC;IAEF;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmBvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;CAuG9E;AA0BD;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,IAyD3B,CAAC"}
@@ -115,8 +115,15 @@ export class FindFilesTool {
115
115
  }
116
116
  // Build patterns to search - handle multi-word patterns for fuzzy matching
117
117
  const patterns = [];
118
- // Always add the original pattern
119
- patterns.push(params.pattern);
118
+ // Auto-prefix with **/ if pattern is simple (no path separators) and not already recursive
119
+ // This allows finding "file.txt" anywhere in the project without typing "**/"
120
+ let mainPattern = params.pattern;
121
+ const normalizedPattern = mainPattern.replace(/\\/g, '/');
122
+ if (!normalizedPattern.includes('/') && !normalizedPattern.startsWith('**')) {
123
+ mainPattern = `**/${mainPattern}`;
124
+ }
125
+ // Always add the main pattern
126
+ patterns.push(mainPattern);
120
127
  // If pattern contains spaces or is multi-word (without glob chars), also search individual terms
121
128
  const cleanPattern = params.pattern.replace(/\*\*/g, '').replace(/\*/g, '').trim();
122
129
  if (cleanPattern.includes(' ')) {
@@ -1 +1 @@
1
- {"version":3,"file":"find-files.js","sourceRoot":"","sources":["../../src/tools/find-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"find-files.js","sourceRoot":"","sources":["../../src/tools/find-files.ts"],"names":[],"mappings":"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"}
@@ -6,77 +6,150 @@ export interface GrepSearchParams {
6
6
  CaseInsensitive?: boolean;
7
7
  IsRegex?: boolean;
8
8
  MatchPerLine?: boolean;
9
+ MaxResults?: number;
9
10
  }
11
+ /**
12
+ * Context line with explicit line number tracking
13
+ */
14
+ export interface ContextLine {
15
+ lineNumber: number;
16
+ text: string;
17
+ }
18
+ /**
19
+ * Enhanced match with column/offset information
20
+ */
10
21
  export interface GrepMatch {
11
22
  file: string;
12
23
  line: number;
24
+ column?: number;
25
+ byteOffset?: number;
13
26
  match: string;
14
- contextBefore: string[];
15
- contextAfter: string[];
27
+ matchIndices?: [number, number][];
28
+ contextBefore: ContextLine[];
29
+ contextAfter: ContextLine[];
30
+ }
31
+ /**
32
+ * Backend type - now includes powershell and nodejs
33
+ */
34
+ export type GrepBackend = 'ripgrep' | 'grep' | 'powershell' | 'findstr' | 'nodejs';
35
+ /**
36
+ * Reason for result truncation
37
+ */
38
+ export type TruncationReason = 'max_matches' | 'backend_limit' | 'timeout';
39
+ /**
40
+ * Search metadata for debugging and transparency
41
+ */
42
+ export interface GrepSearchMetadata {
43
+ backend: GrepBackend;
44
+ searchDurationMs: number;
45
+ filesSearched?: number;
46
+ queriesExecuted: string[];
47
+ matchesPerQuery: Record<string, number>;
48
+ encodingFallback?: boolean;
16
49
  }
50
+ /**
51
+ * Enhanced search result with structured data and metadata
52
+ */
17
53
  export interface GrepSearchResult {
54
+ matches: GrepMatch[];
55
+ totalMatches: number;
56
+ uniqueMatchesCount: number;
57
+ truncated: boolean;
58
+ truncationReason?: TruncationReason;
59
+ searchPattern: string;
60
+ metadata: GrepSearchMetadata;
61
+ formattedOutput: string;
62
+ }
63
+ /**
64
+ * Internal result before formatting
65
+ */
66
+ interface InternalSearchResult {
18
67
  matches: GrepMatch[];
19
68
  totalMatches: number;
20
69
  truncated: boolean;
70
+ truncationReason?: TruncationReason;
21
71
  searchPattern: string;
72
+ filesSearched?: number;
73
+ encodingFallback?: boolean;
22
74
  }
23
75
  /**
24
- * GrepSearchTool - Search for text patterns across files in the codebase
76
+ * GrepSearchTool - Cross-platform text search with multiple backends
77
+ *
78
+ * Backend priority:
79
+ * 1. ripgrep (fastest, cross-platform)
80
+ * 2. grep (Linux/macOS native)
81
+ * 3. PowerShell Select-String (Windows, good Unicode support)
82
+ * 4. Pure Node.js (universal fallback, no dependencies)
25
83
  *
26
- * Improvements over basic implementation:
27
- * 1. Security: Uses execFile to prevent shell injection
28
- * 2. Robustness: Handles binary files and encoding issues (via rg/grep)
29
- * 3. AI-Friendly Output: Formats results for easy parsing
30
- * 4. Fallback: Gracefully degrades from ripgrep -> grep -> findstr
84
+ * Features:
85
+ * - Streaming output to handle large repos
86
+ * - Early abort when MAX_MATCHES reached
87
+ * - Proper encoding handling (UTF-8 with fallback)
88
+ * - CRLF normalization
89
+ * - Windows path support (drive letters, UNC)
31
90
  */
32
91
  export declare class GrepSearchTool {
33
- private static readonly MAX_MATCHES;
92
+ static readonly DEFAULT_MAX_MATCHES = 50;
34
93
  private static readonly MAX_LINE_LENGTH;
35
94
  private static readonly CONTEXT_LINES;
95
+ private static readonly SEARCH_TIMEOUT;
96
+ private static toolCache;
36
97
  /**
37
- * Check if ripgrep is available
98
+ * Check if a command is available
38
99
  */
100
+ private hasCommand;
39
101
  private hasRipgrep;
40
- /**
41
- * Check if native grep is available (Linux/Mac)
42
- */
43
102
  private hasGrep;
103
+ private hasPowerShell;
44
104
  /**
45
- * Normalize file path to use forward slashes
105
+ * Get the PowerShell executable name
46
106
  */
47
- private normalizePath;
107
+ private getPowerShellExe;
48
108
  /**
49
- * Check if a file path matches the Includes patterns
50
- * Returns true if there are no patterns or if the file matches at least one pattern
109
+ * Normalize file path to forward slashes
51
110
  */
52
- private matchesIncludesFilter;
111
+ private normalizePath;
53
112
  /**
54
113
  * Truncate long lines
55
114
  */
56
115
  private truncateLine;
57
116
  /**
58
- * Execute search using ripgrep
117
+ * Normalize line endings (CRLF -> LF)
118
+ */
119
+ private normalizeLineEndings;
120
+ /**
121
+ * Parse file:line:content format robustly, handling Windows paths
122
+ * E.g., "C:\foo\bar.ts:42:content" or "/foo/bar.ts:42:content"
123
+ */
124
+ private parseGrepLine;
125
+ /**
126
+ * Create regex from pattern
59
127
  */
60
- private searchWithRipgrep;
128
+ private createSearchRegex;
61
129
  /**
62
- * Parse ripgrep JSON output
130
+ * Escape regex special characters
63
131
  */
64
- private parseRipgrepOutput;
132
+ private escapeRegex;
65
133
  /**
66
- * Execute search using native grep (Linux/Mac)
134
+ * Check if file matches include patterns
67
135
  */
68
- private searchWithGrep;
69
- private parseGrepOutput;
136
+ private matchesIncludesFilter;
70
137
  /**
71
- * Execute search using findstr (Windows)
72
- * NOTE: Context is DISABLED for findstr to avoid performance/encoding issues.
138
+ * Check if file is likely binary
73
139
  */
74
- private searchWithFindstr;
75
- private parseFindstrOutput;
140
+ private isBinaryFile;
141
+ private searchWithRipgrepStreaming;
142
+ private searchWithGrepStreaming;
143
+ private searchWithPowerShell;
144
+ private searchWithNodeJS;
76
145
  /**
77
- * Execute the grep search
146
+ * Recursively collect files from directory
78
147
  */
79
- execute(params: GrepSearchParams, cwd: string): Promise<GrepSearchResult>;
148
+ private collectFiles;
149
+ execute(params: GrepSearchParams, cwd: string): Promise<InternalSearchResult & {
150
+ backend: GrepBackend;
151
+ }>;
80
152
  }
81
153
  export declare const grepSearchTool: Tool;
154
+ export {};
82
155
  //# sourceMappingURL=grep-search.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grep-search.d.ts","sourceRoot":"","sources":["../../src/tools/grep-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAwB,MAAM,YAAY,CAAC;AAQxD,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAM;IACzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAO;IAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAK;IAE1C;;OAEG;YACW,UAAU;IAiBxB;;OAEG;YACW,OAAO;IAiBrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAgC7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;YACW,iBAAiB;IA2D/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoF1B;;OAEG;YACW,cAAc;IAgD5B,OAAO,CAAC,eAAe;IAwEvB;;;OAGG;YACW,iBAAiB;IA6D/B,OAAO,CAAC,kBAAkB;IA2C1B;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAuDlF;AAsED,eAAO,MAAM,cAAc,EAAE,IAwH5B,CAAC"}
1
+ {"version":3,"file":"grep-search.d.ts","sourceRoot":"","sources":["../../src/tools/grep-search.ts"],"names":[],"mappings":"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"}