@trishchuk/codex-mcp-tool 1.0.5 → 1.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 (94) hide show
  1. package/README.md +10 -11
  2. package/dist/constants.d.ts +55 -2
  3. package/dist/constants.d.ts.map +1 -1
  4. package/dist/constants.js +74 -31
  5. package/dist/constants.js.map +1 -1
  6. package/dist/index.js +28 -26
  7. package/dist/index.js.map +1 -1
  8. package/dist/tools/apply-diff.tool.d.ts +3 -0
  9. package/dist/tools/apply-diff.tool.d.ts.map +1 -0
  10. package/dist/tools/apply-diff.tool.js +52 -0
  11. package/dist/tools/apply-diff.tool.js.map +1 -0
  12. package/dist/tools/ask-codex.tool.d.ts.map +1 -1
  13. package/dist/tools/ask-codex.tool.js +158 -33
  14. package/dist/tools/ask-codex.tool.js.map +1 -1
  15. package/dist/tools/batch-codex.tool.d.ts +3 -0
  16. package/dist/tools/batch-codex.tool.d.ts.map +1 -0
  17. package/dist/tools/batch-codex.tool.js +134 -0
  18. package/dist/tools/batch-codex.tool.js.map +1 -0
  19. package/dist/tools/brainstorm.tool.d.ts.map +1 -1
  20. package/dist/tools/brainstorm.tool.js +62 -29
  21. package/dist/tools/brainstorm.tool.js.map +1 -1
  22. package/dist/tools/exec-codex.tool.d.ts +3 -0
  23. package/dist/tools/exec-codex.tool.d.ts.map +1 -0
  24. package/dist/tools/exec-codex.tool.js +46 -0
  25. package/dist/tools/exec-codex.tool.js.map +1 -0
  26. package/dist/tools/fetch-chunk.tool.d.ts.map +1 -1
  27. package/dist/tools/fetch-chunk.tool.js +12 -8
  28. package/dist/tools/fetch-chunk.tool.js.map +1 -1
  29. package/dist/tools/index.d.ts.map +1 -1
  30. package/dist/tools/index.js +6 -2
  31. package/dist/tools/index.js.map +1 -1
  32. package/dist/tools/registry.d.ts +3 -3
  33. package/dist/tools/registry.d.ts.map +1 -1
  34. package/dist/tools/registry.js +9 -5
  35. package/dist/tools/registry.js.map +1 -1
  36. package/dist/tools/review-codex.tool.d.ts +3 -0
  37. package/dist/tools/review-codex.tool.d.ts.map +1 -0
  38. package/dist/tools/review-codex.tool.js +91 -0
  39. package/dist/tools/review-codex.tool.js.map +1 -0
  40. package/dist/tools/simple-tools.d.ts +1 -0
  41. package/dist/tools/simple-tools.d.ts.map +1 -1
  42. package/dist/tools/simple-tools.js +42 -11
  43. package/dist/tools/simple-tools.js.map +1 -1
  44. package/dist/tools/test-tool.example.d.ts.map +1 -1
  45. package/dist/tools/test-tool.example.js +12 -10
  46. package/dist/tools/test-tool.example.js.map +1 -1
  47. package/dist/tools/timeout-test.tool.js +5 -5
  48. package/dist/tools/timeout-test.tool.js.map +1 -1
  49. package/dist/utils/changeModeChunker.d.ts.map +1 -1
  50. package/dist/utils/changeModeChunker.js +10 -6
  51. package/dist/utils/changeModeChunker.js.map +1 -1
  52. package/dist/utils/changeModeParser.d.ts.map +1 -1
  53. package/dist/utils/changeModeParser.js.map +1 -1
  54. package/dist/utils/changeModeRunner.d.ts.map +1 -1
  55. package/dist/utils/changeModeRunner.js +17 -11
  56. package/dist/utils/changeModeRunner.js.map +1 -1
  57. package/dist/utils/changeModeTranslator.d.ts.map +1 -1
  58. package/dist/utils/changeModeTranslator.js +5 -2
  59. package/dist/utils/changeModeTranslator.js.map +1 -1
  60. package/dist/utils/chunkCache.d.ts.map +1 -1
  61. package/dist/utils/chunkCache.js +6 -4
  62. package/dist/utils/chunkCache.js.map +1 -1
  63. package/dist/utils/codexExecutor.d.ts +17 -0
  64. package/dist/utils/codexExecutor.d.ts.map +1 -1
  65. package/dist/utils/codexExecutor.js +163 -4
  66. package/dist/utils/codexExecutor.js.map +1 -1
  67. package/dist/utils/commandExecutor.d.ts.map +1 -1
  68. package/dist/utils/commandExecutor.js +25 -17
  69. package/dist/utils/commandExecutor.js.map +1 -1
  70. package/dist/utils/fibonacci.d.ts +2 -0
  71. package/dist/utils/fibonacci.d.ts.map +1 -0
  72. package/dist/utils/fibonacci.js +17 -0
  73. package/dist/utils/fibonacci.js.map +1 -0
  74. package/dist/utils/gitHelper.d.ts +20 -0
  75. package/dist/utils/gitHelper.d.ts.map +1 -0
  76. package/dist/utils/gitHelper.js +66 -0
  77. package/dist/utils/gitHelper.js.map +1 -0
  78. package/dist/utils/logger.d.ts +2 -1
  79. package/dist/utils/logger.d.ts.map +1 -1
  80. package/dist/utils/logger.js +21 -15
  81. package/dist/utils/logger.js.map +1 -1
  82. package/dist/utils/outputParser.d.ts +26 -0
  83. package/dist/utils/outputParser.d.ts.map +1 -0
  84. package/dist/utils/outputParser.js +174 -0
  85. package/dist/utils/outputParser.js.map +1 -0
  86. package/dist/utils/reviewParser.d.ts +28 -0
  87. package/dist/utils/reviewParser.d.ts.map +1 -0
  88. package/dist/utils/reviewParser.js +87 -0
  89. package/dist/utils/reviewParser.js.map +1 -0
  90. package/dist/utils/workingDirResolver.d.ts +47 -0
  91. package/dist/utils/workingDirResolver.d.ts.map +1 -0
  92. package/dist/utils/workingDirResolver.js +199 -0
  93. package/dist/utils/workingDirResolver.js.map +1 -0
  94. package/package.json +6 -3
@@ -1,5 +1,5 @@
1
1
  import { Logger } from './logger.js';
2
- import { parseChangeModeOutput, validateChangeModeEdits } from './changeModeParser.js';
2
+ import { parseChangeModeOutput, validateChangeModeEdits, } from './changeModeParser.js';
3
3
  import { formatChangeModeResponse, summarizeChangeModeEdits } from './changeModeTranslator.js';
4
4
  import { chunkChangeModeEdits } from './changeModeChunker.js';
5
5
  import { cacheChunks, getChunks } from './chunkCache.js';
@@ -14,8 +14,8 @@ export async function processChangeModeOutput(rawResult, options = {}) {
14
14
  return `Invalid chunk index: ${chunkIndex}. Must be a positive integer starting from 1.`;
15
15
  }
16
16
  if (chunkIndex > 1 && !chunkCacheKey) {
17
- return `Chunk index ${chunkIndex} requested but no cache key provided. ` +
18
- `Please use the cache key from the initial response or start with chunk 1.`;
17
+ return (`Chunk index ${chunkIndex} requested but no cache key provided. ` +
18
+ `Please use the cache key from the initial response or start with chunk 1.`);
19
19
  }
20
20
  }
21
21
  // Check for cached chunks first
@@ -30,7 +30,11 @@ export async function processChangeModeOutput(rawResult, options = {}) {
30
30
  }
31
31
  Logger.debug(`Using cached chunk ${chunkIndex} of ${cachedChunks.length}`);
32
32
  const chunk = cachedChunks[chunkIndex - 1];
33
- let result = formatChangeModeResponse(chunk.edits, { current: chunkIndex, total: cachedChunks.length, cacheKey: chunkCacheKey });
33
+ let result = formatChangeModeResponse(chunk.edits, {
34
+ current: chunkIndex,
35
+ total: cachedChunks.length,
36
+ cacheKey: chunkCacheKey,
37
+ });
34
38
  // Add summary for first chunk only
35
39
  if (chunkIndex === 1 && chunk.edits.length > 5) {
36
40
  const allEdits = cachedChunks.flatMap((c) => c.edits);
@@ -52,8 +56,8 @@ export async function processChangeModeOutput(rawResult, options = {}) {
52
56
  catch (error) {
53
57
  Logger.error('Failed to parse change mode output:', error);
54
58
  const snippet = normalizedResult.substring(0, 500);
55
- return `Failed to parse change mode output: ${error instanceof Error ? error.message : 'Unknown error'}\n\n` +
56
- `First 500 chars of output:\n${snippet}...`;
59
+ return (`Failed to parse change mode output: ${error instanceof Error ? error.message : 'Unknown error'}\n\n` +
60
+ `First 500 chars of output:\n${snippet}...`);
57
61
  }
58
62
  if (edits.length === 0) {
59
63
  // Log first part of raw result for debugging (without exposing full content)
@@ -81,8 +85,8 @@ export async function processChangeModeOutput(rawResult, options = {}) {
81
85
  validation = validateChangeModeEdits(edits);
82
86
  }
83
87
  if (!validation.valid) {
84
- return `Edit validation failed after auto-repair attempt:\n${validation.errors.join('\n')}\n\n` +
85
- `To debug, request the raw output or check the change mode format.`;
88
+ return (`Edit validation failed after auto-repair attempt:\n${validation.errors.join('\n')}\n\n` +
89
+ `To debug, request the raw output or check the change mode format.`);
86
90
  }
87
91
  let chunks;
88
92
  try {
@@ -91,13 +95,15 @@ export async function processChangeModeOutput(rawResult, options = {}) {
91
95
  catch (error) {
92
96
  Logger.error('Failed to chunk edits:', error);
93
97
  // Fall back to single chunk
94
- chunks = [{
98
+ chunks = [
99
+ {
95
100
  edits,
96
101
  chunkIndex: 1,
97
102
  totalChunks: 1,
98
103
  hasMore: false,
99
- estimatedChars: JSON.stringify(edits).length
100
- }];
104
+ estimatedChars: JSON.stringify(edits).length,
105
+ },
106
+ ];
101
107
  }
102
108
  // Cache if multiple chunks and we have the original prompt
103
109
  let cacheKey;
@@ -1 +1 @@
1
- {"version":3,"file":"changeModeRunner.js","sourceRoot":"","sources":["../../src/utils/changeModeRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAkB,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAa,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AASzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAiB,EACjB,UAAoC,EAAE;IAEtC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEnF,uBAAuB;IACvB,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACpD,OAAO,wBAAwB,UAAU,+CAA+C,CAAC;QAC3F,CAAC;QAED,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACrC,OAAO,eAAe,UAAU,wCAAwC;gBACjE,2EAA2E,CAAC;QACrF,CAAC;IACH,CAAC;IACD,gCAAgC;IAChC,IAAI,UAAU,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;YAC9C,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/C,OAAO,cAAc,aAAa,yDAAyD,CAAC;YAC9F,CAAC;YAED,IAAI,UAAU,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;gBACrC,OAAO,eAAe,UAAU,sCAAsC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC9F,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,UAAU,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3E,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YAC3C,IAAI,MAAM,GAAG,wBAAwB,CACnC,KAAK,CAAC,KAAK,EACX,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,CAC7E,CAAC;YAEF,mCAAmC;YACnC,IAAI,UAAU,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACjE,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;YAChE,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YACvD,OAAO,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC;QACzG,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAE/E,IAAI,KAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,KAAK,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnD,OAAO,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,MAAM;YACrG,+BAA+B,OAAO,KAAK,CAAC;IACrD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,6EAA6E;QAC7E,MAAM,CAAC,KAAK,CAAC,oCAAoC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACvF,OAAO,uEAAuE,gBAAgB,EAAE,CAAC;IACnG,CAAC;IAED,kCAAkC;IAClC,IAAI,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAE5D,2BAA2B;QAC3B,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACvB,+CAA+C;YAC/C,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBACjD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC;YACrD,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;gBACjD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,sDAAsD,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;YACxF,mEAAmE,CAAC;IAC7E,CAAC;IAED,IAAI,MAAmB,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC9C,4BAA4B;QAC5B,MAAM,GAAG,CAAC;gBACR,KAAK;gBACL,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,CAAC;gBACd,OAAO,EAAE,KAAK;gBACd,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM;aAC7C,CAAC,CAAC;IACL,CAAC;IAED,2DAA2D;IAC3D,IAAI,QAA4B,CAAC;IACjC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,MAAM,qBAAqB,QAAQ,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAC9C,2BAA2B;QAC7B,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,MAAM,cAAc,GAAG,UAAU,IAAI,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;IAEjD,sBAAsB;IACtB,IAAI,MAAM,GAAG,wBAAwB,CACnC,WAAW,CAAC,KAAK,EACjB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAC9F,CAAC;IAEF,gDAAgD;IAChD,IAAI,gBAAgB,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,GAAG,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,KAAK,CAAC,MAAM,WAAW,MAAM,CAAC,MAAM,4BAA4B,gBAAgB,EAAE,CAAC,CAAC;IACvH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"changeModeRunner.js","sourceRoot":"","sources":["../../src/utils/changeModeRunner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"changeModeTranslator.d.ts","sourceRoot":"","sources":["../../src/utils/changeModeTranslator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,cAAc,EAAE,EACvB,SAAS,CAAC,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAChE,MAAM,CAgDR;AAGD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAiBjG"}
1
+ {"version":3,"file":"changeModeTranslator.d.ts","sourceRoot":"","sources":["../../src/utils/changeModeTranslator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,cAAc,EAAE,EACvB,SAAS,CAAC,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAChE,MAAM,CAmDR;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAkBjG"}
@@ -12,7 +12,8 @@ before fetching the next chunk.`
12
12
  I have prepared ${edits.length} modification${edits.length === 1 ? '' : 's'} for your codebase.
13
13
 
14
14
  IMPORTANT: Apply these edits directly WITHOUT reading the files first. The edits below contain exact text matches from the current file contents.`;
15
- const instructions = edits.map((edit, index) => {
15
+ const instructions = edits
16
+ .map((edit, index) => {
16
17
  return `### Edit ${index + 1}: ${edit.filename}
17
18
 
18
19
  Replace this exact text:
@@ -25,7 +26,8 @@ With this text:
25
26
  ${edit.newCode}
26
27
  \`\`\`
27
28
  `;
28
- }).join('\n');
29
+ })
30
+ .join('\n');
29
31
  let footer = `
30
32
  ---
31
33
  Apply these edits in order. Each edit uses exact string matching, so the old_str must match exactly what appears between the code blocks.`;
@@ -46,6 +48,7 @@ There ${chunkInfo.total - chunkInfo.current === 1 ? 'is' : 'are'} ${chunkInfo.to
46
48
  return header + instructions + footer;
47
49
  }
48
50
  export function summarizeChangeModeEdits(edits, isPartialView) {
51
+ // for user
49
52
  const fileGroups = new Map();
50
53
  // Count edits per file
51
54
  for (const edit of edits) {
@@ -1 +1 @@
1
- {"version":3,"file":"changeModeTranslator.js","sourceRoot":"","sources":["../../src/utils/changeModeTranslator.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,wBAAwB,CACtC,KAAuB,EACvB,SAAiE;IAEjE,MAAM,MAAM,GAAG,SAAS,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC;QAC7C,CAAC,CAAC,8BAA8B,SAAS,CAAC,OAAO,OAAO,SAAS,CAAC,KAAK;;0DAEjB,SAAS,CAAC,KAAK;sBACnD,KAAK,CAAC,MAAM,iBAAiB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;;gCAGhD;QAC5B,CAAC,CAAC;;kBAEY,KAAK,CAAC,MAAM,gBAAgB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;kJAEuE,CAAC;IAEjJ,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC7C,OAAO,YAAY,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,QAAQ;;;;EAIhD,IAAI,CAAC,OAAO;;;;;EAKZ,IAAI,CAAC,OAAO;;CAEb,CAAC;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,IAAI,MAAM,GAAG;;0IAE2H,CAAC;IACzI,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,IAAI;;;0EAG4D,SAAS,CAAC,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,KAAK;;;wBAG7F,SAAS,CAAC,QAAQ,gBAAgB,SAAS,CAAC,OAAO,GAAG,CAAC;;;QAGvE,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,cAAc,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;mKAEN,CAAC;IAClK,CAAC;IACD,OAAO,MAAM,GAAG,YAAY,GAAG,MAAM,CAAC;AACxC,CAAC;AAGD,MAAM,UAAU,wBAAwB,CAAC,KAAuB,EAAE,aAAuB;IACvF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,uBAAuB;IACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SAC3E,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,KAAK,GAAG,aAAa;QACzB,CAAC,CAAC,2DAA2D;QAC7D,CAAC,CAAC,qBAAqB,CAAC;IAC1B,OAAO,GAAG,KAAK;eACF,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;kBACvD,UAAU,CAAC,IAAI;;EAE/B,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"changeModeTranslator.js","sourceRoot":"","sources":["../../src/utils/changeModeTranslator.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,wBAAwB,CACtC,KAAuB,EACvB,SAAiE;IAEjE,MAAM,MAAM,GACV,SAAS,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC;QAC9B,CAAC,CAAC,8BAA8B,SAAS,CAAC,OAAO,OAAO,SAAS,CAAC,KAAK;;0DAEnB,SAAS,CAAC,KAAK;sBACnD,KAAK,CAAC,MAAM,iBAAiB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;;gCAGhD;QAC1B,CAAC,CAAC;;kBAEU,KAAK,CAAC,MAAM,gBAAgB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;kJAEuE,CAAC;IAEjJ,MAAM,YAAY,GAAG,KAAK;SACvB,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACnB,OAAO,YAAY,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,QAAQ;;;;EAIlD,IAAI,CAAC,OAAO;;;;;EAKZ,IAAI,CAAC,OAAO;;CAEb,CAAC;IACE,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,IAAI,MAAM,GAAG;;0IAE2H,CAAC;IACzI,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,IAAI;;;0EAG4D,SAAS,CAAC,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,KAAK;;;wBAG7F,SAAS,CAAC,QAAQ,gBAAgB,SAAS,CAAC,OAAO,GAAG,CAAC;;;QAGvE,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,cAAc,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;;mKAEN,CAAC;IAClK,CAAC;IACD,OAAO,MAAM,GAAG,YAAY,GAAG,MAAM,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAuB,EAAE,aAAuB;IACvF,WAAW;IACX,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,uBAAuB;IACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SAC3E,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,KAAK,GAAG,aAAa;QACzB,CAAC,CAAC,2DAA2D;QAC7D,CAAC,CAAC,qBAAqB,CAAC;IAC1B,OAAO,GAAG,KAAK;eACF,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;kBACvD,UAAU,CAAC,IAAI;;EAE/B,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"chunkCache.d.ts","sourceRoot":"","sources":["../../src/utils/chunkCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAsBnD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAwBvE;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,IAAI,CA0B9D;AA+DD,wBAAgB,aAAa,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAehG;AAED,wBAAgB,UAAU,IAAI,IAAI,CAejC"}
1
+ {"version":3,"file":"chunkCache.d.ts","sourceRoot":"","sources":["../../src/utils/chunkCache.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAsBnD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAwBvE;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,IAAI,CA0B9D;AA+DD,wBAAgB,aAAa,IAAI;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAeA;AAED,wBAAgB,UAAU,IAAI,IAAI,CAgBjC"}
@@ -28,7 +28,7 @@ export function cacheChunks(prompt, chunks) {
28
28
  const cacheData = {
29
29
  chunks,
30
30
  timestamp: Date.now(),
31
- promptHash
31
+ promptHash,
32
32
  };
33
33
  try {
34
34
  fs.writeFileSync(filePath, JSON.stringify(cacheData));
@@ -104,12 +104,13 @@ function cleanExpiredFiles() {
104
104
  // maximum file count limit (FIFO) --> LRU?
105
105
  function enforceFileLimits() {
106
106
  try {
107
- const files = fs.readdirSync(CACHE_DIR)
107
+ const files = fs
108
+ .readdirSync(CACHE_DIR)
108
109
  .filter(f => f.endsWith('.json'))
109
110
  .map(f => ({
110
111
  name: f,
111
112
  path: path.join(CACHE_DIR, f),
112
- mtime: fs.statSync(path.join(CACHE_DIR, f)).mtimeMs
113
+ mtime: fs.statSync(path.join(CACHE_DIR, f)).mtimeMs,
113
114
  }))
114
115
  .sort((a, b) => a.mtime - b.mtime); // Oldest first
115
116
  // Remove oldest files if over limit
@@ -140,10 +141,11 @@ export function getCacheStats() {
140
141
  size,
141
142
  ttl: CACHE_TTL,
142
143
  maxSize: MAX_CACHE_FILES,
143
- cacheDir: CACHE_DIR
144
+ cacheDir: CACHE_DIR,
144
145
  };
145
146
  }
146
147
  export function clearCache() {
148
+ // !
147
149
  try {
148
150
  ensureCacheDir();
149
151
  const files = fs.readdirSync(CACHE_DIR);
@@ -1 +1 @@
1
- {"version":3,"file":"chunkCache.js","sourceRoot":"","sources":["../../src/utils/chunkCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunkCache.js","sourceRoot":"","sources":["../../src/utils/chunkCache.ts"],"names":[],"mappings":"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"}
@@ -15,15 +15,32 @@ export interface CodexExecOptions {
15
15
  readonly fullAuto?: boolean;
16
16
  readonly approvalPolicy?: ApprovalPolicy;
17
17
  readonly sandboxMode?: SandboxMode;
18
+ readonly approval?: string;
18
19
  readonly yolo?: boolean;
19
20
  readonly cd?: string;
21
+ readonly workingDir?: string;
20
22
  readonly timeoutMs?: number;
23
+ readonly timeout?: number;
21
24
  readonly maxOutputBytes?: number;
22
25
  readonly retry?: RetryOptions;
23
26
  readonly useStdinForLongPrompts?: boolean;
27
+ readonly image?: string | string[];
28
+ readonly config?: string | Record<string, any>;
29
+ readonly profile?: string;
30
+ readonly useExec?: boolean;
31
+ readonly search?: boolean;
32
+ readonly oss?: boolean;
33
+ readonly enableFeatures?: string[];
34
+ readonly disableFeatures?: string[];
24
35
  }
25
36
  /**
26
37
  * Execute Codex CLI with enhanced error handling and memory efficiency
27
38
  */
28
39
  export declare function executeCodexCLI(prompt: string, options?: CodexExecOptions, onProgress?: (newOutput: string) => void): Promise<string>;
40
+ /**
41
+ * High-level executeCodex function with comprehensive options support
42
+ */
43
+ export declare function executeCodex(prompt: string, options?: CodexExecOptions & {
44
+ [key: string]: any;
45
+ }, onProgress?: (newOutput: string) => void): Promise<string>;
29
46
  //# sourceMappingURL=codexExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codexExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/codexExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAS5F,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,SAAS,eAAe;IACxB,SAAS,cAAc;CACxB;AAED,oBAAY,WAAW;IACrB,QAAQ,cAAc;IACtB,cAAc,oBAAoB;IAClC,gBAAgB,uBAAuB;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,gBAAgB,EAC1B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GACvC,OAAO,CAAC,MAAM,CAAC,CAkGjB"}
1
+ {"version":3,"file":"codexExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/codexExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAU5F,oBAAY,cAAc;IACxB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,SAAS,eAAe;IACxB,SAAS,cAAc;CACxB;AAED,oBAAY,WAAW;IACrB,QAAQ,cAAc;IACtB,cAAc,oBAAoB;IAClC,gBAAgB,uBAAuB;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CACrC;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,gBAAgB,EAC1B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GACvC,OAAO,CAAC,MAAM,CAAC,CAqIjB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,gBAAgB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACnD,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GACvC,OAAO,CAAC,MAAM,CAAC,CAgJjB"}
@@ -5,6 +5,7 @@ import { writeFileSync, unlinkSync } from 'fs';
5
5
  import { tmpdir } from 'os';
6
6
  import { join } from 'path';
7
7
  import { randomBytes } from 'crypto';
8
+ import { resolveWorkingDirectory } from './workingDirResolver.js';
8
9
  // Type-safe enums
9
10
  export var ApprovalPolicy;
10
11
  (function (ApprovalPolicy) {
@@ -42,19 +43,51 @@ export async function executeCodexCLI(prompt, options, onProgress) {
42
43
  if (options?.approvalPolicy) {
43
44
  args.push(CLI.FLAGS.ASK_FOR_APPROVAL, options.approvalPolicy);
44
45
  }
46
+ // Note: --search requires network access, so if search is enabled and no explicit sandbox mode
47
+ // is set, we need to ensure network is not blocked
45
48
  if (options?.sandboxMode) {
46
49
  args.push(CLI.FLAGS.SANDBOX_MODE, options.sandboxMode);
47
50
  }
51
+ else if (options?.search || options?.oss) {
52
+ // Auto-enable workspace-write for search/oss if no sandbox specified
53
+ Logger.debug('Search/OSS enabled: auto-setting sandbox to workspace-write for network access');
54
+ args.push(CLI.FLAGS.SANDBOX_MODE, 'workspace-write');
55
+ }
48
56
  }
49
57
  if (options?.model) {
50
58
  args.push(CLI.FLAGS.MODEL, options.model);
51
59
  }
52
- if (options?.cd) {
53
- args.push(CLI.FLAGS.CD, options.cd);
60
+ // Resolve working directory using intelligent fallback chain
61
+ const resolvedWorkingDir = resolveWorkingDirectory({
62
+ workingDir: options?.cd,
63
+ prompt: prompt,
64
+ });
65
+ if (resolvedWorkingDir) {
66
+ args.push(CLI.FLAGS.CD, resolvedWorkingDir);
67
+ Logger.debug(`Resolved working directory: ${resolvedWorkingDir}`);
68
+ }
69
+ // OSS (Ollama) mode
70
+ if (options?.oss) {
71
+ args.push(CLI.FLAGS.OSS);
72
+ }
73
+ // Enable features (including web search)
74
+ const enableFeatures = [...(options?.enableFeatures || [])];
75
+ // Add web_search_request feature if search is requested
76
+ if (options?.search && !enableFeatures.includes('web_search_request')) {
77
+ enableFeatures.push('web_search_request');
78
+ }
79
+ // Add all features to args
80
+ for (const feature of enableFeatures) {
81
+ args.push(CLI.FLAGS.ENABLE, feature);
82
+ }
83
+ // Disable features
84
+ if (options?.disableFeatures && Array.isArray(options.disableFeatures)) {
85
+ for (const feature of options.disableFeatures) {
86
+ args.push(CLI.FLAGS.DISABLE, feature);
87
+ }
54
88
  }
55
89
  // Non-interactive run
56
90
  args.push('exec');
57
- args.push(CLI.FLAGS.SKIP_GIT_REPO_CHECK);
58
91
  // Add conciseness instruction
59
92
  const concisePrompt = `Please provide a focused, concise response without unnecessary elaboration. ${prompt}`;
60
93
  // Check if prompt is too long for command line (OS dependent, ~100KB is safe)
@@ -77,7 +110,7 @@ export async function executeCodexCLI(prompt, options, onProgress) {
77
110
  onProgress,
78
111
  timeoutMs: options?.timeoutMs,
79
112
  maxOutputBytes: options?.maxOutputBytes,
80
- retry: options?.retry
113
+ retry: options?.retry,
81
114
  });
82
115
  if (!result.ok) {
83
116
  // Try to salvage partial output if available
@@ -108,4 +141,130 @@ export async function executeCodexCLI(prompt, options, onProgress) {
108
141
  }
109
142
  }
110
143
  }
144
+ /**
145
+ * High-level executeCodex function with comprehensive options support
146
+ */
147
+ export async function executeCodex(prompt, options, onProgress) {
148
+ const args = [];
149
+ // Model selection
150
+ if (options?.model) {
151
+ args.push(CLI.FLAGS.MODEL, options.model);
152
+ }
153
+ // Safety controls
154
+ if (options?.yolo) {
155
+ args.push(CLI.FLAGS.YOLO);
156
+ }
157
+ else if (options?.fullAuto) {
158
+ args.push(CLI.FLAGS.FULL_AUTO);
159
+ }
160
+ else {
161
+ // Approval policy
162
+ if (options?.approval || options?.approvalPolicy) {
163
+ const approvalValue = options.approval || options.approvalPolicy;
164
+ if (approvalValue) {
165
+ args.push(CLI.FLAGS.APPROVAL, approvalValue);
166
+ }
167
+ }
168
+ // Sandbox mode
169
+ if (options?.sandboxMode) {
170
+ args.push(CLI.FLAGS.SANDBOX_MODE, options.sandboxMode);
171
+ }
172
+ else if (options?.search || options?.oss) {
173
+ // Auto-enable workspace-write for search/oss if no sandbox specified
174
+ Logger.debug('Search/OSS enabled: auto-setting sandbox to workspace-write for network access');
175
+ args.push(CLI.FLAGS.SANDBOX_MODE, 'workspace-write');
176
+ }
177
+ }
178
+ // Resolve working directory using intelligent fallback chain
179
+ const resolvedWorkingDir = resolveWorkingDirectory({
180
+ workingDir: options?.workingDir || options?.cd,
181
+ prompt: prompt,
182
+ });
183
+ if (resolvedWorkingDir) {
184
+ args.push(CLI.FLAGS.WORKING_DIR, resolvedWorkingDir);
185
+ Logger.debug(`Resolved working directory for executeCodex: ${resolvedWorkingDir}`);
186
+ }
187
+ // Configuration
188
+ if (options?.config) {
189
+ if (typeof options.config === 'string') {
190
+ args.push(CLI.FLAGS.CONFIG, options.config);
191
+ }
192
+ else {
193
+ // Convert object to key=value pairs
194
+ const configStr = Object.entries(options.config)
195
+ .map(([k, v]) => `${k}=${v}`)
196
+ .join(',');
197
+ args.push(CLI.FLAGS.CONFIG, configStr);
198
+ }
199
+ }
200
+ // Profile
201
+ if (options?.profile) {
202
+ args.push(CLI.FLAGS.PROFILE, options.profile);
203
+ }
204
+ // Images
205
+ if (options?.image) {
206
+ const images = Array.isArray(options.image) ? options.image : [options.image];
207
+ for (const img of images) {
208
+ args.push(CLI.FLAGS.IMAGE, img);
209
+ }
210
+ }
211
+ // OSS (Ollama) mode
212
+ if (options?.oss) {
213
+ args.push(CLI.FLAGS.OSS);
214
+ }
215
+ // Enable features (including web search)
216
+ const enableFeatures = [...(options?.enableFeatures || [])];
217
+ // Add web_search_request feature if search is requested
218
+ if (options?.search && !enableFeatures.includes('web_search_request')) {
219
+ enableFeatures.push('web_search_request');
220
+ }
221
+ // Add all features to args
222
+ for (const feature of enableFeatures) {
223
+ args.push(CLI.FLAGS.ENABLE, feature);
224
+ }
225
+ // Disable features
226
+ if (options?.disableFeatures && Array.isArray(options.disableFeatures)) {
227
+ for (const feature of options.disableFeatures) {
228
+ args.push(CLI.FLAGS.DISABLE, feature);
229
+ }
230
+ }
231
+ // Use exec mode for non-interactive execution
232
+ if (options?.useExec !== false) {
233
+ // Default to true for non-interactive execution
234
+ args.push('exec');
235
+ }
236
+ // Add the prompt
237
+ args.push(prompt);
238
+ try {
239
+ const timeoutMs = options?.timeout || options?.timeoutMs || 600000; // 10 minutes default
240
+ const result = await executeCommandDetailed(CLI.COMMANDS.CODEX, args, {
241
+ onProgress,
242
+ timeoutMs,
243
+ maxOutputBytes: options?.maxOutputBytes,
244
+ retry: options?.retry,
245
+ });
246
+ if (!result.ok) {
247
+ // Enhanced error handling with specific messages
248
+ const errorMessage = result.stderr || 'Unknown error';
249
+ if (errorMessage.includes('command not found') || errorMessage.includes('not found')) {
250
+ throw new Error('Codex CLI not found. Install with: npm install -g @openai/codex');
251
+ }
252
+ if (errorMessage.includes('authentication') || errorMessage.includes('unauthorized')) {
253
+ throw new Error('Authentication failed. Run "codex login" or set OPENAI_API_KEY');
254
+ }
255
+ if (errorMessage.includes('quota') || errorMessage.includes('rate limit')) {
256
+ throw new Error('Rate limit exceeded. Please wait and try again');
257
+ }
258
+ if (errorMessage.includes('permission') || errorMessage.includes('sandbox')) {
259
+ throw new Error(`Permission denied. Try adjusting sandbox mode or approval policy: ${errorMessage}`);
260
+ }
261
+ throw new Error(`Codex CLI failed: ${errorMessage}`);
262
+ }
263
+ return result.stdout;
264
+ }
265
+ catch (error) {
266
+ Logger.error('Codex execution failed:', error);
267
+ throw error;
268
+ }
269
+ }
111
270
  //# sourceMappingURL=codexExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codexExecutor.js","sourceRoot":"","sources":["../../src/utils/codexExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codexExecutor.js","sourceRoot":"","sources":["../../src/utils/codexExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,sBAAsB,EAAgB,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,kBAAkB;AAClB,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,0CAAwB,CAAA;IACxB,0CAAwB,CAAA;IACxB,yCAAuB,CAAA;AACzB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,qCAAsB,CAAA;IACtB,iDAAkC,CAAA;IAClC,sDAAuC,CAAA;AACzC,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AA0BD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,OAA0B,EAC1B,UAAwC;IAExC,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,mBAAmB;IACnB,IAAI,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;SAAM,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,CAAC;QACD,+FAA+F;QAC/F,mDAAmD;QACnD,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACzD,CAAC;aAAM,IAAI,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;YAC3C,qEAAqE;YACrE,MAAM,CAAC,KAAK,CACV,gFAAgF,CACjF,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,6DAA6D;IAC7D,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;QACjD,UAAU,EAAE,OAAO,EAAE,EAAE;QACvB,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,IAAI,kBAAkB,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,+BAA+B,kBAAkB,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5D,wDAAwD;IACxD,IAAI,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACtE,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC5C,CAAC;IAED,2BAA2B;IAC3B,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,mBAAmB;IACnB,IAAI,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACvE,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,8BAA8B;IAC9B,MAAM,aAAa,GAAG,+EAA+E,MAAM,EAAE,CAAC;IAE9G,8EAA8E;IAC9E,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,OAAO,EAAE,sBAAsB,KAAK,KAAK,IAAI,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC;IAE3F,IAAI,QAA4B,CAAC;IAEjC,IAAI,CAAC;QACH,IAAI,QAAQ,EAAE,CAAC;YACb,wDAAwD;YACxD,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,gBAAgB,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChF,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,qCAAqC,eAAe,SAAS,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3B,CAAC;QAED,mDAAmD;QACnD,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE;YACpE,UAAU;YACV,SAAS,EAAE,OAAO,EAAE,SAAS;YAC7B,cAAc,EAAE,OAAO,EAAE,cAAc;YACvC,KAAK,EAAE,OAAO,EAAE,KAAK;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,6CAA6C;YAC7C,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBACjF,OAAO,MAAM,CAAC,aAAa,CAAC;YAC9B,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,eAAe,CAAC;YACtD,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,QAAQ;gBACb,CAAC,CAAC,6BAA6B,OAAO,EAAE,SAAS,IAAI,MAAM,IAAI;gBAC/D,CAAC,CAAC,mCAAmC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CACtE,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,KAAK,CAAC;IACd,CAAC;YAAS,CAAC;QACT,qBAAqB;QACrB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,OAAmD,EACnD,UAAwC;IAExC,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,kBAAkB;IAClB,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,kBAAkB;IAClB,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;SAAM,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,kBAAkB;QAClB,IAAI,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;YACjD,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC;YACjE,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,eAAe;QACf,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACzD,CAAC;aAAM,IAAI,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;YAC3C,qEAAqE;YACrE,MAAM,CAAC,KAAK,CACV,gFAAgF,CACjF,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,6DAA6D;IAC7D,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;QACjD,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,EAAE;QAC9C,MAAM,EAAE,MAAM;KACf,CAAC,CAAC;IAEH,IAAI,kBAAkB,EAAE,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,gDAAgD,kBAAkB,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,gBAAgB;IAChB,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,oCAAoC;YACpC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;iBAC7C,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;iBAC5B,IAAI,CAAC,GAAG,CAAC,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,UAAU;IACV,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,SAAS;IACT,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9E,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5D,wDAAwD;IACxD,IAAI,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACtE,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC5C,CAAC;IAED,2BAA2B;IAC3B,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,mBAAmB;IACnB,IAAI,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACvE,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,IAAI,OAAO,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;QAC/B,gDAAgD;QAChD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAED,iBAAiB;IACjB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,SAAS,IAAI,MAAM,CAAC,CAAC,qBAAqB;QAEzF,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE;YACpE,UAAU;YACV,SAAS;YACT,cAAc,EAAE,OAAO,EAAE,cAAc;YACvC,KAAK,EAAE,OAAO,EAAE,KAAK;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,iDAAiD;YACjD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,IAAI,eAAe,CAAC;YAEtD,IAAI,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACrF,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACrF,CAAC;YAED,IAAI,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACrF,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;YACpF,CAAC;YAED,IAAI,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1E,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5E,MAAM,IAAI,KAAK,CACb,qEAAqE,YAAY,EAAE,CACpF,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAC/C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"commandExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/commandExecutor.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,SAAS,GAAG,cAAc,GAAG,aAAa,CAAC,EAAE,CAAC;CACzD;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAqCxB;AAoHD;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,EACxC,SAAS,GAAE,MAAe,GACzB,OAAO,CAAC,MAAM,CAAC,CAajB"}
1
+ {"version":3,"file":"commandExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/commandExecutor.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,SAAS,GAAG,cAAc,GAAG,aAAa,CAAC,EAAE,CAAC;CACzD;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC,CAyCxB;AAmHD;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,EACxC,SAAS,GAAE,MAAe,GACzB,OAAO,CAAC,MAAM,CAAC,CAgBjB"}
@@ -1,22 +1,27 @@
1
- import { spawn } from "child_process";
2
- import { Logger } from "./logger.js";
1
+ import { spawn } from 'child_process';
2
+ import { Logger } from './logger.js';
3
3
  /**
4
4
  * Execute a command with streaming output and structured error handling
5
5
  */
6
6
  export async function executeCommandDetailed(command, args, options = {}) {
7
7
  const { onProgress, timeoutMs = 600000, maxOutputBytes = 50 * 1024 * 1024, // 50MB default
8
- retry } = options;
8
+ retry, } = options;
9
9
  let attempt = 0;
10
10
  const maxAttempts = retry?.attempts || 1;
11
11
  while (attempt < maxAttempts) {
12
12
  attempt++;
13
- const result = await executeOnce(command, args, { onProgress, timeoutMs, maxOutputBytes });
13
+ const result = await executeOnce(command, args, {
14
+ onProgress,
15
+ timeoutMs,
16
+ maxOutputBytes,
17
+ });
14
18
  if (result.ok) {
15
19
  return result;
16
20
  }
17
- const shouldRetry = retry && ((result.timedOut && retry.retryOn.includes('timeout')) ||
18
- (result.code !== 0 && result.code !== null && retry.retryOn.includes('exit_nonzero')) ||
19
- (result.code === null && !result.signal && retry.retryOn.includes('spawn_error')));
21
+ const shouldRetry = retry &&
22
+ ((result.timedOut && retry.retryOn.includes('timeout')) ||
23
+ (result.code !== 0 && result.code !== null && retry.retryOn.includes('exit_nonzero')) ||
24
+ (result.code === null && !result.signal && retry.retryOn.includes('spawn_error')));
20
25
  if (!shouldRetry || attempt >= maxAttempts) {
21
26
  return result;
22
27
  }
@@ -29,13 +34,13 @@ export async function executeCommandDetailed(command, args, options = {}) {
29
34
  throw new Error('Unexpected retry loop exit');
30
35
  }
31
36
  async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputBytes }) {
32
- return new Promise((resolve) => {
37
+ return new Promise(resolve => {
33
38
  const startTime = Date.now();
34
39
  Logger.commandExecution(command, args, startTime);
35
40
  const childProcess = spawn(command, args, {
36
41
  env: process.env,
37
42
  shell: false,
38
- stdio: ["ignore", "pipe", "pipe"],
43
+ stdio: ['ignore', 'pipe', 'pipe'],
39
44
  });
40
45
  const stdoutChunks = [];
41
46
  const stderrChunks = [];
@@ -56,7 +61,7 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
56
61
  }, 5000);
57
62
  }
58
63
  }, timeoutMs || 600000);
59
- childProcess.stdout.on("data", (data) => {
64
+ childProcess.stdout.on('data', (data) => {
60
65
  // Check output size limit
61
66
  if (maxOutputBytes && totalStdoutBytes + data.length > maxOutputBytes) {
62
67
  if (!outputExceeded) {
@@ -74,10 +79,10 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
74
79
  }
75
80
  });
76
81
  // Capture stderr for error reporting
77
- childProcess.stderr.on("data", (data) => {
82
+ childProcess.stderr.on('data', (data) => {
78
83
  stderrChunks.push(data);
79
84
  });
80
- childProcess.on("error", (error) => {
85
+ childProcess.on('error', error => {
81
86
  if (!isResolved) {
82
87
  isResolved = true;
83
88
  clearTimeout(timeoutId);
@@ -90,7 +95,7 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
90
95
  code: null,
91
96
  stdout: '',
92
97
  stderr: `Command '${command}' not found. Is it installed and in PATH?`,
93
- timedOut: false
98
+ timedOut: false,
94
99
  });
95
100
  }
96
101
  else {
@@ -99,12 +104,12 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
99
104
  code: null,
100
105
  stdout: Buffer.concat(stdoutChunks).toString('utf8'),
101
106
  stderr: errorMessage,
102
- timedOut: false
107
+ timedOut: false,
103
108
  });
104
109
  }
105
110
  }
106
111
  });
107
- childProcess.on("close", (code, signal) => {
112
+ childProcess.on('close', (code, signal) => {
108
113
  if (!isResolved) {
109
114
  isResolved = true;
110
115
  clearTimeout(timeoutId);
@@ -119,7 +124,7 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
119
124
  stdout: stdout.trim(),
120
125
  stderr: stderr.trim(),
121
126
  timedOut,
122
- partialStdout: outputExceeded ? stdout : undefined
127
+ partialStdout: outputExceeded ? stdout : undefined,
123
128
  });
124
129
  }
125
130
  });
@@ -129,7 +134,10 @@ async function executeOnce(command, args, { onProgress, timeoutMs, maxOutputByte
129
134
  * Backward compatible wrapper that returns stdout string
130
135
  */
131
136
  export async function executeCommand(command, args, onProgress, timeoutMs = 600000) {
132
- const result = await executeCommandDetailed(command, args, { onProgress, timeoutMs });
137
+ const result = await executeCommandDetailed(command, args, {
138
+ onProgress,
139
+ timeoutMs,
140
+ });
133
141
  if (!result.ok) {
134
142
  const errorMessage = result.stderr || 'Unknown error';
135
143
  throw new Error(result.timedOut