claude-flow-novice 2.0.3 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/dist/src/cli/commands/guidance.js +487 -668
  2. package/dist/src/cli/commands/index-validate.js +18 -29
  3. package/dist/src/cli/commands/mcp-troubleshoot.js +230 -282
  4. package/dist/src/cli/commands/neural-goal-init.js +92 -125
  5. package/dist/src/cli/commands/swarm-exec.js +317 -393
  6. package/dist/src/cli/commands/swarm.js +1 -1
  7. package/dist/src/cli/commands/validate-framework.js +983 -1100
  8. package/dist/src/cli/commands/validate.js +144 -223
  9. package/dist/src/cli/simple-commands/__tests__/agent.test.js +265 -277
  10. package/dist/src/cli/simple-commands/__tests__/memory.test.js +6 -7
  11. package/dist/src/cli/simple-commands/__tests__/swarm.test.js +373 -356
  12. package/dist/src/cli/simple-commands/__tests__/task.test.js +6 -7
  13. package/dist/src/cli/simple-commands/agent.js +157 -193
  14. package/dist/src/cli/simple-commands/analysis.js +336 -446
  15. package/dist/src/cli/simple-commands/automation-executor.js +1095 -1339
  16. package/dist/src/cli/simple-commands/automation.js +481 -469
  17. package/dist/src/cli/simple-commands/batch-manager.js +261 -313
  18. package/dist/src/cli/simple-commands/claude-telemetry.js +241 -267
  19. package/dist/src/cli/simple-commands/claude-track.js +68 -90
  20. package/dist/src/cli/simple-commands/concurrent-display.js +266 -320
  21. package/dist/src/cli/simple-commands/config.js +245 -290
  22. package/dist/src/cli/simple-commands/coordination.js +182 -234
  23. package/dist/src/cli/simple-commands/enhanced-ui-views.js +812 -615
  24. package/dist/src/cli/simple-commands/enhanced-webui-complete.js +922 -981
  25. package/dist/src/cli/simple-commands/fix-hook-variables.js +274 -294
  26. package/dist/src/cli/simple-commands/github/gh-coordinator.js +378 -457
  27. package/dist/src/cli/simple-commands/github/github-api.js +535 -574
  28. package/dist/src/cli/simple-commands/github/init.js +276 -303
  29. package/dist/src/cli/simple-commands/github.js +222 -247
  30. package/dist/src/cli/simple-commands/goal.js +51 -63
  31. package/dist/src/cli/simple-commands/hive-mind/auto-save-middleware.js +208 -278
  32. package/dist/src/cli/simple-commands/hive-mind/communication.js +601 -696
  33. package/dist/src/cli/simple-commands/hive-mind/core.js +907 -979
  34. package/dist/src/cli/simple-commands/hive-mind/db-optimizer.js +406 -655
  35. package/dist/src/cli/simple-commands/hive-mind/mcp-wrapper.js +1125 -1245
  36. package/dist/src/cli/simple-commands/hive-mind/memory.js +854 -1090
  37. package/dist/src/cli/simple-commands/hive-mind/performance-optimizer.js +459 -574
  38. package/dist/src/cli/simple-commands/hive-mind/performance-test.js +263 -347
  39. package/dist/src/cli/simple-commands/hive-mind/queen.js +727 -768
  40. package/dist/src/cli/simple-commands/hive-mind/session-manager.js +745 -1049
  41. package/dist/src/cli/simple-commands/hive-mind-optimize.js +227 -283
  42. package/dist/src/cli/simple-commands/hive-mind-wizard.js +174 -217
  43. package/dist/src/cli/simple-commands/hive-mind.js +1842 -2283
  44. package/dist/src/cli/simple-commands/hive.js +90 -79
  45. package/dist/src/cli/simple-commands/hook-safety.js +431 -521
  46. package/dist/src/cli/simple-commands/hooks/session-start-soul.js +203 -254
  47. package/dist/src/cli/simple-commands/hooks.js +1064 -1204
  48. package/dist/src/cli/simple-commands/init/agent-copier.js +294 -319
  49. package/dist/src/cli/simple-commands/init/batch-init.js +496 -562
  50. package/dist/src/cli/simple-commands/init/claude-commands/claude-flow-commands.js +13 -19
  51. package/dist/src/cli/simple-commands/init/claude-commands/optimized-claude-flow-commands.js +13 -19
  52. package/dist/src/cli/simple-commands/init/claude-commands/optimized-slash-commands.js +61 -88
  53. package/dist/src/cli/simple-commands/init/claude-commands/optimized-sparc-commands.js +125 -150
  54. package/dist/src/cli/simple-commands/init/claude-commands/slash-commands.js +42 -49
  55. package/dist/src/cli/simple-commands/init/claude-commands/sparc-commands.js +43 -61
  56. package/dist/src/cli/simple-commands/init/copy-revised-templates.js +141 -147
  57. package/dist/src/cli/simple-commands/init/executable-wrapper.js +31 -44
  58. package/dist/src/cli/simple-commands/init/gitignore-updater.js +64 -90
  59. package/dist/src/cli/simple-commands/init/help.js +104 -107
  60. package/dist/src/cli/simple-commands/init/hive-mind-init.js +509 -528
  61. package/dist/src/cli/simple-commands/init/index.js +1510 -1759
  62. package/dist/src/cli/simple-commands/init/performance-monitor.js +234 -317
  63. package/dist/src/cli/simple-commands/init/rollback/backup-manager.js +441 -504
  64. package/dist/src/cli/simple-commands/init/rollback/index.js +289 -364
  65. package/dist/src/cli/simple-commands/init/rollback/recovery-manager.js +652 -728
  66. package/dist/src/cli/simple-commands/init/rollback/rollback-executor.js +416 -481
  67. package/dist/src/cli/simple-commands/init/rollback/state-tracker.js +369 -448
  68. package/dist/src/cli/simple-commands/init/sparc/roo-readme.js +1 -2
  69. package/dist/src/cli/simple-commands/init/sparc/roomodes-config.js +122 -99
  70. package/dist/src/cli/simple-commands/init/sparc/workflows.js +32 -37
  71. package/dist/src/cli/simple-commands/init/sparc-structure.js +55 -62
  72. package/dist/src/cli/simple-commands/init/template-copier.js +421 -533
  73. package/dist/src/cli/simple-commands/init/templates/coordination-md.js +3 -6
  74. package/dist/src/cli/simple-commands/init/templates/enhanced-templates.js +344 -318
  75. package/dist/src/cli/simple-commands/init/templates/github-safe-enhanced.js +173 -218
  76. package/dist/src/cli/simple-commands/init/templates/github-safe.js +65 -75
  77. package/dist/src/cli/simple-commands/init/templates/memory-bank-md.js +3 -6
  78. package/dist/src/cli/simple-commands/init/templates/readme-files.js +2 -4
  79. package/dist/src/cli/simple-commands/init/templates/safe-hook-patterns.js +187 -230
  80. package/dist/src/cli/simple-commands/init/templates/sparc-modes.js +53 -80
  81. package/dist/src/cli/simple-commands/init/templates/verification-claude-md.js +101 -85
  82. package/dist/src/cli/simple-commands/init/validation/config-validator.js +283 -330
  83. package/dist/src/cli/simple-commands/init/validation/health-checker.js +495 -561
  84. package/dist/src/cli/simple-commands/init/validation/index.js +302 -358
  85. package/dist/src/cli/simple-commands/init/validation/mode-validator.js +308 -359
  86. package/dist/src/cli/simple-commands/init/validation/post-init-validator.js +389 -366
  87. package/dist/src/cli/simple-commands/init/validation/pre-init-validator.js +270 -268
  88. package/dist/src/cli/simple-commands/init/validation/test-runner.js +427 -447
  89. package/dist/src/cli/simple-commands/init.js +1 -2
  90. package/dist/src/cli/simple-commands/mcp-health.js +131 -158
  91. package/dist/src/cli/simple-commands/mcp-integration-layer.js +533 -634
  92. package/dist/src/cli/simple-commands/mcp.js +345 -400
  93. package/dist/src/cli/simple-commands/memory-consolidation.js +426 -537
  94. package/dist/src/cli/simple-commands/memory.js +247 -311
  95. package/dist/src/cli/simple-commands/migrate-hooks.js +39 -46
  96. package/dist/src/cli/simple-commands/monitor.js +294 -363
  97. package/dist/src/cli/simple-commands/neural.js +51 -65
  98. package/dist/src/cli/simple-commands/pair-autofix-only.js +538 -662
  99. package/dist/src/cli/simple-commands/pair-basic.js +528 -656
  100. package/dist/src/cli/simple-commands/pair-old.js +430 -543
  101. package/dist/src/cli/simple-commands/pair-working.js +615 -751
  102. package/dist/src/cli/simple-commands/pair.js +615 -751
  103. package/dist/src/cli/simple-commands/performance-hooks.js +83 -111
  104. package/dist/src/cli/simple-commands/performance-metrics.js +348 -433
  105. package/dist/src/cli/simple-commands/process-ui-enhanced.js +708 -787
  106. package/dist/src/cli/simple-commands/process-ui.js +230 -254
  107. package/dist/src/cli/simple-commands/realtime-update-system.js +525 -611
  108. package/dist/src/cli/simple-commands/sparc/architecture.js +1704 -1530
  109. package/dist/src/cli/simple-commands/sparc/commands.js +438 -516
  110. package/dist/src/cli/simple-commands/sparc/completion.js +1224 -1481
  111. package/dist/src/cli/simple-commands/sparc/coordinator.js +913 -978
  112. package/dist/src/cli/simple-commands/sparc/index.js +241 -298
  113. package/dist/src/cli/simple-commands/sparc/phase-base.js +314 -390
  114. package/dist/src/cli/simple-commands/sparc/pseudocode.js +965 -869
  115. package/dist/src/cli/simple-commands/sparc/refinement.js +980 -1273
  116. package/dist/src/cli/simple-commands/sparc/specification.js +559 -645
  117. package/dist/src/cli/simple-commands/sparc-modes/architect.js +1 -1
  118. package/dist/src/cli/simple-commands/sparc-modes/ask.js +1 -1
  119. package/dist/src/cli/simple-commands/sparc-modes/code.js +1 -1
  120. package/dist/src/cli/simple-commands/sparc-modes/debug.js +1 -1
  121. package/dist/src/cli/simple-commands/sparc-modes/devops.js +1 -1
  122. package/dist/src/cli/simple-commands/sparc-modes/docs-writer.js +1 -1
  123. package/dist/src/cli/simple-commands/sparc-modes/generic.js +1 -1
  124. package/dist/src/cli/simple-commands/sparc-modes/index.js +47 -55
  125. package/dist/src/cli/simple-commands/sparc-modes/integration.js +1 -1
  126. package/dist/src/cli/simple-commands/sparc-modes/mcp.js +1 -1
  127. package/dist/src/cli/simple-commands/sparc-modes/monitoring.js +1 -1
  128. package/dist/src/cli/simple-commands/sparc-modes/optimization.js +1 -1
  129. package/dist/src/cli/simple-commands/sparc-modes/security-review.js +1 -1
  130. package/dist/src/cli/simple-commands/sparc-modes/sparc-orchestrator.js +1 -1
  131. package/dist/src/cli/simple-commands/sparc-modes/spec-pseudocode.js +1 -1
  132. package/dist/src/cli/simple-commands/sparc-modes/supabase-admin.js +1 -1
  133. package/dist/src/cli/simple-commands/sparc-modes/swarm.js +101 -87
  134. package/dist/src/cli/simple-commands/sparc-modes/tdd.js +1 -1
  135. package/dist/src/cli/simple-commands/sparc-modes/tutorial.js +1 -1
  136. package/dist/src/cli/simple-commands/sparc.js +465 -493
  137. package/dist/src/cli/simple-commands/start-ui.js +108 -132
  138. package/dist/src/cli/simple-commands/start-wrapper.js +240 -268
  139. package/dist/src/cli/simple-commands/start.js +1 -1
  140. package/dist/src/cli/simple-commands/status.js +254 -275
  141. package/dist/src/cli/simple-commands/stream-chain-clean.js +128 -171
  142. package/dist/src/cli/simple-commands/stream-chain-fixed.js +61 -82
  143. package/dist/src/cli/simple-commands/stream-chain-real.js +267 -331
  144. package/dist/src/cli/simple-commands/stream-chain-working.js +211 -263
  145. package/dist/src/cli/simple-commands/stream-chain.js +260 -318
  146. package/dist/src/cli/simple-commands/stream-processor.js +290 -315
  147. package/dist/src/cli/simple-commands/swarm-executor.js +189 -222
  148. package/dist/src/cli/simple-commands/swarm-metrics-integration.js +208 -300
  149. package/dist/src/cli/simple-commands/swarm-ui.js +623 -703
  150. package/dist/src/cli/simple-commands/swarm-webui-integration.js +258 -286
  151. package/dist/src/cli/simple-commands/swarm.js +887 -1082
  152. package/dist/src/cli/simple-commands/task.js +161 -206
  153. package/dist/src/cli/simple-commands/timestamp-fix.js +59 -89
  154. package/dist/src/cli/simple-commands/token-tracker.js +258 -316
  155. package/dist/src/cli/simple-commands/tool-execution-framework.js +433 -519
  156. package/dist/src/cli/simple-commands/train-and-stream.js +275 -331
  157. package/dist/src/cli/simple-commands/training-pipeline.js +619 -725
  158. package/dist/src/cli/simple-commands/training.js +170 -227
  159. package/dist/src/cli/simple-commands/verification-hooks.js +261 -284
  160. package/dist/src/cli/simple-commands/verification-integration.js +389 -417
  161. package/dist/src/cli/simple-commands/verification-training-integration.js +486 -606
  162. package/dist/src/cli/simple-commands/verification.js +493 -513
  163. package/dist/src/cli/simple-commands/web-server.js +766 -836
  164. package/dist/src/cli/simple-commands/webui-validator.js +106 -124
  165. package/dist/src/coordination/event-bus/demo-wasm-integration.js +212 -251
  166. package/dist/src/coordination/event-bus/qe-event-bus.js +608 -748
  167. package/dist/src/coordination/event-bus/qe-event-bus.test.js +379 -454
  168. package/dist/src/coordination/iteration-tracker.js +363 -454
  169. package/dist/src/enterprise/analytics-manager.js +1135 -0
  170. package/dist/src/enterprise/audit-manager.js +1115 -0
  171. package/dist/src/enterprise/cloud-manager.js +891 -0
  172. package/dist/src/enterprise/deployment-manager.js +966 -0
  173. package/dist/src/enterprise/index.js +6 -0
  174. package/dist/src/enterprise/project-manager.js +584 -0
  175. package/dist/src/enterprise/security-manager.js +991 -0
  176. package/dist/src/index.js +1 -1
  177. package/dist/src/mcp/DEPRECATED.js +46 -60
  178. package/dist/src/mcp/fixes/mcp-error-fixes.js +115 -134
  179. package/dist/src/mcp/implementations/agent-tracker.js +114 -128
  180. package/dist/src/mcp/implementations/daa-tools.js +292 -350
  181. package/dist/src/mcp/implementations/workflow-tools.js +329 -361
  182. package/dist/src/mcp/mcp-config-manager.js +1183 -1331
  183. package/dist/src/mcp/mcp-server-novice-simplified.js +11 -17
  184. package/dist/src/mcp/mcp-server-novice.js +11 -17
  185. package/dist/src/mcp/mcp-server-sdk.js +11 -17
  186. package/dist/src/mcp/mcp-server.js +1620 -1484
  187. package/dist/src/mcp/ruv-swarm-wrapper.js +209 -239
  188. package/dist/src/memory/advanced-serializer.js +609 -589
  189. package/dist/src/memory/enhanced-examples.js +220 -305
  190. package/dist/src/memory/enhanced-memory.js +295 -336
  191. package/dist/src/memory/enhanced-session-serializer.js +408 -492
  192. package/dist/src/memory/fallback-memory-system.js +900 -1021
  193. package/dist/src/memory/fallback-store.js +93 -131
  194. package/dist/src/memory/high-performance-serialization.js +592 -730
  195. package/dist/src/memory/in-memory-store.js +161 -213
  196. package/dist/src/memory/index.js +123 -157
  197. package/dist/src/memory/lock-free-structures.js +578 -764
  198. package/dist/src/memory/memory-mapped-persistence.js +585 -766
  199. package/dist/src/memory/memory-pressure-manager.js +569 -707
  200. package/dist/src/memory/migration.js +358 -445
  201. package/dist/src/memory/shared-memory.js +641 -768
  202. package/dist/src/memory/sqlite-store.js +245 -325
  203. package/dist/src/memory/sqlite-wrapper.js +122 -151
  204. package/dist/src/memory/swarm-memory.js +470 -603
  205. package/dist/src/memory/test-example.js +126 -134
  206. package/dist/src/memory/ultra-fast-memory-store.js +622 -821
  207. package/dist/src/memory/unified-memory-manager.js +356 -437
  208. package/dist/src/migration/index.js +92 -0
  209. package/dist/src/migration/logger.js +121 -0
  210. package/dist/src/migration/migration-analyzer.js +268 -0
  211. package/dist/src/migration/migration-runner.js +522 -0
  212. package/dist/src/migration/migration-validator.js +285 -0
  213. package/dist/src/migration/progress-reporter.js +150 -0
  214. package/dist/src/migration/rollback-manager.js +321 -0
  215. package/dist/src/migration/tests/migration-system.test.js +7 -0
  216. package/dist/src/migration/types.js +3 -0
  217. package/dist/src/swarm/CodeRefactoringSwarm.js +777 -952
  218. package/dist/src/swarm/__tests__/integration.test.js +227 -0
  219. package/dist/src/swarm/__tests__/prompt-copier.test.js +344 -0
  220. package/dist/src/swarm/advanced-orchestrator.js +1095 -0
  221. package/dist/src/swarm/claude-code-interface.js +961 -0
  222. package/dist/src/swarm/claude-flow-executor.js +229 -0
  223. package/dist/src/swarm/consensus-coordinator.js +475 -0
  224. package/dist/src/swarm/coordinator.js +2993 -0
  225. package/dist/src/swarm/direct-executor.js +1180 -0
  226. package/dist/src/swarm/error-recovery/advanced-error-detection.js +691 -0
  227. package/dist/src/swarm/error-recovery/automated-recovery-workflows.js +998 -0
  228. package/dist/src/swarm/error-recovery/error-recovery-coordinator.js +1197 -0
  229. package/dist/src/swarm/error-recovery/recovery-monitoring.js +772 -0
  230. package/dist/src/swarm/error-recovery/resilience-architecture.js +714 -0
  231. package/dist/src/swarm/error-recovery/self-healing-mechanisms.js +1319 -0
  232. package/dist/src/swarm/error-recovery/test-error-recovery-effectiveness.js +808 -0
  233. package/dist/src/swarm/executor-v2.js +322 -0
  234. package/dist/src/swarm/executor.js +815 -0
  235. package/dist/src/swarm/hive-mind-integration.js +703 -0
  236. package/dist/src/swarm/index.js +41 -0
  237. package/dist/src/swarm/json-output-aggregator.js +267 -0
  238. package/dist/src/swarm/large-scale-coordinator.js +542 -0
  239. package/dist/src/swarm/mcp-integration-wrapper.js +628 -0
  240. package/dist/src/swarm/memory.js +1117 -0
  241. package/dist/src/swarm/optimizations/__tests__/optimization.test.js +348 -0
  242. package/dist/src/swarm/optimizations/async-file-manager.js +285 -0
  243. package/dist/src/swarm/optimizations/circular-buffer.js +162 -0
  244. package/dist/src/swarm/optimizations/connection-pool.js +244 -0
  245. package/dist/src/swarm/optimizations/index.js +28 -0
  246. package/dist/src/swarm/optimizations/optimized-executor.js +320 -0
  247. package/dist/src/swarm/optimizations/ttl-map.js +234 -0
  248. package/dist/src/swarm/prompt-cli.js +200 -0
  249. package/dist/src/swarm/prompt-copier-enhanced.js +202 -0
  250. package/dist/src/swarm/prompt-copier.js +381 -0
  251. package/dist/src/swarm/prompt-manager.js +295 -0
  252. package/dist/src/swarm/prompt-utils.js +310 -0
  253. package/dist/src/swarm/result-aggregator.js +718 -0
  254. package/dist/src/swarm/sparc-executor.js +1568 -0
  255. package/dist/src/swarm/strategies/auto.js +758 -0
  256. package/dist/src/swarm/strategies/base.js +128 -0
  257. package/dist/src/swarm/strategies/research.js +914 -0
  258. package/dist/src/swarm/strategies/strategy-metrics-patch.js +2 -0
  259. package/dist/src/swarm/types.js +52 -0
  260. package/dist/src/swarm/workers/copy-worker.js +56 -0
  261. package/dist/src/utils/__tests__/github-cli-safety-wrapper.test.js +332 -400
  262. package/dist/src/utils/github-cli-safe.js +56 -64
  263. package/dist/src/utils/github-cli-safety-wrapper.js +451 -546
  264. package/dist/src/utils/npx-isolated-cache.js +104 -119
  265. package/dist/src/utils/preference-manager.js +622 -652
  266. package/dist/src/utils/timezone-utils.js +86 -105
  267. package/dist/src/validators/epic-config-schema.js +214 -0
  268. package/dist/src/validators/index.js +10 -0
  269. package/dist/src/validators/swarm-init-validator.js +259 -0
  270. package/dist/src/validators/todowrite-batching-validator.js +215 -0
  271. package/dist/src/validators/todowrite-integration.js +187 -0
  272. package/package.json +2 -2
@@ -2,116 +2,115 @@
2
2
  /**
3
3
  * GitHub command wrapper for simple CLI
4
4
  * Provides GitHub workflow automation capabilities
5
- */
6
-
7
- import { printSuccess, printError, printWarning } from '../utils.js';
8
- import { platform } from 'os';
9
- import { access, constants } from 'fs/promises';
10
- import { join } from 'path';
11
-
5
+ */ import { printSuccess, printError, printWarning } from "../utils.js";
6
+ import { platform } from "os";
7
+ import { access, constants } from "node:fs/promises";
8
+ import { join } from "path";
12
9
  /**
13
10
  * Cross-platform check for executable availability
14
11
  * @param {string} command - The command to check
15
12
  * @returns {Promise<boolean>} - True if command is available
16
- */
17
- async function checkCommandAvailable(command) {
18
- const { execSync } = await import('child_process');
19
-
20
- if (platform() === 'win32') {
21
- // Windows: Use 'where' command
22
- try {
23
- execSync(`where ${command}`, { stdio: 'ignore' });
24
- return true;
25
- } catch (e) {
26
- return false;
27
- }
28
- } else {
29
- // Unix-like systems: Check common paths and use 'command -v'
30
- try {
31
- execSync(`command -v ${command}`, { stdio: 'ignore', shell: true });
32
- return true;
33
- } catch (e) {
34
- // Fallback: Check common installation paths
35
- const commonPaths = [
36
- '/usr/local/bin',
37
- '/usr/bin',
38
- '/opt/homebrew/bin',
39
- join(process.env.HOME || '', '.local', 'bin'),
40
- join(process.env.HOME || '', 'bin'),
41
- ];
42
-
43
- for (const dir of commonPaths) {
13
+ */ async function checkCommandAvailable(command) {
14
+ const { execSync } = await import("child_process");
15
+ if (platform() === 'win32') {
16
+ // Windows: Use 'where' command
44
17
  try {
45
- await access(join(dir, command), constants.X_OK);
46
- return true;
18
+ execSync(`where ${command}`, {
19
+ stdio: 'ignore'
20
+ });
21
+ return true;
47
22
  } catch (e) {
48
- // Continue checking other paths
23
+ return false;
24
+ }
25
+ } else {
26
+ // Unix-like systems: Check common paths and use 'command -v'
27
+ try {
28
+ execSync(`command -v ${command}`, {
29
+ stdio: 'ignore',
30
+ shell: true
31
+ });
32
+ return true;
33
+ } catch (e) {
34
+ // Fallback: Check common installation paths
35
+ const commonPaths = [
36
+ '/usr/local/bin',
37
+ '/usr/bin',
38
+ '/opt/homebrew/bin',
39
+ join(process.env.HOME || '', '.local', 'bin'),
40
+ join(process.env.HOME || '', 'bin')
41
+ ];
42
+ for (const dir of commonPaths){
43
+ try {
44
+ await access(join(dir, command), constants.X_OK);
45
+ return true;
46
+ } catch (e) {
47
+ // Continue checking other paths
48
+ }
49
+ }
50
+ return false;
49
51
  }
50
- }
51
- return false;
52
52
  }
53
- }
54
53
  }
55
-
56
54
  /**
57
55
  * Check if Claude CLI is available
58
56
  * @returns {Promise<boolean>} - True if Claude is available
59
- */
60
- async function checkClaudeAvailable() {
61
- return checkCommandAvailable('claude');
57
+ */ async function checkClaudeAvailable() {
58
+ return checkCommandAvailable('claude');
62
59
  }
63
-
64
60
  const GITHUB_MODES = {
65
- init: {
66
- description: 'Initialize GitHub-specific hooks and checkpoint system',
67
- examples: ['github init', 'github init --force', 'github init --checkpoints-only'],
68
- },
69
- 'gh-coordinator': {
70
- description: 'GitHub workflow orchestration and coordination',
71
- examples: [
72
- 'github gh-coordinator "setup CI/CD pipeline"',
73
- 'github gh-coordinator "coordinate release process" --auto-approve',
74
- ],
75
- },
76
- 'pr-manager': {
77
- description: 'Pull request management with multi-reviewer coordination',
78
- examples: [
79
- 'github pr-manager "create feature PR with automated testing"',
80
- 'github pr-manager "coordinate code review for security update"',
81
- ],
82
- },
83
- 'issue-tracker': {
84
- description: 'Issue management and project coordination',
85
- examples: [
86
- 'github issue-tracker "analyze project roadmap issues"',
87
- 'github issue-tracker "coordinate bug triage process"',
88
- ],
89
- },
90
- 'release-manager': {
91
- description: 'Release coordination and deployment pipelines',
92
- examples: [
93
- 'github release-manager "prepare v2.0.0 release"',
94
- 'github release-manager "coordinate hotfix deployment"',
95
- ],
96
- },
97
- 'repo-architect': {
98
- description: 'Repository structure optimization',
99
- examples: [
100
- 'github repo-architect "optimize repository structure"',
101
- 'github repo-architect "setup monorepo architecture"',
102
- ],
103
- },
104
- 'sync-coordinator': {
105
- description: 'Multi-package synchronization and version alignment',
106
- examples: [
107
- 'github sync-coordinator "sync package versions across repos"',
108
- 'github sync-coordinator "coordinate dependency updates"',
109
- ],
110
- },
61
+ init: {
62
+ description: 'Initialize GitHub-specific hooks and checkpoint system',
63
+ examples: [
64
+ 'github init',
65
+ 'github init --force',
66
+ 'github init --checkpoints-only'
67
+ ]
68
+ },
69
+ 'gh-coordinator': {
70
+ description: 'GitHub workflow orchestration and coordination',
71
+ examples: [
72
+ 'github gh-coordinator "setup CI/CD pipeline"',
73
+ 'github gh-coordinator "coordinate release process" --auto-approve'
74
+ ]
75
+ },
76
+ 'pr-manager': {
77
+ description: 'Pull request management with multi-reviewer coordination',
78
+ examples: [
79
+ 'github pr-manager "create feature PR with automated testing"',
80
+ 'github pr-manager "coordinate code review for security update"'
81
+ ]
82
+ },
83
+ 'issue-tracker': {
84
+ description: 'Issue management and project coordination',
85
+ examples: [
86
+ 'github issue-tracker "analyze project roadmap issues"',
87
+ 'github issue-tracker "coordinate bug triage process"'
88
+ ]
89
+ },
90
+ 'release-manager': {
91
+ description: 'Release coordination and deployment pipelines',
92
+ examples: [
93
+ 'github release-manager "prepare v2.0.0 release"',
94
+ 'github release-manager "coordinate hotfix deployment"'
95
+ ]
96
+ },
97
+ 'repo-architect': {
98
+ description: 'Repository structure optimization',
99
+ examples: [
100
+ 'github repo-architect "optimize repository structure"',
101
+ 'github repo-architect "setup monorepo architecture"'
102
+ ]
103
+ },
104
+ 'sync-coordinator': {
105
+ description: 'Multi-package synchronization and version alignment',
106
+ examples: [
107
+ 'github sync-coordinator "sync package versions across repos"',
108
+ 'github sync-coordinator "coordinate dependency updates"'
109
+ ]
110
+ }
111
111
  };
112
-
113
112
  function showGitHubHelp() {
114
- console.log(`
113
+ console.log(`
115
114
  šŸ™ Claude Flow GitHub Workflow Automation
116
115
 
117
116
  USAGE:
@@ -119,12 +118,10 @@ USAGE:
119
118
 
120
119
  GITHUB AUTOMATION MODES:
121
120
  `);
122
-
123
- for (const [mode, info] of Object.entries(GITHUB_MODES)) {
124
- console.log(` ${mode.padEnd(18)} ${info.description}`);
125
- }
126
-
127
- console.log(`
121
+ for (const [mode, info] of Object.entries(GITHUB_MODES)){
122
+ console.log(` ${mode.padEnd(18)} ${info.description}`);
123
+ }
124
+ console.log(`
128
125
  EXAMPLES:
129
126
  claude-flow-novice github pr-manager "create feature PR with automated testing"
130
127
  claude-flow-novice github gh-coordinator "setup CI/CD pipeline" --auto-approve
@@ -153,83 +150,71 @@ For complete documentation:
153
150
  https://github.com/ruvnet/claude-code-flow/docs/github.md
154
151
  `);
155
152
  }
156
-
157
153
  export async function githubCommand(args, flags) {
158
- if (!args || args.length === 0) {
159
- showGitHubHelp();
160
- return;
161
- }
162
-
163
- const mode = args[0];
164
-
165
- // Handle init mode separately
166
- if (mode === 'init') {
167
- const { githubInitCommand } = await import('./github/init.js');
168
- return await githubInitCommand(flags);
169
- }
170
-
171
- const objective = args.slice(1).join(' ').trim();
172
-
173
- if (!objective) {
174
- printError(`āŒ Usage: github ${mode} <objective>`);
175
-
176
- if (GITHUB_MODES[mode]) {
177
- console.log(`\nExamples for ${mode}:`);
178
- for (const example of GITHUB_MODES[mode].examples) {
179
- console.log(` ${example}`);
180
- }
181
- } else {
182
- console.log('\nAvailable modes:');
183
- for (const [modeName, info] of Object.entries(GITHUB_MODES)) {
184
- console.log(` ${modeName} - ${info.description}`);
185
- }
154
+ if (!args || args.length === 0) {
155
+ showGitHubHelp();
156
+ return;
186
157
  }
187
- return;
188
- }
189
-
190
- if (!GITHUB_MODES[mode]) {
191
- printError(`āŒ Unknown GitHub mode: ${mode}`);
192
- console.log('\nAvailable modes:');
193
- for (const [modeName, info] of Object.entries(GITHUB_MODES)) {
194
- console.log(` ${modeName} - ${info.description}`);
158
+ const mode = args[0];
159
+ // Handle init mode separately
160
+ if (mode === 'init') {
161
+ const { githubInitCommand } = await import("./github/init.js");
162
+ return await githubInitCommand(flags);
195
163
  }
196
- return;
197
- }
198
-
199
- printSuccess(`šŸ™ GitHub ${mode} mode activated`);
200
- console.log(`šŸ“‹ Objective: ${objective}`);
201
-
202
- if (flags['dry-run']) {
203
- console.log('\nšŸŽ›ļø Configuration:');
204
- console.log(` Mode: ${mode}`);
205
- console.log(` Repository: ${flags.repo || 'current'}`);
206
- console.log(` Branch: ${flags.branch || 'current'}`);
207
- console.log(` Template: ${flags.template || 'default'}`);
208
- console.log(` Auto-approve: ${flags['auto-approve'] || false}`);
209
- console.log(` Verbose: ${flags.verbose || false}`);
210
- console.log('\nāš ļø DRY RUN - GitHub workflow configuration preview');
211
- return;
212
- }
213
-
214
- try {
215
- // Check if Claude is available
216
- const { execSync } = await import('child_process');
217
-
218
- // Cross-platform check for Claude CLI
219
- const isClaudeAvailable = await checkClaudeAvailable();
220
- if (!isClaudeAvailable) {
221
- printWarning('āš ļø Claude CLI not found. GitHub automation requires Claude.');
222
- console.log('Install Claude: https://claude.ai/code');
223
- console.log('\nAlternatively, this would execute:');
224
- console.log(`1. Initialize ${mode} workflow for: ${objective}`);
225
- console.log('2. Set up GitHub integration and permissions');
226
- console.log('3. Configure automation rules and triggers');
227
- console.log('4. Execute workflow with monitoring and reporting');
228
- return;
164
+ const objective = args.slice(1).join(' ').trim();
165
+ if (!objective) {
166
+ printError(`āŒ Usage: github ${mode} <objective>`);
167
+ if (GITHUB_MODES[mode]) {
168
+ console.log(`\nExamples for ${mode}:`);
169
+ for (const example of GITHUB_MODES[mode].examples){
170
+ console.log(` ${example}`);
171
+ }
172
+ } else {
173
+ console.log('\nAvailable modes:');
174
+ for (const [modeName, info] of Object.entries(GITHUB_MODES)){
175
+ console.log(` ${modeName} - ${info.description}`);
176
+ }
177
+ }
178
+ return;
229
179
  }
230
-
231
- // Build the prompt for Claude using GitHub workflow methodology
232
- const githubPrompt = `Execute GitHub workflow automation using ${mode} mode:
180
+ if (!GITHUB_MODES[mode]) {
181
+ printError(`āŒ Unknown GitHub mode: ${mode}`);
182
+ console.log('\nAvailable modes:');
183
+ for (const [modeName, info] of Object.entries(GITHUB_MODES)){
184
+ console.log(` ${modeName} - ${info.description}`);
185
+ }
186
+ return;
187
+ }
188
+ printSuccess(`šŸ™ GitHub ${mode} mode activated`);
189
+ console.log(`šŸ“‹ Objective: ${objective}`);
190
+ if (flags['dry-run']) {
191
+ console.log('\nšŸŽ›ļø Configuration:');
192
+ console.log(` Mode: ${mode}`);
193
+ console.log(` Repository: ${flags.repo || 'current'}`);
194
+ console.log(` Branch: ${flags.branch || 'current'}`);
195
+ console.log(` Template: ${flags.template || 'default'}`);
196
+ console.log(` Auto-approve: ${flags['auto-approve'] || false}`);
197
+ console.log(` Verbose: ${flags.verbose || false}`);
198
+ console.log('\nāš ļø DRY RUN - GitHub workflow configuration preview');
199
+ return;
200
+ }
201
+ try {
202
+ // Check if Claude is available
203
+ const { execSync } = await import("child_process");
204
+ // Cross-platform check for Claude CLI
205
+ const isClaudeAvailable = await checkClaudeAvailable();
206
+ if (!isClaudeAvailable) {
207
+ printWarning('āš ļø Claude CLI not found. GitHub automation requires Claude.');
208
+ console.log('Install Claude: https://claude.ai/code');
209
+ console.log('\nAlternatively, this would execute:');
210
+ console.log(`1. Initialize ${mode} workflow for: ${objective}`);
211
+ console.log('2. Set up GitHub integration and permissions');
212
+ console.log('3. Configure automation rules and triggers');
213
+ console.log('4. Execute workflow with monitoring and reporting');
214
+ return;
215
+ }
216
+ // Build the prompt for Claude using GitHub workflow methodology
217
+ const githubPrompt = `Execute GitHub workflow automation using ${mode} mode:
233
218
 
234
219
  OBJECTIVE: ${objective}
235
220
 
@@ -294,84 +279,74 @@ IMPORTANT:
294
279
  - Include proper testing and validation steps
295
280
 
296
281
  Begin execution now. Create all necessary GitHub workflow files and configuration.`;
297
-
298
- console.log('šŸš€ Launching GitHub automation via Claude...');
299
-
300
- // Execute Claude with the GitHub prompt
301
- const { spawn } = await import('child_process');
302
-
303
- const claudeArgs = [];
304
-
305
- // Add auto-permission flag if requested
306
- if (flags['auto-approve'] || flags['dangerously-skip-permissions']) {
307
- claudeArgs.push('--dangerously-skip-permissions');
308
- }
309
-
310
- // Spawn claude process
311
- const claudeProcess = spawn('claude', claudeArgs, {
312
- stdio: ['pipe', 'inherit', 'inherit'],
313
- shell: false,
314
- });
315
-
316
- // Write the prompt to stdin and close it
317
- claudeProcess.stdin.write(githubPrompt);
318
- claudeProcess.stdin.end();
319
-
320
- // Wait for the process to complete
321
- await new Promise((resolve, reject) => {
322
- claudeProcess.on('close', (code) => {
323
- if (code === 0) {
324
- printSuccess('āœ… GitHub automation completed successfully!');
325
- resolve();
326
- } else {
327
- reject(new Error(`Claude process exited with code ${code}`));
282
+ console.log('šŸš€ Launching GitHub automation via Claude...');
283
+ // Execute Claude with the GitHub prompt
284
+ const { spawn } = await import("child_process");
285
+ const claudeArgs = [];
286
+ // Add auto-permission flag if requested
287
+ if (flags['auto-approve'] || flags['dangerously-skip-permissions']) {
288
+ claudeArgs.push('--dangerously-skip-permissions');
328
289
  }
329
- });
330
-
331
- claudeProcess.on('error', (err) => {
332
- reject(err);
333
- });
334
- });
335
- } catch (error) {
336
- printError(`āŒ GitHub automation failed: ${error.message}`);
337
-
338
- // Fallback implementation details
339
- console.log('\nšŸ“‹ Fallback execution plan:');
340
- console.log(`1. ${mode} workflow would be configured for: ${objective}`);
341
- console.log('2. GitHub Actions YAML files would be created');
342
- console.log('3. Repository settings would be configured');
343
- console.log('4. Automation rules would be established');
344
- console.log('5. Monitoring and reporting would be set up');
345
-
346
- printWarning('\nāš ļø Note: Full GitHub automation requires Claude CLI.');
347
- console.log('Install Claude: https://claude.ai/code');
348
- }
290
+ // Spawn claude process
291
+ const claudeProcess = spawn('claude', claudeArgs, {
292
+ stdio: [
293
+ 'pipe',
294
+ 'inherit',
295
+ 'inherit'
296
+ ],
297
+ shell: false
298
+ });
299
+ // Write the prompt to stdin and close it
300
+ claudeProcess.stdin.write(githubPrompt);
301
+ claudeProcess.stdin.end();
302
+ // Wait for the process to complete
303
+ await new Promise((resolve, reject)=>{
304
+ claudeProcess.on('close', (code)=>{
305
+ if (code === 0) {
306
+ printSuccess('āœ… GitHub automation completed successfully!');
307
+ resolve();
308
+ } else {
309
+ reject(new Error(`Claude process exited with code ${code}`));
310
+ }
311
+ });
312
+ claudeProcess.on('error', (err)=>{
313
+ reject(err);
314
+ });
315
+ });
316
+ } catch (error) {
317
+ printError(`āŒ GitHub automation failed: ${error.message}`);
318
+ // Fallback implementation details
319
+ console.log('\nšŸ“‹ Fallback execution plan:');
320
+ console.log(`1. ${mode} workflow would be configured for: ${objective}`);
321
+ console.log('2. GitHub Actions YAML files would be created');
322
+ console.log('3. Repository settings would be configured');
323
+ console.log('4. Automation rules would be established');
324
+ console.log('5. Monitoring and reporting would be set up');
325
+ printWarning('\nāš ļø Note: Full GitHub automation requires Claude CLI.');
326
+ console.log('Install Claude: https://claude.ai/code');
327
+ }
349
328
  }
350
-
351
329
  // Allow direct execution for testing
352
330
  if (import.meta.main) {
353
- const args = [];
354
- const flags = {};
355
-
356
- // Parse arguments and flags from Deno.args if available
357
- if (typeof Deno !== 'undefined' && Deno.args) {
358
- for (let i = 0; i < Deno.args.length; i++) {
359
- const arg = Deno.args[i];
360
- if (arg.startsWith('--')) {
361
- const flagName = arg.substring(2);
362
- const nextArg = Deno.args[i + 1];
363
-
364
- if (nextArg && !nextArg.startsWith('--')) {
365
- flags[flagName] = nextArg;
366
- i++; // Skip the next argument
367
- } else {
368
- flags[flagName] = true;
331
+ const args = [];
332
+ const flags = {};
333
+ // Parse arguments and flags from Deno.args if available
334
+ if (typeof Deno !== 'undefined' && Deno.args) {
335
+ for(let i = 0; i < Deno.args.length; i++){
336
+ const arg = Deno.args[i];
337
+ if (arg.startsWith('--')) {
338
+ const flagName = arg.substring(2);
339
+ const nextArg = Deno.args[i + 1];
340
+ if (nextArg && !nextArg.startsWith('--')) {
341
+ flags[flagName] = nextArg;
342
+ i++; // Skip the next argument
343
+ } else {
344
+ flags[flagName] = true;
345
+ }
346
+ } else {
347
+ args.push(arg);
348
+ }
369
349
  }
370
- } else {
371
- args.push(arg);
372
- }
373
350
  }
374
- }
375
-
376
- await githubCommand(args, flags);
351
+ await githubCommand(args, flags);
377
352
  }
@@ -1,52 +1,44 @@
1
1
  /**
2
2
  * Goal module commands
3
3
  * Handles 'goal init' and other goal-related commands
4
- */
5
-
6
- import { promises as fs } from 'fs';
7
- import path from 'path';
8
- import chalk from 'chalk';
9
-
4
+ */ import { promises as fs } from "fs";
5
+ import path from "path";
6
+ import chalk from "chalk";
10
7
  export async function goalCommand(args, flags) {
11
- const subcommand = args[0];
12
-
13
- if (!subcommand) {
14
- console.log(chalk.magenta('šŸŽÆ Claude Flow Goal Module'));
15
- console.log('\nUsage: claude-flow-novice goal <command> [options]');
16
- console.log('\nCommands:');
17
- console.log(' init Initialize GOAP goal module');
18
- console.log('\nOptions:');
19
- console.log(' --force Overwrite existing module');
20
- console.log(' --target <dir> Target directory (default: .claude/agents/goal)');
21
- return;
22
- }
23
-
24
- if (subcommand === 'init') {
25
- await initGoalModule(flags);
26
- } else {
27
- console.error(chalk.red(`Unknown goal subcommand: ${subcommand}`));
28
- process.exit(1);
29
- }
8
+ const subcommand = args[0];
9
+ if (!subcommand) {
10
+ console.log(chalk.magenta('šŸŽÆ Claude Flow Goal Module'));
11
+ console.log('\nUsage: claude-flow-novice goal <command> [options]');
12
+ console.log('\nCommands:');
13
+ console.log(' init Initialize GOAP goal module');
14
+ console.log('\nOptions:');
15
+ console.log(' --force Overwrite existing module');
16
+ console.log(' --target <dir> Target directory (default: .claude/agents/goal)');
17
+ return;
18
+ }
19
+ if (subcommand === 'init') {
20
+ await initGoalModule(flags);
21
+ } else {
22
+ console.error(chalk.red(`Unknown goal subcommand: ${subcommand}`));
23
+ process.exit(1);
24
+ }
30
25
  }
31
-
32
26
  async function initGoalModule(flags = {}) {
33
- const targetDir = path.resolve(process.cwd(), flags.target || '.claude/agents/goal');
34
-
35
- console.log(chalk.magenta('šŸŽÆ Initializing Claude Flow Goal Module...'));
36
- console.log(chalk.gray(` Target: ${targetDir}`));
37
-
38
- try {
39
- // Check if exists
40
- if ((await exists(targetDir)) && !flags.force) {
41
- console.log(chalk.yellow('āš ļø Goal module already exists. Use --force to overwrite.'));
42
- return;
43
- }
44
-
45
- // Create directory
46
- await fs.mkdir(targetDir, { recursive: true });
47
-
48
- // Create goal-planner agent content (full content from memory)
49
- const plannerContent = `---
27
+ const targetDir = path.resolve(process.cwd(), flags.target || '.claude/agents/goal');
28
+ console.log(chalk.magenta('šŸŽÆ Initializing Claude Flow Goal Module...'));
29
+ console.log(chalk.gray(` Target: ${targetDir}`));
30
+ try {
31
+ // Check if exists
32
+ if (await exists(targetDir) && !flags.force) {
33
+ console.log(chalk.yellow('āš ļø Goal module already exists. Use --force to overwrite.'));
34
+ return;
35
+ }
36
+ // Create directory
37
+ await fs.mkdir(targetDir, {
38
+ recursive: true
39
+ });
40
+ // Create goal-planner agent content (full content from memory)
41
+ const plannerContent = `---
50
42
  name: goal-planner
51
43
  description: "Goal-Oriented Action Planning (GOAP) specialist that dynamically creates intelligent plans to achieve complex objectives. Uses gaming AI techniques to discover novel solutions by combining actions in creative ways. Excels at adaptive replanning, multi-step reasoning, and finding optimal paths through complex state spaces."
52
44
  color: purple
@@ -119,27 +111,23 @@ mcp__claude-flow__memory_usage {
119
111
  value: JSON.stringify(successful_plan)
120
112
  }
121
113
  \`\`\``;
122
-
123
- await fs.writeFile(path.join(targetDir, 'goal-planner.md'), plannerContent);
124
- console.log(chalk.gray(' āœ“ Created goal-planner.md'));
125
-
126
- console.log(chalk.green('\nāœ… Goal module initialized successfully!'));
127
- console.log(chalk.magenta('\nšŸ“š Usage:'));
128
- console.log(chalk.gray(' • In Claude Code: @agent-goal-planner "Create deployment plan"'));
129
- console.log(chalk.gray(' • View agent: cat .claude/agents/goal/goal-planner.md'));
130
- } catch (error) {
131
- console.error(chalk.red('āŒ Failed to initialize goal module:'), error.message);
132
- process.exit(1);
133
- }
114
+ await fs.writeFile(path.join(targetDir, 'goal-planner.md'), plannerContent);
115
+ console.log(chalk.gray(' āœ“ Created goal-planner.md'));
116
+ console.log(chalk.green('\nāœ… Goal module initialized successfully!'));
117
+ console.log(chalk.magenta('\nšŸ“š Usage:'));
118
+ console.log(chalk.gray(' • In Claude Code: @agent-goal-planner "Create deployment plan"'));
119
+ console.log(chalk.gray(' • View agent: cat .claude/agents/goal/goal-planner.md'));
120
+ } catch (error) {
121
+ console.error(chalk.red('āŒ Failed to initialize goal module:'), error.message);
122
+ process.exit(1);
123
+ }
134
124
  }
135
-
136
125
  async function exists(path) {
137
- try {
138
- await fs.access(path);
139
- return true;
140
- } catch {
141
- return false;
142
- }
126
+ try {
127
+ await fs.access(path);
128
+ return true;
129
+ } catch {
130
+ return false;
131
+ }
143
132
  }
144
-
145
133
  export default goalCommand;