claude-flow-novice 1.3.0 → 1.3.2

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 (305) hide show
  1. package/.claude-flow-novice/preferences/generation.json +147 -0
  2. package/.claude-flow-novice/preferences/language-configs/javascript.json +51 -0
  3. package/.claude-flow-novice/preferences/language-configs/python.json +50 -0
  4. package/.claude-flow-novice/preferences/language-configs/rust.json +237 -0
  5. package/.claude-flow-novice/preferences/language-configs/typescript.json +54 -0
  6. package/.claude-flow-novice/preferences/project-local.json +91 -0
  7. package/.claude-flow-novice/preferences/resource-delegation.json +120 -0
  8. package/.claude-flow-novice/preferences/team-shared.json +195 -0
  9. package/.claude-flow-novice/preferences/user-global.json +247 -0
  10. package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-JAVASCRIPT.md +769 -0
  11. package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-PYTHON.md +1214 -0
  12. package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-RUST.md +475 -0
  13. package/.claude-flow-novice/templates/claude-md-templates/CLAUDE-TYPESCRIPT.md +851 -0
  14. package/.claude-flow-novice/templates/claude-md-templates/README.md +263 -0
  15. package/CLAUDE.md +81 -0
  16. package/README-NPM.md +0 -0
  17. package/package.json +11 -7
  18. package/scripts/build/README.md +167 -0
  19. package/scripts/build/build-config.js +27 -0
  20. package/scripts/build/build-prompt-copier.sh +30 -0
  21. package/scripts/build/performance-monitor.js +869 -0
  22. package/scripts/build/prepare-publish.js +150 -0
  23. package/scripts/build/typescript-fixer.js +621 -0
  24. package/scripts/build/unified-builder.sh +428 -0
  25. package/scripts/build/update-bin-version.js +32 -0
  26. package/scripts/dev/README.md +264 -0
  27. package/scripts/dev/claude-flow-wrapper.sh +35 -0
  28. package/scripts/dev/claude-monitor.py +419 -0
  29. package/scripts/dev/claude-sparc.sh +562 -0
  30. package/scripts/dev/claude-wrapper.sh +17 -0
  31. package/scripts/dev/demo-phase3-compliance.js +172 -0
  32. package/scripts/dev/demo-task-system.ts +224 -0
  33. package/scripts/dev/deployment-validator.js +315 -0
  34. package/scripts/dev/spawn-claude-terminal.sh +32 -0
  35. package/scripts/dev/start-portal.sh +506 -0
  36. package/scripts/dev/start-web-ui.js +15 -0
  37. package/scripts/dev/stop-portal.sh +311 -0
  38. package/scripts/dev/validate-examples.ts +288 -0
  39. package/scripts/dev/validate-phase2.cjs +451 -0
  40. package/scripts/dev/validate-phase2.js +785 -0
  41. package/scripts/dev/validate-phase3.cjs +208 -0
  42. package/scripts/dev/validate-security-remediation.js +1 -0
  43. package/scripts/legacy/README.md +272 -0
  44. package/scripts/legacy/batch-fix-ts.sh +54 -0
  45. package/scripts/legacy/build-migration.sh +105 -0
  46. package/scripts/legacy/build-monitor.js +209 -0
  47. package/scripts/legacy/build-with-filter.sh +84 -0
  48. package/scripts/legacy/build-workaround.sh +71 -0
  49. package/scripts/legacy/fix-ts-advanced.js +358 -0
  50. package/scripts/legacy/fix-ts-final.sh +50 -0
  51. package/scripts/legacy/fix-ts-targeted.sh +49 -0
  52. package/scripts/legacy/fix-typescript-errors.js +305 -0
  53. package/scripts/legacy/force-build.sh +63 -0
  54. package/scripts/legacy/optimize-performance.js +400 -0
  55. package/scripts/legacy/performance-monitor.js +263 -0
  56. package/scripts/legacy/performance-monitoring.js +532 -0
  57. package/scripts/legacy/performance-test-runner.js +645 -0
  58. package/scripts/legacy/quick-fix-ts.js +281 -0
  59. package/scripts/legacy/safe-build.sh +63 -0
  60. package/scripts/migration/README.md +434 -0
  61. package/scripts/migration/install-arm64.js +78 -0
  62. package/scripts/migration/install.js +83 -0
  63. package/scripts/migration/migrate-hooks.js +173 -0
  64. package/scripts/migration/migration-examples.ts +318 -0
  65. package/scripts/optimization/build-optimizer.js +438 -0
  66. package/scripts/optimization/config-validator.js +761 -0
  67. package/scripts/optimization/test-optimization.js +432 -0
  68. package/scripts/optimization/unified-activation.js +839 -0
  69. package/scripts/performance/ACTIVATION_COMMANDS.md +292 -0
  70. package/scripts/performance/sqlite-enhanced-activation.sh +583 -0
  71. package/scripts/performance/test-enhanced-backend.sh +504 -0
  72. package/scripts/performance-test-runner.js +698 -0
  73. package/scripts/security/README.md +339 -0
  74. package/scripts/security/install-git-hooks.sh +132 -0
  75. package/scripts/security/ruv-swarm-safe.js +74 -0
  76. package/scripts/test/README.md +236 -0
  77. package/scripts/test/check-links.ts +274 -0
  78. package/scripts/test/check-performance-regression.ts +168 -0
  79. package/scripts/test/coverage-report.ts +692 -0
  80. package/scripts/test/generate-swarm-tests.js +633 -0
  81. package/scripts/test/integration-test-validation.cjs +253 -0
  82. package/scripts/test/load-test-swarm.js +576 -0
  83. package/scripts/test/run-phase3-compliance-tests.js +427 -0
  84. package/scripts/test/test-batch-tasks.ts +29 -0
  85. package/scripts/test/test-byzantine-resolution.js +246 -0
  86. package/scripts/test/test-claude-spawn-options.sh +63 -0
  87. package/scripts/test/test-cli-wizard.js +331 -0
  88. package/scripts/test/test-comprehensive.js +401 -0
  89. package/scripts/test/test-coordination-features.ts +238 -0
  90. package/scripts/test/test-fallback-systems.js +276 -0
  91. package/scripts/test/test-init-command.ts +302 -0
  92. package/scripts/test/test-mcp.ts +251 -0
  93. package/scripts/test/test-runner.ts +568 -0
  94. package/scripts/test/test-swarm-integration.sh +92 -0
  95. package/scripts/test/test-swarm.ts +142 -0
  96. package/scripts/test/validation-summary.ts +408 -0
  97. package/scripts/utils/README.md +261 -0
  98. package/scripts/utils/clean-build-artifacts.sh +94 -0
  99. package/scripts/utils/cleanup-root.sh +69 -0
  100. package/scripts/utils/fix-cliffy-imports.js +307 -0
  101. package/scripts/utils/fix-duplicate-imports.js +114 -0
  102. package/scripts/utils/fix-error-handling.cjs +70 -0
  103. package/scripts/utils/fix-import-paths.js +104 -0
  104. package/scripts/utils/fix-imports.js +116 -0
  105. package/scripts/utils/fix-shebang.js +78 -0
  106. package/scripts/utils/fix-test-modules.js +27 -0
  107. package/scripts/utils/fix-timezone-issue-246.js +200 -0
  108. package/scripts/utils/fix-ts-comprehensive.py +182 -0
  109. package/scripts/utils/fix-ts-targeted-batch.js +250 -0
  110. package/scripts/utils/remove-benchmark-conflicts.sh +140 -0
  111. package/scripts/utils/simple-test-fixer.js +190 -0
  112. package/scripts/utils/validate-metrics-structure.cjs +144 -0
  113. package/scripts/verify-mcp-server.js +86 -0
  114. package/src/cli/simple-commands/__tests__/agent.test.js +291 -0
  115. package/src/cli/simple-commands/__tests__/memory.test.js +8 -0
  116. package/src/cli/simple-commands/__tests__/swarm.test.js +371 -0
  117. package/src/cli/simple-commands/__tests__/task.test.js +8 -0
  118. package/src/cli/simple-commands/agent.js +216 -0
  119. package/src/cli/simple-commands/analysis.js +570 -0
  120. package/src/cli/simple-commands/automation-executor.js +1603 -0
  121. package/src/cli/simple-commands/automation.js +627 -0
  122. package/src/cli/simple-commands/batch-manager.js +338 -0
  123. package/src/cli/simple-commands/claude-telemetry.js +311 -0
  124. package/src/cli/simple-commands/claude-track.js +102 -0
  125. package/src/cli/simple-commands/concurrent-display.js +348 -0
  126. package/src/cli/simple-commands/config.js +319 -0
  127. package/src/cli/simple-commands/coordination.js +307 -0
  128. package/src/cli/simple-commands/enhanced-ui-views.js +654 -0
  129. package/src/cli/simple-commands/enhanced-webui-complete.js +1038 -0
  130. package/src/cli/simple-commands/fix-hook-variables.js +363 -0
  131. package/src/cli/simple-commands/github/gh-coordinator.js +605 -0
  132. package/src/cli/simple-commands/github/github-api.js +624 -0
  133. package/src/cli/simple-commands/github/init.js +543 -0
  134. package/src/cli/simple-commands/github.js +377 -0
  135. package/src/cli/simple-commands/goal.js +145 -0
  136. package/src/cli/simple-commands/hive-mind/auto-save-middleware.js +311 -0
  137. package/src/cli/simple-commands/hive-mind/communication.js +740 -0
  138. package/src/cli/simple-commands/hive-mind/core.js +1031 -0
  139. package/src/cli/simple-commands/hive-mind/db-optimizer.js +872 -0
  140. package/src/cli/simple-commands/hive-mind/mcp-wrapper.js +1364 -0
  141. package/src/cli/simple-commands/hive-mind/memory.js +1292 -0
  142. package/src/cli/simple-commands/hive-mind/performance-optimizer.js +618 -0
  143. package/src/cli/simple-commands/hive-mind/performance-test.js +373 -0
  144. package/src/cli/simple-commands/hive-mind/queen.js +809 -0
  145. package/src/cli/simple-commands/hive-mind/session-manager.js +1223 -0
  146. package/src/cli/simple-commands/hive-mind-optimize.js +361 -0
  147. package/src/cli/simple-commands/hive-mind-wizard.js +281 -0
  148. package/src/cli/simple-commands/hive-mind.js +3112 -0
  149. package/src/cli/simple-commands/hive.js +140 -0
  150. package/src/cli/simple-commands/hook-safety.js +671 -0
  151. package/src/cli/simple-commands/hooks.js +1268 -0
  152. package/src/cli/simple-commands/init/.claude/checkpoints/1756224542.json +7 -0
  153. package/src/cli/simple-commands/init/.claude/checkpoints/1756224544.json +8 -0
  154. package/src/cli/simple-commands/init/README.md +106 -0
  155. package/src/cli/simple-commands/init/VALIDATION_ROLLBACK.md +488 -0
  156. package/src/cli/simple-commands/init/agent-copier.js +347 -0
  157. package/src/cli/simple-commands/init/batch-init.js +663 -0
  158. package/src/cli/simple-commands/init/claude-commands/claude-flow-commands.js +438 -0
  159. package/src/cli/simple-commands/init/claude-commands/optimized-claude-flow-commands.js +876 -0
  160. package/src/cli/simple-commands/init/claude-commands/optimized-slash-commands.js +356 -0
  161. package/src/cli/simple-commands/init/claude-commands/optimized-sparc-commands.js +501 -0
  162. package/src/cli/simple-commands/init/claude-commands/slash-commands.js +57 -0
  163. package/src/cli/simple-commands/init/claude-commands/sparc-commands.js +296 -0
  164. package/src/cli/simple-commands/init/copy-revised-templates.js +175 -0
  165. package/src/cli/simple-commands/init/executable-wrapper.js +122 -0
  166. package/src/cli/simple-commands/init/gitignore-updater.js +137 -0
  167. package/src/cli/simple-commands/init/help.js +110 -0
  168. package/src/cli/simple-commands/init/hive-mind-init.js +749 -0
  169. package/src/cli/simple-commands/init/index.js +1953 -0
  170. package/src/cli/simple-commands/init/performance-monitor.js +344 -0
  171. package/src/cli/simple-commands/init/rollback/backup-manager.js +542 -0
  172. package/src/cli/simple-commands/init/rollback/index.js +399 -0
  173. package/src/cli/simple-commands/init/rollback/recovery-manager.js +778 -0
  174. package/src/cli/simple-commands/init/rollback/rollback-executor.js +521 -0
  175. package/src/cli/simple-commands/init/rollback/state-tracker.js +486 -0
  176. package/src/cli/simple-commands/init/sparc/roo-readme.js +61 -0
  177. package/src/cli/simple-commands/init/sparc/roomodes-config.js +102 -0
  178. package/src/cli/simple-commands/init/sparc/workflows.js +40 -0
  179. package/src/cli/simple-commands/init/sparc-structure.js +68 -0
  180. package/src/cli/simple-commands/init/template-copier.js +640 -0
  181. package/src/cli/simple-commands/init/templates/CLAUDE.md +1185 -0
  182. package/src/cli/simple-commands/init/templates/CLAUDE.md.optimized +265 -0
  183. package/src/cli/simple-commands/init/templates/claude-flow-universal +81 -0
  184. package/src/cli/simple-commands/init/templates/claude-flow.bat +18 -0
  185. package/src/cli/simple-commands/init/templates/claude-flow.ps1 +24 -0
  186. package/src/cli/simple-commands/init/templates/claude-md.js +1101 -0
  187. package/src/cli/simple-commands/init/templates/commands/analysis/bottleneck-detect.md +162 -0
  188. package/src/cli/simple-commands/init/templates/commands/automation/auto-agent.md +122 -0
  189. package/src/cli/simple-commands/init/templates/commands/coordination/swarm-init.md +85 -0
  190. package/src/cli/simple-commands/init/templates/commands/github/github-swarm.md +121 -0
  191. package/src/cli/simple-commands/init/templates/commands/helpers/standard-checkpoint-hooks.sh +179 -0
  192. package/src/cli/simple-commands/init/templates/commands/hooks/notification.md +113 -0
  193. package/src/cli/simple-commands/init/templates/commands/hooks/post-command.md +116 -0
  194. package/src/cli/simple-commands/init/templates/commands/hooks/post-edit.md +117 -0
  195. package/src/cli/simple-commands/init/templates/commands/hooks/post-task.md +112 -0
  196. package/src/cli/simple-commands/init/templates/commands/hooks/pre-command.md +113 -0
  197. package/src/cli/simple-commands/init/templates/commands/hooks/pre-edit.md +113 -0
  198. package/src/cli/simple-commands/init/templates/commands/hooks/pre-search.md +112 -0
  199. package/src/cli/simple-commands/init/templates/commands/hooks/pre-task.md +111 -0
  200. package/src/cli/simple-commands/init/templates/commands/hooks/session-end.md +118 -0
  201. package/src/cli/simple-commands/init/templates/commands/hooks/session-restore.md +118 -0
  202. package/src/cli/simple-commands/init/templates/commands/hooks/session-start.md +117 -0
  203. package/src/cli/simple-commands/init/templates/coordination-md.js +340 -0
  204. package/src/cli/simple-commands/init/templates/coordination.md +16 -0
  205. package/src/cli/simple-commands/init/templates/enhanced-templates.js +2347 -0
  206. package/src/cli/simple-commands/init/templates/github-safe-enhanced.js +331 -0
  207. package/src/cli/simple-commands/init/templates/github-safe.js +106 -0
  208. package/src/cli/simple-commands/init/templates/memory-bank-md.js +259 -0
  209. package/src/cli/simple-commands/init/templates/memory-bank.md +16 -0
  210. package/src/cli/simple-commands/init/templates/readme-files.js +72 -0
  211. package/src/cli/simple-commands/init/templates/safe-hook-patterns.js +430 -0
  212. package/src/cli/simple-commands/init/templates/settings.json +109 -0
  213. package/src/cli/simple-commands/init/templates/settings.json.enhanced +35 -0
  214. package/src/cli/simple-commands/init/templates/sparc-modes.js +1401 -0
  215. package/src/cli/simple-commands/init/templates/verification-claude-md.js +432 -0
  216. package/src/cli/simple-commands/init/validation/config-validator.js +354 -0
  217. package/src/cli/simple-commands/init/validation/health-checker.js +599 -0
  218. package/src/cli/simple-commands/init/validation/index.js +388 -0
  219. package/src/cli/simple-commands/init/validation/mode-validator.js +387 -0
  220. package/src/cli/simple-commands/init/validation/post-init-validator.js +390 -0
  221. package/src/cli/simple-commands/init/validation/pre-init-validator.js +290 -0
  222. package/src/cli/simple-commands/init/validation/test-runner.js +488 -0
  223. package/src/cli/simple-commands/init.js +4 -0
  224. package/src/cli/simple-commands/mcp-health.js +163 -0
  225. package/src/cli/simple-commands/mcp-integration-layer.js +689 -0
  226. package/src/cli/simple-commands/mcp.js +420 -0
  227. package/src/cli/simple-commands/memory-consolidation.js +631 -0
  228. package/src/cli/simple-commands/memory.js +345 -0
  229. package/src/cli/simple-commands/migrate-hooks.js +63 -0
  230. package/src/cli/simple-commands/monitor.js +417 -0
  231. package/src/cli/simple-commands/neural.js +148 -0
  232. package/src/cli/simple-commands/pair-autofix-only.js +755 -0
  233. package/src/cli/simple-commands/pair-basic.js +751 -0
  234. package/src/cli/simple-commands/pair-old.js +623 -0
  235. package/src/cli/simple-commands/pair-working.js +849 -0
  236. package/src/cli/simple-commands/pair.js +849 -0
  237. package/src/cli/simple-commands/performance-hooks.js +149 -0
  238. package/src/cli/simple-commands/performance-metrics.js +601 -0
  239. package/src/cli/simple-commands/process-ui-enhanced.js +821 -0
  240. package/src/cli/simple-commands/process-ui.js +274 -0
  241. package/src/cli/simple-commands/realtime-update-system.js +659 -0
  242. package/src/cli/simple-commands/sparc/architecture.js +1750 -0
  243. package/src/cli/simple-commands/sparc/commands.js +575 -0
  244. package/src/cli/simple-commands/sparc/completion.js +1831 -0
  245. package/src/cli/simple-commands/sparc/coordinator.js +1045 -0
  246. package/src/cli/simple-commands/sparc/index.js +321 -0
  247. package/src/cli/simple-commands/sparc/phase-base.js +430 -0
  248. package/src/cli/simple-commands/sparc/pseudocode.js +984 -0
  249. package/src/cli/simple-commands/sparc/refinement.js +1856 -0
  250. package/src/cli/simple-commands/sparc/specification.js +736 -0
  251. package/src/cli/simple-commands/sparc-modes/architect.js +125 -0
  252. package/src/cli/simple-commands/sparc-modes/ask.js +126 -0
  253. package/src/cli/simple-commands/sparc-modes/code.js +148 -0
  254. package/src/cli/simple-commands/sparc-modes/debug.js +112 -0
  255. package/src/cli/simple-commands/sparc-modes/devops.js +137 -0
  256. package/src/cli/simple-commands/sparc-modes/docs-writer.js +38 -0
  257. package/src/cli/simple-commands/sparc-modes/generic.js +34 -0
  258. package/src/cli/simple-commands/sparc-modes/index.js +201 -0
  259. package/src/cli/simple-commands/sparc-modes/integration.js +55 -0
  260. package/src/cli/simple-commands/sparc-modes/mcp.js +38 -0
  261. package/src/cli/simple-commands/sparc-modes/monitoring.js +38 -0
  262. package/src/cli/simple-commands/sparc-modes/optimization.js +38 -0
  263. package/src/cli/simple-commands/sparc-modes/security-review.js +130 -0
  264. package/src/cli/simple-commands/sparc-modes/sparc-orchestrator.js +167 -0
  265. package/src/cli/simple-commands/sparc-modes/spec-pseudocode.js +38 -0
  266. package/src/cli/simple-commands/sparc-modes/supabase-admin.js +149 -0
  267. package/src/cli/simple-commands/sparc-modes/swarm.js +436 -0
  268. package/src/cli/simple-commands/sparc-modes/tdd.js +112 -0
  269. package/src/cli/simple-commands/sparc-modes/tutorial.js +277 -0
  270. package/src/cli/simple-commands/sparc.js +530 -0
  271. package/src/cli/simple-commands/start-ui.js +147 -0
  272. package/src/cli/simple-commands/start-wrapper.js +285 -0
  273. package/src/cli/simple-commands/start.js +2 -0
  274. package/src/cli/simple-commands/status.js +303 -0
  275. package/src/cli/simple-commands/stream-chain-clean.js +221 -0
  276. package/src/cli/simple-commands/stream-chain-fixed.js +89 -0
  277. package/src/cli/simple-commands/stream-chain-real.js +408 -0
  278. package/src/cli/simple-commands/stream-chain-working.js +323 -0
  279. package/src/cli/simple-commands/stream-chain.js +491 -0
  280. package/src/cli/simple-commands/stream-processor.js +340 -0
  281. package/src/cli/simple-commands/swarm-executor.js +253 -0
  282. package/src/cli/simple-commands/swarm-metrics-integration.js +371 -0
  283. package/src/cli/simple-commands/swarm-ui.js +741 -0
  284. package/src/cli/simple-commands/swarm-webui-integration.js +311 -0
  285. package/src/cli/simple-commands/swarm.js +2277 -0
  286. package/src/cli/simple-commands/task.js +228 -0
  287. package/src/cli/simple-commands/templates/mle-star-workflow.json +294 -0
  288. package/src/cli/simple-commands/timestamp-fix.js +104 -0
  289. package/src/cli/simple-commands/token-tracker.js +372 -0
  290. package/src/cli/simple-commands/tool-execution-framework.js +555 -0
  291. package/src/cli/simple-commands/train-and-stream.js +354 -0
  292. package/src/cli/simple-commands/training-pipeline.js +874 -0
  293. package/src/cli/simple-commands/training.js +288 -0
  294. package/src/cli/simple-commands/verification-hooks.js +336 -0
  295. package/src/cli/simple-commands/verification-integration.js +464 -0
  296. package/src/cli/simple-commands/verification-training-integration.js +646 -0
  297. package/src/cli/simple-commands/verification.js +551 -0
  298. package/src/cli/simple-commands/web-server.js +929 -0
  299. package/src/cli/simple-commands/webui-validator.js +136 -0
  300. package/src/language/README.md +503 -0
  301. package/src/language/claude-md-generator.js +618 -0
  302. package/src/language/cli.js +422 -0
  303. package/src/language/example.js +347 -0
  304. package/src/language/integration-system.js +619 -0
  305. package/src/language/language-detector.js +581 -0
@@ -0,0 +1,562 @@
1
+ #!/bin/bash
2
+
3
+ # SPARC Automated Development System
4
+ # Generic workflow for comprehensive software development using SPARC methodology
5
+
6
+ set -e # Exit on any error
7
+
8
+ # Default configuration
9
+ PROJECT_NAME="sparc-project"
10
+ README_PATH="README.md"
11
+ MCP_CONFIG=".roo/mcp.json"
12
+ VERBOSE=false
13
+ DRY_RUN=false
14
+ SKIP_RESEARCH=false
15
+ SKIP_TESTS=false
16
+ TEST_COVERAGE_TARGET=100
17
+ PARALLEL_EXECUTION=true
18
+ COMMIT_FREQUENCY="phase" # phase, feature, or manual
19
+ OUTPUT_FORMAT="text"
20
+ DEVELOPMENT_MODE="full" # full, backend-only, frontend-only, api-only
21
+
22
+ # Help function
23
+ show_help() {
24
+ cat << EOF
25
+ SPARC Automated Development System
26
+ ==================================
27
+
28
+ A comprehensive, automated software development workflow using SPARC methodology
29
+ (Specification, Pseudocode, Architecture, Refinement, Completion)
30
+
31
+ USAGE:
32
+ ./claude-sparc.sh [OPTIONS] [PROJECT_NAME] [README_PATH]
33
+
34
+ ARGUMENTS:
35
+ PROJECT_NAME Name of the project to develop (default: sparc-project)
36
+ README_PATH Path to initial requirements/readme file (default: readme.md)
37
+
38
+ OPTIONS:
39
+ -h, --help Show this help message
40
+ -v, --verbose Enable verbose output
41
+ -d, --dry-run Show what would be done without executing
42
+ -c, --config FILE MCP configuration file (default: .roo/mcp.json)
43
+
44
+ # Research Options
45
+ --skip-research Skip the web research phase
46
+ --research-depth LEVEL Research depth: basic, standard, comprehensive (default: standard)
47
+
48
+ # Development Options
49
+ --mode MODE Development mode: full, backend-only, frontend-only, api-only (default: full)
50
+ --skip-tests Skip test development (not recommended)
51
+ --coverage TARGET Test coverage target percentage (default: 100)
52
+ --no-parallel Disable parallel execution
53
+
54
+ # Commit Options
55
+ --commit-freq FREQ Commit frequency: phase, feature, manual (default: phase)
56
+ --no-commits Disable automatic commits
57
+
58
+ # Output Options
59
+ --output FORMAT Output format: text, json, markdown (default: text)
60
+ --quiet Suppress non-essential output
61
+
62
+ EXAMPLES:
63
+ # Basic usage
64
+ ./claude-sparc.sh my-app docs/requirements.md
65
+
66
+ # Backend API development with verbose output
67
+ ./claude-sparc.sh --mode api-only --verbose user-service api-spec.md
68
+
69
+ # Quick prototype without research
70
+ ./claude-sparc.sh --skip-research --coverage 80 prototype-app readme.md
71
+
72
+ # Dry run to see what would be executed
73
+ ./claude-sparc.sh --dry-run --verbose my-project requirements.md
74
+
75
+ DEVELOPMENT MODES:
76
+ full Complete full-stack development (default)
77
+ backend-only Backend services and APIs only
78
+ frontend-only Frontend application only
79
+ api-only REST/GraphQL API development only
80
+
81
+ RESEARCH DEPTHS:
82
+ basic Quick domain overview and technology stack research
83
+ standard Comprehensive research including competitive analysis (default)
84
+ comprehensive Extensive research with academic papers and detailed analysis
85
+
86
+ COMMIT FREQUENCIES:
87
+ phase Commit after each SPARC phase completion (default)
88
+ feature Commit after each feature implementation
89
+ manual No automatic commits (manual git operations only)
90
+
91
+ For more information, see SPARC-DEVELOPMENT-GUIDE.md
92
+ EOF
93
+ }
94
+
95
+ # Parse command line arguments
96
+ parse_args() {
97
+ while [[ $# -gt 0 ]]; do
98
+ case $1 in
99
+ -h|--help)
100
+ show_help
101
+ exit 0
102
+ ;;
103
+ -v|--verbose)
104
+ VERBOSE=true
105
+ shift
106
+ ;;
107
+ -d|--dry-run)
108
+ DRY_RUN=true
109
+ shift
110
+ ;;
111
+ -c|--config)
112
+ MCP_CONFIG="$2"
113
+ shift 2
114
+ ;;
115
+ --skip-research)
116
+ SKIP_RESEARCH=true
117
+ shift
118
+ ;;
119
+ --research-depth)
120
+ RESEARCH_DEPTH="$2"
121
+ shift 2
122
+ ;;
123
+ --mode)
124
+ DEVELOPMENT_MODE="$2"
125
+ shift 2
126
+ ;;
127
+ --skip-tests)
128
+ SKIP_TESTS=true
129
+ shift
130
+ ;;
131
+ --coverage)
132
+ TEST_COVERAGE_TARGET="$2"
133
+ shift 2
134
+ ;;
135
+ --no-parallel)
136
+ PARALLEL_EXECUTION=false
137
+ shift
138
+ ;;
139
+ --commit-freq)
140
+ COMMIT_FREQUENCY="$2"
141
+ shift 2
142
+ ;;
143
+ --no-commits)
144
+ COMMIT_FREQUENCY="manual"
145
+ shift
146
+ ;;
147
+ --output)
148
+ OUTPUT_FORMAT="$2"
149
+ shift 2
150
+ ;;
151
+ --quiet)
152
+ VERBOSE=false
153
+ shift
154
+ ;;
155
+ -*)
156
+ echo "Unknown option: $1" >&2
157
+ echo "Use --help for usage information" >&2
158
+ exit 1
159
+ ;;
160
+ *)
161
+ if [[ "$PROJECT_NAME" == "sparc-project" ]]; then
162
+ PROJECT_NAME="$1"
163
+ elif [[ "$README_PATH" == "README.md" ]]; then
164
+ README_PATH="$1"
165
+ else
166
+ echo "Too many arguments: $1" >&2
167
+ echo "Use --help for usage information" >&2
168
+ exit 1
169
+ fi
170
+ shift
171
+ ;;
172
+ esac
173
+ done
174
+ }
175
+
176
+ # Validate configuration
177
+ validate_config() {
178
+ # Check if MCP config exists
179
+ if [[ ! -f "$MCP_CONFIG" ]]; then
180
+ echo "Warning: MCP config file not found: $MCP_CONFIG" >&2
181
+ echo "Using default MCP configuration" >&2
182
+ fi
183
+
184
+ # Check if README exists, try to find alternatives if default doesn't exist
185
+ if [[ ! -f "$README_PATH" ]]; then
186
+ # Try common README file variations
187
+ local readme_alternatives=("README.md" "readme.md" "Readme.md" "README.txt" "readme.txt")
188
+ local found_readme=""
189
+
190
+ for alt in "${readme_alternatives[@]}"; do
191
+ if [[ -f "$alt" ]]; then
192
+ found_readme="$alt"
193
+ break
194
+ fi
195
+ done
196
+
197
+ if [[ -n "$found_readme" ]]; then
198
+ echo "README file '$README_PATH' not found, using '$found_readme' instead" >&2
199
+ README_PATH="$found_readme"
200
+ else
201
+ echo "Error: No README file found. Tried: ${readme_alternatives[*]}" >&2
202
+ echo "Please specify a valid README file path or create one of the above files." >&2
203
+ exit 1
204
+ fi
205
+ fi
206
+
207
+ # Validate development mode
208
+ case $DEVELOPMENT_MODE in
209
+ full|backend-only|frontend-only|api-only) ;;
210
+ *) echo "Error: Invalid development mode: $DEVELOPMENT_MODE" >&2; exit 1 ;;
211
+ esac
212
+
213
+ # Validate commit frequency
214
+ case $COMMIT_FREQUENCY in
215
+ phase|feature|manual) ;;
216
+ *) echo "Error: Invalid commit frequency: $COMMIT_FREQUENCY" >&2; exit 1 ;;
217
+ esac
218
+
219
+ # Validate output format
220
+ case $OUTPUT_FORMAT in
221
+ text|json|markdown) ;;
222
+ *) echo "Error: Invalid output format: $OUTPUT_FORMAT" >&2; exit 1 ;;
223
+ esac
224
+
225
+ # Validate coverage target
226
+ if [[ ! "$TEST_COVERAGE_TARGET" =~ ^[0-9]+$ ]] || [[ "$TEST_COVERAGE_TARGET" -lt 0 ]] || [[ "$TEST_COVERAGE_TARGET" -gt 100 ]]; then
227
+ echo "Error: Invalid coverage target: $TEST_COVERAGE_TARGET (must be 0-100)" >&2
228
+ exit 1
229
+ fi
230
+ }
231
+
232
+ # Show configuration
233
+ show_config() {
234
+ if [[ "$VERBOSE" == true ]]; then
235
+ cat << EOF
236
+ SPARC Configuration:
237
+ ===================
238
+ Project Name: $PROJECT_NAME
239
+ README Path: $README_PATH
240
+ MCP Config: $MCP_CONFIG
241
+ Development Mode: $DEVELOPMENT_MODE
242
+ Research Depth: ${RESEARCH_DEPTH:-standard}
243
+ Test Coverage Target: $TEST_COVERAGE_TARGET%
244
+ Parallel Execution: $PARALLEL_EXECUTION
245
+ Commit Frequency: $COMMIT_FREQUENCY
246
+ Output Format: $OUTPUT_FORMAT
247
+ Skip Research: $SKIP_RESEARCH
248
+ Skip Tests: $SKIP_TESTS
249
+ Dry Run: $DRY_RUN
250
+ ===================
251
+ EOF
252
+ fi
253
+ }
254
+
255
+ # Build allowed tools based on configuration
256
+ build_allowed_tools() {
257
+ local tools="View,Edit,Replace,GlobTool,GrepTool,LS,Bash"
258
+
259
+ if [[ "$SKIP_RESEARCH" != true ]]; then
260
+ tools="$tools,WebFetchTool"
261
+ fi
262
+
263
+ if [[ "$PARALLEL_EXECUTION" == true ]]; then
264
+ tools="$tools,BatchTool,dispatch_agent"
265
+ fi
266
+
267
+ echo "$tools"
268
+ }
269
+
270
+ # Build Claude command flags
271
+ build_claude_flags() {
272
+ local flags="--mcp-config $MCP_CONFIG --dangerously-skip-permissions"
273
+
274
+ if [[ "$VERBOSE" == true ]]; then
275
+ flags="$flags --verbose"
276
+ fi
277
+
278
+ if [[ "$OUTPUT_FORMAT" != "text" ]]; then
279
+ flags="$flags --output-format $OUTPUT_FORMAT"
280
+ fi
281
+
282
+ echo "$flags"
283
+ }
284
+
285
+ # Main execution
286
+ main() {
287
+ parse_args "$@"
288
+ validate_config
289
+ show_config
290
+
291
+ if [[ "$DRY_RUN" == true ]]; then
292
+ echo "DRY RUN - Would execute the following:"
293
+ echo "Project: $PROJECT_NAME"
294
+ echo "README: $README_PATH"
295
+ echo "Allowed Tools: $(build_allowed_tools)"
296
+ echo "Claude Flags: $(build_claude_flags)"
297
+ exit 0
298
+ fi
299
+
300
+ # Execute the SPARC development process
301
+ execute_sparc_development
302
+ }
303
+
304
+ # Execute SPARC development process
305
+ execute_sparc_development() {
306
+ local allowed_tools=$(build_allowed_tools)
307
+ local claude_flags=$(build_claude_flags)
308
+
309
+ claude "
310
+ # SPARC Automated Development System
311
+ # Project: ${PROJECT_NAME}
312
+ # Initial Research Document: ${README_PATH}
313
+ # Configuration: Mode=${DEVELOPMENT_MODE}, Coverage=${TEST_COVERAGE_TARGET}%, Parallel=${PARALLEL_EXECUTION}
314
+
315
+ $(if [[ "$SKIP_RESEARCH" != true ]]; then cat << 'RESEARCH_BLOCK'
316
+ ## PHASE 0: COMPREHENSIVE RESEARCH & DISCOVERY
317
+ ### Research Depth: ${RESEARCH_DEPTH:-standard}
318
+ ### Parallel Web Research Phase ($(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "BatchTool execution"; else echo "Sequential execution"; fi)):
319
+
320
+ 1. **Domain Research**:
321
+ - WebFetchTool: Extract key concepts from ${README_PATH}
322
+ - WebFetchTool: Search for latest industry trends and technologies
323
+ - WebFetchTool: Research competitive landscape and existing solutions
324
+ $(if [[ "${RESEARCH_DEPTH:-standard}" == "comprehensive" ]]; then echo " - WebFetchTool: Gather academic papers and technical documentation"; fi)
325
+
326
+ 2. **Technology Stack Research**:
327
+ - WebFetchTool: Research best practices for identified technology domains
328
+ - WebFetchTool: Search for framework comparisons and recommendations
329
+ - WebFetchTool: Investigate security considerations and compliance requirements
330
+ $(if [[ "${RESEARCH_DEPTH:-standard}" != "basic" ]]; then echo " - WebFetchTool: Research scalability patterns and architecture approaches"; fi)
331
+
332
+ 3. **Implementation Research**:
333
+ - WebFetchTool: Search for code examples and implementation patterns
334
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo " - WebFetchTool: Research testing frameworks and methodologies"; fi)
335
+ - WebFetchTool: Investigate deployment and DevOps best practices
336
+ $(if [[ "${RESEARCH_DEPTH:-standard}" == "comprehensive" ]]; then echo " - WebFetchTool: Research monitoring and observability solutions"; fi)
337
+
338
+ ### Research Processing:
339
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Use BatchTool to execute all research queries in parallel for maximum efficiency."; else echo "Execute research queries sequentially for thorough analysis."; fi)
340
+
341
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo "**Commit**: 'feat: complete comprehensive research phase - gathered domain knowledge, technology insights, and implementation patterns'"; fi)
342
+ RESEARCH_BLOCK
343
+ fi)
344
+
345
+ ## SPECIFICATION PHASE
346
+ ### Requirements Analysis for ${DEVELOPMENT_MODE} development:
347
+ 1. **Functional Requirements**:
348
+ - Analyze ${README_PATH} to extract core functionality
349
+ - Define user stories and acceptance criteria
350
+ - Identify system boundaries and interfaces
351
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "backend-only" || "$DEVELOPMENT_MODE" == "api-only" ]]; then echo " - Specify API endpoints and data models"; fi)
352
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "frontend-only" ]]; then echo " - Define user interface requirements and user experience flows"; fi)
353
+
354
+ 2. **Non-Functional Requirements**:
355
+ - Security and compliance requirements
356
+ - Performance benchmarks and SLAs
357
+ - Scalability and availability targets
358
+ - Maintainability and extensibility goals
359
+
360
+ 3. **Technical Constraints**:
361
+ - Technology stack decisions based on research
362
+ - Integration requirements and dependencies
363
+ - Deployment and infrastructure constraints
364
+ - Budget and timeline considerations
365
+
366
+ $(if [[ "$COMMIT_FREQUENCY" == "phase" ]]; then echo "**Commit**: 'docs: complete specification phase - defined functional/non-functional requirements and technical constraints for ${DEVELOPMENT_MODE} development'"; fi)
367
+
368
+ ## PSEUDOCODE PHASE
369
+ ### High-Level Architecture Design for ${DEVELOPMENT_MODE}:
370
+ 1. **System Architecture**:
371
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "backend-only" ]]; then echo " - Define backend components and their responsibilities"; fi)
372
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "frontend-only" ]]; then echo " - Design frontend architecture and component hierarchy"; fi)
373
+ $(if [[ "$DEVELOPMENT_MODE" == "api-only" ]]; then echo " - Define API architecture and endpoint structure"; fi)
374
+ - Design data flow and communication patterns
375
+ - Specify APIs and integration points
376
+ - Plan error handling and recovery strategies
377
+
378
+ 2. **Algorithm Design**:
379
+ - Core business logic algorithms
380
+ - Data processing and transformation logic
381
+ - Optimization strategies and performance considerations
382
+ - Security and validation algorithms
383
+
384
+ $(if [[ "$SKIP_TESTS" != true ]]; then cat << 'TEST_BLOCK'
385
+ 3. **Test Strategy**:
386
+ - Unit testing approach (TDD London School)
387
+ - Integration testing strategy
388
+ - End-to-end testing scenarios
389
+ - Target: ${TEST_COVERAGE_TARGET}% test coverage
390
+ $(if [[ "$DEVELOPMENT_MODE" == "full" ]]; then echo " - Frontend and backend testing coordination"; fi)
391
+ TEST_BLOCK
392
+ fi)
393
+
394
+ $(if [[ "$COMMIT_FREQUENCY" == "phase" ]]; then echo "**Commit**: 'design: complete pseudocode phase - defined system architecture, algorithms, and test strategy for ${DEVELOPMENT_MODE}'"; fi)
395
+
396
+ ## ARCHITECTURE PHASE
397
+ ### Detailed System Design for ${DEVELOPMENT_MODE}:
398
+ 1. **Component Architecture**:
399
+ - Detailed component specifications
400
+ - Interface definitions and contracts
401
+ - Dependency injection and inversion of control
402
+ - Configuration management strategy
403
+
404
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "backend-only" || "$DEVELOPMENT_MODE" == "api-only" ]]; then cat << 'DATA_BLOCK'
405
+ 2. **Data Architecture**:
406
+ - Database schema design
407
+ - Data access patterns and repositories
408
+ - Caching strategies and data flow
409
+ - Backup and recovery procedures
410
+ DATA_BLOCK
411
+ fi)
412
+
413
+ 3. **Infrastructure Architecture**:
414
+ - Deployment architecture and environments
415
+ - CI/CD pipeline design
416
+ - Monitoring and logging architecture
417
+ - Security architecture and access controls
418
+
419
+ $(if [[ "$COMMIT_FREQUENCY" == "phase" ]]; then echo "**Commit**: 'arch: complete architecture phase - detailed component, data, and infrastructure design for ${DEVELOPMENT_MODE}'"; fi)
420
+
421
+ ## REFINEMENT PHASE (TDD Implementation)
422
+ ### $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Parallel"; else echo "Sequential"; fi) Development Tracks for ${DEVELOPMENT_MODE}:
423
+
424
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "backend-only" || "$DEVELOPMENT_MODE" == "api-only" ]]; then cat << 'BACKEND_BLOCK'
425
+ #### Track 1: Backend Development
426
+ 1. **Setup & Infrastructure**:
427
+ - Bash: Initialize project structure
428
+ - Bash: Setup development environment
429
+ - Bash: Configure CI/CD pipeline
430
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: initialize backend infrastructure and development environment'"; fi)
431
+
432
+ $(if [[ "$SKIP_TESTS" != true ]]; then cat << 'BACKEND_TDD_BLOCK'
433
+ 2. **TDD Core Components** (London School):
434
+ - Red: Write failing tests for core business logic
435
+ - Green: Implement minimal code to pass tests
436
+ - Refactor: Optimize while maintaining green tests
437
+ - Target: ${TEST_COVERAGE_TARGET}% coverage
438
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: implement core business logic with TDD - ${TEST_COVERAGE_TARGET}% test coverage'"; fi)
439
+ BACKEND_TDD_BLOCK
440
+ fi)
441
+
442
+ 3. **API Layer Development**:
443
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Red: Write API contract tests"; else echo "Implement API endpoints"; fi)
444
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Green: Implement API endpoints"; else echo "Add input validation and error handling"; fi)
445
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Refactor: Optimize API performance"; else echo "Optimize API performance"; fi)
446
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: complete API layer with $(if [[ "$SKIP_TESTS" != true ]]; then echo "comprehensive test coverage"; else echo "validation and error handling"; fi)'"; fi)
447
+ BACKEND_BLOCK
448
+ fi)
449
+
450
+ $(if [[ "$DEVELOPMENT_MODE" == "full" || "$DEVELOPMENT_MODE" == "frontend-only" ]]; then cat << 'FRONTEND_BLOCK'
451
+ #### Track 2: Frontend Development
452
+ 1. **UI Component Library**:
453
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Red: Write component tests"; else echo "Implement UI components"; fi)
454
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Green: Implement UI components"; else echo "Add component styling and interactions"; fi)
455
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Refactor: Optimize for reusability"; else echo "Optimize for reusability and performance"; fi)
456
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: complete UI component library with $(if [[ "$SKIP_TESTS" != true ]]; then echo "full test coverage"; else echo "optimized components"; fi)'"; fi)
457
+
458
+ 2. **Application Logic**:
459
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Red: Write application flow tests"; else echo "Implement user interactions"; fi)
460
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Green: Implement user interactions"; else echo "Add state management and routing"; fi)
461
+ - $(if [[ "$SKIP_TESTS" != true ]]; then echo "Refactor: Optimize user experience"; else echo "Optimize user experience and performance"; fi)
462
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: complete frontend application logic with $(if [[ "$SKIP_TESTS" != true ]]; then echo "end-to-end tests"; else echo "optimized user experience"; fi)'"; fi)
463
+ FRONTEND_BLOCK
464
+ fi)
465
+
466
+ #### Track 3: Integration & Quality Assurance
467
+ 1. **Integration Testing**:
468
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo " - BatchTool: Run parallel integration test suites"; else echo " - Bash: Run integration test suites"; fi)
469
+ - Bash: Execute performance benchmarks
470
+ - Bash: Run security scans and audits
471
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'test: complete integration testing with performance and security validation'"; fi)
472
+
473
+ 2. **Quality Gates**:
474
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo " - BatchTool: Run parallel quality checks (linting, analysis, documentation)"; else echo " - Bash: Run comprehensive linting and code quality analysis"; fi)
475
+ - Bash: Validate documentation completeness
476
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'quality: pass all quality gates - linting, analysis, and documentation'"; fi)
477
+
478
+ ### $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Parallel"; else echo "Sequential"; fi) Subtask Orchestration:
479
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Use BatchTool to execute independent development tracks in parallel where possible."; else echo "Execute development tracks sequentially for thorough validation."; fi)
480
+
481
+ ## COMPLETION PHASE
482
+ ### Final Integration & Deployment for ${DEVELOPMENT_MODE}:
483
+ 1. **System Integration**:
484
+ - Integrate all development tracks
485
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo " - Run comprehensive end-to-end tests"; fi)
486
+ - Validate against original requirements
487
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'feat: complete system integration with full validation'"; fi)
488
+
489
+ 2. **Documentation & Deployment**:
490
+ $(if [[ "$DEVELOPMENT_MODE" == "api-only" || "$DEVELOPMENT_MODE" == "backend-only" || "$DEVELOPMENT_MODE" == "full" ]]; then echo " - Generate comprehensive API documentation"; fi)
491
+ - Create deployment guides and runbooks
492
+ - Setup monitoring and alerting
493
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'docs: complete documentation and deployment preparation'"; fi)
494
+
495
+ 3. **Production Readiness**:
496
+ - Execute production deployment checklist
497
+ - Validate monitoring and observability
498
+ - Conduct final security review
499
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo " - **Commit**: 'deploy: production-ready release with full monitoring and security validation'"; fi)
500
+
501
+ ## SPARC METHODOLOGY ENFORCEMENT
502
+ ### Quality Standards:
503
+ - **Modularity**: All files ≤ 500 lines, functions ≤ 50 lines
504
+ - **Security**: No hardcoded secrets, comprehensive input validation
505
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo "- **Testing**: ${TEST_COVERAGE_TARGET}% test coverage with TDD London School approach"; fi)
506
+ - **Documentation**: Self-documenting code with strategic comments
507
+ - **Performance**: Optimized critical paths with benchmarking
508
+
509
+ ### Tool Utilization Strategy:
510
+ $(if [[ "$SKIP_RESEARCH" != true ]]; then echo "- **WebFetchTool**: Comprehensive research and documentation gathering"; fi)
511
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "- **BatchTool**: Parallel research, testing, and quality checks"; fi)
512
+ - **Bash**: Git operations, CI/CD, testing, and deployment
513
+ - **Edit/Replace**: Code implementation and refactoring
514
+ - **GlobTool/GrepTool**: Code analysis and pattern detection
515
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "- **dispatch_agent**: Complex subtask delegation"; fi)
516
+
517
+ ### Commit Standards (Frequency: ${COMMIT_FREQUENCY}):
518
+ - **feat**: New features and major functionality
519
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo "- **test**: Test implementation and coverage improvements"; fi)
520
+ - **fix**: Bug fixes and issue resolution
521
+ - **docs**: Documentation updates and improvements
522
+ - **arch**: Architectural changes and design updates
523
+ - **quality**: Code quality improvements and refactoring
524
+ - **deploy**: Deployment and infrastructure changes
525
+
526
+ ### $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Parallel"; else echo "Sequential"; fi) Execution Strategy:
527
+ $(if [[ "$PARALLEL_EXECUTION" == true ]]; then cat << 'PARALLEL_BLOCK'
528
+ 1. Use BatchTool for independent operations
529
+ 2. Leverage dispatch_agent for complex subtasks
530
+ 3. Implement concurrent development tracks
531
+ 4. Optimize for maximum development velocity
532
+ PARALLEL_BLOCK
533
+ else cat << 'SEQUENTIAL_BLOCK'
534
+ 1. Execute operations sequentially for thorough validation
535
+ 2. Focus on quality over speed
536
+ 3. Ensure each step is fully validated before proceeding
537
+ 4. Maintain clear development progression
538
+ SEQUENTIAL_BLOCK
539
+ fi)
540
+
541
+ ### Continuous Integration:
542
+ $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo "- Commit after each $(if [[ "$COMMIT_FREQUENCY" == "phase" ]]; then echo "major phase"; else echo "feature"; fi) completion"; fi)
543
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo "- Run automated tests on every commit"; fi)
544
+ - Validate quality gates continuously
545
+ - Monitor performance and security metrics
546
+
547
+ ## SUCCESS CRITERIA:
548
+ $(if [[ "$SKIP_TESTS" != true ]]; then echo "- ✅ ${TEST_COVERAGE_TARGET}% test coverage achieved"; fi)
549
+ - ✅ All quality gates passed
550
+ - ✅ Production deployment successful
551
+ - ✅ Comprehensive documentation complete
552
+ - ✅ Security and performance validated
553
+ - ✅ Monitoring and observability operational
554
+
555
+ Continue development until all success criteria are met. $(if [[ "$PARALLEL_EXECUTION" == true ]]; then echo "Use parallel execution and subtask orchestration for maximum efficiency."; fi) $(if [[ "$COMMIT_FREQUENCY" != "manual" ]]; then echo "Commit after each $(if [[ "$COMMIT_FREQUENCY" == "phase" ]]; then echo "phase"; else echo "feature"; fi) with detailed messages."; fi) Display '<SPARC-COMPLETE>' when the entire development lifecycle is finished.
556
+ " \
557
+ --allowedTools "$allowed_tools" \
558
+ $claude_flags
559
+ }
560
+
561
+ # Execute main function with all arguments
562
+ main "$@"
@@ -0,0 +1,17 @@
1
+ #!/bin/bash
2
+ # Claude wrapper script to handle TTY issues
3
+
4
+ # Check if we're in a TTY
5
+ if [ -t 0 ]; then
6
+ # We have a TTY, run normally
7
+ exec claude "$@"
8
+ else
9
+ # No TTY, use script command to create a pseudo-TTY
10
+ if command -v script >/dev/null 2>&1; then
11
+ # Linux version of script
12
+ exec script -q -c "claude $*" /dev/null
13
+ else
14
+ # Fallback: run without TTY (may cause issues)
15
+ exec claude "$@"
16
+ fi
17
+ fi