sdd-mcp-server 4.0.0 → 5.0.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 (77) hide show
  1. package/CHANGELOG.md +884 -0
  2. package/README.md +18 -35
  3. package/dist/adapters/cli/SDDToolAdapter.d.ts +2 -5
  4. package/dist/adapters/cli/SDDToolAdapter.js +48 -92
  5. package/dist/adapters/cli/SDDToolAdapter.js.map +1 -1
  6. package/dist/application/services/ContextCompactionService.d.ts +10 -3
  7. package/dist/application/services/ContextCompactionService.js +139 -35
  8. package/dist/application/services/ContextCompactionService.js.map +1 -1
  9. package/dist/application/services/ProjectService.js +3 -3
  10. package/dist/application/services/ProjectService.js.map +1 -1
  11. package/dist/application/services/SpecPathResolver.js +1 -1
  12. package/dist/application/services/SpecPathResolver.js.map +1 -1
  13. package/dist/application/services/WorkflowEngineService.d.ts +160 -50
  14. package/dist/application/services/WorkflowEngineService.js +1404 -429
  15. package/dist/application/services/WorkflowEngineService.js.map +1 -1
  16. package/dist/application/services/WorkflowErrors.d.ts +16 -0
  17. package/dist/application/services/WorkflowErrors.js +53 -0
  18. package/dist/application/services/WorkflowErrors.js.map +1 -0
  19. package/dist/application/services/WorkflowValidationService.d.ts +25 -46
  20. package/dist/application/services/WorkflowValidationService.js +308 -627
  21. package/dist/application/services/WorkflowValidationService.js.map +1 -1
  22. package/dist/cli/install-skills.js +0 -0
  23. package/dist/cli/install-skills.js.map +1 -1
  24. package/dist/cli/install-target.d.ts +4 -1
  25. package/dist/cli/install-target.js +4 -0
  26. package/dist/cli/install-target.js.map +1 -1
  27. package/dist/cli/sdd-mcp-cli.js +0 -0
  28. package/dist/cli/tool-support/claude-code.js +7 -3
  29. package/dist/cli/tool-support/claude-code.js.map +1 -1
  30. package/dist/cli/tool-support/codex.js +6 -2
  31. package/dist/cli/tool-support/codex.js.map +1 -1
  32. package/dist/cli/tool-support/mcp-registration.d.ts +22 -0
  33. package/dist/cli/tool-support/mcp-registration.js +275 -0
  34. package/dist/cli/tool-support/mcp-registration.js.map +1 -0
  35. package/dist/cli/tool-support/omp.js +6 -2
  36. package/dist/cli/tool-support/omp.js.map +1 -1
  37. package/dist/cli/tool-support/root-guidance.js +2 -2
  38. package/dist/cli/tool-support/root-guidance.js.map +1 -1
  39. package/dist/cli/tool-support/target-installer.d.ts +2 -2
  40. package/dist/cli/tool-support/target-installer.js +9 -3
  41. package/dist/cli/tool-support/target-installer.js.map +1 -1
  42. package/dist/cli/utils/preserving-writer.d.ts +35 -1
  43. package/dist/cli/utils/preserving-writer.js +479 -108
  44. package/dist/cli/utils/preserving-writer.js.map +1 -1
  45. package/dist/domain/types.d.ts +52 -7
  46. package/dist/domain/types.js +5 -4
  47. package/dist/domain/types.js.map +1 -1
  48. package/dist/index.js +0 -0
  49. package/dist/infrastructure/mcp/MCPServer.js +13 -13
  50. package/dist/infrastructure/mcp/MCPServer.js.map +1 -1
  51. package/dist/infrastructure/mcp/ToolRegistry.d.ts +5 -1
  52. package/dist/infrastructure/mcp/ToolRegistry.js +11 -4
  53. package/dist/infrastructure/mcp/ToolRegistry.js.map +1 -1
  54. package/dist/infrastructure/mcp/sddToolDefinitions.js +76 -90
  55. package/dist/infrastructure/mcp/sddToolDefinitions.js.map +1 -1
  56. package/dist/infrastructure/schemas/project.schema.d.ts +2 -2
  57. package/dist/infrastructure/schemas/project.schema.js +2 -2
  58. package/dist/infrastructure/schemas/project.schema.js.map +1 -1
  59. package/dist/shared/version.d.ts +3 -0
  60. package/dist/shared/version.js +4 -0
  61. package/dist/shared/version.js.map +1 -0
  62. package/dist/utils/atomicWrite.js +20 -5
  63. package/dist/utils/atomicWrite.js.map +1 -1
  64. package/dist/utils/withFilesystemLock.d.ts +22 -0
  65. package/dist/utils/withFilesystemLock.js +219 -0
  66. package/dist/utils/withFilesystemLock.js.map +1 -0
  67. package/package.json +5 -2
  68. package/skills/sdd-design/REFERENCE.md +16 -0
  69. package/skills/sdd-design/SKILL.md +22 -13
  70. package/skills/sdd-implement/REFERENCE.md +4 -0
  71. package/skills/sdd-implement/SKILL.md +20 -16
  72. package/skills/sdd-requirements/REFERENCE.md +17 -7
  73. package/skills/sdd-requirements/SKILL.md +30 -22
  74. package/skills/sdd-tasks/REFERENCE.md +9 -9
  75. package/skills/sdd-tasks/SKILL.md +27 -15
  76. package/templates/CLAUDE.md +6 -12
  77. package/templates/codex-AGENTS.md +7 -9
package/CHANGELOG.md ADDED
@@ -0,0 +1,884 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [5.0.1] - 2026-09-18
11
+
12
+ ### Fixed
13
+ - Accept requirement metadata values on lines following their labels, including the documented numbered list beneath `**Acceptance Criteria:**`. Valid multiline requirements no longer fail with `MissingMetadata` or `AcceptanceCriteriaMissing` ([#50](https://github.com/yi-john-huang/sdd-mcp/pull/50), thanks to @jakehsiaos).
14
+
15
+ ### Documentation
16
+ - Clarified inline and multiline requirement metadata formatting and updated installation examples to 5.0.1.
17
+
18
+ ## [5.0.0] - 2026-07-25
19
+
20
+ ### Added
21
+ - Schema-v5 disk-authoritative workflow state with revision/hash-bound submissions, approvals, test-case checkpoints, deterministic phase validation, crash journals, and durable TDD task progress.
22
+ - Mandatory project-scoped MCP runtime registration for Claude Code, Codex, and OMP installs, committed with manifest-v2 ownership and preserve-first recovery.
23
+
24
+ ### Changed
25
+ - Made the four phase Skills the public Formal SDD workflow: Skills own method and human gates while MCP owns canonical writes, validation, governance, context, and continuation.
26
+ - Updated compact context handoffs, native target renderers, onboarding, and runtime references for the Skill-governed 16-tool contract.
27
+
28
+ ### Security
29
+ - Added owner-fenced cross-process locks, CAS mutation and recovery checks, approved-artifact drift blocking, symlink containment, bounded machine fields, and strict runtime-config ownership validation.
30
+
31
+ ## [4.0.0] - 2026-07-19
32
+
33
+ ### Added
34
+ - First-class Oh My Pi target with native `.omp/AGENTS.md`, `.omp/skills`, `.omp/agents`, `.omp/rules`, and `.omp/contexts` output; interactive installation now selects Claude Code, Codex, or OMP.
35
+ - Managed generated-file ownership in `.sdd-mcp/install-manifest.json`, automatic upgrades for unchanged assets, conflict preservation for modified assets, and reversible `--refresh-generated` backups under `.sdd-mcp/backups/`.
36
+ - Packaged offline `npx sdd-mcp-server context-report` command for static target-tree measurements and privacy-preserving OMP session usage aggregation.
37
+
38
+ ### Changed
39
+ - Unified all packaged MCP entrypoints on the exact 16-tool TypeScript runtime. Feature-scoped tools now use `featureName`; exact-response `ifNoneMatch` fingerprints avoid returning unchanged context.
40
+ - Made all SDD skills manual-only with Claude `/<name>`, Codex `$<name>`, and OMP `/skill:<name>` invocation, compact entrypoints, on-demand references, and target-native rule scoping.
41
+ - Changed OMP high-level work to run inline on Sol/medium by default. Native `.omp/agents` Sol/xhigh advisors are explicit opt-in, limited to one child, and cannot nest or retry; Claude uses current-turn Opus/Sonnet overrides and Codex may request one Sol/xhigh custom advisor.
42
+ - Clarified that OMP Markdown hook assets are not executable native hooks; explicit OMP hook installation is rejected.
43
+
44
+ ### Performance
45
+ - Fresh full-install repository static payload fell **74.37% for Codex**, **83.21% for OMP**, and **95.64% for Claude Code** relative to the v3.5.1 baseline.
46
+ - Comparable provider-reported three-run median cost improved **6.83%** for simple tasks, **11.79%** for medium implementation, **14.09%** for requirements, **9.12%** for design, **1.74%** for security, and **1.87%** for repeated context; all task-quality checks passed.
47
+ - Static byte-derived `estimatedTokens` and provider-reported usage/cost are reported as separate metrics; installed bytes are not presented as actual tokenizer counts.
48
+
49
+ ## [3.5.1] - 2026-07-19
50
+
51
+ ### Changed
52
+ - Codex implementation and TDD routing now uses `gpt-5.6-sol` with `medium` reasoning instead of the previous Luna/max route.
53
+
54
+ ## [3.5.0] - 2026-07-13
55
+
56
+ ### Added
57
+ - Interactive `codex` or `claude-code` target selection for full-profile installs, plus explicit `--target` support for automation.
58
+ - Native Codex skills, guidance, TOML agents, root instructions, and safe lifecycle hooks.
59
+ - Central role routing: Sol/xhigh for high-level Codex work and Luna/max for implementation and TDD; Terra remains supported without a default role.
60
+ - Specialist delegation guidance in phase skills with compact handoffs and explicit fallback behavior.
61
+
62
+ ### Changed
63
+ - Installer writes are preserve-first and `.gitignore` receives an idempotent target-specific managed block.
64
+ - `--codex` is now a deprecated alias for `--target codex`.
65
+ - Architecture, workflow, migration, and agent guidance now describe both native target layouts.
66
+
67
+ ### Fixed
68
+ - Track `sdd-entry.js` as executable so local `npx` binary preparation does not dirty the worktree.
69
+ - Codex hook installs now emit a CommonJS-safe `.mjs` runner and resolve commands from the repository root when invoked in a subdirectory.
70
+ - Target installers reject symlinked or out-of-root destinations and report optional integration, template, and invalid guidance-path failures structurally.
71
+
72
+ ## [3.4.0] - 2026-06-22
73
+
74
+ ### Added
75
+ - **Automatic context handoffs**: Phase approvals now generate compact handoff files under `.spec/specs/{feature}/context/`
76
+ - `sdd-context-load` defaults to compact context for routine workflow continuation
77
+ - Supports `compact`, `standard`, and `full` context loading modes
78
+ - Reports estimated token reduction using deterministic source-vs-handoff estimates
79
+ - **Optional TDD test-case review checkpoint**:
80
+ - `sdd-init` and `sdd-tasks` can enable `reviewTestCases`
81
+ - New `sdd-review-test-cases` tool marks the checkpoint reviewed
82
+ - Task approval and implementation readiness are blocked until review when the checkpoint is required
83
+
84
+ ### Changed
85
+ - **Default install profile is lean**: `npx sdd-mcp-server install` now installs skills, steering, and hooks by default
86
+ - Use `--profile full` or `--all` to install rules, contexts, and agents too
87
+ - **Context management guidance**: README, architecture docs, and project steering now document compact handoffs and generated install outputs
88
+ - **Generated install artifacts ignored**: `.claude/`, `.agents/`, and `.codex/` generated component outputs are excluded from new tracking
89
+
90
+ ### Fixed
91
+ - **Context-load validation**: `sdd-context-load` now errors for missing features instead of creating synthetic handoff files for mistyped feature names
92
+ - **Version metadata**: package lock metadata is synchronized with the published package version and current bin layout
93
+
94
+ ## [3.3.0] - 2026-02-07
95
+
96
+ ### Added
97
+ - **Multi-Tool Install Support**: New CLI flags to generate support for additional AI tools alongside Claude Code
98
+ - `--codex` — Generates `AGENTS.md` in project root for OpenAI Codex CLI with component summary tables and file path references
99
+ - `--antigravity` — Creates `.agent/` directory with relative symlinks (`workflows/` → skills, `rules/` → rules) for Google Antigravity
100
+ - `--all-tools` — Enables both Codex and Antigravity integrations
101
+ - Flags are additive: Claude `.claude/` install always runs as the canonical source of truth
102
+ - **Shared `find-package-root` utility**: Extracted duplicated package root discovery logic into `src/cli/utils/find-package-root.ts`
103
+ - `findPackageRoot()` — Walk up directory tree to find sdd-mcp-server package
104
+ - `getDistCliDir()` — Resolve `dist/cli` with npx symlink support
105
+ - `findTemplate()` — Locate template files within the package
106
+ - **New files**: `src/cli/tool-support/codex.ts`, `src/cli/tool-support/antigravity.ts`, `templates/codex-AGENTS.md`
107
+ - **26 new tests**: Full coverage for AGENTS.md generation, symlink creation, CLI flag parsing, custom paths, error handling
108
+
109
+ ### Changed
110
+ - **Custom path support**: Both `--codex` and `--antigravity` respect `--path`, `--rules-path`, `--agents-path`, and `--steering-path` flags
111
+ - AGENTS.md references effective install paths, not hardcoded defaults
112
+ - Symlinks point to actual install targets, not assumed `.claude/` layout
113
+
114
+ ### Usage
115
+ ```bash
116
+ npx sdd-mcp-server install # Claude only (default)
117
+ npx sdd-mcp-server install --codex # Claude + Codex CLI
118
+ npx sdd-mcp-server install --antigravity # Claude + Antigravity
119
+ npx sdd-mcp-server install --all-tools # Claude + all integrations
120
+ ```
121
+
122
+ ## [3.2.0] - 2026-02-01
123
+
124
+ ### Added
125
+ - **CLAUDE.md generation**: `install` command now generates `CLAUDE.md` in project root with component overview
126
+
127
+ ### Changed
128
+ - **Steering docs migrated**: Static steering documents moved to `.claude/` component structure
129
+
130
+ ## [3.1.1] - 2026-01-28
131
+
132
+ ### Fixed
133
+ - **npx symlink resolution**: Fixed path resolution when running via `npx`
134
+ - `npx sdd-mcp-server install --all` now works correctly
135
+ - Issue was `path.resolve` not following `.bin/` symlinks
136
+ - Fix: Use `fs.realpathSync` to resolve symlinks before walking up directory tree
137
+
138
+ ## [3.1.0] - 2026-01-25
139
+
140
+ ### BREAKING CHANGES
141
+ - **Steering Consolidation**: Static steering documents merged into agents/rules/skills
142
+ - `principles.md` → merged into `rules/coding-style.md`
143
+ - `tdd-guideline.md` → merged into `agents/tdd-guide.md`
144
+ - `linus-review.md` → merged into `agents/reviewer.md`
145
+ - `owasp-top10-check.md` → merged into `agents/security-auditor.md`
146
+ - `commit.md` → merged into `skills/sdd-commit/SKILL.md`
147
+ - `AGENTS.md` → removed (meta-documentation)
148
+ - **Steering directory now only contains project-specific templates**:
149
+ - `product.md` - Product description template
150
+ - `tech.md` - Technology stack template
151
+ - `structure.md` - Project structure template
152
+
153
+ ### Added
154
+ - **`migrate-steering` CLI command**: Migrate existing projects to new consolidated structure
155
+ - `npx sdd-mcp-server migrate-steering` - Migrate current directory
156
+ - `npx sdd-mcp-server migrate-steering --dry-run` - Preview changes
157
+ - `npx sdd-mcp-server migrate-steering --path ./my-project` - Migrate specific project
158
+ - Automatically backs up existing steering to `.spec/steering.backup/`
159
+ - Preserves project-specific templates (product.md, tech.md, structure.md)
160
+
161
+ ### Changed
162
+ - **Enhanced `rules/coding-style.md`**: Now includes complete SOLID, DRY, KISS, YAGNI, SoC principles with code examples and anti-patterns
163
+ - **Enhanced `agents/reviewer.md`**: Now includes Linus-style 5-layer thinking framework, "Good Taste" philosophy, and backward compatibility rules
164
+ - **Enhanced `agents/tdd-guide.md`**: Now includes comprehensive TDD methodology, test pyramid guidance, coverage targets, and language-specific tooling
165
+ - **Enhanced `agents/security-auditor.md`**: Now includes detailed OWASP Top 10 checklist with code examples and remediation guidance
166
+ - **Enhanced `skills/sdd-commit/SKILL.md`**: Now self-contained with complete conventional commits format
167
+
168
+ ### Removed
169
+ - **Static steering documents** (merged into components):
170
+ - `steering/AGENTS.md`
171
+ - `steering/commit.md`
172
+ - `steering/linus-review.md`
173
+ - `steering/owasp-top10-check.md`
174
+ - `steering/principles.md`
175
+ - `steering/tdd-guideline.md`
176
+
177
+ ### Migration Guide
178
+ ```bash
179
+ # 1. Update to v3.1
180
+ npm update sdd-mcp-server
181
+
182
+ # 2. Preview migration (recommended)
183
+ npx sdd-mcp-server migrate-steering --dry-run
184
+
185
+ # 3. Run migration
186
+ npx sdd-mcp-server migrate-steering
187
+
188
+ # 4. Update .claude/ components with latest versions
189
+ npx sdd-mcp-server install --all
190
+ ```
191
+
192
+ The static steering content now lives in enhanced components:
193
+ - Design principles: `.claude/rules/coding-style.md`
194
+ - TDD methodology: `.claude/agents/tdd-guide.md`
195
+ - Review criteria: `.claude/agents/reviewer.md`
196
+ - Security checklist: `.claude/agents/security-auditor.md`
197
+ - Commit format: `.claude/skills/sdd-commit/SKILL.md`
198
+
199
+ ## [3.0.3] - 2026-01-24
200
+
201
+ ### Fixed
202
+ - **npm Package Missing Directories**: Added `rules/`, `contexts/`, `agents/`, `hooks/` to package.json `files` array
203
+ - v3.0 component directories were not being published to npm
204
+ - Caused `ENOENT: no such file or directory` errors when using `npx sdd-mcp-server install --all`
205
+ - All 6 component types now correctly included in npm package
206
+
207
+ ## [3.0.2] - 2026-01-24
208
+
209
+ ### Fixed
210
+ - **npx Path Resolution**: Fixed `getDirname()` to resolve paths correctly when running via npx
211
+ - Script location now found via `process.argv[1]` first (works with npx)
212
+ - Falls back to `process.cwd()` for local development
213
+ - Package root detection via `package.json` with `name: 'sdd-mcp-server'` check
214
+ - Resolves steering directory not found errors in npx execution
215
+
216
+ ## [3.0.1] - 2026-01-24
217
+
218
+ ### Added
219
+ - **Workflow Documentation**: Created `docs/WORKFLOW.md` with 5 Mermaid sequence diagrams
220
+ - Session start flow with hooks and steering
221
+ - SDD workflow (feature development)
222
+ - Code review flow
223
+ - Pre-tool hook flow
224
+ - Component installation sequence
225
+
226
+ ### Fixed
227
+ - **HookLoader ESM Import**: Added missing `.js` extension to BaseManager import
228
+
229
+ ### Changed
230
+ - **Code Simplification**: Ran code-simplifier agent on install-skills.ts (~50 lines reduced)
231
+ - **gitignore**: Added `.serena/` to AI tool configs section
232
+
233
+ ## [3.0.0] - 2026-01-23
234
+
235
+ ### BREAKING CHANGES
236
+ - **Plugin Architecture**: Transformed from basic MCP server to comprehensive Claude Code plugin system
237
+ - **6 Component Types**: Skills, Steering, Rules, Contexts, Agents, Hooks
238
+ - **Unified CLI**: `npx sdd-mcp-server install` with `--rules`, `--contexts`, `--agents`, `--hooks`, `--all` flags
239
+
240
+ ### Added
241
+ - **4 New Managers**: RulesManager, ContextManager, AgentManager, HookLoader
242
+ - All extend BaseManager for consistent discovery/install patterns
243
+ - Full DI container integration
244
+ - **6 Rule Files**: coding-style, testing, security, git-workflow, error-handling, sdd-workflow
245
+ - **5 Context Files**: dev, review, planning, security-audit, research
246
+ - **6 Agent Files**: planner, architect, reviewer, implementer, security-auditor, tdd-guide
247
+ - **7 Hook Files**: validate-sdd-workflow, check-test-coverage, update-spec-status, log-tool-execution, load-project-context, save-session-summary, remind-uncommitted-changes
248
+ - **3 New Skills**: sdd-review (Linus-style code review), sdd-security-check (OWASP audit), sdd-test-gen (TDD)
249
+ - **Plugin Manifest**: `.claude-plugin/plugin.json` for Claude Code integration
250
+ - **58 New Tests**: Full TDD coverage for component managers
251
+
252
+ ### Changed
253
+ - **Install CLI**: Unified command supports all component types
254
+ - `--all` installs everything (skills, steering, rules, contexts, agents, hooks)
255
+ - `--skills`, `--steering`, `--rules`, `--contexts`, `--agents`, `--hooks` for selective install
256
+ - Default behavior unchanged (skills + steering)
257
+ - **Directory Structure**: New component directories at package root
258
+ - `agents/*.md` - AI personas
259
+ - `rules/*.md` - Always-active guidelines
260
+ - `contexts/*.md` - Mode-specific prompts
261
+ - `hooks/**/*.md` - Event-driven automation
262
+
263
+ ### Technical
264
+ - **BaseManager Pattern**: Extracted common functionality from SkillManager
265
+ - **DI Container**: New TYPES symbols for each manager
266
+ - **199 Total Tests**: All passing with full coverage
267
+
268
+ ### Inspired By
269
+ - everything-claude-code architecture patterns for comprehensive AI guidance
270
+
271
+ ## [2.2.1] - 2026-01-15
272
+
273
+ ### Fixed
274
+ - **CLI Command Fix**: Fixed `npx sdd-mcp` not working due to npm package name collision
275
+ - Another npm package named `sdd-mcp` exists, causing `npx sdd-mcp` to run the wrong package
276
+ - Now use `npx sdd-mcp-server` for all CLI commands
277
+ - Created unified entry point (`sdd-entry.js`) that handles both CLI and MCP server mode
278
+
279
+ ### Changed
280
+ - **Unified Entry Point**: `sdd-mcp-server` bin now handles CLI commands AND MCP server
281
+ - `npx sdd-mcp-server install` - Install skills and steering
282
+ - `npx sdd-mcp-server install --list` - List available content
283
+ - `npx sdd-mcp-server migrate-kiro` - Migrate .kiro to .spec
284
+ - `npx sdd-mcp-server --help` - Show help
285
+ - `npx sdd-mcp-server` (no args) - Start MCP server
286
+ - **Removed bin entry**: Removed `sdd-mcp` bin entry to avoid confusion
287
+ - Updated all documentation to use `npx sdd-mcp-server` instead of `npx sdd-mcp`
288
+
289
+ ## [2.1.0] - 2026-01-12
290
+
291
+ ### BREAKING CHANGES
292
+ - **Directory Rename**: SDD specification directory renamed from `.kiro/` to `.spec/`
293
+ - New projects will use `.spec/` automatically
294
+ - Legacy `.kiro/` directories still supported for backwards compatibility
295
+
296
+ ### Added
297
+ - **Migration CLI Tool**: `npx sdd-mcp-server migrate-kiro` to migrate existing projects
298
+ - `--dry-run` flag to preview changes
299
+ - `--force` flag to overwrite existing `.spec/` directory
300
+ - `--path` flag to specify project directory
301
+ - **Unit Tests**: 6 new tests for migration tool
302
+
303
+ ### Changed
304
+ - All source code updated to use `.spec/` with `.kiro/` fallback
305
+ - Documentation updated (README, ARCHITECTURE, AGENTS.md)
306
+ - Steering documents updated to reference `.spec/steering/`
307
+
308
+ ### Migration Guide
309
+ ```bash
310
+ # Preview what will be migrated
311
+ npx sdd-mcp-server migrate-kiro --dry-run
312
+
313
+ # Perform migration
314
+ npx sdd-mcp-server migrate-kiro
315
+ ```
316
+
317
+ ## [2.0.3] - 2026-01-12
318
+
319
+ ### Added
320
+ - **CLI Subcommand Support**: `npx sdd-mcp-server install-skills` now works correctly
321
+ - Created new `sdd-mcp-cli.ts` as the main CLI entry point
322
+ - Supports `install-skills` subcommand with all existing options
323
+ - Shows help with `npx sdd-mcp-server --help`
324
+
325
+ ### Technical
326
+ - `sdd-mcp` binary now points to `dist/cli/sdd-mcp-cli.js` instead of `dist/index.js`
327
+ - MCP server is still accessible via `npx sdd-mcp-server`
328
+
329
+ ## [2.0.2] - 2026-01-12
330
+
331
+ ### Fixed
332
+ - **Skill Installation CLI**: Fixed `npx sdd-mcp-server install-skills --list` returning empty results
333
+ - Added proper ESM support using `import.meta.url` for `__dirname` resolution
334
+ - Fixed path resolution to check multiple paths and return the first existing one
335
+ - Fixed ESM main module detection (was incorrectly checking for `require` which doesn't exist in ESM)
336
+
337
+ ### Technical
338
+ - Updated `src/cli/install-skills.ts` with ESM-compatible path resolution
339
+ - Skills directory is now correctly found in all execution contexts (npx, global install, local)
340
+
341
+ ## [2.0.1] - 2026-01-12
342
+
343
+ ### Changed
344
+ - **Codebase Simplification**: Removed 7,131 lines of dead code and legacy tests
345
+ - Cleaned up unused utility functions and helper methods
346
+ - Removed legacy test files that were no longer relevant to current architecture
347
+ - Streamlined codebase for better maintainability
348
+
349
+ ### Technical
350
+ - **Code Reduction**: -7,131 lines removed
351
+ - **Improved Maintainability**: Cleaner codebase with only active, relevant code
352
+ - **No Breaking Changes**: All existing functionality preserved
353
+
354
+ ## [2.0.0] - 2026-01-12
355
+
356
+ ### BREAKING CHANGES
357
+ - **Hybrid Architecture**: Restructured as MCP Tools + Claude Code Agent Skills
358
+ - MCP Tools: Action-oriented operations (init, status, approve, quality-check, validate, spec-impl)
359
+ - Agent Skills: Template/guidance-heavy operations (requirements, design, tasks, steering, implement, commit)
360
+ - **Directory Rename**: `.kiro/` → `.spec/` for new projects (legacy `.kiro/` still supported)
361
+ - **Removed MCP Tools**: `sdd-requirements`, `sdd-design`, `sdd-tasks`, `sdd-steering`, `sdd-steering-custom`, `sdd-implement` → Now Agent Skills
362
+ - **Renamed Steering Document**: `security-check.md` → `owasp-top10-check.md`
363
+
364
+ ### Added
365
+ - **New `/simple-task` Skill**: Quick implementation path for small features, bug fixes, and enhancements
366
+ - References steering documents (TDD, principles, linus-review, OWASP) as needed
367
+ - User-driven choice between simple task vs full SDD workflow
368
+ - **Agent Skills System**: 9 Claude Code skills with on-demand loading
369
+ - `/simple-task`: Quick implementation with best practices
370
+ - `/sdd-requirements`: EARS-formatted requirements generation
371
+ - `/sdd-design`: Architecture design with Linus principles
372
+ - `/sdd-tasks`: TDD task breakdown with test pyramid
373
+ - `/sdd-implement`: Implementation guidelines (SOLID, security, TDD)
374
+ - `/sdd-steering`: Project-specific steering documents
375
+ - `/sdd-steering-custom`: Custom steering with inclusion modes
376
+ - `/sdd-commit`: Commit/PR guidelines with conventional commits
377
+ - **Skill Installation CLI**: `npx sdd-mcp-server install-skills` to install skills to project
378
+ - **SkillManager**: New `src/skills/SkillManager.ts` for skill discovery and installation
379
+ - **New MCP Tool**: `sdd-list-skills` to list available Agent Skills
380
+ - **Two Development Paths**: Users choose between `/simple-task` (quick) or full SDD workflow (formal)
381
+
382
+ ### Changed
383
+ - **Token Efficiency**: ~55% fewer tokens by loading skills on-demand instead of always-on steering
384
+ - Old: ~3,800 tokens loaded for every operation
385
+ - New: ~1,700 tokens loaded only when skill invoked
386
+ - **Language-Agnostic Skills**: All skills updated to be programming language agnostic
387
+ - Removed hardcoded `package.json` references
388
+ - Generic "project manifest" terminology with multi-language examples
389
+ - Support for npm, pip, cargo, go mod, maven, etc.
390
+ - **Reference Documents Architecture**: Steering documents (TDD, principles, linus-review, OWASP) are now reference documents that skills can invoke, not always-loaded
391
+ - **AGENTS.md**: Completely rewritten for hybrid architecture with two development paths
392
+ - **ESLint Configuration**: Fixed and relaxed for gradual adoption (0 errors, warnings only)
393
+
394
+ ### Fixed
395
+ - ESLint configuration error: `@typescript-eslint/recommended` → `plugin:@typescript-eslint/recommended`
396
+ - Added ignore patterns for test files in ESLint
397
+ - Relaxed strict TypeScript rules to warnings for pre-existing code
398
+
399
+ ### Technical
400
+ - **New Files**:
401
+ - `skills/simple-task/SKILL.md`
402
+ - `skills/sdd-requirements/SKILL.md`
403
+ - `skills/sdd-design/SKILL.md`
404
+ - `skills/sdd-tasks/SKILL.md`
405
+ - `skills/sdd-implement/SKILL.md`
406
+ - `skills/sdd-steering/SKILL.md`
407
+ - `skills/sdd-steering-custom/SKILL.md`
408
+ - `skills/sdd-commit/SKILL.md`
409
+ - `src/skills/SkillManager.ts`
410
+ - `src/cli/install-skills.ts`
411
+ - `src/__tests__/unit/skills/SkillManager.test.ts`
412
+ - `src/__tests__/unit/cli/install-skills.test.ts`
413
+ - **Test Coverage**: 25 new tests for skills infrastructure (107 total tests passing)
414
+ - **Package Updates**: Added `skills/**/*` to published files, new `sdd-install-skills` binary
415
+
416
+ ### Migration Guide
417
+ ```bash
418
+ # 1. Update package
419
+ npm update sdd-mcp-server
420
+
421
+ # 2. Install skills to your project
422
+ npx sdd-mcp-server install-skills
423
+
424
+ # 3. (Optional) Rename directories for new projects
425
+ mv .kiro .spec
426
+
427
+ # 4. (Optional) Rename steering document
428
+ mv .spec/steering/security-check.md .spec/steering/owasp-top10-check.md
429
+
430
+ # 5. Use new workflow
431
+ # Simple features: /simple-task <description>
432
+ # Complex features: Full SDD workflow (sdd-init → /sdd-requirements → etc.)
433
+ ```
434
+
435
+ ## [1.8.1] - 2025-12-02
436
+
437
+ ### Fixed
438
+ - Missing `zod` dependency causing load error on some systems.
439
+
440
+ ## [1.8.0] - 2025-11-22
441
+
442
+ ### Changed
443
+ - **MCP Tool Standardization**: Standardized all documentation and generated files to use MCP tool calls (e.g., `sdd-init`) instead of legacy slash commands (e.g., `/kiro:spec-init`)
444
+ - Updated `AGENTS.md` generation logic in `staticSteering.ts`, `SDDToolAdapter.ts`, and `index.ts`
445
+ - Updated `README.md` documentation and examples
446
+ - Ensures consistent tool usage across all AI agents (Claude Code, Cursor, etc.)
447
+ - **AGENTS.md Generation**: Fixed `sdd-steering` to correctly generate `AGENTS.md` with the new MCP tool call format
448
+ - Now includes correct paths and command references
449
+ - Removes outdated references to `/kiro:` commands
450
+
451
+ ## [1.7.0] - 2025-11-07
452
+
453
+ ### Fixed
454
+ - **Module Loading Cross-Context Support**: Enhanced module loader to support both TypeScript and JavaScript execution contexts
455
+ - Module loader now tries both `.ts` and `.js` extensions (also `.mjs`, `.cjs`) for maximum compatibility
456
+ - Works correctly in dev mode (`npm run dev`, `tsx src/index.ts`) and production (`npm start`, `npx`)
457
+ - Fixes issue where TypeScript sources couldn't be loaded when `dist/` didn't exist
458
+
459
+ ### Added
460
+ - **Fallback Control**: New `SDD_ALLOW_TEMPLATE_FALLBACK` environment variable for controlling document generation behavior
461
+ - Default: `false` - Commands fail fast with actionable error messages when modules cannot be loaded
462
+ - Set to `true` - Allow fallback to generic templates (useful for development/debugging)
463
+ - Provides clear guidance: "run `npm run build`" or "set SDD_ALLOW_TEMPLATE_FALLBACK=true"
464
+ - Prevents silent generation of generic documents that don't reflect actual codebase
465
+ - **Shared Error Handler**: Centralized `handleLoaderFailure()` function for consistent error handling across all document generation commands
466
+ - Used by `handleSteeringSimplified`, `handleRequirementsSimplified`, `handleDesignSimplified`, `handleTasksSimplified`
467
+ - Provides detailed error messages with troubleshooting steps
468
+ - Logs fallback decisions for debugging
469
+
470
+ ### Changed
471
+ - **Error Handling Philosophy**: Changed from "silent fallback" to "fail fast with guidance"
472
+ - Previously: Module load failures silently fell back to generic templates
473
+ - Now: Module load failures throw descriptive errors by default (unless SDD_ALLOW_TEMPLATE_FALLBACK=true)
474
+ - Ensures operators are aware when documents don't reflect actual codebase analysis
475
+
476
+ ## [1.6.2] - 2025-11-05
477
+
478
+ ### Fixed
479
+ - **Module Loading**: Unified module loading system for cross-context compatibility
480
+ - Fixed `sdd-steering` generating generic templates when run via `npx -y sdd-mcp-server@latest`
481
+ - Created `src/utils/moduleLoader.ts` with fallback path resolution for different execution contexts
482
+ - Updated `handleSteeringSimplified()`, `handleRequirementsSimplified()`, `handleDesignSimplified()`, and `handleTasksSimplified()` to use dynamic module loader
483
+ - Module loader tries multiple paths: `./utils/*.js` (dist), `../utils/*.js` (subdirectory), `./*.js` (root), `../*.js` (alternative root)
484
+ - Now works correctly across all execution methods: npx, node dist/index.js, npm run dev, npm start
485
+ - Debug logging shows which path succeeded for troubleshooting
486
+ - Graceful fallback to template generation with clear error messages when modules cannot be loaded
487
+
488
+ ### Added
489
+ - **Testing**: Comprehensive unit tests for moduleLoader (`src/__tests__/unit/utils/moduleLoader.test.ts`)
490
+ - Tests for successful module loading
491
+ - Tests for fallback path resolution
492
+ - Tests for error handling and error message format
493
+ - 100% test coverage for moduleLoader functionality
494
+
495
+ ## [1.6.1] - 2025-10-30
496
+
497
+ ### Changed
498
+ - **Documentation**: Updated README.md with v1.6.0 architecture refactoring information
499
+ - Added v1.6.0 announcement highlighting 5 focused services
500
+ - Updated version references from 1.4.5 to 1.6.0 in Quick Start examples
501
+ - Emphasized scored semantic detection and improved maintainability
502
+
503
+ ## [1.6.0] - 2025-10-30
504
+
505
+ ### Changed
506
+ - **Architecture Refactoring**: Decomposed `RequirementsClarificationService` from "God Class" into focused, single-responsibility services following Domain-Driven Design principles
507
+ - **SteeringContextLoader**: Pure I/O service for loading steering documents from filesystem
508
+ - **DescriptionAnalyzer**: Pure analysis service using scored semantic detection (0-100 per category)
509
+ - **QuestionGenerator**: Pure transformation service generating questions from analysis + configuration
510
+ - **AnswerValidator**: Pure validation service with security checks
511
+ - **DescriptionEnricher**: Pure synthesis service for 5W1H-structured descriptions
512
+ - **RequirementsClarificationService**: Now acts as thin orchestrator delegating to specialized services
513
+ - **Improved Analysis**: Replaced brittle boolean regex matching with scored semantic detection
514
+ - Each 5W1H category now scored 0-100 based on keyword density and coverage
515
+ - Boolean presence derived from scores (threshold: 30%)
516
+ - New score fields in `ClarificationAnalysis`: `whyScore`, `whoScore`, `whatScore`, `successScore`
517
+ - Reduces false positives/negatives from simple pattern matching
518
+ - **Externalized Configuration**: Moved all question templates to `clarification-questions.ts`
519
+ - Stable semantic IDs: `why_problem`, `why_value`, `who_users`, `what_mvp_features`, etc.
520
+ - Each template includes: question, rationale, examples, required flag, condition function
521
+ - Enables adding new questions without code changes
522
+ - Better separation of business rules from service logic
523
+
524
+ ### Added
525
+ - **New Domain Types**:
526
+ - `SteeringContext`: Moved to domain types for reusability across services
527
+ - `DescriptionComponents`: Structured 5W1H components for enriched descriptions
528
+ - **Comprehensive Test Coverage**:
529
+ - 15 tests for DescriptionAnalyzer (scored semantic detection)
530
+ - 8 tests for QuestionGenerator (template-based generation)
531
+ - 11 tests for AnswerValidator (validation + security)
532
+ - 10 tests for DescriptionEnricher (5W1H synthesis)
533
+ - 13 tests for SteeringContextLoader (I/O with error handling)
534
+ - 5 tests for RequirementsClarificationService (orchestration)
535
+ - Total: 62 new unit tests, all passing
536
+
537
+ ### Technical Improvements
538
+ - **Single Responsibility Principle**: Each service has one clear purpose with focused interface
539
+ - **Dependency Injection**: All new services registered in DI container with proper type bindings
540
+ - **Error Handling**: SteeringContextLoader differentiates file-level errors (debug) from system errors (warn)
541
+ - **Testability**: Pure functions enable fast, isolated unit tests without mocks
542
+ - **Maintainability**: Services average ~100 LOC vs previous ~500 LOC monolith
543
+ - **Type Safety**: All services fully typed with readonly interfaces for immutability
544
+
545
+ ### Migration Notes
546
+ - **Breaking Change**: `RequirementsClarificationService` constructor signature changed
547
+ - Old: `constructor(fileSystem: FileSystemPort, logger: LoggerPort)`
548
+ - New: `constructor(logger, steeringLoader, analyzer, questionGenerator, answerValidator, enricher)`
549
+ - **Impact**: Direct instantiation requires all 6 dependencies
550
+ - **Mitigation**: Use DI container (`container.get(TYPES.RequirementsClarificationService)`) - no code changes needed
551
+ - **API Compatibility**: Public methods unchanged - `analyzeDescription()`, `validateAnswers()`, `synthesizeDescription()` work identically
552
+ - **Test Updates**: Tests now mock specialized services instead of filesystem - see updated test file for examples
553
+
554
+ ## [1.5.1] - 2025-10-30
555
+
556
+ ### Fixed
557
+ - **Enhanced Input Validation**: `validateAnswers` now checks for empty/too-short answers (< 10 chars) and potentially malicious content (XSS patterns)
558
+ - Returns detailed `AnswerValidationResult` with `tooShort` and `containsInvalidContent` arrays
559
+ - Prevents security issues from user-provided clarification answers
560
+ - **Improved Error Handling**: `loadSteeringContext` now properly handles failures and always returns valid defaults
561
+ - Individual try-catch blocks for product.md and tech.md loading
562
+ - Better error logging with debug-level messages for individual file failures
563
+ - Guaranteed non-null return value
564
+ - **Code Quality Improvements**: Extracted magic numbers and duplicated patterns to constants
565
+ - Created `clarification-constants.ts` with `QUALITY_SCORE_WEIGHTS`, `ANSWER_VALIDATION`, `PATTERN_DETECTION`, `AMBIGUOUS_TERMS`
566
+ - Replaced inline regex patterns with pre-compiled constants for better performance
567
+ - All scoring thresholds now configurable in one place
568
+ - **Stable Question IDs**: Replaced UUID-based IDs with semantic identifiers
569
+ - Question IDs: `why_problem`, `why_value`, `who_users`, `what_mvp_features`, `what_out_of_scope`, `success_metrics`, `how_tech_constraints`, `ambiguity_1-3`
570
+ - Predictable IDs improve testability and debugging
571
+ - **Jest Module Resolution**: Fixed `moduleNameMapper` pattern to properly resolve `.js` imports to TypeScript source files
572
+ - Pattern now correctly handles all relative imports without catching node_modules
573
+
574
+ ### Changed
575
+ - **Type Safety**: Moved `ClarificationAnswers` and `AnswerValidationResult` to domain types for better reusability
576
+ - **Test Coverage**: Updated tests to verify new validation fields (`tooShort`, `containsInvalidContent`)
577
+ - **Build Configuration**: All 16 tests passing with TypeScript compilation successful
578
+
579
+ ### Technical
580
+ - **Maintainability**: Reduced code duplication across service, adapter, and MCP server
581
+ - **Security**: Added XSS pattern detection for user-provided answers
582
+ - **Performance**: Pre-compiled regex patterns reduce repeated compilation overhead
583
+ - **Configuration**: Centralized constants allow easy tuning of quality thresholds
584
+
585
+ ## [1.5.0] - 2025-10-30
586
+
587
+ ### Added
588
+ - **Interactive Requirements Clarification**: New `RequirementsClarificationService` that analyzes project descriptions and blocks vague requirements
589
+ - Quality scoring (0-100) with blocking threshold at 70%
590
+ - 5W1H analysis: WHY (30 pts), WHO (20 pts), WHAT (20 pts), Success Criteria (15 pts), plus length and clarity bonuses
591
+ - Ambiguity detection for terms like "fast", "scalable", "user-friendly", "easy", "reliable", "secure", "modern"
592
+ - Context-aware question generation using existing `.kiro/steering/` documents to avoid redundancy
593
+ - Two-pass workflow: analyze → return questions → validate answers → synthesize enriched description
594
+ - **Enhanced sdd-init Tool**: Interactive clarification flow with blocking mechanism
595
+ - First pass: Analyzes description quality, returns clarification questions if score < 70%
596
+ - Second pass: Validates answers, synthesizes enriched description with structured 5W1H format
597
+ - Enriched descriptions include: Original, Business Justification (Why), Target Users (Who), Core Features (What), Technical Approach (How), Success Criteria
598
+ - New `clarificationAnswers` parameter for second-pass submission
599
+ - **Comprehensive Type System**: New domain types for clarification workflow
600
+ - `ClarificationQuestion`, `QuestionCategory`, `ClarificationAnalysis`, `AmbiguousTerm`, `EnrichedProjectDescription`, `ClarificationResult`
601
+ - Full TypeScript type safety with readonly interfaces
602
+ - **13 Unit Tests**: Complete test coverage for RequirementsClarificationService
603
+ - Tests for quality scoring, ambiguity detection, question generation, answer validation, and description synthesis
604
+ - All tests passing with 100% success rate
605
+
606
+ ### Changed
607
+ - **sdd-init Behavior**: Now blocks progression on vague requirements (quality score < 70%)
608
+ - Previously accepted any description; now enforces quality standards
609
+ - Focuses on "WHY" (business justification) as highest-weighted criterion
610
+ - Educational feedback with actionable examples and specific question categories
611
+ - **DI Container**: Registered `RequirementsClarificationService` in dependency injection system
612
+ - Added `TYPES.RequirementsClarificationService` symbol
613
+ - Integrated into SDDToolAdapter with proper injection
614
+
615
+ ### Fixed
616
+ - **Vague Requirements Problem**: Prevents "garbage in, garbage out" by ensuring clear requirements from project start
617
+ - **Missing Business Context**: Forces articulation of WHY before proceeding with implementation
618
+ - **Ambiguous Language**: Detects and clarifies non-specific terms before they cause scope issues
619
+
620
+ ### Technical
621
+ - **Architecture**: Follows Domain-Driven Design with service in application layer
622
+ - **Integration**: Works in both simplified (mcp-server.js) and TypeScript (SDDToolAdapter) implementations
623
+ - **Context Awareness**: Reads steering documents (product.md, tech.md) to avoid redundant questions
624
+ - **Blocking Workflow**: Synchronous MCP tool with multi-pass pattern for interactive clarification
625
+
626
+ ## [1.4.5] - 2025-10-19
627
+
628
+ ### Changed
629
+ - **Test Organization**: Reorganized test structure for better maintainability
630
+ - Moved legacy tests to `src/__tests__/legacy/` directory
631
+ - Created new `src/__tests__/unit/` structure for unit tests
632
+ - Updated `jest.config.js` to focus on unit tests only
633
+ - Added `tsconfig.jest.json` for better Jest-TypeScript integration
634
+
635
+ ### Refactored
636
+ - **Static Steering Module**: Centralized static steering document creation logic
637
+ - Created `src/application/services/staticSteering.ts` module (DRY principle)
638
+ - Single source of truth for static steering documents (linus-review.md, commit.md, security-check.md, tdd-guideline.md, principles.md)
639
+ - Updated MCP server handlers to use the centralized module
640
+ - Improved code maintainability following SOLID principles
641
+
642
+ ## [1.4.4] - 2025-10-10
643
+
644
+ ### Added
645
+ - **Coding Principles Steering Document**: New `.kiro/steering/principles.md` with comprehensive SOLID, DRY, KISS, YAGNI, Separation of Concerns, and Modularity guidance
646
+ - 641 lines of comprehensive principles with code examples
647
+ - Multi-language examples (TypeScript, Python, Java, Go, Ruby, PHP, Rust, C#)
648
+ - Code review checklist for principle enforcement
649
+ - Anti-patterns and common pitfalls to avoid
650
+ - **TDD Task Generation**: Rewrote task generation to follow Test-Driven Development workflow
651
+ - Phase 1: Test Setup (🔴 RED - Write Failing Tests First)
652
+ - Phase 2: Implementation (🟢 GREEN - Make Tests Pass)
653
+ - Phase 3: Refactoring (🔵 REFACTOR - Improve Code Quality)
654
+ - Phase 4: Integration & Documentation
655
+ - Framework-specific test tasks (MCP SDK, API endpoints, database operations)
656
+
657
+ ### Changed
658
+ - **Task Document Format**: Implementation tasks now follow TDD methodology with clear phase separation
659
+ - **Steering Document Count**: Now generates 8 steering documents (added principles.md to the 7 existing)
660
+ - **Documentation Updates**: Enhanced README.md, CLAUDE.md, and AGENTS.md with principles and TDD workflow references
661
+
662
+ ### Fixed
663
+ - Task generation order now enforces test-first development
664
+ - All documentation now consistently references 8 steering documents
665
+
666
+ ## [1.4.3] - 2025-10-10
667
+
668
+ ### Fixed
669
+ - **Document Generation**: Simplified mode (MCP) now properly uses comprehensive codebase analysis instead of falling back to templates
670
+ - Enhanced error handling with detailed debug logging
671
+ - Added `analysisUsed` flag to track successful comprehensive analysis
672
+ - Improved user feedback showing "✅ Comprehensive codebase analysis" or "⚠️ Basic template"
673
+ - **Multi-Language Detection**: Comprehensive analysis now properly detects TypeScript, JavaScript, Java, Python, Go, Ruby, PHP, Rust, C#, Scala
674
+ - **Framework Detection**: Enhanced detection for 20+ frameworks (Spring Boot, Django, FastAPI, Rails, Laravel, Express, React, Vue, Angular, Next.js, etc.)
675
+ - **Build Tool & Test Framework Detection**: Better identification of Maven, Gradle, npm, pip, cargo, Jest, pytest, JUnit, Mocha, etc.
676
+ - **Architecture Pattern Recognition**: Improved detection of DDD, MVC, Microservices, Clean Architecture patterns
677
+
678
+ ### Changed
679
+ - **Error Reporting**: Added comprehensive debug logging throughout document generation process
680
+ - **User Feedback**: Clear messaging about which analysis method was used (comprehensive vs fallback)
681
+ - **Documentation**: Updated README.md to highlight v1.4.3 comprehensive analysis improvements
682
+
683
+ ## [1.4.2] - 2025-10-02
684
+
685
+ ### Fixed
686
+ - `sdd-steering` CLI entry now always creates `.kiro/steering/tdd-guideline.md`, keeping TDD enforcement consistent with the TypeScript build output.
687
+
688
+ ## [1.4.1] - 2025-09-30
689
+
690
+ ### Added
691
+ - Always-generate static `security-check.md` (OWASP Top 10 aligned) during `sdd-steering`
692
+ - Present in both MCP paths (simplified + legacy server)
693
+ - Use during code generation and code review to avoid common vulnerabilities
694
+
695
+ ## [1.3.5] - 2025-09-13
696
+
697
+ ## [1.4.0] - 2025-09-27
698
+
699
+ ### Added
700
+ - Analysis-backed generation for `sdd-requirements`, `sdd-design`, and `sdd-tasks` in MCP mode
701
+ - New generators: `src/utils/specGenerator.ts` and runtime `specGenerator.js`
702
+ - Smoke scripts: `scripts/smoke-mcp.js` (startup) and `scripts/mcp-tools-list.js` (tools/list probe)
703
+
704
+ ### Changed
705
+ - `mcp-server.js` and MCP simplified handlers now use analysis-first with robust fallbacks
706
+ - Published files include `specGenerator.js`
707
+
708
+ ### Fixed
709
+ - Steering vs specification doc generation parity in MCP clients; no more template-first behavior
710
+
711
+ ### Added
712
+ - Multi-language steering support: Python (Django/FastAPI/Flask), Go (Gin/Echo), Ruby (Rails/Sinatra), PHP (Laravel/Symfony), Rust (Actix/Axum/Rocket), .NET/C#, Scala (SBT)
713
+ - Language-aware tech docs: Proper dev commands, environment versions (JDK/Go/Python/Ruby/PHP/Rust/.NET), framework naming
714
+ - Architecture sections for non-JS stacks with conventional layering and tooling
715
+ - Structure overview adapts to each ecosystem’s key files (pom.xml, pyproject, go.mod, Gemfile, composer.json, Cargo.toml, *.csproj, build.sbt)
716
+
717
+ ### Changed
718
+ - Node/TS detection coexists with other ecosystems without bias; module system shown only for JS/TS projects
719
+
720
+ ### Fixed
721
+ - TypeScript compile issues in document generator refactor
722
+
723
+ ## [1.3.4] - 2025-09-13
724
+
725
+ ### Changed
726
+ - Version resolution: both entrypoints now report version from `package.json`
727
+ - MCP simplified tools aligned with kiro behavior: status/approve/quality/implement parity
728
+ - Unified doc generation: single dynamic generator to avoid drift
729
+
730
+ ### Added
731
+ - Ensure static exceptions only: `.kiro/steering/linus-review.md`, `.kiro/steering/commit.md`, and `AGENTS.md` created when missing
732
+
733
+ ### Fixed
734
+ - MCP mode logging detection to prevent stdio interference
735
+
736
+ ## [1.3.0] - 2025-09-11
737
+
738
+ ### Added
739
+ - **Static Steering Documents**: Automatic creation of `linus-review.md` with complete Linus Torvalds code review principles
740
+ - **Commit Message Guidelines**: Automatic creation of `commit.md` with standardized commit message formatting
741
+ - **Universal AGENTS.md**: Cross-platform AI agent configuration file generated from CLAUDE.md template
742
+ - **Enhanced sdd-steering**: Now creates static documents (linus-review.md, commit.md) alongside codebase-analyzed content
743
+ - **Enhanced sdd-init**: Now generates AGENTS.md for universal AI agent compatibility
744
+
745
+ ### Changed
746
+ - **Steering Document Generation**: Both sdd-init and sdd-steering now ensure AGENTS.md exists for cross-platform AI support
747
+ - **CLAUDE.md Documentation**: Updated to reflect new steering files (linus-review.md, commit.md) in active steering list
748
+ - **Template Adaptation**: AGENTS.md intelligently adapts from existing CLAUDE.md or creates generic template
749
+
750
+ ### Fixed
751
+ - **Cross-Platform Compatibility**: AGENTS.md ensures SDD workflows work across different AI agents (Claude Code, Cursor, etc.)
752
+ - **Static Content Preservation**: Only creates static documents when missing to preserve existing customizations
753
+
754
+ ## [1.2.0] - 2025-09-11
755
+
756
+ ### Added
757
+ - **Empty Project Bootstrap**: SDD tools now work from empty directories without requiring package.json or existing files
758
+ - **Kiro Workflow Alignment**: Complete alignment with .claude/commands/kiro/ workflow patterns and phase validation
759
+ - **Feature Name Generation**: Automatic feature name extraction from project descriptions
760
+ - **Spec Context Management**: .kiro/specs/[feature]/ structure with spec.json phase tracking and approval workflow
761
+ - **EARS Requirements Generation**: Dynamic EARS-formatted acceptance criteria generated from project descriptions
762
+ - **Phase Validation System**: Enforced workflow progression (init → requirements → design → tasks)
763
+
764
+ ### Changed
765
+ - **sdd-init**: Now takes project description instead of name/path, generates feature names automatically
766
+ - **sdd-requirements**: Uses feature name parameter, loads spec context, generates from project description
767
+ - **sdd-design**: Validates requirements phase, creates technical design with phase enforcement
768
+ - **sdd-tasks**: Validates design phase, generates kiro-style numbered implementation tasks
769
+ - **Tool Schemas**: Updated SDDToolAdapter schemas for consistency with kiro workflow
770
+
771
+ ### Fixed
772
+ - **Package.json Dependency**: Eliminated requirement for existing project files
773
+ - **Static Content Generation**: Replaced with dynamic, context-aware content from project descriptions
774
+ - **Workflow Enforcement**: Added proper phase validation and spec.json tracking
775
+
776
+ ## [1.1.22] - 2025-09-11
777
+
778
+ ### Added
779
+ - **Context-Aware Content Generation**: All SDD tools now analyze real project structure instead of generating static templates
780
+ - **Project Analysis Engine**: 20+ helper methods for analyzing package.json, dependencies, and directory structure
781
+ - **EARS-Formatted Requirements**: Generate acceptance criteria based on actual npm scripts and project configuration
782
+ - **Architecture Detection**: Automatic technology stack identification and pattern recognition from codebase
783
+ - **Simplified MCP Tools**: Enhanced versions that work directly without requiring full SDD initialization
784
+
785
+ ### Changed
786
+ - **TemplateService**: Enhanced with comprehensive project analysis capabilities for real-time content generation
787
+ - **SDDToolAdapter**: Added missing sdd-steering tools with project-specific analysis functionality
788
+ - **Requirements Generation**: Now extracts real functional requirements from package.json and project structure
789
+ - **Design Generation**: Architecture documentation based on actual dependencies and detected patterns
790
+ - **Task Generation**: Implementation breakdown derived from real technology stack and project organization
791
+
792
+ ### Fixed
793
+ - **Static Template Content**: Replaced generic placeholders with dynamic project-specific content
794
+ - **Tool Integration**: Enhanced MCP tool compatibility for direct usage without complex setup
795
+
796
+ ## [1.1.12] - 2025-09-10
797
+
798
+ ### Fixed
799
+ - **Claude Code Health Check**: Fixed MCP server connection failures due to startup timeout issues
800
+ - **Startup Performance**: Optimized server startup time from ~500ms to ~60ms for faster health checks
801
+ - **Version Consistency**: Updated all version references across codebase to 1.1.12
802
+
803
+ ### Added
804
+ - **Local Development Wrapper**: Added `local-mcp-server.js` for ultra-fast local development
805
+ - **Enhanced Documentation**: Updated README with connection troubleshooting and v1.1.12 fixes
806
+ - **GitHub Release**: Automated release creation with comprehensive changelog
807
+
808
+ ### Changed
809
+ - **MCP Protocol Compliance**: Added proper `InitializedNotificationSchema` handler
810
+ - **ES Module Compatibility**: Improved module loading and entry point detection
811
+ - **Health Check Optimization**: Reduced npx execution overhead for Claude Code compatibility
812
+
813
+ ## [1.1.11] - 2025-09-10
814
+
815
+ ### Fixed
816
+ - **MCP Protocol**: Enhanced MCP protocol compatibility with proper notification handling
817
+ - **Version Consistency**: Aligned version reporting across all server implementations
818
+
819
+ ### Added
820
+ - **Initialized Notification**: Added proper handling for MCP `initialized` notification
821
+
822
+ ## [1.1.10] - 2025-09-10
823
+
824
+ ### Fixed
825
+ - **ES Module Entry Point**: Fixed `import.meta.url` detection for proper ES module execution
826
+ - **Build Output**: Corrected TypeScript compilation output for ES module compatibility
827
+ - **ESLint Configuration**: Renamed `.eslintrc.js` to `.eslintrc.cjs` for ES module projects
828
+
829
+ ## [1.1.9] - 2025-09-10
830
+
831
+ ### Fixed
832
+ - **MCP Protocol Compatibility**: Created dedicated `mcp-server.js` binary for guaranteed MCP protocol compatibility
833
+ - **Build Errors**: Fixed 100+ TypeScript compilation errors preventing package builds
834
+ - **ES Module Issues**: Fixed "require is not defined in ES module scope" error when running via npx
835
+ - **Dependency Injection**: Resolved "No matching bindings found" errors in DI container
836
+ - **Type System**: Fixed type imports vs value imports for enums and interfaces
837
+ - **Console Output**: Properly silenced console output in MCP mode to prevent JSON-RPC interference
838
+
839
+ ### Added
840
+ - **Dual-Mode Server**: Main server supports both standalone and MCP modes automatically
841
+ - **Simplified MCP Server**: Dedicated lightweight MCP implementation for better reliability
842
+ - **Enhanced Documentation**: Updated README with Claude Code integration instructions
843
+ - **Troubleshooting Guide**: Added common issues and solutions section
844
+
845
+ ### Changed
846
+ - **Binary Configuration**: `sdd-mcp-server` command now uses dedicated MCP binary
847
+ - **Package Structure**: Added `mcp-server.js` to published files
848
+ - **Error Handling**: Improved error reporting and logging in both modes
849
+ - **Version Detection**: Enhanced MCP mode detection logic for various execution environments
850
+
851
+ ## [1.1.7] - 2025-09-10
852
+
853
+ ### Fixed
854
+ - **TypeScript Compilation**: Fixed type import/export issues
855
+ - **Dependency Injection**: Removed problematic optional constructor parameters
856
+ - **ES Module Support**: Fixed module resolution and execution
857
+
858
+ ## [1.1.6] - 2025-09-10
859
+
860
+ ### Fixed
861
+ - **Build System**: Resolved TypeScript compilation errors
862
+ - **Module Imports**: Fixed ES module import statements
863
+
864
+ ## [1.1.2] - 2025-09-10
865
+
866
+ ### Fixed
867
+ - **Initial Build Issues**: Resolved basic TypeScript compilation errors
868
+
869
+ ## [1.1.0] - 2025-09-10
870
+
871
+ ### Added
872
+ - **Initial MCP Server**: Basic Model Context Protocol server implementation
873
+ - **SDD Workflow**: 5-phase spec-driven development workflow
874
+ - **Plugin System**: Extensible architecture for custom workflows
875
+ - **Quality Analysis**: Linus-style code review system
876
+ - **Multi-language Support**: 10 languages with cultural adaptation
877
+ - **Template Engine**: Handlebars-based file generation
878
+
879
+ ### Features
880
+ - **MCP Tools**: sdd-init, sdd-status, sdd-requirements, sdd-design, sdd-tasks, etc.
881
+ - **Project Management**: .kiro directory structure for SDD projects
882
+ - **Context Persistence**: Project memory and state management
883
+ - **Docker Support**: Secure distroless container images
884
+ - **Security Hardening**: Non-root user, read-only filesystem, dropped capabilities