oh-my-claude-sisyphus 3.0.11 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/README.md +26 -2
  2. package/agents/build-fixer-low.md +83 -0
  3. package/agents/build-fixer.md +160 -0
  4. package/agents/code-reviewer-low.md +82 -0
  5. package/agents/code-reviewer.md +115 -0
  6. package/agents/planner.md +83 -0
  7. package/agents/security-reviewer-low.md +83 -0
  8. package/agents/security-reviewer.md +186 -0
  9. package/agents/tdd-guide-low.md +81 -0
  10. package/agents/tdd-guide.md +165 -0
  11. package/commands/autopilot.md +131 -0
  12. package/commands/build-fix.md +55 -0
  13. package/commands/cancel-autopilot.md +35 -0
  14. package/commands/code-review.md +47 -0
  15. package/commands/ralph.md +9 -0
  16. package/commands/security-review.md +47 -0
  17. package/commands/tdd.md +54 -0
  18. package/dist/__tests__/hud-agents.test.js +13 -10
  19. package/dist/__tests__/hud-agents.test.js.map +1 -1
  20. package/dist/__tests__/installer.test.js +1 -1
  21. package/dist/__tests__/skills.test.js +8 -4
  22. package/dist/__tests__/skills.test.js.map +1 -1
  23. package/dist/agents/definitions.d.ts +32 -0
  24. package/dist/agents/definitions.d.ts.map +1 -1
  25. package/dist/agents/definitions.js +93 -1
  26. package/dist/agents/definitions.js.map +1 -1
  27. package/dist/agents/delegation-validator.d.ts +31 -0
  28. package/dist/agents/delegation-validator.d.ts.map +1 -0
  29. package/dist/agents/delegation-validator.js +75 -0
  30. package/dist/agents/delegation-validator.js.map +1 -0
  31. package/dist/agents/prompt-generator.d.ts +95 -0
  32. package/dist/agents/prompt-generator.d.ts.map +1 -0
  33. package/dist/agents/prompt-generator.js +140 -0
  34. package/dist/agents/prompt-generator.js.map +1 -0
  35. package/dist/agents/prompt-sections/index.d.ts +44 -0
  36. package/dist/agents/prompt-sections/index.d.ts.map +1 -0
  37. package/dist/agents/prompt-sections/index.js +194 -0
  38. package/dist/agents/prompt-sections/index.js.map +1 -0
  39. package/dist/agents/types.d.ts +2 -0
  40. package/dist/agents/types.d.ts.map +1 -1
  41. package/dist/agents/types.js.map +1 -1
  42. package/dist/features/background-agent/manager.d.ts +10 -1
  43. package/dist/features/background-agent/manager.d.ts.map +1 -1
  44. package/dist/features/background-agent/manager.js +79 -11
  45. package/dist/features/background-agent/manager.js.map +1 -1
  46. package/dist/features/background-agent/types.d.ts +30 -1
  47. package/dist/features/background-agent/types.d.ts.map +1 -1
  48. package/dist/features/delegation-categories/index.d.ts +116 -0
  49. package/dist/features/delegation-categories/index.d.ts.map +1 -0
  50. package/dist/features/delegation-categories/index.js +287 -0
  51. package/dist/features/delegation-categories/index.js.map +1 -0
  52. package/dist/features/delegation-categories/test-categories.d.ts +7 -0
  53. package/dist/features/delegation-categories/test-categories.d.ts.map +1 -0
  54. package/dist/features/delegation-categories/test-categories.js +88 -0
  55. package/dist/features/delegation-categories/test-categories.js.map +1 -0
  56. package/dist/features/delegation-categories/types.d.ts +51 -0
  57. package/dist/features/delegation-categories/types.d.ts.map +1 -0
  58. package/dist/features/delegation-categories/types.js +8 -0
  59. package/dist/features/delegation-categories/types.js.map +1 -0
  60. package/dist/features/index.d.ts +2 -0
  61. package/dist/features/index.d.ts.map +1 -1
  62. package/dist/features/index.js +10 -0
  63. package/dist/features/index.js.map +1 -1
  64. package/dist/features/model-routing/prompts/index.d.ts +2 -0
  65. package/dist/features/model-routing/prompts/index.d.ts.map +1 -1
  66. package/dist/features/model-routing/prompts/index.js +6 -0
  67. package/dist/features/model-routing/prompts/index.js.map +1 -1
  68. package/dist/features/notepad-wisdom/extractor.d.ts +30 -0
  69. package/dist/features/notepad-wisdom/extractor.d.ts.map +1 -0
  70. package/dist/features/notepad-wisdom/extractor.js +68 -0
  71. package/dist/features/notepad-wisdom/extractor.js.map +1 -0
  72. package/dist/features/notepad-wisdom/index.d.ts +39 -0
  73. package/dist/features/notepad-wisdom/index.d.ts.map +1 -0
  74. package/dist/features/notepad-wisdom/index.js +169 -0
  75. package/dist/features/notepad-wisdom/index.js.map +1 -0
  76. package/dist/features/notepad-wisdom/types.d.ts +18 -0
  77. package/dist/features/notepad-wisdom/types.d.ts.map +1 -0
  78. package/dist/features/notepad-wisdom/types.js +7 -0
  79. package/dist/features/notepad-wisdom/types.js.map +1 -0
  80. package/dist/hooks/autopilot/__tests__/cancel.test.d.ts +2 -0
  81. package/dist/hooks/autopilot/__tests__/cancel.test.d.ts.map +1 -0
  82. package/dist/hooks/autopilot/__tests__/cancel.test.js +397 -0
  83. package/dist/hooks/autopilot/__tests__/cancel.test.js.map +1 -0
  84. package/dist/hooks/autopilot/__tests__/prompts.test.d.ts +2 -0
  85. package/dist/hooks/autopilot/__tests__/prompts.test.d.ts.map +1 -0
  86. package/dist/hooks/autopilot/__tests__/prompts.test.js +74 -0
  87. package/dist/hooks/autopilot/__tests__/prompts.test.js.map +1 -0
  88. package/dist/hooks/autopilot/__tests__/state.test.d.ts +2 -0
  89. package/dist/hooks/autopilot/__tests__/state.test.d.ts.map +1 -0
  90. package/dist/hooks/autopilot/__tests__/state.test.js +75 -0
  91. package/dist/hooks/autopilot/__tests__/state.test.js.map +1 -0
  92. package/dist/hooks/autopilot/__tests__/summary.test.d.ts +2 -0
  93. package/dist/hooks/autopilot/__tests__/summary.test.d.ts.map +1 -0
  94. package/dist/hooks/autopilot/__tests__/summary.test.js +289 -0
  95. package/dist/hooks/autopilot/__tests__/summary.test.js.map +1 -0
  96. package/dist/hooks/autopilot/__tests__/transition.test.d.ts +2 -0
  97. package/dist/hooks/autopilot/__tests__/transition.test.d.ts.map +1 -0
  98. package/dist/hooks/autopilot/__tests__/transition.test.js +59 -0
  99. package/dist/hooks/autopilot/__tests__/transition.test.js.map +1 -0
  100. package/dist/hooks/autopilot/__tests__/validation.test.d.ts +2 -0
  101. package/dist/hooks/autopilot/__tests__/validation.test.d.ts.map +1 -0
  102. package/dist/hooks/autopilot/__tests__/validation.test.js +450 -0
  103. package/dist/hooks/autopilot/__tests__/validation.test.js.map +1 -0
  104. package/dist/hooks/autopilot/cancel.d.ts +42 -0
  105. package/dist/hooks/autopilot/cancel.d.ts.map +1 -0
  106. package/dist/hooks/autopilot/cancel.js +156 -0
  107. package/dist/hooks/autopilot/cancel.js.map +1 -0
  108. package/dist/hooks/autopilot/index.d.ts +15 -0
  109. package/dist/hooks/autopilot/index.d.ts.map +1 -0
  110. package/dist/hooks/autopilot/index.js +20 -0
  111. package/dist/hooks/autopilot/index.js.map +1 -0
  112. package/dist/hooks/autopilot/prompts.d.ts +37 -0
  113. package/dist/hooks/autopilot/prompts.d.ts.map +1 -0
  114. package/dist/hooks/autopilot/prompts.js +353 -0
  115. package/dist/hooks/autopilot/prompts.js.map +1 -0
  116. package/dist/hooks/autopilot/state.d.ts +67 -0
  117. package/dist/hooks/autopilot/state.d.ts.map +1 -0
  118. package/dist/hooks/autopilot/state.js +244 -0
  119. package/dist/hooks/autopilot/state.js.map +1 -0
  120. package/dist/hooks/autopilot/summary.d.ts +27 -0
  121. package/dist/hooks/autopilot/summary.d.ts.map +1 -0
  122. package/dist/hooks/autopilot/summary.js +160 -0
  123. package/dist/hooks/autopilot/summary.js.map +1 -0
  124. package/dist/hooks/autopilot/transition.d.ts +39 -0
  125. package/dist/hooks/autopilot/transition.d.ts.map +1 -0
  126. package/dist/hooks/autopilot/transition.js +216 -0
  127. package/dist/hooks/autopilot/transition.js.map +1 -0
  128. package/dist/hooks/autopilot/types.d.ts +211 -0
  129. package/dist/hooks/autopilot/types.d.ts.map +1 -0
  130. package/dist/hooks/autopilot/types.js +30 -0
  131. package/dist/hooks/autopilot/types.js.map +1 -0
  132. package/dist/hooks/autopilot/validation.d.ts +43 -0
  133. package/dist/hooks/autopilot/validation.d.ts.map +1 -0
  134. package/dist/hooks/autopilot/validation.js +191 -0
  135. package/dist/hooks/autopilot/validation.js.map +1 -0
  136. package/dist/hooks/bridge.d.ts +1 -1
  137. package/dist/hooks/bridge.d.ts.map +1 -1
  138. package/dist/hooks/bridge.js +79 -6
  139. package/dist/hooks/bridge.js.map +1 -1
  140. package/dist/hooks/index.d.ts +1 -0
  141. package/dist/hooks/index.d.ts.map +1 -1
  142. package/dist/hooks/index.js +2 -0
  143. package/dist/hooks/index.js.map +1 -1
  144. package/dist/hooks/keyword-detector/index.d.ts +1 -1
  145. package/dist/hooks/keyword-detector/index.d.ts.map +1 -1
  146. package/dist/hooks/keyword-detector/index.js +39 -2
  147. package/dist/hooks/keyword-detector/index.js.map +1 -1
  148. package/dist/hooks/persistent-mode/index.d.ts +2 -1
  149. package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
  150. package/dist/hooks/persistent-mode/index.js +13 -3
  151. package/dist/hooks/persistent-mode/index.js.map +1 -1
  152. package/dist/hooks/ralph-loop/index.d.ts +0 -20
  153. package/dist/hooks/ralph-loop/index.d.ts.map +1 -1
  154. package/dist/hooks/ralph-loop/index.js +6 -40
  155. package/dist/hooks/ralph-loop/index.js.map +1 -1
  156. package/dist/hooks/todo-continuation/index.d.ts +31 -1
  157. package/dist/hooks/todo-continuation/index.d.ts.map +1 -1
  158. package/dist/hooks/todo-continuation/index.js +38 -1
  159. package/dist/hooks/todo-continuation/index.js.map +1 -1
  160. package/dist/hooks/ultrawork-state/index.d.ts +3 -1
  161. package/dist/hooks/ultrawork-state/index.d.ts.map +1 -1
  162. package/dist/hooks/ultrawork-state/index.js +3 -2
  163. package/dist/hooks/ultrawork-state/index.js.map +1 -1
  164. package/dist/hud/elements/autopilot.d.ts +29 -0
  165. package/dist/hud/elements/autopilot.d.ts.map +1 -0
  166. package/dist/hud/elements/autopilot.js +97 -0
  167. package/dist/hud/elements/autopilot.js.map +1 -0
  168. package/dist/hud/elements/index.d.ts +1 -0
  169. package/dist/hud/elements/index.d.ts.map +1 -1
  170. package/dist/hud/elements/index.js +1 -0
  171. package/dist/hud/elements/index.js.map +1 -1
  172. package/dist/hud/elements/limits.d.ts +1 -1
  173. package/dist/hud/elements/limits.d.ts.map +1 -1
  174. package/dist/hud/elements/limits.js +35 -2
  175. package/dist/hud/elements/limits.js.map +1 -1
  176. package/dist/hud/elements/todos.d.ts +1 -1
  177. package/dist/hud/elements/todos.js +3 -3
  178. package/dist/hud/elements/todos.js.map +1 -1
  179. package/dist/hud/render.js +6 -6
  180. package/dist/hud/render.js.map +1 -1
  181. package/dist/hud/types.d.ts +4 -0
  182. package/dist/hud/types.d.ts.map +1 -1
  183. package/dist/hud/types.js.map +1 -1
  184. package/dist/hud/usage-api.d.ts.map +1 -1
  185. package/dist/hud/usage-api.js +32 -6
  186. package/dist/hud/usage-api.js.map +1 -1
  187. package/dist/installer/hooks.d.ts +5 -0
  188. package/dist/installer/hooks.d.ts.map +1 -1
  189. package/dist/installer/hooks.js +20 -0
  190. package/dist/installer/hooks.js.map +1 -1
  191. package/dist/installer/index.d.ts +1 -1
  192. package/dist/installer/index.js +2 -2
  193. package/dist/installer/index.js.map +1 -1
  194. package/dist/tools/diagnostics/index.d.ts +29 -0
  195. package/dist/tools/diagnostics/index.d.ts.map +1 -0
  196. package/dist/tools/diagnostics/index.js +118 -0
  197. package/dist/tools/diagnostics/index.js.map +1 -0
  198. package/dist/tools/diagnostics/lsp-aggregator.d.ts +26 -0
  199. package/dist/tools/diagnostics/lsp-aggregator.d.ts.map +1 -0
  200. package/dist/tools/diagnostics/lsp-aggregator.js +99 -0
  201. package/dist/tools/diagnostics/lsp-aggregator.js.map +1 -0
  202. package/dist/tools/diagnostics/tsc-runner.d.ts +26 -0
  203. package/dist/tools/diagnostics/tsc-runner.d.ts.map +1 -0
  204. package/dist/tools/diagnostics/tsc-runner.js +70 -0
  205. package/dist/tools/diagnostics/tsc-runner.js.map +1 -0
  206. package/dist/tools/lsp-tools.d.ts +10 -0
  207. package/dist/tools/lsp-tools.d.ts.map +1 -1
  208. package/dist/tools/lsp-tools.js +43 -1
  209. package/dist/tools/lsp-tools.js.map +1 -1
  210. package/dist/tools/resume-session.d.ts +63 -0
  211. package/dist/tools/resume-session.d.ts.map +1 -0
  212. package/dist/tools/resume-session.js +106 -0
  213. package/dist/tools/resume-session.js.map +1 -0
  214. package/dist/utils/__tests__/paths.test.d.ts +2 -0
  215. package/dist/utils/__tests__/paths.test.d.ts.map +1 -0
  216. package/dist/utils/__tests__/paths.test.js +88 -0
  217. package/dist/utils/__tests__/paths.test.js.map +1 -0
  218. package/dist/utils/paths.d.ts +32 -0
  219. package/dist/utils/paths.d.ts.map +1 -0
  220. package/dist/utils/paths.js +55 -0
  221. package/dist/utils/paths.js.map +1 -0
  222. package/docs/ARCHITECTURE.md +80 -1
  223. package/docs/CLAUDE.md +97 -3
  224. package/docs/FEATURES.md +2167 -0
  225. package/docs/FULL-README.md +69 -1
  226. package/package.json +1 -1
  227. package/skills/autopilot/SKILL.md +168 -0
  228. package/skills/cancel-autopilot/SKILL.md +53 -0
  229. package/skills/omc-setup/SKILL.md +95 -0
  230. package/skills/ralph/SKILL.md +9 -0
  231. package/skills/ultrawork/SKILL.md +9 -5
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Directory Diagnostics - Project-level QA enforcement
3
+ *
4
+ * Provides dual strategy for checking TypeScript/JavaScript projects:
5
+ * 1. Primary: tsc --noEmit (fast, comprehensive)
6
+ * 2. Fallback: LSP iteration (when tsc not available)
7
+ */
8
+ import { existsSync } from 'fs';
9
+ import { join } from 'path';
10
+ import { runTscDiagnostics } from './tsc-runner.js';
11
+ import { runLspAggregatedDiagnostics } from './lsp-aggregator.js';
12
+ import { formatDiagnostics } from '../lsp/utils.js';
13
+ export const LSP_DIAGNOSTICS_WAIT_MS = 300;
14
+ /**
15
+ * Run directory-level diagnostics using the best available strategy
16
+ * @param directory - Project directory to check
17
+ * @param strategy - Strategy to use ('tsc', 'lsp', or 'auto')
18
+ * @returns Diagnostic results
19
+ */
20
+ export async function runDirectoryDiagnostics(directory, strategy = 'auto') {
21
+ const tsconfigPath = join(directory, 'tsconfig.json');
22
+ const hasTsconfig = existsSync(tsconfigPath);
23
+ // Determine which strategy to use
24
+ let useStrategy;
25
+ if (strategy === 'auto') {
26
+ useStrategy = hasTsconfig ? 'tsc' : 'lsp';
27
+ }
28
+ else {
29
+ useStrategy = strategy;
30
+ }
31
+ // Run diagnostics based on strategy
32
+ if (useStrategy === 'tsc' && hasTsconfig) {
33
+ return formatTscResult(runTscDiagnostics(directory));
34
+ }
35
+ else {
36
+ return formatLspResult(await runLspAggregatedDiagnostics(directory));
37
+ }
38
+ }
39
+ /**
40
+ * Format tsc results into standard format
41
+ */
42
+ function formatTscResult(result) {
43
+ let diagnostics = '';
44
+ let summary = '';
45
+ if (result.diagnostics.length === 0) {
46
+ diagnostics = 'No diagnostics found. All files are clean!';
47
+ summary = 'TypeScript check passed: 0 errors, 0 warnings';
48
+ }
49
+ else {
50
+ // Group diagnostics by file
51
+ const byFile = new Map();
52
+ for (const diag of result.diagnostics) {
53
+ if (!byFile.has(diag.file)) {
54
+ byFile.set(diag.file, []);
55
+ }
56
+ byFile.get(diag.file).push(diag);
57
+ }
58
+ // Format each file's diagnostics
59
+ const fileOutputs = [];
60
+ for (const [file, diags] of byFile) {
61
+ let fileOutput = `${file}:\n`;
62
+ for (const diag of diags) {
63
+ fileOutput += ` ${diag.line}:${diag.column} - ${diag.severity} ${diag.code}: ${diag.message}\n`;
64
+ }
65
+ fileOutputs.push(fileOutput);
66
+ }
67
+ diagnostics = fileOutputs.join('\n');
68
+ summary = `TypeScript check ${result.success ? 'passed' : 'failed'}: ${result.errorCount} errors, ${result.warningCount} warnings`;
69
+ }
70
+ return {
71
+ strategy: 'tsc',
72
+ success: result.success,
73
+ errorCount: result.errorCount,
74
+ warningCount: result.warningCount,
75
+ diagnostics,
76
+ summary
77
+ };
78
+ }
79
+ /**
80
+ * Format LSP aggregation results into standard format
81
+ */
82
+ function formatLspResult(result) {
83
+ let diagnostics = '';
84
+ let summary = '';
85
+ if (result.diagnostics.length === 0) {
86
+ diagnostics = `Checked ${result.filesChecked} files. No diagnostics found!`;
87
+ summary = `LSP check passed: 0 errors, 0 warnings (${result.filesChecked} files)`;
88
+ }
89
+ else {
90
+ // Group diagnostics by file
91
+ const byFile = new Map();
92
+ for (const item of result.diagnostics) {
93
+ if (!byFile.has(item.file)) {
94
+ byFile.set(item.file, []);
95
+ }
96
+ byFile.get(item.file).push(item);
97
+ }
98
+ // Format each file's diagnostics
99
+ const fileOutputs = [];
100
+ for (const [file, items] of byFile) {
101
+ const diags = items.map(i => i.diagnostic);
102
+ fileOutputs.push(`${file}:\n${formatDiagnostics(diags, file)}`);
103
+ }
104
+ diagnostics = fileOutputs.join('\n\n');
105
+ summary = `LSP check ${result.success ? 'passed' : 'failed'}: ${result.errorCount} errors, ${result.warningCount} warnings (${result.filesChecked} files)`;
106
+ }
107
+ return {
108
+ strategy: 'lsp',
109
+ success: result.success,
110
+ errorCount: result.errorCount,
111
+ warningCount: result.warningCount,
112
+ diagnostics,
113
+ summary
114
+ };
115
+ }
116
+ export { runTscDiagnostics } from './tsc-runner.js';
117
+ export { runLspAggregatedDiagnostics } from './lsp-aggregator.js';
118
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/diagnostics/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAA4B,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAA+C,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAa3C;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAiB,EACjB,WAAgC,MAAM;IAEtC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAE7C,kCAAkC;IAClC,IAAI,WAA0B,CAAC;IAC/B,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,QAAQ,CAAC;IACzB,CAAC;IAED,oCAAoC;IACpC,IAAI,WAAW,KAAK,KAAK,IAAI,WAAW,EAAE,CAAC;QACzC,OAAO,eAAe,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,CAAC;SAAM,CAAC;QACN,OAAO,eAAe,CAAC,MAAM,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAiB;IACxC,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,WAAW,GAAG,4CAA4C,CAAC;QAC3D,OAAO,GAAG,+CAA+C,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,4BAA4B;QAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QAED,iCAAiC;QACjC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACnC,IAAI,UAAU,GAAG,GAAG,IAAI,KAAK,CAAC;YAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,UAAU,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC;YACnG,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QAED,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,GAAG,oBAAoB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,UAAU,YAAY,MAAM,CAAC,YAAY,WAAW,CAAC;IACrI,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAA4B;IACnD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,WAAW,GAAG,WAAW,MAAM,CAAC,YAAY,+BAA+B,CAAC;QAC5E,OAAO,GAAG,2CAA2C,MAAM,CAAC,YAAY,SAAS,CAAC;IACpF,CAAC;SAAM,CAAC;QACN,4BAA4B;QAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QAED,iCAAiC;QACjC,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC3C,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,GAAG,aAAa,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,UAAU,YAAY,MAAM,CAAC,YAAY,cAAc,MAAM,CAAC,YAAY,SAAS,CAAC;IAC7J,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC;AAKD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * LSP Aggregator - Fallback strategy for directory diagnostics
3
+ *
4
+ * When tsc is not available or not suitable, iterate through files
5
+ * and collect LSP diagnostics for each.
6
+ */
7
+ import type { Diagnostic } from '../lsp/index.js';
8
+ export interface LspDiagnosticWithFile {
9
+ file: string;
10
+ diagnostic: Diagnostic;
11
+ }
12
+ export interface LspAggregationResult {
13
+ success: boolean;
14
+ diagnostics: LspDiagnosticWithFile[];
15
+ errorCount: number;
16
+ warningCount: number;
17
+ filesChecked: number;
18
+ }
19
+ /**
20
+ * Run LSP diagnostics on all TypeScript/JavaScript files in a directory
21
+ * @param directory - Project directory to scan
22
+ * @param extensions - File extensions to check (default: ['.ts', '.tsx', '.js', '.jsx'])
23
+ * @returns Aggregated diagnostics from all files
24
+ */
25
+ export declare function runLspAggregatedDiagnostics(directory: string, extensions?: string[]): Promise<LspAggregationResult>;
26
+ //# sourceMappingURL=lsp-aggregator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lsp-aggregator.d.ts","sourceRoot":"","sources":["../../../src/tools/diagnostics/lsp-aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGlD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AA6CD;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,UAAU,GAAE,MAAM,EAAmC,GACpD,OAAO,CAAC,oBAAoB,CAAC,CAiD/B"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * LSP Aggregator - Fallback strategy for directory diagnostics
3
+ *
4
+ * When tsc is not available or not suitable, iterate through files
5
+ * and collect LSP diagnostics for each.
6
+ */
7
+ import { readdirSync, statSync } from 'fs';
8
+ import { join, extname } from 'path';
9
+ import { lspClientManager } from '../lsp/index.js';
10
+ import { LSP_DIAGNOSTICS_WAIT_MS } from './index.js';
11
+ /**
12
+ * Recursively find files with given extensions
13
+ */
14
+ function findFiles(directory, extensions, ignoreDirs = []) {
15
+ const results = [];
16
+ const ignoreDirSet = new Set(ignoreDirs);
17
+ function walk(dir) {
18
+ try {
19
+ const entries = readdirSync(dir);
20
+ for (const entry of entries) {
21
+ const fullPath = join(dir, entry);
22
+ try {
23
+ const stat = statSync(fullPath);
24
+ if (stat.isDirectory()) {
25
+ // Skip ignored directories
26
+ if (!ignoreDirSet.has(entry)) {
27
+ walk(fullPath);
28
+ }
29
+ }
30
+ else if (stat.isFile()) {
31
+ const ext = extname(fullPath);
32
+ if (extensions.includes(ext)) {
33
+ results.push(fullPath);
34
+ }
35
+ }
36
+ }
37
+ catch (error) {
38
+ // Skip files/dirs we can't access
39
+ continue;
40
+ }
41
+ }
42
+ }
43
+ catch (error) {
44
+ // Skip directories we can't read
45
+ return;
46
+ }
47
+ }
48
+ walk(directory);
49
+ return results;
50
+ }
51
+ /**
52
+ * Run LSP diagnostics on all TypeScript/JavaScript files in a directory
53
+ * @param directory - Project directory to scan
54
+ * @param extensions - File extensions to check (default: ['.ts', '.tsx', '.js', '.jsx'])
55
+ * @returns Aggregated diagnostics from all files
56
+ */
57
+ export async function runLspAggregatedDiagnostics(directory, extensions = ['.ts', '.tsx', '.js', '.jsx']) {
58
+ // Find all matching files
59
+ const files = findFiles(directory, extensions, ['node_modules', 'dist', 'build', '.git']);
60
+ const allDiagnostics = [];
61
+ let filesChecked = 0;
62
+ for (const file of files) {
63
+ try {
64
+ const client = await lspClientManager.getClientForFile(file);
65
+ if (!client) {
66
+ continue;
67
+ }
68
+ // Open document to trigger diagnostics
69
+ await client.openDocument(file);
70
+ // Wait for diagnostics to be published
71
+ await new Promise(resolve => setTimeout(resolve, LSP_DIAGNOSTICS_WAIT_MS));
72
+ // Get diagnostics for this file
73
+ const diagnostics = client.getDiagnostics(file);
74
+ // Add to aggregated results
75
+ for (const diagnostic of diagnostics) {
76
+ allDiagnostics.push({
77
+ file,
78
+ diagnostic
79
+ });
80
+ }
81
+ filesChecked++;
82
+ }
83
+ catch (error) {
84
+ // Skip files that fail
85
+ continue;
86
+ }
87
+ }
88
+ // Count errors and warnings
89
+ const errorCount = allDiagnostics.filter(d => d.diagnostic.severity === 1).length;
90
+ const warningCount = allDiagnostics.filter(d => d.diagnostic.severity === 2).length;
91
+ return {
92
+ success: errorCount === 0,
93
+ diagnostics: allDiagnostics,
94
+ errorCount,
95
+ warningCount,
96
+ filesChecked
97
+ };
98
+ }
99
+ //# sourceMappingURL=lsp-aggregator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lsp-aggregator.js","sourceRoot":"","sources":["../../../src/tools/diagnostics/lsp-aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAerD;;GAEG;AACH,SAAS,SAAS,CAAC,SAAiB,EAAE,UAAoB,EAAE,aAAuB,EAAE;IACnF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAEzC,SAAS,IAAI,CAAC,GAAW;QACvB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAElC,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAEhC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;wBACvB,2BAA2B;wBAC3B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC7B,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACjB,CAAC;oBACH,CAAC;yBAAM,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;wBACzB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC9B,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC7B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBACzB,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,kCAAkC;oBAClC,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iCAAiC;YACjC,OAAO;QACT,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,CAAC;IAChB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,SAAiB,EACjB,aAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;IAErD,0BAA0B;IAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAE1F,MAAM,cAAc,GAA4B,EAAE,CAAC;IACnD,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,SAAS;YACX,CAAC;YAED,uCAAuC;YACvC,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEhC,uCAAuC;YACvC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC;YAE3E,gCAAgC;YAChC,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAEhD,4BAA4B;YAC5B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,cAAc,CAAC,IAAI,CAAC;oBAClB,IAAI;oBACJ,UAAU;iBACX,CAAC,CAAC;YACL,CAAC;YAED,YAAY,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uBAAuB;YACvB,SAAS;QACX,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IAClF,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IAEpF,OAAO;QACL,OAAO,EAAE,UAAU,KAAK,CAAC;QACzB,WAAW,EAAE,cAAc;QAC3B,UAAU;QACV,YAAY;QACZ,YAAY;KACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * TypeScript Compiler Diagnostics Runner
3
+ *
4
+ * Executes `tsc --noEmit` to get project-level type checking diagnostics.
5
+ */
6
+ export interface TscDiagnostic {
7
+ file: string;
8
+ line: number;
9
+ column: number;
10
+ code: string;
11
+ message: string;
12
+ severity: 'error' | 'warning';
13
+ }
14
+ export interface TscResult {
15
+ success: boolean;
16
+ diagnostics: TscDiagnostic[];
17
+ errorCount: number;
18
+ warningCount: number;
19
+ }
20
+ /**
21
+ * Run TypeScript compiler diagnostics on a directory
22
+ * @param directory - Project directory containing tsconfig.json
23
+ * @returns Result with diagnostics, error count, and warning count
24
+ */
25
+ export declare function runTscDiagnostics(directory: string): TscResult;
26
+ //# sourceMappingURL=tsc-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsc-runner.d.ts","sourceRoot":"","sources":["../../../src/tools/diagnostics/tsc-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CA4B9D"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * TypeScript Compiler Diagnostics Runner
3
+ *
4
+ * Executes `tsc --noEmit` to get project-level type checking diagnostics.
5
+ */
6
+ import { execSync } from 'child_process';
7
+ import { existsSync } from 'fs';
8
+ import { join } from 'path';
9
+ /**
10
+ * Run TypeScript compiler diagnostics on a directory
11
+ * @param directory - Project directory containing tsconfig.json
12
+ * @returns Result with diagnostics, error count, and warning count
13
+ */
14
+ export function runTscDiagnostics(directory) {
15
+ const tsconfigPath = join(directory, 'tsconfig.json');
16
+ if (!existsSync(tsconfigPath)) {
17
+ return {
18
+ success: true,
19
+ diagnostics: [],
20
+ errorCount: 0,
21
+ warningCount: 0
22
+ };
23
+ }
24
+ try {
25
+ execSync('tsc --noEmit --pretty false', {
26
+ cwd: directory,
27
+ encoding: 'utf-8',
28
+ stdio: 'pipe'
29
+ });
30
+ return {
31
+ success: true,
32
+ diagnostics: [],
33
+ errorCount: 0,
34
+ warningCount: 0
35
+ };
36
+ }
37
+ catch (error) {
38
+ const output = error.stdout || error.stderr || '';
39
+ return parseTscOutput(output);
40
+ }
41
+ }
42
+ /**
43
+ * Parse TypeScript compiler output into structured diagnostics
44
+ * Format: file(line,col): error TS1234: message
45
+ */
46
+ function parseTscOutput(output) {
47
+ const diagnostics = [];
48
+ // Parse tsc output format: file(line,col): error TS1234: message
49
+ const regex = /^(.+)\((\d+),(\d+)\):\s+(error|warning)\s+(TS\d+):\s+(.+)$/gm;
50
+ let match;
51
+ while ((match = regex.exec(output)) !== null) {
52
+ diagnostics.push({
53
+ file: match[1],
54
+ line: parseInt(match[2], 10),
55
+ column: parseInt(match[3], 10),
56
+ severity: match[4],
57
+ code: match[5],
58
+ message: match[6]
59
+ });
60
+ }
61
+ const errorCount = diagnostics.filter(d => d.severity === 'error').length;
62
+ const warningCount = diagnostics.filter(d => d.severity === 'warning').length;
63
+ return {
64
+ success: errorCount === 0,
65
+ diagnostics,
66
+ errorCount,
67
+ warningCount
68
+ };
69
+ }
70
+ //# sourceMappingURL=tsc-runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsc-runner.js","sourceRoot":"","sources":["../../../src/tools/diagnostics/tsc-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAkB5B;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IACjD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAEtD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;SAChB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,QAAQ,CAAC,6BAA6B,EAAE;YACtC,GAAG,EAAE,SAAS;YACd,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,CAAC;YACb,YAAY,EAAE,CAAC;SAChB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;QAClD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,WAAW,GAAoB,EAAE,CAAC;IAExC,iEAAiE;IACjE,MAAM,KAAK,GAAG,8DAA8D,CAAC;IAC7E,IAAI,KAAK,CAAC;IAEV,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACd,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC9B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAwB;YACzC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YACd,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;SAClB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IAC1E,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAE9E,OAAO;QACL,OAAO,EAAE,UAAU,KAAK,CAAC;QACzB,WAAW;QACX,UAAU;QACV,YAAY;KACb,CAAC;AACJ,CAAC"}
@@ -109,6 +109,13 @@ export declare const lspCodeActionResolveTool: ToolDefinition<{
109
109
  endCharacter: z.ZodNumber;
110
110
  actionIndex: z.ZodNumber;
111
111
  }>;
112
+ /**
113
+ * LSP Diagnostics Directory Tool - Get project-level diagnostics
114
+ */
115
+ export declare const lspDiagnosticsDirectoryTool: ToolDefinition<{
116
+ directory: z.ZodString;
117
+ strategy: z.ZodOptional<z.ZodEnum<['tsc', 'lsp', 'auto']>>;
118
+ }>;
112
119
  /**
113
120
  * Get all LSP tool definitions
114
121
  */
@@ -147,5 +154,8 @@ export declare const lspTools: (ToolDefinition<{
147
154
  endLine: z.ZodNumber;
148
155
  endCharacter: z.ZodNumber;
149
156
  actionIndex: z.ZodNumber;
157
+ }> | ToolDefinition<{
158
+ directory: z.ZodString;
159
+ strategy: z.ZodOptional<z.ZodEnum<["tsc", "lsp", "auto"]>>;
150
160
  }>)[];
151
161
  //# sourceMappingURL=lsp-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-tools.d.ts","sourceRoot":"","sources":["../../src/tools/lsp-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp-tools.d.ts","sourceRoot":"","sources":["../../src/tools/lsp-tools.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  import { z } from 'zod';
14
14
  import { lspClientManager, getAllServers, getServerForFile, formatHover, formatLocations, formatDocumentSymbols, formatWorkspaceSymbols, formatDiagnostics, formatCodeActions, formatWorkspaceEdit, countEdits } from './lsp/index.js';
15
+ import { runDirectoryDiagnostics, LSP_DIAGNOSTICS_WAIT_MS } from './diagnostics/index.js';
15
16
  /**
16
17
  * Helper to handle LSP errors gracefully
17
18
  */
@@ -167,7 +168,7 @@ export const lspDiagnosticsTool = {
167
168
  // Open the document to trigger diagnostics
168
169
  await client.openDocument(file);
169
170
  // Wait a bit for diagnostics to be published
170
- await new Promise(resolve => setTimeout(resolve, 500));
171
+ await new Promise(resolve => setTimeout(resolve, LSP_DIAGNOSTICS_WAIT_MS));
171
172
  let diagnostics = client.getDiagnostics(file);
172
173
  if (severity) {
173
174
  const severityMap = {
@@ -339,6 +340,46 @@ export const lspCodeActionResolveTool = {
339
340
  });
340
341
  }
341
342
  };
343
+ /**
344
+ * LSP Diagnostics Directory Tool - Get project-level diagnostics
345
+ */
346
+ export const lspDiagnosticsDirectoryTool = {
347
+ name: 'lsp_diagnostics_directory',
348
+ description: 'Run project-level diagnostics on a directory using tsc --noEmit (preferred) or LSP iteration (fallback). Useful for checking the entire codebase for errors.',
349
+ schema: {
350
+ directory: z.string().describe('Project directory to check'),
351
+ strategy: z.enum(['tsc', 'lsp', 'auto']).optional().describe('Strategy to use: "tsc" (TypeScript compiler), "lsp" (Language Server iteration), or "auto" (default: auto-detect)')
352
+ },
353
+ handler: async (args) => {
354
+ const { directory, strategy = 'auto' } = args;
355
+ try {
356
+ const result = await runDirectoryDiagnostics(directory, strategy);
357
+ let output = `## Directory Diagnostics\n\n`;
358
+ output += `Strategy: ${result.strategy}\n`;
359
+ output += `Summary: ${result.summary}\n\n`;
360
+ if (result.errorCount > 0 || result.warningCount > 0) {
361
+ output += `### Diagnostics\n\n${result.diagnostics}`;
362
+ }
363
+ else {
364
+ output += result.diagnostics;
365
+ }
366
+ return {
367
+ content: [{
368
+ type: 'text',
369
+ text: output
370
+ }]
371
+ };
372
+ }
373
+ catch (error) {
374
+ return {
375
+ content: [{
376
+ type: 'text',
377
+ text: `Error running directory diagnostics: ${error instanceof Error ? error.message : String(error)}`
378
+ }]
379
+ };
380
+ }
381
+ }
382
+ };
342
383
  /**
343
384
  * Get all LSP tool definitions
344
385
  */
@@ -349,6 +390,7 @@ export const lspTools = [
349
390
  lspDocumentSymbolsTool,
350
391
  lspWorkspaceSymbolsTool,
351
392
  lspDiagnosticsTool,
393
+ lspDiagnosticsDirectoryTool,
352
394
  lspServersTool,
353
395
  lspPrepareRenameTool,
354
396
  lspRenameTool,
@@ -1 +1 @@
1
- {"version":3,"file":"lsp-tools.js","sourceRoot":"","sources":["../../src/tools/lsp-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lsp-tools.js","sourceRoot":"","sources":["../../src/tools/lsp-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,UAAU,EACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAS1F;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,QAAgB,EAChB,SAAiB,EACjB,EAAyF;IAEzF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAEjE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,+CAA+C,QAAQ,6DAA6D;yBAC3H,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,oBAAoB,YAAY,CAAC,IAAI,qCAAqC,YAAY,CAAC,WAAW,EAAE;qBAC3G,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;iBACrB,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,YAAY,SAAS,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;iBACzF,CAAC;SACH,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAIpB;IACH,IAAI,EAAE,WAAW;IACjB,WAAW,EAAE,yIAAyI;IACtJ,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;KAC1F;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACvC,OAAO,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,MAAM,MAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YAC7D,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAI7B;IACH,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,6IAA6I;IAC1J,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;KAC1F;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACvC,OAAO,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,MAAM,SAAS,GAAG,MAAM,MAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YACtE,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAK7B;IACH,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,qHAAqH;IAClI,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QACzF,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;KAC1G;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QAClE,OAAO,aAAa,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,MAAM,SAAS,GAAG,MAAM,MAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;YAC1F,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,OAAO,qBAAqB,CAAC;YAC/B,CAAC;YACD,OAAO,SAAS,SAAS,CAAC,MAAM,qBAAqB,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QACpF,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAE9B;IACH,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,qIAAqI;IAClJ,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KACrD;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,OAAO,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAG,MAAM,MAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACpD,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAG/B;IACH,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,mJAAmJ;IAChK,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QAC9D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;KACxG;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QAC7B,OAAO,aAAa,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC/D,MAAM,OAAO,GAAG,MAAM,MAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,OAAO,8BAA8B,KAAK,EAAE,CAAC;YAC/C,CAAC;YACD,OAAO,SAAS,OAAO,CAAC,MAAM,wBAAwB,KAAK,SAAS,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;QACxG,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAG1B;IACH,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,+HAA+H;IAC5I,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;KACvG;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;QAChC,OAAO,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACzD,2CAA2C;YAC3C,MAAM,MAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACjC,6CAA6C;YAC7C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC;YAE3E,IAAI,WAAW,GAAG,MAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAE/C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,WAAW,GAA2B;oBAC1C,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,CAAC;oBACT,MAAM,EAAE,CAAC;iBACV,CAAC;gBACF,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC1C,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,QAAQ;oBACb,CAAC,CAAC,MAAM,QAAQ,mBAAmB,IAAI,EAAE;oBACzC,CAAC,CAAC,qBAAqB,IAAI,EAAE,CAAC;YAClC,CAAC;YAED,OAAO,SAAS,WAAW,CAAC,MAAM,sBAAsB,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;QACjG,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA0C;IACnE,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,mIAAmI;IAChJ,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;QAEhC,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,IAAI,GAAG,+BAA+B,CAAC;QAE3C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,IAAI,kBAAkB,CAAC;YAC3B,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;gBAC/B,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,KAAK,CAAC;gBACjD,IAAI,IAAI,iBAAiB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5D,CAAC;YACD,IAAI,IAAI,IAAI,CAAC;QACf,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,IAAI,sBAAsB,CAAC;YAC/B,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;gBAClC,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,OAAO,KAAK,CAAC;gBACjD,IAAI,IAAI,iBAAiB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1D,IAAI,IAAI,cAAc,MAAM,CAAC,WAAW,IAAI,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAe;oBACrB,IAAI;iBACL,CAAC;SACH,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAI5B;IACH,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,gHAAgH;IAC7H,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;KAC1F;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QACvC,OAAO,aAAa,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC5D,MAAM,KAAK,GAAG,MAAM,MAAO,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YACrE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,uCAAuC,CAAC;YACjD,CAAC;YACD,OAAO,uCAAuC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,YAAY,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACvK,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAKrB;IACH,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,4KAA4K;IACzL,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACjE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QACzF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KAC/D;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAChD,OAAO,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,IAAI,GAAG,MAAM,MAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACtE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,oCAAoC,CAAC;YAC9C,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAC1C,OAAO,cAAc,OAAO,kBAAkB,KAAK,iBAAiB,KAAK,gBAAgB,mBAAmB,CAAC,IAAI,CAAC,qDAAqD,CAAC;QAC1K,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAM1B;IACH,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,iIAAiI;IAC9I,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAClF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QAC5F,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC9E,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;KACzF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QACxE,OAAO,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC1D,MAAM,KAAK,GAAG;gBACZ,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE;gBACzD,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE;aACpD,CAAC;YACF,MAAM,OAAO,GAAG,MAAM,MAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACvD,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAOhC;IACH,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE,4HAA4H;IACzI,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QAClF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QAC5F,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC9E,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QACxF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;KAC/G;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;QACrF,OAAO,aAAa,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACjE,MAAM,KAAK,GAAG;gBACZ,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE;gBACzD,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE;aACpD,CAAC;YACF,MAAM,OAAO,GAAG,MAAM,MAAO,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEvD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,OAAO,2BAA2B,CAAC;YACrC,CAAC;YAED,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpD,OAAO,8CAA8C,OAAO,CAAC,MAAM,EAAE,CAAC;YACxE,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;YAExC,IAAI,MAAM,GAAG,WAAW,MAAM,CAAC,KAAK,IAAI,CAAC;YACzC,IAAI,MAAM,CAAC,IAAI;gBAAE,MAAM,IAAI,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC;YACpD,IAAI,MAAM,CAAC,WAAW;gBAAE,MAAM,IAAI,eAAe,CAAC;YAElD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChB,MAAM,IAAI,aAAa,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5D,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,IAAI,cAAc,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC;YAC7E,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAGnC;IACH,IAAI,EAAE,2BAA2B;IACjC,WAAW,EAAE,8JAA8J;IAC3K,MAAM,EAAE;QACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC5D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mHAAmH,CAAC;KAClL;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAElE,IAAI,MAAM,GAAG,8BAA8B,CAAC;YAC5C,MAAM,IAAI,aAAa,MAAM,CAAC,QAAQ,IAAI,CAAC;YAC3C,MAAM,IAAI,YAAY,MAAM,CAAC,OAAO,MAAM,CAAC;YAE3C,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,sBAAsB,MAAM,CAAC,WAAW,EAAE,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC;YAC/B,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,MAAM;qBACb,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,wCAAwC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACvG,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,YAAY;IACZ,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;IACtB,uBAAuB;IACvB,kBAAkB;IAClB,2BAA2B;IAC3B,cAAc;IACd,oBAAoB;IACpB,aAAa;IACb,kBAAkB;IAClB,wBAAwB;CACzB,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Resume Session Tool
3
+ *
4
+ * Wrapper tool to resume a previous background agent session.
5
+ * Returns context for the orchestrator to include in the next Task delegation.
6
+ *
7
+ * Since Claude Code's native Task tool cannot be extended, this tool provides
8
+ * a convenient way to retrieve session context and build continuation prompts.
9
+ */
10
+ /**
11
+ * Input for resuming a session
12
+ */
13
+ export interface ResumeSessionInput {
14
+ /** Session ID to resume */
15
+ sessionId: string;
16
+ }
17
+ /**
18
+ * Output from resume session operation
19
+ */
20
+ export interface ResumeSessionOutput {
21
+ /** Whether the operation succeeded */
22
+ success: boolean;
23
+ /** Resume context (if successful) */
24
+ context?: {
25
+ /** Original prompt from the session */
26
+ previousPrompt: string;
27
+ /** Number of tool calls made so far */
28
+ toolCallCount: number;
29
+ /** Last tool used (if any) */
30
+ lastToolUsed?: string;
31
+ /** Summary of last output (truncated to 500 chars) */
32
+ lastOutputSummary?: string;
33
+ /** Formatted continuation prompt to include in next Task delegation */
34
+ continuationPrompt: string;
35
+ };
36
+ /** Error message (if failed) */
37
+ error?: string;
38
+ }
39
+ /**
40
+ * Resume a background agent session
41
+ *
42
+ * This tool retrieves the context from a previous background session and
43
+ * prepares a continuation prompt that can be used when delegating to the
44
+ * Task tool again.
45
+ *
46
+ * @param input - Session ID to resume
47
+ * @returns Resume context or error
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * const result = resumeSession({ sessionId: 'ses_abc123' });
52
+ * if (result.success && result.context) {
53
+ * // Use result.context.continuationPrompt in your next Task delegation
54
+ * Task({
55
+ * subagent_type: "oh-my-claudecode:executor",
56
+ * model: "sonnet",
57
+ * prompt: result.context.continuationPrompt
58
+ * });
59
+ * }
60
+ * ```
61
+ */
62
+ export declare function resumeSession(input: ResumeSessionInput): ResumeSessionOutput;
63
+ //# sourceMappingURL=resume-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resume-session.d.ts","sourceRoot":"","sources":["../../src/tools/resume-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,qCAAqC;IACrC,OAAO,CAAC,EAAE;QACR,uCAAuC;QACvC,cAAc,EAAE,MAAM,CAAC;QACvB,uCAAuC;QACvC,aAAa,EAAE,MAAM,CAAC;QACtB,8BAA8B;QAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,sDAAsD;QACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,uEAAuE;QACvE,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,mBAAmB,CA+B5E"}