specky-sdd 2.0.0 β†’ 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/README.md +803 -88
  3. package/SECURITY.md +110 -0
  4. package/dist/config.d.ts +12 -0
  5. package/dist/config.d.ts.map +1 -0
  6. package/dist/config.js +66 -0
  7. package/dist/config.js.map +1 -0
  8. package/dist/constants.d.ts +100 -1
  9. package/dist/constants.d.ts.map +1 -1
  10. package/dist/constants.js +112 -1
  11. package/dist/constants.js.map +1 -1
  12. package/dist/index.js +17 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/schemas/environment.d.ts +12 -37
  15. package/dist/schemas/environment.d.ts.map +1 -1
  16. package/dist/schemas/infrastructure.d.ts +22 -42
  17. package/dist/schemas/infrastructure.d.ts.map +1 -1
  18. package/dist/schemas/input.d.ts +13 -34
  19. package/dist/schemas/input.d.ts.map +1 -1
  20. package/dist/schemas/integration.d.ts +12 -80
  21. package/dist/schemas/integration.d.ts.map +1 -1
  22. package/dist/schemas/pipeline.d.ts +24 -230
  23. package/dist/schemas/pipeline.d.ts.map +1 -1
  24. package/dist/schemas/quality.d.ts +27 -39
  25. package/dist/schemas/quality.d.ts.map +1 -1
  26. package/dist/schemas/quality.js +13 -0
  27. package/dist/schemas/quality.js.map +1 -1
  28. package/dist/schemas/testing.d.ts +23 -0
  29. package/dist/schemas/testing.d.ts.map +1 -0
  30. package/dist/schemas/testing.js +26 -0
  31. package/dist/schemas/testing.js.map +1 -0
  32. package/dist/schemas/transcript.d.ts +18 -40
  33. package/dist/schemas/transcript.d.ts.map +1 -1
  34. package/dist/schemas/utility.d.ts +33 -65
  35. package/dist/schemas/utility.d.ts.map +1 -1
  36. package/dist/schemas/visualization.d.ts +28 -39
  37. package/dist/schemas/visualization.d.ts.map +1 -1
  38. package/dist/services/test-generator.d.ts +61 -0
  39. package/dist/services/test-generator.d.ts.map +1 -0
  40. package/dist/services/test-generator.js +217 -0
  41. package/dist/services/test-generator.js.map +1 -0
  42. package/dist/tools/input.d.ts.map +1 -1
  43. package/dist/tools/input.js +12 -0
  44. package/dist/tools/input.js.map +1 -1
  45. package/dist/tools/integration.d.ts.map +1 -1
  46. package/dist/tools/integration.js +24 -0
  47. package/dist/tools/integration.js.map +1 -1
  48. package/dist/tools/quality.d.ts +3 -2
  49. package/dist/tools/quality.d.ts.map +1 -1
  50. package/dist/tools/quality.js +84 -3
  51. package/dist/tools/quality.js.map +1 -1
  52. package/dist/tools/testing.d.ts +9 -0
  53. package/dist/tools/testing.d.ts.map +1 -0
  54. package/dist/tools/testing.js +130 -0
  55. package/dist/tools/testing.js.map +1 -0
  56. package/dist/tools/utility.d.ts.map +1 -1
  57. package/dist/tools/utility.js +36 -1
  58. package/dist/tools/utility.js.map +1 -1
  59. package/dist/types.d.ts +20 -0
  60. package/dist/types.d.ts.map +1 -1
  61. package/hooks/auto-docs.md +53 -0
  62. package/hooks/auto-test.md +61 -0
  63. package/hooks/changelog.md +74 -0
  64. package/hooks/security-scan.md +72 -0
  65. package/hooks/spec-sync.md +80 -0
  66. package/hooks/srp-validator.md +86 -0
  67. package/package.json +14 -5
  68. package/references/design-patterns.md +434 -0
  69. package/references/ears-notation.md +605 -0
  70. package/references/spec-templates.md +936 -0
  71. package/templates/analysis.md +1 -0
  72. package/templates/api-docs.md +1 -0
  73. package/templates/bugfix.md +1 -0
  74. package/templates/checklist.md +1 -0
  75. package/templates/compliance.md +1 -0
  76. package/templates/constitution.md +1 -0
  77. package/templates/cross-analysis.md +1 -0
  78. package/templates/data-model.md +1 -0
  79. package/templates/design.md +1 -0
  80. package/templates/devcontainer.md +1 -0
  81. package/templates/dockerfile.md +1 -0
  82. package/templates/onboarding.md +1 -0
  83. package/templates/research.md +1 -0
  84. package/templates/runbook.md +1 -0
  85. package/templates/specification.md +1 -0
  86. package/templates/sync-report.md +1 -0
  87. package/templates/tasks.md +3 -2
  88. package/templates/terraform.md +1 -0
  89. package/templates/test-stub.md +34 -0
  90. package/templates/user-stories.md +1 -0
  91. package/templates/verification.md +1 -0
  92. package/templates/work-items.md +1 -0
package/README.md CHANGED
@@ -1,41 +1,82 @@
1
1
  <div align="center">
2
2
  <h1>Specky</h1>
3
3
  <h3>The Complete Spec-Driven Development Platform</h3>
4
- <p><strong>42 MCP tools. 10-phase pipeline. Works in any IDE.</strong></p>
4
+ <p><strong>47 MCP tools. 10-phase pipeline. Works in any IDE.</strong></p>
5
5
 
6
6
  <p>
7
7
  <a href="https://www.npmjs.com/package/specky-sdd"><img src="https://img.shields.io/npm/v/specky-sdd" alt="npm"/></a>
8
+ <a href="https://github.com/paulasilvatech/specky/actions/workflows/ci.yml"><img src="https://github.com/paulasilvatech/specky/actions/workflows/ci.yml/badge.svg" alt="CI"/></a>
9
+ <a href="https://securityscorecards.dev/viewer/?uri=github.com/paulasilvatech/specky"><img src="https://api.securityscorecards.dev/projects/github.com/paulasilvatech/specky/badge" alt="OpenSSF Scorecard"/></a>
8
10
  <a href="https://github.com/paulasilvatech/specky"><img src="https://img.shields.io/github/stars/paulasilvatech/specky?style=social" alt="Stars"/></a>
9
11
  <a href="https://github.com/paulasilvatech/specky/blob/main/LICENSE"><img src="https://img.shields.io/github/license/paulasilvatech/specky" alt="License"/></a>
10
12
  </p>
11
13
  </div>
12
14
 
13
- ---
14
15
 
15
- ## What is Specky?
16
+ ## πŸ“‘ Table of Contents
16
17
 
17
- Specky is an open-source MCP (Model Context Protocol) server that transforms how software is built. It provides a complete, deterministic pipeline from any input -- meeting transcripts, documents, designs, or user prompts -- through specifications, architecture, infrastructure as code, implementation, and deployment.
18
+ | Section | Description |
19
+ |---------|-------------|
20
+ | [πŸ” What is Specky?](#-what-is-specky) | Overview and ecosystem |
21
+ | [🧠 Why Specifications Matter](#-why-specifications-matter-in-the-ai-era) | Vibe coding vs deterministic development |
22
+ | [πŸ“– GETTING-STARTED.md](GETTING-STARTED.md) | **Complete educational guide** (assumes no prior knowledge) |
23
+ | [πŸš€ Quick Start](#-quick-start) | Install via npm or Docker, connect to your IDE |
24
+ | [πŸ“ Where Specifications Live](#-where-specifications-live) | File structure and naming conventions |
25
+ | [πŸ“₯ Input Methods](#-input-methods--6-ways-to-start) | 6 ways to feed Specky |
26
+ | [πŸ—οΈ Three Project Types](#%EF%B8%8F-three-project-types--one-pipeline) | Greenfield, Brownfield, Modernization |
27
+ | [βš™οΈ Pipeline and LGTM Gates](#%EF%B8%8F-pipeline-and-lgtm-gates) | 10 phases with human review gates |
28
+ | [🧰 All 47 Tools](#-all-47-tools) | Complete tool reference by category |
29
+ | [πŸ›οΈ The SDD Platform](#%EF%B8%8F-the-spec-driven-development-platform) | Built on Spec-Kit, everything included |
30
+ | [πŸ“ EARS Notation](#-ears-notation) | The 6 requirement patterns |
31
+ | [πŸ›‘οΈ Compliance](#%EF%B8%8F-compliance-frameworks) | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 |
32
+ | [🏒 Enterprise Ready](#-enterprise-ready) | Security, audit trail, quality gates |
33
+ | [πŸ—ΊοΈ Roadmap](#%EF%B8%8F-roadmap) | v2.2 (current), v2.3, v3.0 plans |
18
34
 
19
- Unlike template-based tools, Specky enforces every step programmatically: a state machine blocks phase-skipping, an EARS validator ensures testable requirements, cross-artifact analysis catches drift, and compliance engines validate against frameworks like HIPAA and SOC2.
20
35
 
21
- **Specky works inside the tools you already use** -- VS Code with GitHub Copilot, Claude Code, Cursor, Windsurf, or any AI agent that supports MCP.
36
+ ## πŸ” What is Specky?
22
37
 
23
- ---
38
+ Specky is an open-source **MCP server** that turns the [Spec-Kit](https://github.com/paulasilvatech/spec-kit) SDD methodology into a **programmable enforcement engine** with 47 validated tools. It provides a deterministic pipeline from **any input** (meeting transcripts, documents, Figma designs, or natural language prompts) through specifications, architecture, infrastructure as code, implementation, and deployment.
24
39
 
25
- ## Why Specky?
40
+ **Spec-Kit** provides the methodology: EARS notation, gated pipeline phases, constitution model, quality patterns. **Specky** reimplements all of it as MCP tools and adds programmatic enforcement: a state machine that blocks phase-skipping, an EARS validator, cross-artifact analysis, compliance engines, test generation, and MCP-to-MCP routing.
26
41
 
27
- ### The Problem
42
+ **Install Specky and you get both.** The Spec-Kit methodology is already built in. It works inside any AI IDE that supports MCP, via `.github/agents/` or `.claude/commands/`, and natively in Cursor, Windsurf, or any MCP-compatible client. See how they [complement each other](#%EF%B8%8F-the-spec-driven-development-platform).
28
43
 
29
- AI coding assistants are fast but chaotic. They skip requirements, ignore architecture, and produce code that drifts from the original intent. Template-based approaches help but rely on the AI to follow instructions -- with no programmatic enforcement.
30
44
 
31
- ### The Solution
45
+ ## 🧠 Why Specifications Matter in the AI Era
46
+
47
+ <p align="center">
48
+ <img src="media/why-specifications-matter.svg" alt="Why Specifications Matter, From Vibe Coding to Deterministic Development" width="100%"/>
49
+ </p>
50
+
51
+ ### The Problem: Vibe Coding
52
+
53
+ AI coding assistants are fast but chaotic. You say *"build me a login system"* and the AI generates code immediately, skipping requirements, guessing architecture, and producing something that works but doesn't match what anyone actually needed. This is **vibe coding**: generating code based on vibes instead of validated specifications.
54
+
55
+ The result? Teams spend 40% of their time on rework because requirements were never written down, acceptance criteria were never defined, and there's no way to verify the code matches the original intent.
56
+
57
+ ### The Solution: Deterministic Development
58
+
59
+ **Specifications** are structured documents that describe *what the system must do* before anyone writes code. They've existed for decades in engineering, but AI development mostly ignores them. Specky brings them back, with AI enforcement.
60
+
61
+ **Key concepts you should know:**
62
+
63
+ | Concept | What it is | Why it matters |
64
+ |---------|-----------|----------------|
65
+ | πŸ“ **Markdown** | The universal language that both humans and AI read fluently | All spec artifacts are `.md` files in your repo, versioned with Git |
66
+ | πŸ”Œ **MCP (Model Context Protocol)** | An open standard that lets AI assistants call external tools (like USB for AI) | Specky is an MCP server; any AI IDE can connect to it |
67
+ | πŸ“ **EARS Notation** | A method for writing requirements that forces precision with 6 patterns | Eliminates vague statements like "the system should be fast" |
68
+ | πŸ€– **Agents and Skills** | Specialized AI roles that invoke Specky tools with domain expertise | Defined in `.github/agents/` and `.claude/commands/` |
69
+
70
+ ### How Specky Enforces Determinism
32
71
 
33
72
  Specky adds a **deterministic engine** between your intent and your code:
34
73
 
35
- - **State Machine** -- 10 mandatory phases, no skipping. Init, Discover, Specify, Clarify, Design, Tasks, Analyze, Implement, Verify, Release.
36
- - **EARS Validator** -- Every requirement validated against 6 patterns (Ubiquitous, Event-driven, State-driven, Optional, Unwanted, Complex). No vague statements pass.
37
- - **Cross-Artifact Analysis** -- Automatic alignment checking between spec, design, and tasks. Orphaned requirements are flagged instantly.
38
- - **MCP-to-MCP Architecture** -- Specky outputs structured JSON that your AI client routes to GitHub, Azure DevOps, Jira, Terraform, Figma, and Docker MCP servers. No vendor lock-in.
74
+ - **State Machine**: 10 mandatory phases, no skipping. Init, Discover, Specify, Clarify, Design, Tasks, Analyze, Implement, Verify, Release.
75
+ - **EARS Validator**: Every requirement validated against 6 patterns. No vague statements pass.
76
+ - **Cross-Artifact Analysis**: Automatic alignment checking between spec, design, and tasks. Orphaned requirements are flagged instantly.
77
+ - **MCP-to-MCP Architecture**: Specky outputs structured JSON that your AI client routes to GitHub, Azure DevOps, Jira, Terraform, Figma, and Docker MCP servers. No vendor lock-in.
78
+
79
+ > **The AI is the operator; Specky is the engine.** The AI's creativity is channeled through a validated pipeline instead of producing unstructured guesswork. For a complete educational walkthrough, see [GETTING-STARTED.md](GETTING-STARTED.md).
39
80
 
40
81
  ### Differentiators
41
82
 
@@ -63,28 +104,90 @@ Specky adds a **deterministic engine** between your intent and your code:
63
104
  | Phantom task detection | Extension | No | No | **Yes** |
64
105
  | Complete auto-documentation | No | No | No | **Yes** |
65
106
  | Educative outputs | No | No | No | **Yes** |
66
- | 42 MCP tools | N/A | N/A | N/A | **Yes** |
107
+ | 47 MCP tools | N/A | N/A | N/A | **Yes** |
67
108
  | Works in ANY IDE via MCP | Templates | IDE-locked | IDE-locked | **Yes** |
68
109
 
69
110
  </details>
70
111
 
71
- ---
72
112
 
73
- ## Quick Start
113
+ ## πŸš€ Quick Start
74
114
 
75
- ### Install
115
+ ### Prerequisites
116
+
117
+ - **Node.js 18+**: [Download here](https://nodejs.org/)
118
+ - **An AI IDE or client**: VS Code with Copilot, Claude Code, Claude Desktop, Cursor, or Windsurf
119
+
120
+ ### Option 1: npm (Recommended)
121
+
122
+ No installation needed. `npx` downloads and runs Specky on demand:
76
123
 
77
124
  ```bash
78
- # npm (recommended)
79
125
  npx specky-sdd
126
+ ```
127
+
128
+ Or install globally for faster startup:
80
129
 
81
- # Or install globally
130
+ ```bash
82
131
  npm install -g specky-sdd
132
+ specky-sdd
133
+ ```
134
+
135
+ ### Option 2: Docker
136
+
137
+ Run Specky as an HTTP server in a container, no Node.js required on the host:
138
+
139
+ ```bash
140
+ # Pull and run (mounts your project into /workspace)
141
+ docker run -p 3200:3200 -v $(pwd):/workspace ghcr.io/paulasilvatech/specky:latest
83
142
  ```
84
143
 
85
- ### Configure in VS Code (GitHub Copilot)
144
+ Or use Docker Compose for a persistent setup:
86
145
 
87
- Create `.vscode/mcp.json` in your project:
146
+ ```bash
147
+ # Create a workspace directory and start
148
+ mkdir -p workspace
149
+ docker compose up -d
150
+
151
+ # Check health
152
+ curl http://localhost:3200/health
153
+ # β†’ {"status":"ok","version":"2.2.0"}
154
+
155
+ # View logs
156
+ docker compose logs -f specky
157
+
158
+ # Stop
159
+ docker compose down
160
+ ```
161
+
162
+ <details>
163
+ <summary>Build from source with Docker</summary>
164
+
165
+ ```bash
166
+ git clone https://github.com/paulasilvatech/specky.git
167
+ cd specky
168
+
169
+ # Build the image locally
170
+ docker build -t specky-sdd:local .
171
+
172
+ # Run it
173
+ docker run -p 3200:3200 -v $(pwd):/workspace specky-sdd:local
174
+
175
+ # Or with docker compose
176
+ docker compose up -d --build
177
+ ```
178
+
179
+ </details>
180
+
181
+ > **stdio vs HTTP:** When run via `npx`, Specky uses stdio (direct pipe to the AI client). When run in Docker, it uses HTTP mode on port 3200. Both modes expose the same 47 MCP tools.
182
+
183
+ ### Connect to Your AI IDE
184
+
185
+ Once Specky is running, connect it to your preferred AI tool:
186
+
187
+ <details>
188
+ <summary><strong>VS Code with GitHub Copilot</strong></summary>
189
+
190
+ Create `.vscode/mcp.json` in your project root:
88
191
 
89
192
  ```json
90
193
  {
@@ -100,9 +203,14 @@ Create `.vscode/mcp.json` in your project:
100
203
  }
101
204
  ```
102
205
 
103
- Open Copilot Chat -- Specky's 42 tools are now available.
206
+ Open Copilot Chat. Specky's 47 tools are now available. Type `@specky` to scope your prompts.
207
+
208
+ </details>
209
+
210
+ <details>
211
+ <summary><strong>Claude Code</strong></summary>
104
212
 
105
- ### Configure in Claude Code
213
+ One command:
106
214
 
107
215
  ```bash
108
216
  claude mcp add specky -- npx -y specky-sdd
@@ -124,9 +232,12 @@ Or add to your MCP settings manually:
124
232
  }
125
233
  ```
126
234
 
127
- ### Configure in Claude Desktop
235
+ </details>
128
236
 
129
- Add to `claude_desktop_config.json`:
237
+ <details>
238
+ <summary><strong>Claude Desktop</strong></summary>
239
+
240
+ Add to your `claude_desktop_config.json`:
130
241
 
131
242
  | OS | Config File Location |
132
243
  |----|---------------------|
@@ -148,7 +259,10 @@ Add to `claude_desktop_config.json`:
148
259
  }
149
260
  ```
150
261
 
151
- ### Configure in Cursor
262
+ </details>
263
+
264
+ <details>
265
+ <summary><strong>Cursor</strong></summary>
152
266
 
153
267
  Add to Cursor's MCP settings (Settings > MCP Servers):
154
268
 
@@ -161,40 +275,505 @@ Add to Cursor's MCP settings (Settings > MCP Servers):
161
275
  }
162
276
  ```
163
277
 
164
- ### Docker
278
+ </details>
279
+
280
+ <details>
281
+ <summary><strong>Docker (HTTP mode), for any MCP client</strong></summary>
282
+
283
+ If your AI client supports HTTP-based MCP servers, point it to:
284
+
285
+ ```
286
+ http://localhost:3200/mcp
287
+ ```
288
+
289
+ Start the container first:
165
290
 
166
291
  ```bash
167
- docker run -v $(pwd):/workspace ghcr.io/paulasilvatech/specky:latest
292
+ docker compose up -d
293
+ ```
294
+
295
+ </details>
296
+
297
+ ### βœ… Try It Now
298
+
299
+ Once connected, type this in your AI chat to see Specky in action:
300
+
301
+ ```
302
+ > Initialize a Specky project for a todo API and help me define the scope
303
+ ```
304
+
305
+ Specky creates the project structure and asks you 7 discovery questions. From here, follow the guide for your project type:
306
+
307
+ | Your situation | Guide |
308
+ |---------------|-------|
309
+ | 🌱 Building something new | [Greenfield](#-greenfield-project-start-from-scratch) |
310
+ | πŸ”§ Adding features to existing code | [Brownfield](#-brownfield-project-add-features-to-existing-code) |
311
+ | πŸ”„ Upgrading a legacy system | [Modernization](#-modernization-project-assess-and-upgrade-legacy-systems) |
312
+
313
+ > πŸ’‘ **New to Spec-Driven Development?** Specky already includes all the SDD methodology from [Spec-Kit](https://github.com/paulasilvatech/spec-kit). Just install Specky and the pipeline guides you through every phase with [educative outputs](#-educative-outputs) that explain the concepts as you work.
314
+
315
+
316
+ ## πŸ“ Where Specifications Live
317
+
318
+ Every feature gets its own numbered directory inside `.specs/`. This keeps specifications, design documents, and quality reports together as a self-contained package.
319
+
320
+ ```
321
+ your-project/
322
+ β”œβ”€β”€ src/ ← Your application code
323
+ β”œβ”€β”€ .specs/ ← All Specky specifications
324
+ β”‚ β”œβ”€β”€ 001-user-authentication/ ← Feature #1
325
+ β”‚ β”‚ β”œβ”€β”€ CONSTITUTION.md ← Project principles and governance
326
+ β”‚ β”‚ β”œβ”€β”€ SPECIFICATION.md ← EARS requirements with acceptance criteria
327
+ β”‚ β”‚ β”œβ”€β”€ DESIGN.md ← Architecture, data model, API contracts
328
+ β”‚ β”‚ β”œβ”€β”€ RESEARCH.md ← Resolved unknowns and technical decisions
329
+ β”‚ β”‚ β”œβ”€β”€ TASKS.md ← Implementation breakdown with dependencies
330
+ β”‚ β”‚ β”œβ”€β”€ ANALYSIS.md ← Quality gate report
331
+ β”‚ β”‚ β”œβ”€β”€ CHECKLIST.md ← Domain-specific quality checklist
332
+ β”‚ β”‚ β”œβ”€β”€ CROSS_ANALYSIS.md ← Spec-design-tasks alignment score
333
+ β”‚ β”‚ β”œβ”€β”€ COMPLIANCE.md ← Regulatory framework validation
334
+ β”‚ β”‚ β”œβ”€β”€ VERIFICATION.md ← Drift and phantom task detection
335
+ β”‚ β”‚ └── .sdd-state.json ← Pipeline state (current phase, history)
336
+ β”‚ β”œβ”€β”€ 002-payment-gateway/ ← Feature #2
337
+ β”‚ └── 003-notification-system/ ← Feature #3
338
+ β”œβ”€β”€ reports/ ← Cross-feature analysis reports
339
+ └── .specky/config.yml ← Optional project-level configuration
168
340
  ```
169
341
 
170
- ---
342
+ **Naming convention:** `NNN-feature-name`, zero-padded number + kebab-case name. Each directory is independent; you can work on multiple features simultaneously.
343
+
171
344
 
172
- ## The 10-Phase Pipeline
345
+ ## πŸ“₯ Input Methods: 6 Ways to Start
173
346
 
174
347
  <p align="center">
175
- <img src="media/pipeline-10-phases.svg" alt="Specky 10-Phase Pipeline" width="100%"/>
348
+ <img src="media/input-methods.svg" alt="Specky 6 Input Methods" width="100%"/>
349
+ </p>
350
+
351
+ Specky accepts multiple input types. Choose the one that matches your starting point:
352
+
353
+ ### 1. Natural Language Prompt (simplest)
354
+
355
+ Type your idea directly into the AI chat. No files needed.
356
+
357
+ ```
358
+ > I need a feature for user authentication with email/password login,
359
+ password reset via email, and JWT session management
360
+ ```
361
+
362
+ The AI calls `sdd_init` + `sdd_discover` to structure your idea into a spec project.
363
+
364
+ **Best for:** Quick prototyping, brainstorming, greenfield projects.
365
+
366
+ ### 2. Meeting Transcript (VTT / SRT / TXT / MD)
367
+
368
+ Import a transcript from Teams, Zoom, or Google Meet. Specky extracts topics, decisions, action items, and requirements automatically.
369
+
370
+ ```
371
+ > Import the requirements meeting transcript and create a specification
372
+ ```
373
+
374
+ The AI calls `sdd_import_transcript` β†’ extracts:
375
+ - Participants and speakers
376
+ - Topics discussed with summaries
377
+ - Decisions made
378
+ - Action items
379
+ - Raw requirement statements
380
+ - Constraints mentioned
381
+ - Open questions
382
+
383
+ **Supported formats:** `.vtt` (WebVTT), `.srt` (SubRip), `.txt`, `.md`
384
+
385
+ **Pro tip:** Use `sdd_auto_pipeline` to go from transcript to complete spec in one step:
386
+
387
+ ```
388
+ > Run the auto pipeline from this meeting transcript: /path/to/meeting.vtt
389
+ ```
390
+
391
+ **Got multiple transcripts?** Use batch processing:
392
+
393
+ ```
394
+ > Batch import all transcripts from the meetings/ folder
395
+ ```
396
+
397
+ The AI calls `sdd_batch_transcripts` β†’ processes every `.vtt`, `.srt`, `.txt`, and `.md` file in the folder.
398
+
399
+ ### 3. Existing Documents (PDF / DOCX / PPTX)
400
+
401
+ Import requirements documents, RFPs, architecture decks, or any existing documentation.
402
+
403
+ ```
404
+ > Import this requirements document and create a specification:
405
+ /path/to/requirements.pdf
406
+ ```
407
+
408
+ The AI calls `sdd_import_document` β†’ converts to Markdown, extracts sections, and feeds into the spec pipeline.
409
+
410
+ **Supported formats:** `.pdf`, `.docx`, `.pptx`, `.txt`, `.md`
411
+
412
+ **Batch import from a folder:**
413
+
414
+ ```
415
+ > Import all documents from the docs/ folder into specs
416
+ ```
417
+
418
+ The AI calls `sdd_batch_import` β†’ processes every supported file in the directory.
419
+
420
+ > **Tip:** For best results with PDF/DOCX, install the optional `mammoth` and `pdfjs-dist` packages for enhanced formatting, table extraction, and image handling.
421
+
422
+ ### 4. Figma Design (design-to-spec)
423
+
424
+ Convert Figma designs into requirements specifications. Works with the Figma MCP server.
425
+
426
+ ```
427
+ > Convert this Figma design into a specification:
428
+ https://figma.com/design/abc123/my-app
429
+ ```
430
+
431
+ The AI calls `sdd_figma_to_spec` β†’ extracts components, layouts, and interactions, then routes to the Figma MCP server for design context.
432
+
433
+ **Best for:** Design-first workflows, UI-driven projects.
434
+
435
+ ### 5. Codebase Scan (brownfield / modernization)
436
+
437
+ Scan an existing codebase to detect tech stack, frameworks, structure, and patterns before writing specs.
438
+
439
+ ```
440
+ > Scan this codebase and tell me what we're working with
441
+ ```
442
+
443
+ The AI calls `sdd_scan_codebase` β†’ detects:
444
+
445
+ | Detected | Examples |
446
+ |----------|---------|
447
+ | Language | TypeScript, Python, Go, Rust, Java |
448
+ | Framework | Next.js, Express, React, Django, FastAPI, Gin |
449
+ | Package Manager | npm, pip, poetry, cargo, maven, gradle |
450
+ | Runtime | Node.js, Python, Go, JVM |
451
+ | Directory Tree | Full project structure with file counts |
452
+
453
+ **Best for:** Understanding an existing project before adding features or modernizing.
454
+
455
+ ### 6. Raw Text (paste anything)
456
+
457
+ No file? Just paste the content directly. Every import tool accepts a `raw_text` parameter as an alternative to a file path.
458
+
459
+ ```
460
+ > Here's the raw requirements from the client email:
461
+
462
+ The system needs to handle 10,000 concurrent users...
463
+ Authentication must support SSO via Azure AD...
464
+ All data must be encrypted at rest and in transit...
465
+
466
+ Import this and create a specification.
467
+ ```
468
+
469
+
470
+ ## πŸ—οΈ Three Project Types: One Pipeline
471
+
472
+ <p align="center">
473
+ <img src="media/project-workflows.svg" alt="Greenfield, Brownfield, and Modernization Workflows" width="100%"/>
474
+ </p>
475
+
476
+ Specky adapts to any project type. The pipeline is the same; the **starting point** is what changes.
477
+
478
+
479
+ ## 🌱 Greenfield Project: Start from Scratch
480
+
481
+ **Scenario:** You're building a new application with no existing code.
482
+
483
+ ### Step 1: Initialize and discover
484
+
485
+ ```
486
+ > I'm building a task management API. Initialize a Specky project and help
487
+ me define the scope.
488
+ ```
489
+
490
+ The AI calls `sdd_init` β†’ creates `.specs/001-task-management/CONSTITUTION.md`
491
+ Then calls `sdd_discover` β†’ asks you **7 structured questions**:
492
+
493
+ 1. **Scope**: What problem does this solve? What are the boundaries of v1?
494
+ 2. **Users**: Who are the primary users? What are their skill levels?
495
+ 3. **Constraints**: Language, framework, hosting, budget, timeline?
496
+ 4. **Integrations**: What external systems, APIs, or services?
497
+ 5. **Performance**: Expected load, concurrent users, response times?
498
+ 6. **Security**: Authentication, authorization, compliance requirements?
499
+ 7. **Deployment**: CI/CD, monitoring, rollback strategy?
500
+
501
+ Answer each question. Your answers feed directly into the specification.
502
+
503
+ ### Step 2: Write the specification
504
+
505
+ ```
506
+ > Write the specification based on my discovery answers
507
+ ```
508
+
509
+ The AI calls `sdd_write_spec` β†’ creates `SPECIFICATION.md` with EARS requirements:
510
+
511
+ ```markdown
512
+ ## Requirements
513
+
514
+ REQ-001 [Ubiquitous]: The system shall provide a REST API for task CRUD operations.
515
+
516
+ REQ-002 [Event-driven]: When a user creates a task, the system shall assign
517
+ a unique identifier and return it in the response.
518
+
519
+ REQ-003 [State-driven]: While a task is in "in-progress" state, the system
520
+ shall prevent deletion without explicit force confirmation.
521
+
522
+ REQ-004 [Unwanted]: If the API receives a malformed request body, then the
523
+ system shall return a 400 status with a descriptive error message.
524
+ ```
525
+
526
+ **The AI pauses here.** Review `.specs/001-task-management/SPECIFICATION.md` and reply **LGTM** when satisfied.
527
+
528
+ ### Step 3: Design the architecture
529
+
530
+ ```
531
+ > LGTM.proceed to design
532
+ ```
533
+
534
+ The AI calls `sdd_write_design` β†’ creates `DESIGN.md` with:
535
+ - System architecture diagram (Mermaid)
536
+ - Data model / ER diagram
537
+ - API contracts with endpoints, request/response schemas
538
+ - Sequence diagrams for key flows
539
+ - Technology decisions with rationale
540
+
541
+ Review and reply **LGTM**.
542
+
543
+ ### Step 4: Break into tasks
544
+
545
+ ```
546
+ > LGTM.create the task breakdown
547
+ ```
548
+
549
+ The AI calls `sdd_write_tasks` β†’ creates `TASKS.md` with implementation tasks mapped to acceptance criteria, dependencies, and estimated complexity.
550
+
551
+ ### Step 5: Quality gates
552
+
553
+ ```
554
+ > Run analysis, compliance check for SOC2, and generate all diagrams
555
+ ```
556
+
557
+ The AI calls:
558
+ - `sdd_run_analysis` β†’ completeness audit, orphaned criteria detection
559
+ - `sdd_compliance_check` β†’ SOC2 controls validation
560
+ - `sdd_generate_all_diagrams` β†’ architecture, sequence, ER, flow, dependency, traceability diagrams
561
+
562
+ ### Step 6: Generate infrastructure and tests
563
+
564
+ ```
565
+ > Generate Terraform for Azure, a Dockerfile, and test stubs for vitest
566
+ ```
567
+
568
+ The AI calls:
569
+ - `sdd_generate_iac` β†’ Terraform configuration
570
+ - `sdd_generate_dockerfile` β†’ Dockerfile + docker-compose
571
+ - `sdd_generate_tests` β†’ Test stubs with acceptance criteria mapped to test cases
572
+
573
+ ### Step 7: Export and ship
574
+
575
+ ```
576
+ > Export tasks to GitHub Issues and create a PR
577
+ ```
578
+
579
+ The AI calls `sdd_export_work_items` + `sdd_create_pr` β†’ generates work item payloads and PR body with full spec traceability.
580
+
581
+ > πŸ‘‰ **Next:** Learn about [EARS notation](#ears-notation) to understand the requirement patterns, or see [all 47 tools](#all-47-tools) for a complete reference.
582
+
583
+
584
+ ## πŸ”§ Brownfield Project: Add Features to Existing Code
585
+
586
+ **Scenario:** You have a running application and need to add a new feature with proper specifications.
587
+
588
+ ### Step 1: Scan the codebase first
589
+
590
+ ```
591
+ > Scan this codebase so Specky understands what we're working with
592
+ ```
593
+
594
+ The AI calls `sdd_scan_codebase` β†’ detects tech stack, framework, directory structure. This context informs all subsequent tools.
595
+
596
+ ```
597
+ Detected: TypeScript + Next.js + npm + Node.js
598
+ Files: 247 across 32 directories
599
+ ```
600
+
601
+ ### Step 2: Initialize with codebase context
602
+
603
+ ```
604
+ > Initialize a feature for adding real-time notifications to this Next.js app.
605
+ Use the codebase scan results as context.
606
+ ```
607
+
608
+ The AI calls `sdd_init` β†’ creates `.specs/001-real-time-notifications/CONSTITUTION.md`
609
+ Then calls `sdd_discover` with the codebase summary β†’ the 7 discovery questions now include context about your existing tech stack:
610
+
611
+ > *"What technical constraints exist? **Note: This project already uses TypeScript, Next.js, npm, Node.js.** Consider compatibility with the existing stack."*
612
+
613
+ ### Step 3: Import existing documentation
614
+
615
+ If you have existing PRDs, architecture docs, or meeting notes:
616
+
617
+ ```
618
+ > Import the PRD for notifications: /docs/notifications-prd.pdf
619
+ ```
620
+
621
+ The AI calls `sdd_import_document` β†’ converts to Markdown and adds to the spec directory. The content is used as input when writing the specification.
622
+
623
+ ### Step 4: Write spec with codebase awareness
624
+
625
+ ```
626
+ > Write the specification for real-time notifications. Consider the existing
627
+ Next.js architecture and any patterns already in the codebase.
628
+ ```
629
+
630
+ The specification references existing components, APIs, and patterns from the codebase scan.
631
+
632
+ ### Step 5: Check for drift
633
+
634
+ After implementation, verify specs match the code:
635
+
636
+ ```
637
+ > Check if the implementation matches the specification
638
+ ```
639
+
640
+ The AI calls `sdd_check_sync` β†’ generates a drift report flagging any divergence between spec and code.
641
+
642
+ ### Step 6: Cross-feature analysis
643
+
644
+ If you have multiple features specified:
645
+
646
+ ```
647
+ > Run cross-analysis across all features to find conflicts
648
+ ```
649
+
650
+ The AI calls `sdd_cross_analyze` β†’ checks for contradictions, shared dependencies, and consistency issues across `.specs/001-*`, `.specs/002-*`, etc.
651
+
652
+ > πŸ‘‰ **Next:** See [compliance frameworks](#compliance-frameworks) for regulatory validation, or [MCP integration](#mcp-integration-architecture) for routing to external tools.
653
+
654
+
655
+ ## πŸ”„ Modernization Project: Assess and Upgrade Legacy Systems
656
+
657
+ **Scenario:** You have a legacy system that needs assessment, documentation, and incremental modernization.
658
+
659
+ ### Step 1: Scan and document the current state
660
+
661
+ ```
662
+ > Scan this legacy codebase and help me understand what we have
663
+ ```
664
+
665
+ The AI calls `sdd_scan_codebase` β†’ maps the technology stack, directory tree, and file counts.
666
+
667
+ ### Step 2: Import all existing documentation
668
+
669
+ Gather everything you have.architecture documents, runbooks, meeting notes about the system:
670
+
671
+ ```
672
+ > Batch import all documents from /docs/legacy-system/ into specs
673
+ ```
674
+
675
+ The AI calls `sdd_batch_import` β†’ processes PDFs, DOCX, PPTX, and text files. Each becomes a Markdown reference in the spec directory.
676
+
677
+ ### Step 3: Import stakeholder meetings
678
+
679
+ If you have recorded meetings with stakeholders discussing the modernization:
680
+
681
+ ```
682
+ > Batch import all meeting transcripts from /recordings/
683
+ ```
684
+
685
+ The AI calls `sdd_batch_transcripts` β†’ extracts decisions, requirements, constraints, and open questions from every transcript.
686
+
687
+ ### Step 4: Create the modernization specification
688
+
689
+ ```
690
+ > Write a specification for modernizing the authentication module.
691
+ Consider the legacy constraints from the imported documents and
692
+ meeting transcripts.
693
+ ```
694
+
695
+ The specification accounts for:
696
+ - Current system behavior (from codebase scan)
697
+ - Existing documentation (from imported docs)
698
+ - Stakeholder decisions (from meeting transcripts)
699
+ - Migration constraints and backward compatibility
700
+
701
+ ### Step 5: Compliance assessment
702
+
703
+ Legacy systems often need compliance validation during modernization:
704
+
705
+ ```
706
+ > Run compliance checks against HIPAA and SOC2 for the modernized auth module
707
+ ```
708
+
709
+ The AI calls `sdd_compliance_check` β†’ validates the specification against regulatory controls and flags gaps.
710
+
711
+ ### Step 6: Generate migration artifacts
712
+
713
+ ```
714
+ > Generate the implementation plan, Terraform for the new infrastructure,
715
+ and a runbook for the migration
716
+ ```
717
+
718
+ The AI calls:
719
+ - `sdd_implement` β†’ phased implementation plan with checkpoints
720
+ - `sdd_generate_iac` β†’ infrastructure configuration for the target environment
721
+ - `sdd_generate_runbook` β†’ operational runbook with rollback procedures
722
+
723
+ ### Step 7: Generate onboarding for the team
724
+
725
+ ```
726
+ > Generate an onboarding guide for developers joining the modernization project
727
+ ```
728
+
729
+ The AI calls `sdd_generate_onboarding` β†’ creates a guide covering architecture decisions, codebase navigation, development workflow, and testing strategy.
730
+
731
+ > πŸ‘‰ **Next:** See [compliance frameworks](#compliance-frameworks) for regulatory validation during modernization, or [project configuration](#project-configuration) to customize Specky for your team.
732
+
733
+
734
+ ## βš™οΈ Pipeline and LGTM Gates
735
+
736
+ <p align="center">
737
+ <img src="media/pipeline-lgtm-gates.svg" alt="Pipeline with LGTM Quality Gates" width="100%"/>
176
738
  </p>
177
739
 
178
- Each phase is **mandatory**. The state machine blocks advancement until prerequisites are met.
740
+ Every Specky project follows the same 10-phase pipeline. The state machine **blocks phase-skipping**. You cannot jump from Init to Design without completing Specify first.
741
+
742
+ **LGTM gates:** After each major phase (Specify, Design, Tasks), the AI pauses and asks you to review. Reply **LGTM** to proceed. This ensures human oversight at every quality gate.
743
+
744
+ **Feedback loop:** If `sdd_verify_tasks` detects drift between specification and implementation, Specky routes you back to the Specify phase to correct the divergence before proceeding.
745
+
746
+ **Advancing phases:** If you need to manually advance:
747
+
748
+ ```
749
+ > Advance to the next phase
750
+ ```
751
+
752
+ The AI calls `sdd_advance_phase` β†’ moves the pipeline forward if all prerequisites are met.
753
+
754
+ <p align="center">
755
+ <img src="media/pipeline-10-phases.svg" alt="Specky 10-Phase Pipeline" width="100%"/>
756
+ </p>
179
757
 
180
758
  | Phase | What Happens | Required Output |
181
759
  |-------|-------------|----------------|
182
760
  | **Init** | Create project structure, constitution, scan codebase | CONSTITUTION.md |
183
761
  | **Discover** | Interactive discovery: 7 structured questions about scope, users, constraints | Discovery answers |
184
- | **Specify** | Write EARS requirements with acceptance criteria | SPECIFICATION.md |
762
+ | **Specify** | Write [EARS requirements](#ears-notation) with acceptance criteria | SPECIFICATION.md |
185
763
  | **Clarify** | Resolve ambiguities, generate decision tree | Updated SPECIFICATION.md |
186
764
  | **Design** | Architecture, data model, API contracts, research unknowns | DESIGN.md, RESEARCH.md |
187
765
  | **Tasks** | Implementation breakdown by user story, dependency graph | TASKS.md |
188
- | **Analyze** | Cross-artifact analysis, quality checklist, compliance check | ANALYSIS.md, CHECKLIST.md, CROSS_ANALYSIS.md |
766
+ | **Analyze** | Cross-artifact analysis, quality checklist, [compliance check](#compliance-frameworks) | ANALYSIS.md, CHECKLIST.md, CROSS_ANALYSIS.md |
189
767
  | **Implement** | Ordered execution with checkpoints per user story | Implementation progress |
190
768
  | **Verify** | Drift detection, phantom task detection | VERIFICATION.md |
191
769
  | **Release** | PR generation, work item export, documentation | Complete package |
192
770
 
193
- ---
771
+ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live). See [Input Methods](#input-methods--6-ways-to-start) for how to feed data into the pipeline.
772
+
194
773
 
195
- ## All 42 Tools
774
+ ## 🧰 All 47 Tools
196
775
 
197
- ### Input and Conversion (5)
776
+ ### πŸ“₯ Input and Conversion (5)
198
777
 
199
778
  | Tool | Description |
200
779
  |------|-------------|
@@ -204,7 +783,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
204
783
  | `sdd_batch_import` | Process folder of mixed documents |
205
784
  | `sdd_figma_to_spec` | Figma design to requirements specification |
206
785
 
207
- ### Pipeline Core (8)
786
+ ### πŸ”„ Pipeline Core (8)
208
787
 
209
788
  | Tool | Description |
210
789
  |------|-------------|
@@ -217,7 +796,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
217
796
  | `sdd_run_analysis` | Quality gate analysis with coverage heatmap |
218
797
  | `sdd_advance_phase` | Move to next pipeline phase |
219
798
 
220
- ### Quality and Validation (5)
799
+ ### βœ… Quality and Validation (5)
221
800
 
222
801
  | Tool | Description |
223
802
  |------|-------------|
@@ -227,7 +806,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
227
806
  | `sdd_cross_analyze` | Spec-design-tasks alignment with consistency score |
228
807
  | `sdd_validate_ears` | Batch EARS requirement validation |
229
808
 
230
- ### Diagrams and Visualization (4)
809
+ ### πŸ“Š Diagrams and Visualization (4)
231
810
 
232
811
  | Tool | Description |
233
812
  |------|-------------|
@@ -236,7 +815,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
236
815
  | `sdd_generate_user_stories` | User stories with flow diagrams |
237
816
  | `sdd_figma_diagram` | FigJam-ready diagram via Figma MCP |
238
817
 
239
- ### Infrastructure as Code (3)
818
+ ### πŸ—οΈ Infrastructure as Code (3)
240
819
 
241
820
  | Tool | Description |
242
821
  |------|-------------|
@@ -244,7 +823,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
244
823
  | `sdd_validate_iac` | Validation via Terraform MCP + Azure MCP |
245
824
  | `sdd_generate_dockerfile` | Dockerfile + docker-compose from tech stack |
246
825
 
247
- ### Dev Environment (3)
826
+ ### πŸ’» Dev Environment (3)
248
827
 
249
828
  | Tool | Description |
250
829
  |------|-------------|
@@ -252,7 +831,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
252
831
  | `sdd_setup_codespaces` | GitHub Codespaces configuration |
253
832
  | `sdd_generate_devcontainer` | .devcontainer/devcontainer.json generation |
254
833
 
255
- ### Integration and Export (5)
834
+ ### πŸ”— Integration and Export (5)
256
835
 
257
836
  | Tool | Description |
258
837
  |------|-------------|
@@ -262,7 +841,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
262
841
  | `sdd_implement` | Ordered implementation plan with checkpoints |
263
842
  | `sdd_research` | Resolve unknowns in RESEARCH.md |
264
843
 
265
- ### Documentation (4)
844
+ ### πŸ“– Documentation (4)
266
845
 
267
846
  | Tool | Description |
268
847
  |------|-------------|
@@ -271,7 +850,7 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
271
850
  | `sdd_generate_runbook` | Operational runbook |
272
851
  | `sdd_generate_onboarding` | Developer onboarding guide |
273
852
 
274
- ### Utility (5)
853
+ ### πŸ”§ Utility (5)
275
854
 
276
855
  | Tool | Description |
277
856
  |------|-------------|
@@ -281,9 +860,71 @@ Each phase is **mandatory**. The state machine blocks advancement until prerequi
281
860
  | `sdd_metrics` | Project metrics dashboard |
282
861
  | `sdd_amend` | Amend project constitution |
283
862
 
284
- ---
863
+ ### πŸ§ͺ Testing (2)
864
+
865
+ | Tool | Description |
866
+ |------|-------------|
867
+ | `sdd_generate_tests` | Generate test stubs from acceptance criteria (vitest/jest/playwright/pytest/junit/xunit) |
868
+ | `sdd_verify_tests` | Verify test results against requirements, report traceability coverage |
285
869
 
286
- ## MCP Integration Architecture
870
+
871
+ ## πŸ›οΈ The Spec-Driven Development Platform
872
+
873
+ <p align="center">
874
+ <img src="media/specky-speckit-integration.svg" alt="How Spec-Kit and Specky Work Together in the GitHub + Microsoft Ecosystem" width="100%"/>
875
+ </p>
876
+
877
+ ### How Spec-Kit and Specky Complement Each Other
878
+
879
+ **[Spec-Kit](https://github.com/paulasilvatech/spec-kit)** is the open-source SDD methodology: EARS notation, gated pipeline phases, constitution model, 25+ specialized agents, and Markdown prompt templates. It defines **what** to do.
880
+
881
+ **Specky** is the MCP engine that reimplements that methodology as 47 enforceable tools with programmatic validation. It enforces **how** to do it.
882
+
883
+ | | Spec-Kit (Methodology) | Specky (Engine) |
884
+ |--|------------------------|-----------------|
885
+ | **What it is** | Prompt templates + agent definitions | MCP server with 47 tools |
886
+ | **How it works** | AI reads `.md` templates and follows instructions | AI calls tools that validate, enforce, and generate |
887
+ | **Validation** | AI tries to follow the prompts | State machine, EARS regex, Zod schemas |
888
+ | **Install** | Copy `.github/agents/` and `.claude/commands/` | `npx specky-sdd` (includes methodology built-in) |
889
+ | **Works standalone** | Yes, in any AI IDE | Yes, includes all Spec-Kit patterns |
890
+ | **Best for** | Learning SDD, lightweight adoption | Production enforcement, enterprise, compliance |
891
+
892
+ ### Together: The Complete SDD Layer
893
+
894
+ When you install Specky, you get the full Spec-Kit methodology reimplemented as validated MCP tools. **No separate installation of Spec-Kit needed.** But Spec-Kit remains available as a standalone learning tool for teams that want to adopt SDD concepts before using the engine.
895
+
896
+ Together they form the **SDD layer** of the GitHub + Microsoft enterprise platform, competing with standalone approaches like Kiro (AWS), Cursor, and Windsurf.
897
+
898
+ > πŸ’‘ **Key insight from the [SDD Market Analysis 2026](https://paulanunes85.github.io/sdd-market-analysis-2026/)**: SDD workflow scores are at competitive parity (4:4 tie). The enterprise platform surrounding the SDD layer is the differentiator: security, governance, multi-model freedom, and compliance. GitHub + Microsoft scores 4.25/5.0 vs Kiro's 2.85/5.0.
899
+
900
+ ```json
901
+ {
902
+ "servers": {
903
+ "specky": {
904
+ "command": "npx",
905
+ "args": ["-y", "specky-sdd"]
906
+ }
907
+ }
908
+ }
909
+ ```
910
+
911
+
912
+ ## βš™οΈ Project Configuration
913
+
914
+ Create `.specky/config.yml` in your project root to customize Specky:
915
+
916
+ ```yaml
917
+ # .specky/config.yml
918
+ templates_path: ./my-templates # Override built-in templates
919
+ default_framework: vitest # Default test framework
920
+ compliance_frameworks: [hipaa, soc2] # Frameworks to check
921
+ audit_enabled: true # Enable audit trail
922
+ ```
923
+
924
+ When `templates_path` is set, Specky uses your custom templates instead of the built-in ones. When `audit_enabled` is true, tool invocations are logged locally.
925
+
926
+
927
+ ## πŸ”— MCP Integration Architecture
287
928
 
288
929
  <p align="center">
289
930
  <img src="media/architecture-mcp-ecosystem.svg" alt="Specky MCP Ecosystem Architecture" width="100%"/>
@@ -314,9 +955,8 @@ Specky --> sdd_figma_to_spec(file_key: "abc123") --> Figma request
314
955
  | **Figma MCP** | Design context, FigJam diagrams |
315
956
  | **Docker MCP** | Local dev environments |
316
957
 
317
- ---
318
958
 
319
- ## EARS Notation
959
+ ## πŸ“ EARS Notation
320
960
 
321
961
  Every requirement in Specky follows EARS (Easy Approach to Requirements Syntax):
322
962
 
@@ -331,21 +971,19 @@ Every requirement in Specky follows EARS (Easy Approach to Requirements Syntax):
331
971
 
332
972
  The EARS validator programmatically checks every requirement against these 6 patterns. Vague terms like "fast", "good", "easy" are flagged automatically.
333
973
 
334
- ---
335
974
 
336
- ## Compliance Frameworks
975
+ ## πŸ›‘οΈ Compliance Frameworks
337
976
 
338
977
  Built-in compliance checking against:
339
978
 
340
- - **HIPAA** -- Access control, audit, encryption, PHI protection
341
- - **SOC 2** -- Logical access, monitoring, change management, incident response
342
- - **GDPR** -- Lawful processing, right to erasure, data portability, breach notification
343
- - **PCI-DSS** -- Firewall, stored data protection, encryption, user identification
344
- - **ISO 27001** -- Security policies, access control, cryptography, incident management
979
+ - **HIPAA**: Access control, audit, encryption, PHI protection
980
+ - **SOC 2**: Logical access, monitoring, change management, incident response
981
+ - **GDPR**: Lawful processing, right to erasure, data portability, breach notification
982
+ - **PCI-DSS**: Firewall, stored data protection, encryption, user identification
983
+ - **ISO 27001**: Security policies, access control, cryptography, incident management
345
984
 
346
- ---
347
985
 
348
- ## Educative Outputs
986
+ ## πŸ’‘ Educative Outputs
349
987
 
350
988
  Every tool response includes structured guidance:
351
989
 
@@ -358,38 +996,54 @@ Every tool response includes structured guidance:
358
996
  }
359
997
  ```
360
998
 
361
- ---
362
999
 
363
- ## End-to-End Flow
1000
+ ## πŸ”„ End-to-End Flow
364
1001
 
365
1002
  <p align="center">
366
1003
  <img src="media/end-to-end-flow.svg" alt="Specky End-to-End Development Flow" width="100%"/>
367
1004
  </p>
368
1005
 
369
- From any input to production β€” fully automated, MCP-orchestrated, with artifacts and diagrams generated at every step.
1006
+ From any [input](#input-methods--6-ways-to-start) to production.fully automated, [MCP-orchestrated](#mcp-integration-architecture), with artifacts and diagrams generated at every step. All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
370
1007
 
371
- ---
372
1008
 
373
- ## Project Structure
1009
+ ## 🏒 Enterprise Ready
374
1010
 
375
- ```
376
- .specs/
377
- 001-feature-name/
378
- CONSTITUTION.md -- Project principles and governance
379
- SPECIFICATION.md -- EARS requirements with acceptance criteria
380
- DESIGN.md -- Architecture, data model, API contracts
381
- RESEARCH.md -- Resolved unknowns and decisions
382
- TASKS.md -- Implementation breakdown
383
- ANALYSIS.md -- Quality gate report
384
- CHECKLIST.md -- Mandatory quality checklist
385
- CROSS_ANALYSIS.md -- Spec-design-tasks alignment
386
- COMPLIANCE.md -- Compliance framework report
387
- VERIFICATION.md -- Phantom detection results
388
- ```
1011
+ Specky is built with enterprise adoption in mind.
1012
+
1013
+ ### Security Posture
1014
+
1015
+ - **2 runtime dependencies**.minimal attack surface (`@modelcontextprotocol/sdk`, `zod`)
1016
+ - **Zero outbound network requests**.all data stays local
1017
+ - **No `eval()` or dynamic code execution**.template rendering is string replacement only
1018
+ - **Path traversal prevention**: FileManager sanitizes all paths, blocks `..` sequences
1019
+ - **Zod `.strict()` validation**.every tool input is schema-validated; unknown fields rejected
1020
+ - See [SECURITY.md](SECURITY.md) for full OWASP Top 10 coverage
1021
+
1022
+ ### Compliance Validation
389
1023
 
390
- ---
1024
+ Built-in compliance checking validates your specifications against industry frameworks:
391
1025
 
392
- ## Development
1026
+ | Framework | Controls | Use Case |
1027
+ |-----------|----------|----------|
1028
+ | HIPAA | 6 controls | Healthcare applications |
1029
+ | SOC 2 | 6 controls | SaaS and cloud services |
1030
+ | GDPR | 5 controls | EU data processing |
1031
+ | PCI-DSS | 6 controls | Payment card handling |
1032
+ | ISO 27001 | 6 controls | Enterprise security management |
1033
+
1034
+ ### Audit Trail
1035
+
1036
+ Every pipeline phase produces a traceable artifact in `.specs/NNN-feature/`. The complete specification-to-code journey is documented and reproducible.
1037
+
1038
+ ### Quality Gates
1039
+
1040
+ - **EARS Validator**.programmatic requirement quality enforcement
1041
+ - **Cross-Artifact Analysis**.automatic alignment checking between spec, design, and tasks
1042
+ - **Phase Enforcement**.state machine blocks phase-skipping; required files gate advancement
1043
+ - **211 unit tests** with 89% code coverage; CI enforces thresholds on every push
1044
+
1045
+
1046
+ ## πŸ› οΈ Development
393
1047
 
394
1048
  ```bash
395
1049
  # Clone and setup
@@ -400,21 +1054,82 @@ npm install
400
1054
  # Build
401
1055
  npm run build
402
1056
 
403
- # Development mode (auto-reload)
1057
+ # Run tests (211 tests, 89% coverage)
1058
+ npm test
1059
+
1060
+ # Run tests with coverage report
1061
+ npm run test:coverage
1062
+
1063
+ # Development mode (auto-reload on file changes)
404
1064
  npm run dev
405
1065
 
406
- # Verify MCP handshake
1066
+ # Verify MCP handshake (quick smoke test)
407
1067
  echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' | node dist/index.js 2>/dev/null
1068
+
1069
+ # Build and run with Docker locally
1070
+ docker build -t specky-sdd:dev .
1071
+ docker run -p 3200:3200 -v $(pwd):/workspace specky-sdd:dev
1072
+ curl http://localhost:3200/health
408
1073
  ```
409
1074
 
410
- ---
411
1075
 
412
- ## Contributing
1076
+ ## πŸ—ΊοΈ Roadmap
1077
+
1078
+ ### v2.2 (current, stable)
1079
+
1080
+ Specky v2.2 is **production-ready** for teams and organizations adopting Spec-Driven Development.
1081
+
1082
+ | Capability | Status |
1083
+ |------------|--------|
1084
+ | 47 MCP tools across 10 pipeline phases | βœ… Stable |
1085
+ | State machine enforcement (no phase-skipping) | βœ… Stable |
1086
+ | EARS validation (6 patterns, vague term detection) | βœ… Stable |
1087
+ | 6 input types (transcript, PDF, DOCX, Figma, codebase, raw text) | βœ… Stable |
1088
+ | Compliance checking (HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001) | βœ… Stable |
1089
+ | Test generation (vitest, jest, playwright, pytest, junit, xunit) | βœ… Stable |
1090
+ | MCP-to-MCP routing (GitHub, Azure DevOps, Jira, Terraform, Figma, Docker) | βœ… Stable |
1091
+ | Docker deployment with health check | βœ… Stable |
1092
+ | 211 unit tests, 89% code coverage | βœ… Stable |
1093
+ | `.github/agents/` + `.claude/commands/` integration | βœ… Stable |
1094
+
1095
+ ### v2.3 (planned)
1096
+
1097
+ | Feature | Description |
1098
+ |---------|-------------|
1099
+ | πŸ” HTTP authentication | Token-based auth for the HTTP transport (Docker/container mode) |
1100
+ | πŸ“Š Observability | OpenTelemetry metrics and structured logging for tool invocations |
1101
+ | πŸ”„ Spec versioning | Track specification versions with diff and rollback support |
1102
+ | 🌐 Internationalization | Spec templates in multiple languages (PT-BR, ES, FR, DE, JA) |
1103
+
1104
+ ### v3.0 (future)
1105
+
1106
+ | Feature | Description |
1107
+ |---------|-------------|
1108
+ | πŸ‘₯ RBAC | Role-based access control for pipeline phase advancement |
1109
+ | πŸ“ Persistent audit log | Centralized audit trail beyond `.sdd-state.json` |
1110
+ | ⚑ Rate limiting | Request throttling for multi-tenant deployments |
1111
+ | πŸ”‘ SSO/SAML | Enterprise identity provider integration |
1112
+ | 🏒 Multi-tenant | Isolated workspaces for multiple teams on a single server |
1113
+ | πŸ“ˆ Analytics dashboard | Specification quality metrics over time |
1114
+
1115
+ > πŸ’‘ Have a feature request? [Open an issue](https://github.com/paulasilvatech/specky/issues) on GitHub.
1116
+
1117
+
1118
+ ## 🀝 Contributing
413
1119
 
414
1120
  See [CONTRIBUTING.md](CONTRIBUTING.md) for architecture details and how to add tools, templates, or services.
415
1121
 
416
- ---
417
1122
 
418
- ## License
1123
+ ## πŸ“Ž Links
1124
+
1125
+ - [CHANGELOG.md](CHANGELOG.md): Version history and release notes
1126
+ - [SECURITY.md](SECURITY.md): Vulnerability disclosure policy and OWASP Top 10 coverage
1127
+ - [CONTRIBUTING.md](CONTRIBUTING.md): How to add tools, templates, or services
1128
+ - [Spec-Kit](https://github.com/paulasilvatech/spec-kit): The SDD methodology foundation
1129
+ - [SDD Market Analysis 2026](https://paulanunes85.github.io/sdd-market-analysis-2026/): Enterprise readiness comparison
1130
+ - [npm package](https://www.npmjs.com/package/specky-sdd): `specky-sdd` on npm
1131
+
1132
+
1133
+ ## πŸ“„ License
419
1134
 
420
- MIT -- Created by [Paula Silva](https://github.com/paulasilvatech) | Americas Software GBB, Microsoft
1135
+ MIT. Created by [Paula Silva](https://github.com/paulasilvatech) | Americas Software GBB, Microsoft