codebuff 1.0.169 → 1.0.170

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 (103) hide show
  1. package/dist/browser-runner.js +17 -7
  2. package/dist/browser-runner.js.map +1 -1
  3. package/dist/chat-storage.d.ts +2 -27
  4. package/dist/chat-storage.js +73 -139
  5. package/dist/chat-storage.js.map +1 -1
  6. package/dist/checkpoint-file-manager.d.ts +8 -0
  7. package/dist/checkpoint-file-manager.js +125 -0
  8. package/dist/checkpoint-file-manager.js.map +1 -0
  9. package/dist/checkpoints.d.ts +61 -0
  10. package/dist/checkpoints.js +171 -0
  11. package/dist/checkpoints.js.map +1 -0
  12. package/dist/cli.d.ts +7 -8
  13. package/dist/cli.js +127 -155
  14. package/dist/cli.js.map +1 -1
  15. package/dist/client.d.ts +179 -28
  16. package/dist/client.js +154 -150
  17. package/dist/client.js.map +1 -1
  18. package/dist/code-map/languages.js +17 -7
  19. package/dist/code-map/languages.js.map +1 -1
  20. package/dist/code-map/parse.js +17 -7
  21. package/dist/code-map/parse.js.map +1 -1
  22. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  23. package/dist/common/actions.d.ts +2121 -560
  24. package/dist/common/actions.js +58 -81
  25. package/dist/common/actions.js.map +1 -1
  26. package/dist/common/constants/tools.d.ts +13 -0
  27. package/dist/common/constants/tools.js +22 -0
  28. package/dist/common/constants/tools.js.map +1 -0
  29. package/dist/common/constants.d.ts +0 -1
  30. package/dist/common/constants.js +3 -3
  31. package/dist/common/constants.js.map +1 -1
  32. package/dist/common/logger.d.ts +1 -0
  33. package/dist/common/logger.js +7 -0
  34. package/dist/common/logger.js.map +1 -0
  35. package/dist/common/types/agent-state.d.ts +461 -0
  36. package/dist/common/types/agent-state.js +30 -0
  37. package/dist/common/types/agent-state.js.map +1 -0
  38. package/dist/common/types/message.d.ts +311 -0
  39. package/dist/common/types/message.js +54 -0
  40. package/dist/common/types/message.js.map +1 -0
  41. package/dist/common/types/tools.d.ts +5 -0
  42. package/dist/common/types/tools.js +3 -0
  43. package/dist/common/types/tools.js.map +1 -0
  44. package/dist/common/util/changes.js +3 -3
  45. package/dist/common/util/changes.js.map +1 -1
  46. package/dist/common/util/constants.d.ts +1 -0
  47. package/dist/common/util/constants.js +7 -0
  48. package/dist/common/util/constants.js.map +1 -0
  49. package/dist/common/util/credentials.d.ts +4 -4
  50. package/dist/common/util/file.d.ts +6 -2
  51. package/dist/common/util/file.js +25 -24
  52. package/dist/common/util/file.js.map +1 -1
  53. package/dist/common/util/git.js +1 -1
  54. package/dist/common/util/git.js.map +1 -1
  55. package/dist/common/util/helpers.d.ts +1 -0
  56. package/dist/common/util/helpers.js +6 -0
  57. package/dist/common/util/helpers.js.map +1 -0
  58. package/dist/common/util/messages.d.ts +1 -1
  59. package/dist/common/util/promise.d.ts +8 -0
  60. package/dist/common/util/promise.js +25 -2
  61. package/dist/common/util/promise.js.map +1 -1
  62. package/dist/common/util/saxy.d.ts +158 -0
  63. package/dist/common/util/saxy.js +450 -0
  64. package/dist/common/util/saxy.js.map +1 -0
  65. package/dist/common/util/string.d.ts +13 -0
  66. package/dist/common/util/string.js +21 -1
  67. package/dist/common/util/string.js.map +1 -1
  68. package/dist/common/util/token-counter.d.ts +3 -0
  69. package/dist/common/util/token-counter.js +27 -0
  70. package/dist/common/util/token-counter.js.map +1 -0
  71. package/dist/common/websockets/websocket-schema.d.ts +3646 -530
  72. package/dist/create-template-project.js +17 -7
  73. package/dist/create-template-project.js.map +1 -1
  74. package/dist/index.js +5 -3
  75. package/dist/index.js.map +1 -1
  76. package/dist/menu.js +31 -19
  77. package/dist/menu.js.map +1 -1
  78. package/dist/project-files.d.ts +40 -2
  79. package/dist/project-files.js +94 -34
  80. package/dist/project-files.js.map +1 -1
  81. package/dist/tool-handlers.d.ts +21 -7
  82. package/dist/tool-handlers.js +99 -37
  83. package/dist/tool-handlers.js.map +1 -1
  84. package/dist/utils/__tests__/xml-stream-parser.test.js +221 -0
  85. package/dist/utils/__tests__/xml-stream-parser.test.js.map +1 -0
  86. package/dist/utils/spinner.d.ts +1 -0
  87. package/dist/utils/spinner.js +28 -7
  88. package/dist/utils/spinner.js.map +1 -1
  89. package/dist/utils/terminal.d.ts +23 -3
  90. package/dist/utils/terminal.js +68 -45
  91. package/dist/utils/terminal.js.map +1 -1
  92. package/dist/utils/tool-renderers.d.ts +16 -0
  93. package/dist/utils/tool-renderers.js +105 -0
  94. package/dist/utils/tool-renderers.js.map +1 -0
  95. package/dist/utils/xml-stream-parser.d.ts +9 -0
  96. package/dist/utils/xml-stream-parser.js +128 -0
  97. package/dist/utils/xml-stream-parser.js.map +1 -0
  98. package/dist/worker-script-project-context.js +1 -1
  99. package/dist/worker-script-project-context.js.map +1 -1
  100. package/package.json +2 -1
  101. package/dist/__tests__/browser-runner.test.js +0 -15
  102. package/dist/__tests__/browser-runner.test.js.map +0 -1
  103. /package/dist/{__tests__/browser-runner.test.d.ts → utils/__tests__/xml-stream-parser.test.d.ts} +0 -0
@@ -15,18 +15,28 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.runTerminalCommand = exports.resetShell = exports.recreateShell = exports.isCommandRunning = void 0;
39
+ exports.runCommandPty = exports.runTerminalCommand = exports.resetShell = exports.recreateShell = exports.isCommandRunning = void 0;
30
40
  const child_process_1 = require("child_process");
31
41
  const path_1 = __importDefault(require("path"));
32
42
  const picocolors_1 = require("picocolors");
@@ -47,7 +57,7 @@ finally {
47
57
  }
48
58
  const promptIdentifier = '@36261@';
49
59
  const createPersistantProcess = (dir) => {
50
- if (pty) {
60
+ if (pty && process.env.NODE_ENV !== 'test') {
51
61
  const isWindows = os.platform() === 'win32';
52
62
  const currShell = (0, detect_shell_1.detectShell)();
53
63
  const shell = isWindows
@@ -141,12 +151,11 @@ const isCommandRunning = () => {
141
151
  return commandIsRunning;
142
152
  };
143
153
  exports.isCommandRunning = isCommandRunning;
144
- const recreateShell = () => {
145
- const dir = (0, project_files_1.getProjectRoot)();
146
- persistentProcess = createPersistantProcess(dir);
154
+ const recreateShell = (projectPath) => {
155
+ persistentProcess = createPersistantProcess(projectPath);
147
156
  };
148
157
  exports.recreateShell = recreateShell;
149
- const resetShell = () => {
158
+ const resetShell = (projectPath) => {
150
159
  commandIsRunning = false;
151
160
  if (persistentProcess) {
152
161
  if (persistentProcess.timerId) {
@@ -155,7 +164,7 @@ const resetShell = () => {
155
164
  }
156
165
  if (persistentProcess.type === 'pty') {
157
166
  persistentProcess.pty.kill();
158
- (0, exports.recreateShell)();
167
+ (0, exports.recreateShell)(projectPath);
159
168
  }
160
169
  else {
161
170
  persistentProcess.childProcess?.kill();
@@ -178,7 +187,7 @@ const isNotACommand = (output) => {
178
187
  return (output.includes('command not found') ||
179
188
  // Linux
180
189
  output.includes(': not found') ||
181
- output.includes('\' not found') ||
190
+ output.includes("' not found") ||
182
191
  // Common
183
192
  output.includes('syntax error:') ||
184
193
  output.includes('syntax error near unexpected token') ||
@@ -195,13 +204,13 @@ const isNotACommand = (output) => {
195
204
  output.includes('wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren'));
196
205
  };
197
206
  const MAX_EXECUTION_TIME = 30_000;
198
- const runTerminalCommand = async (command, mode) => {
207
+ const runTerminalCommand = async (command, mode, projectPath) => {
199
208
  return new Promise((resolve) => {
200
209
  if (!persistentProcess) {
201
210
  throw new Error('Shell not initialized');
202
211
  }
203
212
  if (commandIsRunning) {
204
- (0, exports.resetShell)();
213
+ (0, exports.resetShell)(projectPath);
205
214
  }
206
215
  commandIsRunning = true;
207
216
  const resolveCommand = (value) => {
@@ -209,19 +218,19 @@ const runTerminalCommand = async (command, mode) => {
209
218
  resolve(value);
210
219
  };
211
220
  if (persistentProcess.type === 'pty') {
212
- runCommandPty(persistentProcess, command, mode, resolveCommand);
221
+ (0, exports.runCommandPty)(persistentProcess, command, mode, resolveCommand, projectPath);
213
222
  }
214
223
  else {
215
224
  // Fallback to child_process implementation
216
- runCommandChildProcess(persistentProcess, command, mode, resolveCommand);
225
+ runCommandChildProcess(persistentProcess, command, mode, resolveCommand, projectPath);
217
226
  }
218
227
  });
219
228
  };
220
229
  exports.runTerminalCommand = runTerminalCommand;
221
- const runCommandPty = (persistentProcess, command, mode, resolve) => {
222
- let projectRoot = (0, project_files_1.getProjectRoot)();
230
+ const runCommandPty = (persistentProcess, command, mode, resolve, projectPath) => {
223
231
  const ptyProcess = persistentProcess.pty;
224
232
  let commandOutput = '';
233
+ let pendingOutput = '';
225
234
  let foundFirstNewLine = false;
226
235
  if (mode === 'assistant') {
227
236
  console.log();
@@ -230,7 +239,7 @@ const runCommandPty = (persistentProcess, command, mode, resolve) => {
230
239
  const timer = setTimeout(() => {
231
240
  if (mode === 'assistant') {
232
241
  // Kill and recreate PTY
233
- (0, exports.resetShell)();
242
+ (0, exports.resetShell)(projectPath);
234
243
  resolve({
235
244
  result: formatResult(commandOutput, `Command timed out after ${MAX_EXECUTION_TIME / 1000} seconds and was terminated. Shell has been restarted.`),
236
245
  stdout: commandOutput,
@@ -244,7 +253,7 @@ const runCommandPty = (persistentProcess, command, mode, resolve) => {
244
253
  data.trimStart().startsWith(promptIdentifier)) {
245
254
  data = data.trimStart().slice(promptIdentifier.length);
246
255
  }
247
- const prefix = commandOutput + data;
256
+ const prefix = commandOutput + pendingOutput + data;
248
257
  // Skip the first line of the output, because it's the command being printed.
249
258
  if (!foundFirstNewLine) {
250
259
  if (!prefix.includes('\n')) {
@@ -264,32 +273,46 @@ const runCommandPty = (persistentProcess, command, mode, resolve) => {
264
273
  });
265
274
  return;
266
275
  }
267
- const promptDetected = prefix.includes(promptIdentifier);
268
- if (promptDetected) {
269
- clearTimeout(timer);
270
- dataDisposable.dispose();
271
- if (command.startsWith('cd ') && mode === 'user') {
272
- const newWorkingDirectory = command.split(' ')[1];
273
- projectRoot = (0, project_files_1.setProjectRoot)(path_1.default.join(projectRoot, newWorkingDirectory));
276
+ const dataLines = (pendingOutput + data).split('\r\n');
277
+ for (const [index, l] of dataLines.entries()) {
278
+ const isLast = index === dataLines.length - 1;
279
+ const line = isLast ? l : l + '\r\n';
280
+ if (line.includes(promptIdentifier)) {
281
+ // Last line is the prompt, command is done
282
+ clearTimeout(timer);
283
+ dataDisposable.dispose();
284
+ if (command.startsWith('cd ') && mode === 'user') {
285
+ const newWorkingDirectory = command.split(' ')[1];
286
+ projectPath = (0, project_files_1.setProjectRoot)(path_1.default.join(projectPath, newWorkingDirectory));
287
+ }
288
+ // Reset the PTY to the project root
289
+ ptyProcess.write(`cd ${projectPath}\r`);
290
+ resolve({
291
+ result: formatResult(commandOutput, 'Command completed'),
292
+ stdout: commandOutput,
293
+ });
294
+ return;
295
+ }
296
+ else if (isLast) {
297
+ // Doesn't end in newline character, wait for more data
298
+ pendingOutput = line;
299
+ }
300
+ else {
301
+ // Process the line
302
+ process.stdout.write(line);
303
+ commandOutput += line;
274
304
  }
275
- // Reset the PTY to the project root
276
- ptyProcess.write(`cd ${projectRoot}\r`);
277
- resolve({
278
- result: formatResult(commandOutput, 'Command completed'),
279
- stdout: commandOutput,
280
- });
281
- return;
282
305
  }
283
- process.stdout.write(data);
284
- commandOutput += data;
285
306
  });
286
307
  const isWindows = os.platform() === 'win32';
287
308
  // Write the command
288
- const commandWithCheck = isWindows ? command : `${command}; ec=$?; if [ $ec -eq 0 ]; then printf "Command completed. "; else printf "Command failed with exit code $ec. "; fi`;
309
+ const commandWithCheck = isWindows
310
+ ? command
311
+ : `${command}; ec=$?; if [ $ec -eq 0 ]; then printf "Command completed. "; else printf "Command failed with exit code $ec. "; fi`;
289
312
  ptyProcess.write(commandWithCheck + '\r');
290
313
  };
291
- const runCommandChildProcess = (persistentProcess, command, mode, resolve) => {
292
- let projectRoot = (0, project_files_1.getProjectRoot)();
314
+ exports.runCommandPty = runCommandPty;
315
+ const runCommandChildProcess = (persistentProcess, command, mode, resolve, projectPath) => {
293
316
  const isWindows = os.platform() === 'win32';
294
317
  let commandOutput = '';
295
318
  if (mode === 'assistant') {
@@ -297,7 +320,7 @@ const runCommandChildProcess = (persistentProcess, command, mode, resolve) => {
297
320
  console.log((0, picocolors_1.green)(`> ${command}`));
298
321
  }
299
322
  const childProcess = (0, child_process_1.spawn)(persistentProcess.shell, [isWindows ? '/c' : '-c', command], {
300
- cwd: projectRoot,
323
+ cwd: projectPath,
301
324
  env: {
302
325
  ...process.env,
303
326
  PAGER: 'cat',
@@ -311,7 +334,7 @@ const runCommandChildProcess = (persistentProcess, command, mode, resolve) => {
311
334
  childProcess,
312
335
  };
313
336
  const timer = setTimeout(() => {
314
- (0, exports.resetShell)();
337
+ (0, exports.resetShell)(projectPath);
315
338
  if (mode === 'assistant') {
316
339
  resolve({
317
340
  result: formatResult(commandOutput, `Command timed out after ${MAX_EXECUTION_TIME / 1000} seconds and was terminated.`),
@@ -344,7 +367,7 @@ const runCommandChildProcess = (persistentProcess, command, mode, resolve) => {
344
367
  clearTimeout(timer);
345
368
  if (command.startsWith('cd ') && mode === 'user') {
346
369
  const newWorkingDirectory = command.split(' ')[1];
347
- (0, project_files_1.setProjectRoot)(path_1.default.join(projectRoot, newWorkingDirectory));
370
+ projectPath = (0, project_files_1.setProjectRoot)(path_1.default.join(projectPath, newWorkingDirectory));
348
371
  }
349
372
  if (mode === 'assistant') {
350
373
  console.log((0, picocolors_1.green)(`Command completed`));
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/utils/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/utils/terminal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ToolName } from '../common/constants/tools';
2
+ /**
3
+ * Interface for handling tool call rendering
4
+ */
5
+ export interface ToolCallRenderer {
6
+ onToolStart?: (toolName: string, attributes: Record<string, string>) => string | null;
7
+ onParamStart?: (paramName: string, toolName: string) => string | null;
8
+ onParamChunk?: (content: string, paramName: string, toolName: string) => string | null;
9
+ onParamEnd?: (paramName: string, toolName: string, content: string) => string | null;
10
+ onToolEnd?: (toolName: string, params: Record<string, string>) => string | null;
11
+ }
12
+ /**
13
+ * Default renderer for tool calls that formats them nicely for the console
14
+ */
15
+ export declare const defaultToolCallRenderer: ToolCallRenderer;
16
+ export declare const toolRenderers: Record<ToolName, ToolCallRenderer>;
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toolRenderers = exports.defaultToolCallRenderer = void 0;
4
+ const picocolors_1 = require("picocolors");
5
+ const string_1 = require("../common/util/string");
6
+ /**
7
+ * Default renderer for tool calls that formats them nicely for the console
8
+ */
9
+ exports.defaultToolCallRenderer = {
10
+ onToolStart: (toolName) => {
11
+ return `[${(0, picocolors_1.bold)((0, string_1.snakeToTitleCase)(toolName))}]\n`;
12
+ },
13
+ onParamChunk: (content, paramName, toolName) => {
14
+ return content;
15
+ },
16
+ onParamEnd: () => null,
17
+ onToolEnd: () => null,
18
+ };
19
+ exports.toolRenderers = {
20
+ run_terminal_command: {
21
+ // Don't render anything
22
+ },
23
+ code_search: {
24
+ // Don't render anything
25
+ },
26
+ read_files: {
27
+ // Don't render anything
28
+ },
29
+ end_turn: {
30
+ // Don't render anything
31
+ },
32
+ think_deeply: {
33
+ ...exports.defaultToolCallRenderer,
34
+ },
35
+ create_plan: {
36
+ ...exports.defaultToolCallRenderer,
37
+ onParamStart: (paramName) => {
38
+ if (paramName === 'path') {
39
+ return 'Editing plan at ';
40
+ }
41
+ return null;
42
+ },
43
+ onParamChunk: (content, paramName) => {
44
+ if (paramName === 'path') {
45
+ return content;
46
+ }
47
+ return null;
48
+ },
49
+ onParamEnd: (paramName) => {
50
+ if (paramName === 'path') {
51
+ return '...\n';
52
+ }
53
+ return null;
54
+ },
55
+ },
56
+ write_file: {
57
+ ...exports.defaultToolCallRenderer,
58
+ onParamStart: (paramName) => {
59
+ if (paramName === 'path') {
60
+ return 'Editing file at ';
61
+ }
62
+ return null;
63
+ },
64
+ onParamChunk: (content, paramName, toolName) => {
65
+ if (paramName === 'path') {
66
+ return content;
67
+ }
68
+ return null;
69
+ },
70
+ onParamEnd: (paramName) => (paramName === 'path' ? '...' : null),
71
+ },
72
+ add_subgoal: {
73
+ ...exports.defaultToolCallRenderer,
74
+ onParamStart: (paramName, toolName) => {
75
+ if (paramName === 'id') {
76
+ return null;
77
+ }
78
+ return (0, string_1.capitalize)(paramName) + ': ';
79
+ },
80
+ onParamChunk: (content, paramName, toolName) => {
81
+ if (paramName === 'id') {
82
+ return null;
83
+ }
84
+ return content;
85
+ },
86
+ onParamEnd: (paramName) => (paramName === 'id' ? null : '\n'),
87
+ },
88
+ update_subgoal: {
89
+ ...exports.defaultToolCallRenderer,
90
+ onParamStart: (paramName, toolName) => {
91
+ if (paramName === 'id') {
92
+ return null;
93
+ }
94
+ return (0, string_1.capitalize)(paramName) + ': ';
95
+ },
96
+ onParamChunk: (content, paramName, toolName) => {
97
+ if (paramName === 'id') {
98
+ return null;
99
+ }
100
+ return content;
101
+ },
102
+ onParamEnd: (paramName) => (paramName === 'id' ? null : '\n'),
103
+ },
104
+ };
105
+ //# sourceMappingURL=tool-renderers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-renderers.js","sourceRoot":"","sources":["../../src/utils/tool-renderers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Saxy } from '../common/util/saxy';
2
+ import { ToolCallRenderer } from './tool-renderers';
3
+ /**
4
+ * Creates a transform stream that processes XML tool calls
5
+ * @param renderer Custom renderer for tool calls or a map of renderers per tool
6
+ * @param callback Optional callback function to receive processed chunks
7
+ * @returns Transform stream
8
+ */
9
+ export declare function createXMLStreamParser(renderer: Record<string, ToolCallRenderer>, callback?: (chunk: string) => void): Saxy;
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createXMLStreamParser = createXMLStreamParser;
4
+ const tools_1 = require("../common/constants/tools");
5
+ const saxy_1 = require("../common/util/saxy");
6
+ const tool_renderers_1 = require("./tool-renderers");
7
+ /**
8
+ * Creates a transform stream that processes XML tool calls
9
+ * @param renderer Custom renderer for tool calls or a map of renderers per tool
10
+ * @param callback Optional callback function to receive processed chunks
11
+ * @returns Transform stream
12
+ */
13
+ function createXMLStreamParser(renderer, callback) {
14
+ // Create parser with tool schema validation
15
+ const parser = new saxy_1.Saxy(tools_1.toolSchema);
16
+ // Current state
17
+ let currentTool = null;
18
+ let currentParam = null;
19
+ let params = {};
20
+ let paramContent = '';
21
+ // Helper to get the appropriate renderer for the current tool
22
+ const getRenderer = (toolName) => {
23
+ if (!renderer)
24
+ return tool_renderers_1.defaultToolCallRenderer;
25
+ // If renderer is a map of tool-specific renderers
26
+ if (typeof renderer === 'object' && !('onToolStart' in renderer)) {
27
+ return (renderer[toolName] ||
28
+ tool_renderers_1.defaultToolCallRenderer);
29
+ }
30
+ // If renderer is a single renderer
31
+ return renderer;
32
+ };
33
+ // Set up event handlers
34
+ parser.on('tagopen', (tag) => {
35
+ const { name } = tag;
36
+ // Check if this is a tool tag
37
+ if (tools_1.TOOL_LIST.includes(name)) {
38
+ currentTool = name;
39
+ params = {};
40
+ // Call renderer if available
41
+ const toolRenderer = getRenderer(name);
42
+ if (toolRenderer.onToolStart) {
43
+ const output = toolRenderer.onToolStart(name, saxy_1.Saxy.parseAttrs(tag.attrs));
44
+ if (output !== null) {
45
+ parser.push(output);
46
+ if (callback)
47
+ callback(output);
48
+ }
49
+ }
50
+ }
51
+ // Check if this is a parameter tag inside a tool
52
+ else if (currentTool && !currentParam) {
53
+ currentParam = name;
54
+ paramContent = '';
55
+ // Call renderer if available
56
+ const toolRenderer = getRenderer(currentTool);
57
+ if (toolRenderer.onParamStart) {
58
+ const output = toolRenderer.onParamStart(name, currentTool);
59
+ if (output !== null) {
60
+ parser.push(output);
61
+ if (callback)
62
+ callback(output);
63
+ }
64
+ }
65
+ }
66
+ });
67
+ parser.on('text', (data) => {
68
+ if (currentTool && currentParam) {
69
+ paramContent += data.contents;
70
+ // Call renderer if available
71
+ const toolRenderer = getRenderer(currentTool);
72
+ if (toolRenderer.onParamChunk) {
73
+ const output = toolRenderer.onParamChunk(data.contents, currentParam, currentTool);
74
+ if (output !== null) {
75
+ parser.push(output);
76
+ if (callback)
77
+ callback(output);
78
+ }
79
+ }
80
+ }
81
+ else {
82
+ // Text outside of tool tags
83
+ parser.push(data.contents);
84
+ if (callback)
85
+ callback(data.contents);
86
+ }
87
+ });
88
+ parser.on('tagclose', (tag) => {
89
+ const { name } = tag;
90
+ // Check if this is a parameter tag closing
91
+ if (currentTool && currentParam && name === currentParam) {
92
+ // Store parameter content
93
+ params[currentParam] = paramContent;
94
+ // Call renderer if available
95
+ const toolRenderer = getRenderer(currentTool);
96
+ if (toolRenderer.onParamEnd) {
97
+ const output = toolRenderer.onParamEnd(currentParam, currentTool, paramContent);
98
+ if (output !== null) {
99
+ parser.push(output);
100
+ if (callback)
101
+ callback(output);
102
+ }
103
+ }
104
+ currentParam = null;
105
+ paramContent = '';
106
+ }
107
+ // Check if this is a tool tag closing
108
+ else if (currentTool && name === currentTool) {
109
+ // Call renderer if available
110
+ const toolRenderer = getRenderer(currentTool);
111
+ if (toolRenderer.onToolEnd) {
112
+ const output = toolRenderer.onToolEnd(currentTool, params);
113
+ if (output !== null) {
114
+ parser.push(output);
115
+ if (callback)
116
+ callback(output);
117
+ }
118
+ }
119
+ currentTool = null;
120
+ params = {};
121
+ }
122
+ });
123
+ parser.on('end', () => {
124
+ parser.end();
125
+ });
126
+ return parser;
127
+ }
128
+ //# sourceMappingURL=xml-stream-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml-stream-parser.js","sourceRoot":"","sources":["../../src/utils/xml-stream-parser.ts"],"names":[],"mappings":";;AAUA,sDA2IC;AArJD,kDAAwE;AACxE,2CAAuC;AACvC,qDAA4E;AAE5E;;;;;GAKG;AACH,SAAgB,qBAAqB,CACnC,QAA0C,EAC1C,QAAkC;IAElC,4CAA4C;IAC5C,MAAM,MAAM,GAAG,IAAI,WAAI,CAAC,kBAAU,CAAC,CAAA;IAEnC,gBAAgB;IAChB,IAAI,WAAW,GAAkB,IAAI,CAAA;IACrC,IAAI,YAAY,GAAkB,IAAI,CAAA;IACtC,IAAI,MAAM,GAA2B,EAAE,CAAA;IACvC,IAAI,YAAY,GAAG,EAAE,CAAA;IAErB,8DAA8D;IAC9D,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAoB,EAAE;QACzD,IAAI,CAAC,QAAQ;YAAE,OAAO,wCAAuB,CAAA;QAE7C,kDAAkD;QAClD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,aAAa,IAAI,QAAQ,CAAC,EAAE,CAAC;YACjE,OAAO,CACJ,QAA6C,CAAC,QAAQ,CAAC;gBACxD,wCAAuB,CACxB,CAAA;QACH,CAAC;QAED,mCAAmC;QACnC,OAAO,QAA4B,CAAA;IACrC,CAAC,CAAA;IAED,wBAAwB;IACxB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;QAC3B,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;QAEpB,8BAA8B;QAC9B,IAAI,iBAAS,CAAC,QAAQ,CAAC,IAAgB,CAAC,EAAE,CAAC;YACzC,WAAW,GAAG,IAAI,CAAA;YAClB,MAAM,GAAG,EAAE,CAAA;YAEX,6BAA6B;YAC7B,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;YACtC,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CACrC,IAAI,EACJ,WAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAA2B,CACrD,CAAA;gBACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QACD,iDAAiD;aAC5C,IAAI,WAAW,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,YAAY,GAAG,IAAI,CAAA;YACnB,YAAY,GAAG,EAAE,CAAA;YAEjB,6BAA6B;YAC7B,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;gBAC3D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,WAAW,IAAI,YAAY,EAAE,CAAC;YAChC,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAA;YAE7B,6BAA6B;YAC7B,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,CACtC,IAAI,CAAC,QAAQ,EACb,YAAY,EACZ,WAAW,CACZ,CAAA;gBACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,4BAA4B;YAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC1B,IAAI,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACvC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;QAEpB,2CAA2C;QAC3C,IAAI,WAAW,IAAI,YAAY,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YACzD,0BAA0B;YAC1B,MAAM,CAAC,YAAY,CAAC,GAAG,YAAY,CAAA;YAEnC,6BAA6B;YAC7B,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CACpC,YAAY,EACZ,WAAW,EACX,YAAY,CACb,CAAA;gBACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;YAED,YAAY,GAAG,IAAI,CAAA;YACnB,YAAY,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,sCAAsC;aACjC,IAAI,WAAW,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7C,6BAA6B;YAC7B,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;gBAC1D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,QAAQ;wBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;YAED,WAAW,GAAG,IAAI,CAAA;YAClB,MAAM,GAAG,EAAE,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QACpB,MAAM,CAAC,GAAG,EAAE,CAAA;IACd,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -6,7 +6,7 @@ if (worker_threads_1.parentPort) {
6
6
  const parentPort = worker_threads_1.parentPort;
7
7
  parentPort.on('message', async ({ dir }) => {
8
8
  (0, project_files_1.setProjectRoot)(dir);
9
- const initFileContext = await (0, project_files_1.getProjectFileContext)(dir, {}, []);
9
+ const initFileContext = await (0, project_files_1.getProjectFileContext)(dir, {});
10
10
  parentPort.postMessage(initFileContext);
11
11
  });
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker-script-project-context.js","sourceRoot":"","sources":["../src/worker-script-project-context.ts"],"names":[],"mappings":";;AAAA,mDAA8D;AAC9D,mDAAuE;AAEvE,IAAI,2BAAe,EAAE,CAAC;IACpB,MAAM,UAAU,GAAG,2BAAe,CAAA;IAElC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QACzC,IAAA,8BAAc,EAAC,GAAG,CAAC,CAAA;QACnB,MAAM,eAAe,GAAG,MAAM,IAAA,qCAAqB,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QAChE,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"worker-script-project-context.js","sourceRoot":"","sources":["../src/worker-script-project-context.ts"],"names":[],"mappings":";;AAAA,mDAA8D;AAC9D,mDAAuE;AAEvE,IAAI,2BAAe,EAAE,CAAC;IACpB,MAAM,UAAU,GAAG,2BAAe,CAAA;IAElC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QACzC,IAAA,8BAAc,EAAC,GAAG,CAAC,CAAA;QACnB,MAAM,eAAe,GAAG,MAAM,IAAA,qCAAqB,EAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAC5D,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codebuff",
3
- "version": "1.0.169",
3
+ "version": "1.0.170",
4
4
  "description": "AI dev assistant",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -44,6 +44,7 @@
44
44
  "diff": "5.2.0",
45
45
  "env-cmd": "^10.1.0",
46
46
  "ignore": "5.3.2",
47
+ "isomorphic-git": "^1.29.0",
47
48
  "lodash": "*",
48
49
  "nanoid": "5.0.7",
49
50
  "picocolors": "1.1.0",
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const browser_runner_1 = require("../browser-runner");
4
- // Add your tests here
5
- describe('BrowserRunner', () => {
6
- let runner;
7
- beforeEach(() => {
8
- runner = new browser_runner_1.BrowserRunner();
9
- });
10
- afterEach(async () => {
11
- await runner.shutdown();
12
- });
13
- // Add test cases...
14
- });
15
- //# sourceMappingURL=browser-runner.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-runner.test.js","sourceRoot":"","sources":["../../src/__tests__/browser-runner.test.ts"],"names":[],"mappings":";;AAAA,sDAAiD;AAGjD,sBAAsB;AACtB,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAI,MAAqB,CAAA;IAEzB,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,GAAG,IAAI,8BAAa,EAAE,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,oBAAoB;AACtB,CAAC,CAAC,CAAA"}