musubi-sdd 5.1.0 → 5.6.1

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 (232) hide show
  1. package/README.ja.md +106 -48
  2. package/README.md +110 -32
  3. package/bin/musubi-analyze.js +74 -67
  4. package/bin/musubi-browser.js +27 -26
  5. package/bin/musubi-change.js +48 -47
  6. package/bin/musubi-checkpoint.js +10 -7
  7. package/bin/musubi-convert.js +25 -25
  8. package/bin/musubi-costs.js +27 -10
  9. package/bin/musubi-gui.js +52 -46
  10. package/bin/musubi-init.js +1952 -10
  11. package/bin/musubi-orchestrate.js +327 -239
  12. package/bin/musubi-remember.js +69 -56
  13. package/bin/musubi-resolve.js +53 -45
  14. package/bin/musubi-trace.js +51 -22
  15. package/bin/musubi-validate.js +39 -30
  16. package/bin/musubi-workflow.js +33 -34
  17. package/bin/musubi.js +39 -2
  18. package/package.json +1 -1
  19. package/src/agents/agent-loop.js +94 -95
  20. package/src/agents/agentic/code-generator.js +119 -109
  21. package/src/agents/agentic/code-reviewer.js +105 -108
  22. package/src/agents/agentic/index.js +4 -4
  23. package/src/agents/browser/action-executor.js +13 -13
  24. package/src/agents/browser/ai-comparator.js +11 -10
  25. package/src/agents/browser/context-manager.js +6 -6
  26. package/src/agents/browser/index.js +5 -5
  27. package/src/agents/browser/nl-parser.js +31 -46
  28. package/src/agents/browser/screenshot.js +2 -2
  29. package/src/agents/browser/test-generator.js +6 -4
  30. package/src/agents/function-tool.js +71 -65
  31. package/src/agents/index.js +7 -7
  32. package/src/agents/schema-generator.js +98 -94
  33. package/src/analyzers/ast-extractor.js +158 -146
  34. package/src/analyzers/codegraph-auto-update.js +858 -0
  35. package/src/analyzers/complexity-analyzer.js +536 -0
  36. package/src/analyzers/context-optimizer.js +241 -126
  37. package/src/analyzers/impact-analyzer.js +1 -1
  38. package/src/analyzers/large-project-analyzer.js +766 -0
  39. package/src/analyzers/repository-map.js +77 -81
  40. package/src/analyzers/security-analyzer.js +19 -11
  41. package/src/analyzers/stuck-detector.js +19 -17
  42. package/src/converters/index.js +78 -57
  43. package/src/converters/ir/types.js +12 -12
  44. package/src/converters/parsers/musubi-parser.js +134 -126
  45. package/src/converters/parsers/openapi-parser.js +70 -53
  46. package/src/converters/parsers/speckit-parser.js +239 -175
  47. package/src/converters/writers/musubi-writer.js +123 -118
  48. package/src/converters/writers/speckit-writer.js +124 -113
  49. package/src/generators/rust-migration-generator.js +512 -0
  50. package/src/gui/public/index.html +1365 -1211
  51. package/src/gui/server.js +41 -40
  52. package/src/gui/services/file-watcher.js +23 -8
  53. package/src/gui/services/project-scanner.js +26 -20
  54. package/src/gui/services/replanning-service.js +27 -23
  55. package/src/gui/services/traceability-service.js +8 -8
  56. package/src/gui/services/workflow-service.js +14 -7
  57. package/src/index.js +151 -0
  58. package/src/integrations/cicd.js +90 -104
  59. package/src/integrations/codegraph-mcp.js +643 -0
  60. package/src/integrations/documentation.js +142 -103
  61. package/src/integrations/examples.js +95 -80
  62. package/src/integrations/github-client.js +17 -17
  63. package/src/integrations/index.js +5 -5
  64. package/src/integrations/mcp/index.js +21 -21
  65. package/src/integrations/mcp/mcp-context-provider.js +76 -78
  66. package/src/integrations/mcp/mcp-discovery.js +74 -72
  67. package/src/integrations/mcp/mcp-tool-registry.js +99 -94
  68. package/src/integrations/mcp-connector.js +70 -66
  69. package/src/integrations/platforms.js +50 -49
  70. package/src/integrations/tool-discovery.js +37 -31
  71. package/src/llm-providers/anthropic-provider.js +11 -11
  72. package/src/llm-providers/base-provider.js +16 -18
  73. package/src/llm-providers/copilot-provider.js +22 -19
  74. package/src/llm-providers/index.js +26 -25
  75. package/src/llm-providers/ollama-provider.js +11 -11
  76. package/src/llm-providers/openai-provider.js +12 -12
  77. package/src/managers/agent-memory.js +36 -24
  78. package/src/managers/checkpoint-manager.js +4 -8
  79. package/src/managers/delta-spec.js +19 -19
  80. package/src/managers/index.js +13 -4
  81. package/src/managers/memory-condenser.js +35 -45
  82. package/src/managers/repo-skill-manager.js +57 -31
  83. package/src/managers/skill-loader.js +25 -22
  84. package/src/managers/skill-tools.js +36 -72
  85. package/src/managers/workflow.js +30 -22
  86. package/src/monitoring/cost-tracker.js +48 -46
  87. package/src/monitoring/incident-manager.js +116 -106
  88. package/src/monitoring/index.js +144 -134
  89. package/src/monitoring/observability.js +75 -62
  90. package/src/monitoring/quality-dashboard.js +45 -41
  91. package/src/monitoring/release-manager.js +63 -53
  92. package/src/orchestration/agent-skill-binding.js +39 -47
  93. package/src/orchestration/error-handler.js +65 -107
  94. package/src/orchestration/guardrails/base-guardrail.js +26 -24
  95. package/src/orchestration/guardrails/guardrail-rules.js +50 -64
  96. package/src/orchestration/guardrails/index.js +5 -5
  97. package/src/orchestration/guardrails/input-guardrail.js +58 -45
  98. package/src/orchestration/guardrails/output-guardrail.js +104 -81
  99. package/src/orchestration/guardrails/safety-check.js +79 -79
  100. package/src/orchestration/index.js +38 -55
  101. package/src/orchestration/mcp-tool-adapters.js +96 -99
  102. package/src/orchestration/orchestration-engine.js +21 -21
  103. package/src/orchestration/pattern-registry.js +60 -45
  104. package/src/orchestration/patterns/auto.js +34 -47
  105. package/src/orchestration/patterns/group-chat.js +59 -65
  106. package/src/orchestration/patterns/handoff.js +67 -65
  107. package/src/orchestration/patterns/human-in-loop.js +51 -72
  108. package/src/orchestration/patterns/nested.js +25 -40
  109. package/src/orchestration/patterns/sequential.js +35 -34
  110. package/src/orchestration/patterns/swarm.js +63 -56
  111. package/src/orchestration/patterns/triage.js +150 -109
  112. package/src/orchestration/reasoning/index.js +9 -9
  113. package/src/orchestration/reasoning/planning-engine.js +143 -140
  114. package/src/orchestration/reasoning/reasoning-engine.js +206 -144
  115. package/src/orchestration/reasoning/self-correction.js +121 -128
  116. package/src/orchestration/replanning/adaptive-goal-modifier.js +107 -112
  117. package/src/orchestration/replanning/alternative-generator.js +37 -42
  118. package/src/orchestration/replanning/config.js +63 -59
  119. package/src/orchestration/replanning/goal-progress-tracker.js +98 -100
  120. package/src/orchestration/replanning/index.js +24 -20
  121. package/src/orchestration/replanning/plan-evaluator.js +49 -50
  122. package/src/orchestration/replanning/plan-monitor.js +32 -28
  123. package/src/orchestration/replanning/proactive-path-optimizer.js +175 -178
  124. package/src/orchestration/replanning/replan-history.js +33 -26
  125. package/src/orchestration/replanning/replanning-engine.js +106 -108
  126. package/src/orchestration/skill-executor.js +107 -109
  127. package/src/orchestration/skill-registry.js +85 -89
  128. package/src/orchestration/workflow-examples.js +228 -231
  129. package/src/orchestration/workflow-executor.js +65 -68
  130. package/src/orchestration/workflow-orchestrator.js +72 -73
  131. package/src/phase4-integration.js +47 -40
  132. package/src/phase5-integration.js +89 -30
  133. package/src/reporters/coverage-report.js +82 -30
  134. package/src/reporters/hierarchical-reporter.js +498 -0
  135. package/src/reporters/traceability-matrix-report.js +29 -20
  136. package/src/resolvers/issue-resolver.js +43 -31
  137. package/src/steering/advanced-validation.js +133 -124
  138. package/src/steering/auto-updater.js +60 -73
  139. package/src/steering/index.js +6 -6
  140. package/src/steering/quality-metrics.js +41 -35
  141. package/src/steering/steering-auto-update.js +83 -86
  142. package/src/steering/steering-validator.js +98 -106
  143. package/src/steering/template-constraints.js +53 -54
  144. package/src/templates/agents/claude-code/CLAUDE.md +32 -32
  145. package/src/templates/agents/claude-code/skills/agent-assistant/SKILL.md +13 -5
  146. package/src/templates/agents/claude-code/skills/ai-ml-engineer/mlops-guide.md +23 -23
  147. package/src/templates/agents/claude-code/skills/ai-ml-engineer/model-card-template.md +60 -41
  148. package/src/templates/agents/claude-code/skills/api-designer/api-patterns.md +27 -19
  149. package/src/templates/agents/claude-code/skills/api-designer/openapi-template.md +11 -7
  150. package/src/templates/agents/claude-code/skills/bug-hunter/SKILL.md +4 -3
  151. package/src/templates/agents/claude-code/skills/bug-hunter/root-cause-analysis.md +37 -15
  152. package/src/templates/agents/claude-code/skills/change-impact-analyzer/dependency-graph-patterns.md +36 -42
  153. package/src/templates/agents/claude-code/skills/change-impact-analyzer/impact-analysis-template.md +69 -60
  154. package/src/templates/agents/claude-code/skills/cloud-architect/aws-patterns.md +31 -38
  155. package/src/templates/agents/claude-code/skills/cloud-architect/azure-patterns.md +28 -23
  156. package/src/templates/agents/claude-code/skills/code-reviewer/SKILL.md +61 -0
  157. package/src/templates/agents/claude-code/skills/code-reviewer/best-practices.md +27 -0
  158. package/src/templates/agents/claude-code/skills/code-reviewer/review-checklist.md +29 -10
  159. package/src/templates/agents/claude-code/skills/code-reviewer/review-standards.md +29 -24
  160. package/src/templates/agents/claude-code/skills/constitution-enforcer/SKILL.md +8 -6
  161. package/src/templates/agents/claude-code/skills/constitution-enforcer/constitutional-articles.md +62 -26
  162. package/src/templates/agents/claude-code/skills/constitution-enforcer/phase-minus-one-gates.md +35 -16
  163. package/src/templates/agents/claude-code/skills/database-administrator/backup-recovery.md +27 -17
  164. package/src/templates/agents/claude-code/skills/database-administrator/tuning-guide.md +25 -20
  165. package/src/templates/agents/claude-code/skills/database-schema-designer/schema-patterns.md +39 -22
  166. package/src/templates/agents/claude-code/skills/devops-engineer/ci-cd-templates.md +25 -22
  167. package/src/templates/agents/claude-code/skills/issue-resolver/SKILL.md +24 -21
  168. package/src/templates/agents/claude-code/skills/orchestrator/SKILL.md +148 -63
  169. package/src/templates/agents/claude-code/skills/orchestrator/patterns.md +35 -16
  170. package/src/templates/agents/claude-code/skills/orchestrator/selection-matrix.md +69 -64
  171. package/src/templates/agents/claude-code/skills/performance-engineer/optimization-playbook.md +47 -47
  172. package/src/templates/agents/claude-code/skills/performance-optimizer/SKILL.md +69 -0
  173. package/src/templates/agents/claude-code/skills/performance-optimizer/benchmark-template.md +63 -45
  174. package/src/templates/agents/claude-code/skills/performance-optimizer/optimization-patterns.md +33 -35
  175. package/src/templates/agents/claude-code/skills/project-manager/SKILL.md +7 -6
  176. package/src/templates/agents/claude-code/skills/project-manager/agile-ceremonies.md +47 -28
  177. package/src/templates/agents/claude-code/skills/project-manager/project-templates.md +94 -78
  178. package/src/templates/agents/claude-code/skills/quality-assurance/SKILL.md +20 -17
  179. package/src/templates/agents/claude-code/skills/quality-assurance/qa-plan-template.md +63 -49
  180. package/src/templates/agents/claude-code/skills/release-coordinator/SKILL.md +5 -5
  181. package/src/templates/agents/claude-code/skills/release-coordinator/feature-flag-guide.md +30 -26
  182. package/src/templates/agents/claude-code/skills/release-coordinator/release-plan-template.md +67 -35
  183. package/src/templates/agents/claude-code/skills/requirements-analyst/ears-format.md +54 -42
  184. package/src/templates/agents/claude-code/skills/requirements-analyst/validation-rules.md +36 -33
  185. package/src/templates/agents/claude-code/skills/security-auditor/SKILL.md +77 -19
  186. package/src/templates/agents/claude-code/skills/security-auditor/audit-checklists.md +24 -24
  187. package/src/templates/agents/claude-code/skills/security-auditor/owasp-top-10.md +61 -20
  188. package/src/templates/agents/claude-code/skills/security-auditor/vulnerability-patterns.md +43 -11
  189. package/src/templates/agents/claude-code/skills/site-reliability-engineer/SKILL.md +1 -0
  190. package/src/templates/agents/claude-code/skills/site-reliability-engineer/incident-response-template.md +55 -25
  191. package/src/templates/agents/claude-code/skills/site-reliability-engineer/observability-patterns.md +78 -68
  192. package/src/templates/agents/claude-code/skills/site-reliability-engineer/slo-sli-guide.md +73 -53
  193. package/src/templates/agents/claude-code/skills/software-developer/solid-principles.md +83 -37
  194. package/src/templates/agents/claude-code/skills/software-developer/test-first-workflow.md +38 -31
  195. package/src/templates/agents/claude-code/skills/steering/SKILL.md +1 -0
  196. package/src/templates/agents/claude-code/skills/steering/auto-update-rules.md +31 -0
  197. package/src/templates/agents/claude-code/skills/system-architect/adr-template.md +25 -7
  198. package/src/templates/agents/claude-code/skills/system-architect/c4-model-guide.md +74 -61
  199. package/src/templates/agents/claude-code/skills/technical-writer/doc-templates/documentation-templates.md +70 -52
  200. package/src/templates/agents/claude-code/skills/test-engineer/SKILL.md +2 -0
  201. package/src/templates/agents/claude-code/skills/test-engineer/ears-test-mapping.md +75 -71
  202. package/src/templates/agents/claude-code/skills/test-engineer/test-types.md +85 -63
  203. package/src/templates/agents/claude-code/skills/traceability-auditor/coverage-matrix-template.md +39 -36
  204. package/src/templates/agents/claude-code/skills/traceability-auditor/gap-detection-rules.md +22 -17
  205. package/src/templates/agents/claude-code/skills/ui-ux-designer/SKILL.md +1 -0
  206. package/src/templates/agents/claude-code/skills/ui-ux-designer/accessibility-guidelines.md +49 -75
  207. package/src/templates/agents/claude-code/skills/ui-ux-designer/design-system-components.md +71 -59
  208. package/src/templates/agents/codex/AGENTS.md +74 -42
  209. package/src/templates/agents/cursor/AGENTS.md +74 -42
  210. package/src/templates/agents/gemini-cli/GEMINI.md +74 -42
  211. package/src/templates/agents/github-copilot/AGENTS.md +83 -51
  212. package/src/templates/agents/qwen-code/QWEN.md +74 -42
  213. package/src/templates/agents/windsurf/AGENTS.md +74 -42
  214. package/src/templates/architectures/README.md +41 -0
  215. package/src/templates/architectures/clean-architecture/README.md +113 -0
  216. package/src/templates/architectures/event-driven/README.md +162 -0
  217. package/src/templates/architectures/hexagonal/README.md +130 -0
  218. package/src/templates/index.js +6 -1
  219. package/src/templates/locale-manager.js +16 -16
  220. package/src/templates/shared/delta-spec-template.md +20 -13
  221. package/src/templates/shared/github-actions/musubi-issue-resolver.yml +5 -5
  222. package/src/templates/shared/github-actions/musubi-security-check.yml +3 -3
  223. package/src/templates/shared/github-actions/musubi-validate.yml +4 -4
  224. package/src/templates/shared/steering/structure.md +95 -0
  225. package/src/templates/skills/browser-agent.md +21 -16
  226. package/src/templates/skills/web-gui.md +8 -0
  227. package/src/templates/template-constraints.js +50 -53
  228. package/src/validators/advanced-validation.js +30 -36
  229. package/src/validators/constitutional-validator.js +77 -73
  230. package/src/validators/critic-system.js +49 -59
  231. package/src/validators/delta-format.js +59 -55
  232. package/src/validators/traceability-validator.js +7 -11
@@ -98,16 +98,16 @@ MUSUBI enforces 9 immutable constitutional articles:
98
98
 
99
99
  MUSUBI provides advanced AI agent assistance modules:
100
100
 
101
- | Module | Purpose | Import |
102
- |--------|---------|--------|
103
- | **StuckDetector** | Detect agent stuck states | `src/analyzers/stuck-detector.js` |
104
- | **MemoryCondenser** | Compress session history | `src/managers/memory-condenser.js` |
105
- | **AgentMemoryManager** | Extract & persist learnings | `src/managers/agent-memory.js` |
106
- | **CriticSystem** | Evaluate SDD stage quality | `src/validators/critic-system.js` |
107
- | **SecurityAnalyzer** | Detect security risks | `src/analyzers/security-analyzer.js` |
108
- | **IssueResolver** | GitHub Issue analysis | `src/resolvers/issue-resolver.js` |
109
- | **SkillLoader** | Load keyword-triggered skills | `src/managers/skill-loader.js` |
110
- | **RepoSkillManager** | Manage project skills | `src/managers/repo-skill-manager.js` |
101
+ | Module | Purpose | Import |
102
+ | ---------------------- | ----------------------------- | ------------------------------------ |
103
+ | **StuckDetector** | Detect agent stuck states | `src/analyzers/stuck-detector.js` |
104
+ | **MemoryCondenser** | Compress session history | `src/managers/memory-condenser.js` |
105
+ | **AgentMemoryManager** | Extract & persist learnings | `src/managers/agent-memory.js` |
106
+ | **CriticSystem** | Evaluate SDD stage quality | `src/validators/critic-system.js` |
107
+ | **SecurityAnalyzer** | Detect security risks | `src/analyzers/security-analyzer.js` |
108
+ | **IssueResolver** | GitHub Issue analysis | `src/resolvers/issue-resolver.js` |
109
+ | **SkillLoader** | Load keyword-triggered skills | `src/managers/skill-loader.js` |
110
+ | **RepoSkillManager** | Manage project skills | `src/managers/repo-skill-manager.js` |
111
111
 
112
112
  ## Quick Start
113
113
 
@@ -146,47 +146,79 @@ npx musubi-sdd <command>
146
146
 
147
147
  ### Core Commands
148
148
 
149
- | Command | Purpose | Example |
150
- |---------|---------|--------|
151
- | `musubi-workflow` | Workflow state & metrics | `npx musubi-workflow status` |
152
- | `musubi-requirements` | EARS requirements | `npx musubi-requirements init <feature>` |
153
- | `musubi-design` | C4 + ADR design | `npx musubi-design init <feature>` |
154
- | `musubi-tasks` | Task breakdown | `npx musubi-tasks init <feature>` |
155
- | `musubi-trace` | Traceability | `npx musubi-trace matrix` |
156
- | `musubi-validate` | Constitutional validation | `npx musubi-validate all` |
149
+ | Command | Purpose | Example |
150
+ | --------------------- | ------------------------- | ---------------------------------------- |
151
+ | `musubi-workflow` | Workflow state & metrics | `npx musubi-workflow status` |
152
+ | `musubi-requirements` | EARS requirements | `npx musubi-requirements init <feature>` |
153
+ | `musubi-design` | C4 + ADR design | `npx musubi-design init <feature>` |
154
+ | `musubi-tasks` | Task breakdown | `npx musubi-tasks init <feature>` |
155
+ | `musubi-trace` | Traceability | `npx musubi-trace matrix` |
156
+ | `musubi-validate` | Constitutional validation | `npx musubi-validate all` |
157
157
 
158
158
  ### Advanced Commands (v3.5.0 NEW)
159
159
 
160
- | Command | Purpose | Example |
161
- |---------|---------|--------|
162
- | `musubi-orchestrate` | Multi-skill orchestration | `npx musubi-orchestrate auto <task>` |
163
- | `musubi-browser` | Browser automation & E2E | `npx musubi-browser run "click login"` |
164
- | `musubi-gui` | Web GUI dashboard | `npx musubi-gui start` |
165
- | `musubi-remember` | Agent memory management | `npx musubi-remember extract` |
166
- | `musubi-resolve` | GitHub Issue resolution | `npx musubi-resolve <issue-number>` |
167
- | `musubi-convert` | Format conversion | `npx musubi-convert to-speckit` |
160
+ | Command | Purpose | Example |
161
+ | -------------------- | ------------------------- | -------------------------------------- |
162
+ | `musubi-orchestrate` | Multi-skill orchestration | `npx musubi-orchestrate auto <task>` |
163
+ | `musubi-browser` | Browser automation & E2E | `npx musubi-browser run "click login"` |
164
+ | `musubi-gui` | Web GUI dashboard | `npx musubi-gui start` |
165
+ | `musubi-remember` | Agent memory management | `npx musubi-remember extract` |
166
+ | `musubi-resolve` | GitHub Issue resolution | `npx musubi-resolve <issue-number>` |
167
+ | `musubi-convert` | Format conversion | `npx musubi-convert to-speckit` |
168
168
 
169
169
  ### Replanning Commands (v3.6.0 NEW)
170
170
 
171
- | Command | Purpose | Example |
172
- |---------|---------|--------|
173
- | `musubi-orchestrate replan` | Execute dynamic replanning | `npx musubi-orchestrate replan <context-id>` |
174
- | `musubi-orchestrate goal register` | Register a new goal | `npx musubi-orchestrate goal register --name "Deploy API"` |
175
- | `musubi-orchestrate goal update` | Update goal progress | `npx musubi-orchestrate goal update <goal-id> --progress 50` |
176
- | `musubi-orchestrate goal status` | View goal status | `npx musubi-orchestrate goal status [goal-id]` |
177
- | `musubi-orchestrate optimize run` | Run path optimization | `npx musubi-orchestrate optimize run <path-id>` |
178
- | `musubi-orchestrate optimize suggest` | Get optimization suggestions | `npx musubi-orchestrate optimize suggest <path-id>` |
179
- | `musubi-orchestrate path analyze` | Analyze execution path | `npx musubi-orchestrate path analyze <path-id>` |
180
- | `musubi-orchestrate path optimize` | Optimize execution path | `npx musubi-orchestrate path optimize <path-id>` |
171
+ | Command | Purpose | Example |
172
+ | ------------------------------------- | ---------------------------- | ------------------------------------------------------------ |
173
+ | `musubi-orchestrate replan` | Execute dynamic replanning | `npx musubi-orchestrate replan <context-id>` |
174
+ | `musubi-orchestrate goal register` | Register a new goal | `npx musubi-orchestrate goal register --name "Deploy API"` |
175
+ | `musubi-orchestrate goal update` | Update goal progress | `npx musubi-orchestrate goal update <goal-id> --progress 50` |
176
+ | `musubi-orchestrate goal status` | View goal status | `npx musubi-orchestrate goal status [goal-id]` |
177
+ | `musubi-orchestrate optimize run` | Run path optimization | `npx musubi-orchestrate optimize run <path-id>` |
178
+ | `musubi-orchestrate optimize suggest` | Get optimization suggestions | `npx musubi-orchestrate optimize suggest <path-id>` |
179
+ | `musubi-orchestrate path analyze` | Analyze execution path | `npx musubi-orchestrate path analyze <path-id>` |
180
+ | `musubi-orchestrate path optimize` | Optimize execution path | `npx musubi-orchestrate path optimize <path-id>` |
181
181
 
182
182
  ### Guardrails Commands (v3.9.0 NEW)
183
183
 
184
- | Command | Purpose | Example |
185
- |---------|---------|--------|
186
- | `musubi-validate guardrails` | Input/Output guardrail validation | `npx musubi-validate guardrails --type input` |
187
- | `musubi-validate guardrails --type output` | Output content validation | `echo "content" \| npx musubi-validate guardrails --type output` |
188
- | `musubi-validate guardrails --type safety` | Safety check with constitutional | `npx musubi-validate guardrails --type safety --constitutional` |
189
- | `musubi-validate guardrails-chain` | Chain multiple guardrails | `npx musubi-validate guardrails-chain --parallel` |
184
+ | Command | Purpose | Example |
185
+ | ------------------------------------------ | --------------------------------- | ---------------------------------------------------------------- |
186
+ | `musubi-validate guardrails` | Input/Output guardrail validation | `npx musubi-validate guardrails --type input` |
187
+ | `musubi-validate guardrails --type output` | Output content validation | `echo "content" \| npx musubi-validate guardrails --type output` |
188
+ | `musubi-validate guardrails --type safety` | Safety check with constitutional | `npx musubi-validate guardrails --type safety --constitutional` |
189
+ | `musubi-validate guardrails-chain` | Chain multiple guardrails | `npx musubi-validate guardrails-chain --parallel` |
190
+
191
+ ## Enterprise Scale Modules (v5.5.0 NEW)
192
+
193
+ MUSUBI v5.5.0 adds advanced modules for analyzing enterprise-scale projects (10,000+ files):
194
+
195
+ | Module | Purpose | Import |
196
+ | -------------------------- | ------------------------------------ | -------------------------------------------- |
197
+ | **LargeProjectAnalyzer** | Streaming analysis for 100K+ files | `src/analyzers/large-project-analyzer.js` |
198
+ | **ComplexityAnalyzer** | Cyclomatic & cognitive complexity | `src/analyzers/complexity-analyzer.js` |
199
+ | **RustMigrationGenerator** | C/C++ to Rust migration analysis | `src/generators/rust-migration-generator.js` |
200
+ | **CodeGraphMCP** | MCP-based code intelligence server | `src/integrations/code-graph-mcp.js` |
201
+ | **HierarchicalReporter** | Drilldown reports for large projects | `src/reporters/hierarchical-reporter.js` |
202
+
203
+ ### Usage Examples
204
+
205
+ ```javascript
206
+ // Analyze large projects (100,000+ files)
207
+ const { LargeProjectAnalyzer } = require('musubi-sdd');
208
+ const analyzer = new LargeProjectAnalyzer('/path/to/project');
209
+ const result = await analyzer.analyze();
210
+ console.log(result.stats.totalFiles);
211
+
212
+ // Calculate code complexity
213
+ const { ComplexityAnalyzer } = require('musubi-sdd');
214
+ const complexity = new ComplexityAnalyzer();
215
+ const score = complexity.calculateCyclomaticComplexity(code, 'javascript');
216
+
217
+ // Analyze C/C++ for Rust migration
218
+ const { RustMigrationGenerator } = require('musubi-sdd');
219
+ const generator = new RustMigrationGenerator('/path/to/cpp-project');
220
+ const analysis = await generator.analyze();
221
+ ```
190
222
 
191
223
  ## Learn More
192
224
 
@@ -104,16 +104,16 @@ MUSUBI enforces 9 immutable constitutional articles:
104
104
 
105
105
  MUSUBI provides advanced AI agent assistance modules:
106
106
 
107
- | Module | Purpose | Import |
108
- |--------|---------|--------|
109
- | **StuckDetector** | Detect agent stuck states | `src/analyzers/stuck-detector.js` |
110
- | **MemoryCondenser** | Compress session history | `src/managers/memory-condenser.js` |
111
- | **AgentMemoryManager** | Extract & persist learnings | `src/managers/agent-memory.js` |
112
- | **CriticSystem** | Evaluate SDD stage quality | `src/validators/critic-system.js` |
113
- | **SecurityAnalyzer** | Detect security risks | `src/analyzers/security-analyzer.js` |
114
- | **IssueResolver** | GitHub Issue analysis | `src/resolvers/issue-resolver.js` |
115
- | **SkillLoader** | Load keyword-triggered skills | `src/managers/skill-loader.js` |
116
- | **RepoSkillManager** | Manage project skills | `src/managers/repo-skill-manager.js` |
107
+ | Module | Purpose | Import |
108
+ | ---------------------- | ----------------------------- | ------------------------------------ |
109
+ | **StuckDetector** | Detect agent stuck states | `src/analyzers/stuck-detector.js` |
110
+ | **MemoryCondenser** | Compress session history | `src/managers/memory-condenser.js` |
111
+ | **AgentMemoryManager** | Extract & persist learnings | `src/managers/agent-memory.js` |
112
+ | **CriticSystem** | Evaluate SDD stage quality | `src/validators/critic-system.js` |
113
+ | **SecurityAnalyzer** | Detect security risks | `src/analyzers/security-analyzer.js` |
114
+ | **IssueResolver** | GitHub Issue analysis | `src/resolvers/issue-resolver.js` |
115
+ | **SkillLoader** | Load keyword-triggered skills | `src/managers/skill-loader.js` |
116
+ | **RepoSkillManager** | Manage project skills | `src/managers/repo-skill-manager.js` |
117
117
 
118
118
  ## Quick Start
119
119
 
@@ -157,47 +157,79 @@ npx musubi-sdd <command>
157
157
 
158
158
  ### Core Commands
159
159
 
160
- | Command | Purpose | Example |
161
- |---------|---------|--------|
162
- | `musubi-workflow` | Workflow state & metrics | `npx musubi-workflow status` |
163
- | `musubi-requirements` | EARS requirements | `npx musubi-requirements init <feature>` |
164
- | `musubi-design` | C4 + ADR design | `npx musubi-design init <feature>` |
165
- | `musubi-tasks` | Task breakdown | `npx musubi-tasks init <feature>` |
166
- | `musubi-trace` | Traceability | `npx musubi-trace matrix` |
167
- | `musubi-validate` | Constitutional validation | `npx musubi-validate all` |
160
+ | Command | Purpose | Example |
161
+ | --------------------- | ------------------------- | ---------------------------------------- |
162
+ | `musubi-workflow` | Workflow state & metrics | `npx musubi-workflow status` |
163
+ | `musubi-requirements` | EARS requirements | `npx musubi-requirements init <feature>` |
164
+ | `musubi-design` | C4 + ADR design | `npx musubi-design init <feature>` |
165
+ | `musubi-tasks` | Task breakdown | `npx musubi-tasks init <feature>` |
166
+ | `musubi-trace` | Traceability | `npx musubi-trace matrix` |
167
+ | `musubi-validate` | Constitutional validation | `npx musubi-validate all` |
168
168
 
169
169
  ### Advanced Commands (v3.5.0 NEW)
170
170
 
171
- | Command | Purpose | Example |
172
- |---------|---------|--------|
173
- | `musubi-orchestrate` | Multi-skill orchestration | `npx musubi-orchestrate auto <task>` |
174
- | `musubi-browser` | Browser automation & E2E | `npx musubi-browser run "click login"` |
175
- | `musubi-gui` | Web GUI dashboard | `npx musubi-gui start` |
176
- | `musubi-remember` | Agent memory management | `npx musubi-remember extract` |
177
- | `musubi-resolve` | GitHub Issue resolution | `npx musubi-resolve <issue-number>` |
178
- | `musubi-convert` | Format conversion | `npx musubi-convert to-speckit` |
171
+ | Command | Purpose | Example |
172
+ | -------------------- | ------------------------- | -------------------------------------- |
173
+ | `musubi-orchestrate` | Multi-skill orchestration | `npx musubi-orchestrate auto <task>` |
174
+ | `musubi-browser` | Browser automation & E2E | `npx musubi-browser run "click login"` |
175
+ | `musubi-gui` | Web GUI dashboard | `npx musubi-gui start` |
176
+ | `musubi-remember` | Agent memory management | `npx musubi-remember extract` |
177
+ | `musubi-resolve` | GitHub Issue resolution | `npx musubi-resolve <issue-number>` |
178
+ | `musubi-convert` | Format conversion | `npx musubi-convert to-speckit` |
179
179
 
180
180
  ### Replanning Commands (v3.6.0 NEW)
181
181
 
182
- | Command | Purpose | Example |
183
- |---------|---------|--------|
184
- | `musubi-orchestrate replan` | Execute dynamic replanning | `npx musubi-orchestrate replan <context-id>` |
185
- | `musubi-orchestrate goal register` | Register a new goal | `npx musubi-orchestrate goal register --name "Deploy API"` |
186
- | `musubi-orchestrate goal update` | Update goal progress | `npx musubi-orchestrate goal update <goal-id> --progress 50` |
187
- | `musubi-orchestrate goal status` | View goal status | `npx musubi-orchestrate goal status [goal-id]` |
188
- | `musubi-orchestrate optimize run` | Run path optimization | `npx musubi-orchestrate optimize run <path-id>` |
189
- | `musubi-orchestrate optimize suggest` | Get optimization suggestions | `npx musubi-orchestrate optimize suggest <path-id>` |
190
- | `musubi-orchestrate path analyze` | Analyze execution path | `npx musubi-orchestrate path analyze <path-id>` |
191
- | `musubi-orchestrate path optimize` | Optimize execution path | `npx musubi-orchestrate path optimize <path-id>` |
182
+ | Command | Purpose | Example |
183
+ | ------------------------------------- | ---------------------------- | ------------------------------------------------------------ |
184
+ | `musubi-orchestrate replan` | Execute dynamic replanning | `npx musubi-orchestrate replan <context-id>` |
185
+ | `musubi-orchestrate goal register` | Register a new goal | `npx musubi-orchestrate goal register --name "Deploy API"` |
186
+ | `musubi-orchestrate goal update` | Update goal progress | `npx musubi-orchestrate goal update <goal-id> --progress 50` |
187
+ | `musubi-orchestrate goal status` | View goal status | `npx musubi-orchestrate goal status [goal-id]` |
188
+ | `musubi-orchestrate optimize run` | Run path optimization | `npx musubi-orchestrate optimize run <path-id>` |
189
+ | `musubi-orchestrate optimize suggest` | Get optimization suggestions | `npx musubi-orchestrate optimize suggest <path-id>` |
190
+ | `musubi-orchestrate path analyze` | Analyze execution path | `npx musubi-orchestrate path analyze <path-id>` |
191
+ | `musubi-orchestrate path optimize` | Optimize execution path | `npx musubi-orchestrate path optimize <path-id>` |
192
192
 
193
193
  ### Guardrails Commands (v3.9.0 NEW)
194
194
 
195
- | Command | Purpose | Example |
196
- |---------|---------|--------|
197
- | `musubi-validate guardrails` | Input/Output guardrail validation | `npx musubi-validate guardrails --type input` |
198
- | `musubi-validate guardrails --type output` | Output content validation | `echo "content" \| npx musubi-validate guardrails --type output` |
199
- | `musubi-validate guardrails --type safety` | Safety check with constitutional | `npx musubi-validate guardrails --type safety --constitutional` |
200
- | `musubi-validate guardrails-chain` | Chain multiple guardrails | `npx musubi-validate guardrails-chain --parallel` |
195
+ | Command | Purpose | Example |
196
+ | ------------------------------------------ | --------------------------------- | ---------------------------------------------------------------- |
197
+ | `musubi-validate guardrails` | Input/Output guardrail validation | `npx musubi-validate guardrails --type input` |
198
+ | `musubi-validate guardrails --type output` | Output content validation | `echo "content" \| npx musubi-validate guardrails --type output` |
199
+ | `musubi-validate guardrails --type safety` | Safety check with constitutional | `npx musubi-validate guardrails --type safety --constitutional` |
200
+ | `musubi-validate guardrails-chain` | Chain multiple guardrails | `npx musubi-validate guardrails-chain --parallel` |
201
+
202
+ ## Enterprise Scale Modules (v5.5.0 NEW)
203
+
204
+ MUSUBI v5.5.0 adds advanced modules for analyzing enterprise-scale projects (10,000+ files):
205
+
206
+ | Module | Purpose | Import |
207
+ | -------------------------- | ------------------------------------ | -------------------------------------------- |
208
+ | **LargeProjectAnalyzer** | Streaming analysis for 100K+ files | `src/analyzers/large-project-analyzer.js` |
209
+ | **ComplexityAnalyzer** | Cyclomatic & cognitive complexity | `src/analyzers/complexity-analyzer.js` |
210
+ | **RustMigrationGenerator** | C/C++ to Rust migration analysis | `src/generators/rust-migration-generator.js` |
211
+ | **CodeGraphMCP** | MCP-based code intelligence server | `src/integrations/code-graph-mcp.js` |
212
+ | **HierarchicalReporter** | Drilldown reports for large projects | `src/reporters/hierarchical-reporter.js` |
213
+
214
+ ### Usage Examples
215
+
216
+ ```javascript
217
+ // Analyze large projects (100,000+ files)
218
+ const { LargeProjectAnalyzer } = require('musubi-sdd');
219
+ const analyzer = new LargeProjectAnalyzer('/path/to/project');
220
+ const result = await analyzer.analyze();
221
+ console.log(result.stats.totalFiles);
222
+
223
+ // Calculate code complexity
224
+ const { ComplexityAnalyzer } = require('musubi-sdd');
225
+ const complexity = new ComplexityAnalyzer();
226
+ const score = complexity.calculateCyclomaticComplexity(code, 'javascript');
227
+
228
+ // Analyze C/C++ for Rust migration
229
+ const { RustMigrationGenerator } = require('musubi-sdd');
230
+ const generator = new RustMigrationGenerator('/path/to/cpp-project');
231
+ const analysis = await generator.analyze();
232
+ ```
201
233
 
202
234
  ## Learn More
203
235
 
@@ -0,0 +1,41 @@
1
+ # Reference Architecture Templates
2
+
3
+ This directory contains reference architecture templates for common architectural patterns.
4
+
5
+ ## Available Templates
6
+
7
+ | Template | Pattern | Best For |
8
+ | ------------------------------------------- | -------------------------- | ---------------------------------------- |
9
+ | [clean-architecture](./clean-architecture/) | Clean Architecture | Enterprise applications, complex domains |
10
+ | [hexagonal](./hexagonal/) | Hexagonal/Ports & Adapters | Highly testable systems |
11
+ | [event-driven](./event-driven/) | Event-Driven Architecture | Microservices, distributed systems |
12
+ | [layered](./layered/) | Traditional Layered | Simple CRUD applications |
13
+ | [modular-monolith](./modular-monolith/) | Modular Monolith | Scalable monoliths |
14
+
15
+ ## Usage
16
+
17
+ Use `musubi init --template <template-name>` to initialize a project with a reference architecture:
18
+
19
+ ```bash
20
+ # Clean Architecture template
21
+ musubi init --template clean-architecture
22
+
23
+ # Hexagonal Architecture template
24
+ musubi init --template hexagonal
25
+
26
+ # Event-Driven Architecture template
27
+ musubi init --template event-driven
28
+ ```
29
+
30
+ ## Template Structure
31
+
32
+ Each template provides:
33
+
34
+ - Directory structure
35
+ - Layer definitions
36
+ - Sample code organization
37
+ - Recommended patterns
38
+
39
+ ---
40
+
41
+ _Generated by MUSUBI SDD_
@@ -0,0 +1,113 @@
1
+ # Clean Architecture Template
2
+
3
+ ## Overview
4
+
5
+ Clean Architecture separates concerns into concentric circles, with dependencies pointing inward.
6
+
7
+ ## Directory Structure
8
+
9
+ ```
10
+ src/
11
+ ├── domain/ # Enterprise Business Rules (innermost)
12
+ │ ├── entities/ # Business entities
13
+ │ ├── value-objects/ # Immutable value types
14
+ │ ├── errors/ # Domain-specific errors
15
+ │ └── services/ # Domain services (no I/O)
16
+
17
+ ├── application/ # Application Business Rules
18
+ │ ├── use-cases/ # Application-specific use cases
19
+ │ ├── ports/ # Interfaces for external services
20
+ │ │ ├── input/ # Input ports (use case interfaces)
21
+ │ │ └── output/ # Output ports (repository interfaces)
22
+ │ ├── dtos/ # Data Transfer Objects
23
+ │ └── services/ # Application services
24
+
25
+ ├── infrastructure/ # Frameworks & Drivers (outermost)
26
+ │ ├── persistence/ # Database implementations
27
+ │ │ ├── repositories/ # Repository implementations
28
+ │ │ └── mappers/ # Entity <-> DB mappers
29
+ │ ├── external/ # External API clients
30
+ │ ├── messaging/ # Message queue adapters
31
+ │ └── config/ # Configuration
32
+
33
+ └── interface/ # Interface Adapters
34
+ ├── controllers/ # HTTP/gRPC controllers
35
+ ├── presenters/ # Response formatters
36
+ ├── cli/ # CLI handlers
37
+ └── gateways/ # External service gateways
38
+ ```
39
+
40
+ ## Dependency Rules
41
+
42
+ 1. **Domain** has NO external dependencies
43
+ 2. **Application** depends only on Domain
44
+ 3. **Infrastructure** implements Application ports
45
+ 4. **Interface** orchestrates Application use cases
46
+
47
+ ## Key Principles
48
+
49
+ - **Dependency Inversion**: High-level modules don't depend on low-level modules
50
+ - **Separation of Concerns**: Each layer has a single responsibility
51
+ - **Testability**: Business logic is testable without frameworks
52
+ - **Independence**: Framework/database changes don't affect business logic
53
+
54
+ ## Example Structure by Language
55
+
56
+ ### TypeScript
57
+
58
+ ```
59
+ src/
60
+ ├── domain/
61
+ │ └── user/
62
+ │ ├── User.ts # Entity
63
+ │ ├── UserId.ts # Value Object
64
+ │ └── UserRepository.ts # Port (interface)
65
+ ├── application/
66
+ │ └── user/
67
+ │ ├── CreateUser.ts # Use Case
68
+ │ └── GetUser.ts # Use Case
69
+ ├── infrastructure/
70
+ │ └── persistence/
71
+ │ └── PrismaUserRepository.ts
72
+ └── interface/
73
+ └── http/
74
+ └── UserController.ts
75
+ ```
76
+
77
+ ### Rust
78
+
79
+ ```
80
+ src/
81
+ ├── domain/
82
+ │ └── user/
83
+ │ ├── mod.rs
84
+ │ ├── entity.rs # User struct
85
+ │ ├── value_objects.rs # UserId, Email
86
+ │ └── repository.rs # Trait definition
87
+ ├── application/
88
+ │ └── user/
89
+ │ ├── mod.rs
90
+ │ ├── create_user.rs # Use case
91
+ │ └── get_user.rs # Use case
92
+ ├── infrastructure/
93
+ │ └── persistence/
94
+ │ ├── mod.rs
95
+ │ └── postgres_user_repo.rs
96
+ └── interface/
97
+ └── api/
98
+ ├── mod.rs
99
+ └── user_handler.rs
100
+ ```
101
+
102
+ ## Testing Strategy
103
+
104
+ | Layer | Test Type | Dependencies |
105
+ | -------------- | ------------------ | ---------------- |
106
+ | Domain | Unit | None |
107
+ | Application | Unit + Integration | Mocked ports |
108
+ | Infrastructure | Integration | Real DB/Services |
109
+ | Interface | E2E | Full stack |
110
+
111
+ ---
112
+
113
+ _Clean Architecture Template - MUSUBI SDD_
@@ -0,0 +1,162 @@
1
+ # Event-Driven Architecture Template
2
+
3
+ ## Overview
4
+
5
+ Event-Driven Architecture (EDA) enables loose coupling through asynchronous event communication.
6
+
7
+ ## Directory Structure
8
+
9
+ ```
10
+ src/
11
+ ├── domain/
12
+ │ ├── events/ # Domain events
13
+ │ │ ├── UserCreated.ts
14
+ │ │ ├── OrderPlaced.ts
15
+ │ │ └── PaymentReceived.ts
16
+ │ ├── aggregates/ # Aggregate roots
17
+ │ └── commands/ # Command definitions
18
+
19
+ ├── application/
20
+ │ ├── command-handlers/ # Handle commands, emit events
21
+ │ ├── event-handlers/ # React to events
22
+ │ ├── sagas/ # Long-running processes
23
+ │ └── projections/ # Read model projections
24
+
25
+ ├── infrastructure/
26
+ │ ├── messaging/ # Message broker adapters
27
+ │ │ ├── kafka/
28
+ │ │ ├── rabbitmq/
29
+ │ │ └── sqs/
30
+ │ ├── event-store/ # Event sourcing storage
31
+ │ └── projections/ # Projection storage
32
+
33
+ └── interface/
34
+ ├── api/ # REST/GraphQL API
35
+ ├── consumers/ # Event consumers
36
+ └── publishers/ # Event publishers
37
+ ```
38
+
39
+ ## Event Types
40
+
41
+ ### Domain Events
42
+
43
+ ```typescript
44
+ // domain/events/UserCreated.ts
45
+ interface UserCreated {
46
+ eventId: string;
47
+ eventType: 'UserCreated';
48
+ aggregateId: string;
49
+ timestamp: Date;
50
+ data: {
51
+ userId: string;
52
+ email: string;
53
+ name: string;
54
+ };
55
+ metadata: {
56
+ correlationId: string;
57
+ causationId: string;
58
+ };
59
+ }
60
+ ```
61
+
62
+ ### Integration Events
63
+
64
+ ```typescript
65
+ // infrastructure/messaging/events/UserRegistrationCompleted.ts
66
+ interface UserRegistrationCompleted {
67
+ eventId: string;
68
+ eventType: 'UserRegistrationCompleted';
69
+ source: 'user-service';
70
+ timestamp: Date;
71
+ data: {
72
+ userId: string;
73
+ email: string;
74
+ };
75
+ }
76
+ ```
77
+
78
+ ## Patterns
79
+
80
+ ### Command Handler
81
+
82
+ ```typescript
83
+ class CreateUserHandler {
84
+ async handle(command: CreateUserCommand): Promise<void> {
85
+ const user = User.create(command);
86
+ await this.repository.save(user);
87
+ await this.eventPublisher.publish(new UserCreated(user));
88
+ }
89
+ }
90
+ ```
91
+
92
+ ### Event Handler
93
+
94
+ ```typescript
95
+ class SendWelcomeEmailHandler {
96
+ async handle(event: UserCreated): Promise<void> {
97
+ await this.emailService.sendWelcome(event.data.email);
98
+ }
99
+ }
100
+ ```
101
+
102
+ ### Saga (Process Manager)
103
+
104
+ ```typescript
105
+ class OrderFulfillmentSaga {
106
+ async handle(event: OrderPlaced): Promise<void> {
107
+ // Step 1: Reserve inventory
108
+ await this.dispatch(new ReserveInventory(event.orderId));
109
+
110
+ // Step 2: Process payment
111
+ await this.dispatch(new ProcessPayment(event.orderId));
112
+
113
+ // Step 3: Ship order (triggered by PaymentReceived)
114
+ }
115
+
116
+ async onPaymentReceived(event: PaymentReceived): Promise<void> {
117
+ await this.dispatch(new ShipOrder(event.orderId));
118
+ }
119
+ }
120
+ ```
121
+
122
+ ## Event Sourcing (Optional)
123
+
124
+ ```
125
+ events/
126
+ ├── event-store/
127
+ │ └── PostgresEventStore.ts
128
+ ├── snapshots/
129
+ │ └── UserSnapshot.ts
130
+ └── projections/
131
+ ├── UserProjection.ts
132
+ └── OrderProjection.ts
133
+ ```
134
+
135
+ ## Message Broker Integration
136
+
137
+ | Broker | Use Case | Configuration |
138
+ | ------------- | ------------------------------- | ------------------------ |
139
+ | Kafka | High-throughput, ordered events | Topics, partitions |
140
+ | RabbitMQ | Complex routing, reliability | Exchanges, queues |
141
+ | AWS SQS/SNS | Serverless, AWS integration | Queues, topics |
142
+ | Redis Streams | Low-latency, in-memory | Streams, consumer groups |
143
+
144
+ ## Key Principles
145
+
146
+ 1. **Eventual Consistency**: Accept that data will be consistent eventually
147
+ 2. **Idempotency**: Handlers must be idempotent (safe to retry)
148
+ 3. **Event Ordering**: Consider ordering requirements per aggregate
149
+ 4. **Dead Letter Queues**: Handle failed events gracefully
150
+
151
+ ## Testing Strategy
152
+
153
+ | Component | Test Type | Approach |
154
+ | --------- | ----------- | ------------------------- |
155
+ | Events | Schema | JSON Schema validation |
156
+ | Handlers | Unit | Mock event publisher |
157
+ | Sagas | Integration | In-memory event store |
158
+ | E2E | Contract | Consumer-driven contracts |
159
+
160
+ ---
161
+
162
+ _Event-Driven Architecture Template - MUSUBI SDD_