vibecodingmachine-core 2026.2.20-438 → 2026.2.26-1739

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 (202) hide show
  1. package/README.md +240 -0
  2. package/package.json +10 -2
  3. package/src/agents/Agent.js +300 -0
  4. package/src/agents/AgentAdditionService.js +311 -0
  5. package/src/agents/AgentCheckService.js +690 -0
  6. package/src/agents/AgentInstallationService.js +140 -0
  7. package/src/agents/AgentSetupService.js +467 -0
  8. package/src/agents/AgentStatus.js +183 -0
  9. package/src/agents/AgentVerificationService.js +634 -0
  10. package/src/agents/ConfigurationSchemaValidator.js +543 -0
  11. package/src/agents/EnvironmentConfigurationManager.js +602 -0
  12. package/src/agents/InstallationErrorHandler.js +372 -0
  13. package/src/agents/InstallationLog.js +363 -0
  14. package/src/agents/InstallationMethod.js +510 -0
  15. package/src/agents/InstallationOrchestrator.js +352 -0
  16. package/src/agents/InstallationProgressReporter.js +372 -0
  17. package/src/agents/InstallationRetryManager.js +322 -0
  18. package/src/agents/InstallationType.js +254 -0
  19. package/src/agents/OperationTypes.js +310 -0
  20. package/src/agents/PerformanceMetricsCollector.js +493 -0
  21. package/src/agents/SecurityValidationService.js +534 -0
  22. package/src/agents/VerificationTest.js +354 -0
  23. package/src/agents/VerificationType.js +226 -0
  24. package/src/agents/WindowsPermissionHandler.js +518 -0
  25. package/src/agents/config/AgentConfigManager.js +393 -0
  26. package/src/agents/config/AgentDefaultsRegistry.js +373 -0
  27. package/src/agents/config/ConfigValidator.js +281 -0
  28. package/src/agents/discovery/AgentDiscoveryService.js +707 -0
  29. package/src/agents/logging/AgentLogger.js +511 -0
  30. package/src/agents/status/AgentStatusManager.js +481 -0
  31. package/src/agents/storage/FileManager.js +454 -0
  32. package/src/agents/verification/AgentCommunicationTester.js +474 -0
  33. package/src/agents/verification/BaseVerifier.js +430 -0
  34. package/src/agents/verification/CommandVerifier.js +480 -0
  35. package/src/agents/verification/FileOperationVerifier.js +453 -0
  36. package/src/agents/verification/ResultAnalyzer.js +707 -0
  37. package/src/agents/verification/TestRequirementManager.js +495 -0
  38. package/src/agents/verification/VerificationRunner.js +433 -0
  39. package/src/agents/windows/BaseWindowsInstaller.js +441 -0
  40. package/src/agents/windows/ChocolateyInstaller.js +509 -0
  41. package/src/agents/windows/DirectInstaller.js +443 -0
  42. package/src/agents/windows/InstallerFactory.js +391 -0
  43. package/src/agents/windows/NpmInstaller.js +505 -0
  44. package/src/agents/windows/PowerShellInstaller.js +458 -0
  45. package/src/agents/windows/WinGetInstaller.js +390 -0
  46. package/src/analysis/analysis-reporter.js +132 -0
  47. package/src/analysis/boundary-detector.js +712 -0
  48. package/src/analysis/categorizer.js +340 -0
  49. package/src/analysis/codebase-scanner.js +384 -0
  50. package/src/analysis/line-counter.js +513 -0
  51. package/src/analysis/priority-calculator.js +679 -0
  52. package/src/analysis/report/analysis-report.js +250 -0
  53. package/src/analysis/report/package-analyzer.js +278 -0
  54. package/src/analysis/report/recommendation-generator.js +382 -0
  55. package/src/analysis/report/statistics-generator.js +515 -0
  56. package/src/analysis/reports/analysis-report-model.js +101 -0
  57. package/src/analysis/reports/recommendation-generator.js +283 -0
  58. package/src/analysis/reports/report-generators.js +191 -0
  59. package/src/analysis/reports/statistics-calculator.js +231 -0
  60. package/src/analysis/reports/trend-analyzer.js +219 -0
  61. package/src/analysis/strategy-generator.js +814 -0
  62. package/src/auto-mode/AutoModeBusinessLogic.js +836 -0
  63. package/src/config/refactoring-config.js +307 -0
  64. package/src/health-tracking/json-storage.js +38 -2
  65. package/src/ide-integration/applescript-manager-core.js +233 -0
  66. package/src/ide-integration/applescript-manager.cjs +357 -28
  67. package/src/ide-integration/applescript-manager.js +89 -3599
  68. package/src/ide-integration/cdp-manager.js +306 -0
  69. package/src/ide-integration/claude-code-cli-manager.cjs +1 -1
  70. package/src/ide-integration/continuation-handler.js +337 -0
  71. package/src/ide-integration/ide-status-checker.js +292 -0
  72. package/src/ide-integration/macos-ide-manager.js +627 -0
  73. package/src/ide-integration/macos-text-sender.js +528 -0
  74. package/src/ide-integration/response-reader.js +548 -0
  75. package/src/ide-integration/windows-automation-manager.js +121 -0
  76. package/src/ide-integration/windows-ide-manager.js +373 -0
  77. package/src/index.cjs +25 -3
  78. package/src/index.js +15 -1
  79. package/src/llm/direct-llm-manager.cjs +90 -2
  80. package/src/models/compliance-report.js +538 -0
  81. package/src/models/file-analysis.js +681 -0
  82. package/src/models/refactoring-plan.js +770 -0
  83. package/src/monitoring/alert-system.js +834 -0
  84. package/src/monitoring/compliance-progress-tracker.js +437 -0
  85. package/src/monitoring/continuous-scan-notifications.js +661 -0
  86. package/src/monitoring/continuous-scanner.js +279 -0
  87. package/src/monitoring/file-monitor/file-analyzer.js +262 -0
  88. package/src/monitoring/file-monitor/file-monitor.js +237 -0
  89. package/src/monitoring/file-monitor/watcher.js +194 -0
  90. package/src/monitoring/file-monitor.js +17 -0
  91. package/src/monitoring/notification-manager.js +437 -0
  92. package/src/monitoring/scanner-core.js +368 -0
  93. package/src/monitoring/scanner-events.js +214 -0
  94. package/src/monitoring/violation-notification-system.js +515 -0
  95. package/src/refactoring/boundaries/cohesion-analyzer.js +316 -0
  96. package/src/refactoring/boundaries/extraction-result.js +285 -0
  97. package/src/refactoring/boundaries/extraction-strategies.js +392 -0
  98. package/src/refactoring/boundaries/module-boundary.js +209 -0
  99. package/src/refactoring/boundary/boundary-detector.js +741 -0
  100. package/src/refactoring/boundary/boundary-types.js +405 -0
  101. package/src/refactoring/boundary/extraction-strategies.js +554 -0
  102. package/src/refactoring/boundary-extraction-result.js +77 -0
  103. package/src/refactoring/boundary-extraction-strategies.js +330 -0
  104. package/src/refactoring/boundary-extractor.js +384 -0
  105. package/src/refactoring/boundary-types.js +46 -0
  106. package/src/refactoring/circular/circular-dependency.js +88 -0
  107. package/src/refactoring/circular/cycle-detection.js +147 -0
  108. package/src/refactoring/circular/dependency-node.js +82 -0
  109. package/src/refactoring/circular/dependency-result.js +107 -0
  110. package/src/refactoring/circular/dependency-types.js +58 -0
  111. package/src/refactoring/circular/graph-builder.js +213 -0
  112. package/src/refactoring/circular/resolution-strategy.js +72 -0
  113. package/src/refactoring/circular/strategy-generator.js +229 -0
  114. package/src/refactoring/circular-dependency-resolver-original.js +809 -0
  115. package/src/refactoring/circular-dependency-resolver.js +200 -0
  116. package/src/refactoring/code-mover.js +761 -0
  117. package/src/refactoring/file-splitter.js +696 -0
  118. package/src/refactoring/functionality-validator.js +816 -0
  119. package/src/refactoring/import-manager.js +774 -0
  120. package/src/refactoring/module-boundary.js +107 -0
  121. package/src/refactoring/refactoring-executor.js +672 -0
  122. package/src/refactoring/refactoring-rollback.js +614 -0
  123. package/src/refactoring/test-validator.js +631 -0
  124. package/src/requirement-management/default-requirement-manager.js +321 -0
  125. package/src/requirement-management/requirement-file-parser.js +159 -0
  126. package/src/requirement-management/requirement-sequencer.js +221 -0
  127. package/src/rui/commands/AgentCommandParser.js +600 -0
  128. package/src/rui/commands/AgentCommands.js +487 -0
  129. package/src/rui/commands/AgentResponseFormatter.js +832 -0
  130. package/src/scripts/verify-full-compliance.js +269 -0
  131. package/src/sync/sync-engine-core.js +1 -0
  132. package/src/sync/sync-engine-remote-handlers.js +135 -0
  133. package/src/task-generation/automated-task-generator.js +351 -0
  134. package/src/task-generation/prioritizer.js +287 -0
  135. package/src/task-generation/task-list-updater.js +215 -0
  136. package/src/task-generation/task-management-integration.js +480 -0
  137. package/src/task-generation/task-manager-integration.js +270 -0
  138. package/src/task-generation/violation-task-generator.js +474 -0
  139. package/src/task-management/continuous-scan-integration.js +342 -0
  140. package/src/timeout-management/index.js +12 -3
  141. package/src/timeout-management/response-time-tracker.js +167 -0
  142. package/src/timeout-management/timeout-calculator.js +159 -0
  143. package/src/timeout-management/timeout-config-manager.js +172 -0
  144. package/src/utils/ast-analyzer.js +417 -0
  145. package/src/utils/current-requirement-manager.js +276 -0
  146. package/src/utils/current-requirement-operations.js +472 -0
  147. package/src/utils/dependency-mapper.js +456 -0
  148. package/src/utils/download-with-progress.js +4 -2
  149. package/src/utils/electron-update-checker.js +4 -1
  150. package/src/utils/file-size-analyzer.js +272 -0
  151. package/src/utils/import-updater.js +280 -0
  152. package/src/utils/refactoring-tools.js +512 -0
  153. package/src/utils/report-generator.js +569 -0
  154. package/src/utils/reports/report-analysis.js +218 -0
  155. package/src/utils/reports/report-types.js +55 -0
  156. package/src/utils/reports/summary-generators.js +102 -0
  157. package/src/utils/requirement-file-management.js +157 -0
  158. package/src/utils/requirement-helpers/requirement-file-ops.js +392 -0
  159. package/src/utils/requirement-helpers/requirement-mover.js +414 -0
  160. package/src/utils/requirement-helpers/requirement-parser.js +326 -0
  161. package/src/utils/requirement-helpers/requirement-status.js +320 -0
  162. package/src/utils/requirement-helpers-new.js +55 -0
  163. package/src/utils/requirement-helpers-refactored.js +367 -0
  164. package/src/utils/requirement-helpers.js +291 -1191
  165. package/src/utils/requirement-movement-operations.js +450 -0
  166. package/src/utils/requirement-movement.js +312 -0
  167. package/src/utils/requirement-parsing-helpers.js +56 -0
  168. package/src/utils/requirement-statistics.js +200 -0
  169. package/src/utils/requirement-text-utils.js +58 -0
  170. package/src/utils/rollback/rollback-handlers.js +125 -0
  171. package/src/utils/rollback/rollback-operation.js +63 -0
  172. package/src/utils/rollback/rollback-recorder.js +166 -0
  173. package/src/utils/rollback/rollback-state-manager.js +175 -0
  174. package/src/utils/rollback/rollback-types.js +33 -0
  175. package/src/utils/rollback/rollback-utils.js +110 -0
  176. package/src/utils/rollback-manager-original.js +569 -0
  177. package/src/utils/rollback-manager.js +202 -0
  178. package/src/utils/smoke-test-cli.js +362 -0
  179. package/src/utils/smoke-test-gui.js +351 -0
  180. package/src/utils/smoke-test-orchestrator.js +321 -0
  181. package/src/utils/smoke-test-runner.js +60 -0
  182. package/src/utils/smoke-test-web.js +347 -0
  183. package/src/utils/specification-helpers.js +39 -13
  184. package/src/utils/specification-migration.js +97 -0
  185. package/src/utils/test-runner.js +579 -0
  186. package/src/utils/validation-framework.js +518 -0
  187. package/src/validation/compliance-analyzer.js +197 -0
  188. package/src/validation/compliance-report-generator.js +343 -0
  189. package/src/validation/compliance-reporter.js +711 -0
  190. package/src/validation/compliance-rules.js +127 -0
  191. package/src/validation/constitution-validator-new.js +196 -0
  192. package/src/validation/constitution-validator.js +17 -0
  193. package/src/validation/file-validators.js +170 -0
  194. package/src/validation/line-limit/file-analyzer.js +201 -0
  195. package/src/validation/line-limit/line-limit-validator.js +208 -0
  196. package/src/validation/line-limit/validation-result.js +144 -0
  197. package/src/validation/line-limit-core.js +225 -0
  198. package/src/validation/line-limit-reporter.js +134 -0
  199. package/src/validation/line-limit-result.js +125 -0
  200. package/src/validation/line-limit-validator.js +41 -0
  201. package/src/validation/metrics-calculator.js +660 -0
  202. package/src/sync/sync-engine-backup.js +0 -559
@@ -0,0 +1,292 @@
1
+ // @vibecodingmachine/core - IDE Status Checker
2
+ // Cross-platform IDE status checking functionality
3
+
4
+ const { execSync } = require('child_process');
5
+
6
+ /**
7
+ * IDE Status Checker for cross-platform IDE status detection
8
+ * Handles status checking for all supported IDEs
9
+ */
10
+ class IDEStatusChecker {
11
+ constructor(platform, windowsManager = null) {
12
+ this.logger = console;
13
+ this.platform = platform;
14
+ this.windowsManager = windowsManager;
15
+ }
16
+
17
+ /**
18
+ * Check if an IDE is running and accessible
19
+ * @param {string} ide - The IDE name
20
+ * @returns {Promise<Object>} Result object with success status and details
21
+ */
22
+ async getIDEStatus(ide) {
23
+ if (!ide || typeof ide !== 'string') {
24
+ return {
25
+ success: false,
26
+ error: 'Invalid IDE name provided',
27
+ running: false
28
+ };
29
+ }
30
+
31
+ try {
32
+ this.logger.log(`🔍 Checking status of ${ide}...`);
33
+
34
+ switch (ide.toLowerCase()) {
35
+ case 'cursor':
36
+ return await this._checkCursorStatus();
37
+ case 'vscode':
38
+ return await this._checkVSCodeStatus();
39
+ case 'windsurf':
40
+ return await this._checkWindsurfStatus();
41
+ case 'antigravity':
42
+ return await this._checkAntigravityStatus();
43
+ case 'cline':
44
+ return await this._checkClineStatus();
45
+ default:
46
+ return {
47
+ success: false,
48
+ error: `Unsupported IDE: ${ide}`,
49
+ running: false
50
+ };
51
+ }
52
+ } catch (error) {
53
+ return {
54
+ success: false,
55
+ error: `Failed to check IDE status: ${error.message}`,
56
+ running: false
57
+ };
58
+ }
59
+ }
60
+
61
+ /**
62
+ * Check Cursor status
63
+ * @private
64
+ */
65
+ async _checkCursorStatus() {
66
+ if (this.platform === 'win32' && this.windowsManager) {
67
+ return await this.windowsManager.checkCursorStatus();
68
+ }
69
+
70
+ try {
71
+ const script = `
72
+ tell application "System Events"
73
+ set isRunning to (exists process "Cursor")
74
+ if isRunning then
75
+ try
76
+ tell application "Cursor" to activate
77
+ delay 0.5
78
+ return "running"
79
+ on error
80
+ return "error"
81
+ end try
82
+ else
83
+ return "not_running"
84
+ end if
85
+ end tell
86
+ `;
87
+
88
+ const result = execSync(`osascript -e '${script}'`, { encoding: 'utf8' }).trim();
89
+ const running = result.includes('running');
90
+
91
+ return {
92
+ success: true,
93
+ running,
94
+ status: running ? 'running' : 'not_running',
95
+ message: running ? 'Cursor is running and accessible' : 'Cursor is not running'
96
+ };
97
+ } catch (error) {
98
+ return {
99
+ success: false,
100
+ error: `Failed to check Cursor status: ${error.message}`,
101
+ running: false
102
+ };
103
+ }
104
+ }
105
+
106
+ /**
107
+ * Check VS Code status
108
+ * @private
109
+ */
110
+ async _checkVSCodeStatus() {
111
+ if (this.platform === 'win32' && this.windowsManager) {
112
+ return await this.windowsManager.checkVSCodeStatus();
113
+ }
114
+
115
+ try {
116
+ const script = `
117
+ tell application "System Events"
118
+ set isRunning to (exists process "Code")
119
+ if isRunning then
120
+ try
121
+ tell application "Visual Studio Code" to activate
122
+ delay 0.5
123
+ return "running"
124
+ on error
125
+ return "error"
126
+ end try
127
+ else
128
+ return "not_running"
129
+ end if
130
+ end tell
131
+ `;
132
+
133
+ const result = execSync(`osascript -e '${script}'`, { encoding: 'utf8' }).trim();
134
+ const running = result.includes('running');
135
+
136
+ return {
137
+ success: true,
138
+ running,
139
+ status: running ? 'running' : 'not_running',
140
+ message: running ? 'VS Code is running and accessible' : 'VS Code is not running'
141
+ };
142
+ } catch (error) {
143
+ return {
144
+ success: false,
145
+ error: `Failed to check VS Code status: ${error.message}`,
146
+ running: false
147
+ };
148
+ }
149
+ }
150
+
151
+ /**
152
+ * Check Windsurf status
153
+ * @private
154
+ */
155
+ async _checkWindsurfStatus() {
156
+ if (this.platform === 'win32' && this.windowsManager) {
157
+ return await this.windowsManager.checkWindsurfStatus();
158
+ }
159
+
160
+ try {
161
+ const script = `
162
+ tell application "System Events"
163
+ set isRunning to (exists process "Windsurf")
164
+ if isRunning then
165
+ try
166
+ tell application "Windsurf" to activate
167
+ delay 0.5
168
+ return "running"
169
+ on error
170
+ return "error"
171
+ end try
172
+ else
173
+ return "not_running"
174
+ end if
175
+ end tell
176
+ `;
177
+
178
+ const result = execSync(`osascript -e '${script}'`, { encoding: 'utf8' }).trim();
179
+ const running = result.includes('running');
180
+
181
+ return {
182
+ success: true,
183
+ running,
184
+ status: running ? 'running' : 'not_running',
185
+ message: running ? 'Windsurf is running and accessible' : 'Windsurf is not running'
186
+ };
187
+ } catch (error) {
188
+ return {
189
+ success: false,
190
+ error: `Failed to check Windsurf status: ${error.message}`,
191
+ running: false
192
+ };
193
+ }
194
+ }
195
+
196
+ /**
197
+ * Check Antigravity status
198
+ * @private
199
+ */
200
+ async _checkAntigravityStatus() {
201
+ if (this.platform === 'win32' && this.windowsManager) {
202
+ return await this.windowsManager.checkAntigravityStatus();
203
+ }
204
+
205
+ try {
206
+ // Antigravity runs in browser, check if Chrome/Edge is running with Antigravity tab
207
+ const script = `
208
+ tell application "System Events"
209
+ set isChromeRunning to (exists process "Google Chrome")
210
+ set isEdgeRunning to (exists process "Microsoft Edge")
211
+
212
+ if isChromeRunning then
213
+ try
214
+ tell application "Google Chrome" to activate
215
+ delay 0.5
216
+ return "running"
217
+ on error
218
+ return "error"
219
+ end try
220
+ else if isEdgeRunning then
221
+ try
222
+ tell application "Microsoft Edge" to activate
223
+ delay 0.5
224
+ return "running"
225
+ on error
226
+ return "error"
227
+ end try
228
+ else
229
+ return "not_running"
230
+ end if
231
+ end tell
232
+ `;
233
+
234
+ const result = execSync(`osascript -e '${script}'`, { encoding: 'utf8' }).trim();
235
+ const running = result.includes('running');
236
+
237
+ return {
238
+ success: true,
239
+ running,
240
+ status: running ? 'running' : 'not_running',
241
+ message: running ? 'Browser is running (Antigravity accessible)' : 'Browser is not running'
242
+ };
243
+ } catch (error) {
244
+ return {
245
+ success: false,
246
+ error: `Failed to check Antigravity status: ${error.message}`,
247
+ running: false
248
+ };
249
+ }
250
+ }
251
+
252
+ /**
253
+ * Check Cline status
254
+ * @private
255
+ */
256
+ async _checkClineStatus() {
257
+ if (this.platform === 'win32' && this.windowsManager) {
258
+ return await this.windowsManager.checkClineStatus();
259
+ }
260
+
261
+ try {
262
+ // Cline runs in VS Code as an extension
263
+ const vscodeStatus = await this._checkVSCodeStatus();
264
+
265
+ if (!vscodeStatus.running) {
266
+ return {
267
+ success: true,
268
+ running: false,
269
+ status: 'not_running',
270
+ message: 'Cline requires VS Code to be running'
271
+ };
272
+ }
273
+
274
+ // For now, assume Cline is available if VS Code is running
275
+ // In a more sophisticated implementation, we could check if the extension is installed
276
+ return {
277
+ success: true,
278
+ running: true,
279
+ status: 'running',
280
+ message: 'Cline is available (VS Code running)'
281
+ };
282
+ } catch (error) {
283
+ return {
284
+ success: false,
285
+ error: `Failed to check Cline status: ${error.message}`,
286
+ running: false
287
+ };
288
+ }
289
+ }
290
+ }
291
+
292
+ module.exports = IDEStatusChecker;