specky-sdd 2.2.3 → 2.3.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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,37 @@ All notable changes to Specky are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.3.0] - 2026-03-24
9
+
10
+ ### Added
11
+ - `sdd_turnkey_spec` tool — generates complete EARS specification from a natural language description with auto-extracted requirements, EARS pattern classification, acceptance criteria generation, NFR inference, and clarification questions
12
+ - `sdd_generate_pbt` tool — generates property-based tests using fast-check (TypeScript) or Hypothesis (Python), extracting 6 property types from EARS requirements: invariant, state_transition, conditional, negative, round_trip, idempotence
13
+ - `sdd_checkpoint` tool — creates named snapshots of all spec artifacts and pipeline state for safe rollback
14
+ - `sdd_restore` tool — restores spec artifacts from a previous checkpoint with automatic backup of current state
15
+ - `sdd_list_checkpoints` tool — lists all available checkpoints with labels, dates, and phases
16
+ - `src/services/pbt-generator.ts` — new PBT generator service with EARS-to-property extraction and framework-specific code generation
17
+ - 5 new Claude Code commands: `/sdd:verify`, `/sdd:docs`, `/sdd:export`, `/sdd:diagrams`, `/sdd:iac`
18
+ - 6 executable hook scripts in `.claude/hooks/` with Claude Code `settings.json` integration (PostToolUse, Stop, TaskCompleted events)
19
+ - `.github/copilot-instructions.md` — GitHub Copilot project instructions with quick start guide
20
+ - `.github/workflows/sdd-hooks.yml` — GitHub Actions workflow replicating hook automation (spec-sync, security-scan, SRP validator, changelog reminder)
21
+ - `tests/unit/pbt-generator.test.ts` — 36 test cases for PBT generator (property extraction, classification, fast-check/hypothesis generation)
22
+ - `tests/unit/turnkey.test.ts` — 36 test cases for turnkey spec helpers (candidate extraction, EARS conversion, acceptance criteria, clarifications, NFR inference)
23
+ - `tests/integration/checkpoint-e2e.test.ts` — 9 integration test cases for checkpoint create/restore/list with real filesystem
24
+
25
+ ### Changed
26
+ - MCP tool count: 47 → 52
27
+ - Claude Code commands: 7 → 12
28
+ - Test suite expanded: 211 → 292 tests across 19 files
29
+ - All 4 GitHub Copilot agents rewritten with complete workflows (turnkey, PBT, checkpointing, diagrams, IaC, docs, export, compliance)
30
+ - `spec-engineer.agent.md` now documents 8 workflows and references 49 tools
31
+ - `design-architect.agent.md` now includes diagram generation, IaC, and dev environment workflows
32
+ - `task-planner.agent.md` now includes export, test generation, and verification workflows
33
+ - `spec-reviewer.agent.md` now includes compliance, EARS validation, cross-artifact analysis, and test verification workflows
34
+ - `CLAUDE.md` updated to v2.3.0 with complete tool reference
35
+ - `README.md` updated with new tools, comparison matrix, and feature descriptions
36
+ - `TOTAL_TOOLS` constant corrected: 44 → 52
37
+ - Version bumped: 2.2.3 → 2.3.0
38
+
8
39
  ## [2.2.0] - 2026-03-24
9
40
 
10
41
  ### Added
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <div align="center">
2
2
  <h1>Specky</h1>
3
3
  <h3>The Complete Spec-Driven Development Platform</h3>
4
- <p><strong>47 MCP tools. 10-phase pipeline. Works in any IDE.</strong></p>
4
+ <p><strong>52 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>
@@ -25,17 +25,17 @@
25
25
  | [📥 Input Methods](#-input-methods--6-ways-to-start) | 6 ways to feed Specky |
26
26
  | [🏗️ Three Project Types](#%EF%B8%8F-three-project-types--one-pipeline) | Greenfield, Brownfield, Modernization |
27
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 |
28
+ | [🧰 All 52 Tools](#-all-47-tools) | Complete tool reference by category |
29
29
  | [🏛️ The SDD Platform](#%EF%B8%8F-the-spec-driven-development-platform) | Built on Spec-Kit, everything included |
30
30
  | [📐 EARS Notation](#-ears-notation) | The 6 requirement patterns |
31
31
  | [🛡️ Compliance](#%EF%B8%8F-compliance-frameworks) | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 |
32
32
  | [🏢 Enterprise Ready](#-enterprise-ready) | Security, audit trail, quality gates |
33
- | [🗺️ Roadmap](#%EF%B8%8F-roadmap) | v2.2 (current), v2.3, v3.0 plans |
33
+ | [🗺️ Roadmap](#%EF%B8%8F-roadmap) | v2.3 (current), v2.4, v3.0 plans |
34
34
 
35
35
 
36
36
  ## 🔍 What is Specky?
37
37
 
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.
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 52 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.
39
39
 
40
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.
41
41
 
@@ -104,7 +104,11 @@ Specky adds a **deterministic engine** between your intent and your code:
104
104
  | Phantom task detection | Extension | No | No | **Yes** |
105
105
  | Complete auto-documentation | No | No | No | **Yes** |
106
106
  | Educative outputs | No | No | No | **Yes** |
107
- | 47 MCP tools | N/A | N/A | N/A | **Yes** |
107
+ | Turnkey spec from natural language | No | Partial (1 EARS pattern) | No | **Yes (5 EARS patterns)** |
108
+ | Property-based testing (fast-check/Hypothesis) | No | Yes | No | **Yes** |
109
+ | Checkpoint/restore for spec artifacts | No | Session-only | No | **Yes (persistent)** |
110
+ | Executable hooks (file-save triggers) | No | Yes (IDE-level) | No | **Yes (Claude Code + GitHub Actions)** |
111
+ | 52 MCP tools | N/A | N/A | N/A | **Yes** |
108
112
  | Works in ANY IDE via MCP | Templates | IDE-locked | IDE-locked | **Yes** |
109
113
 
110
114
  </details>
@@ -115,79 +119,23 @@ Specky adds a **deterministic engine** between your intent and your code:
115
119
  ### Prerequisites
116
120
 
117
121
  - **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
122
+ - **An AI IDE**: VS Code with Copilot, Claude Code, Claude Desktop, Cursor, or Windsurf
119
123
 
120
- ### Option 1: npm (Recommended)
124
+ ### Step 1: Choose Your Installation Scope
121
125
 
122
- No installation needed. `npx` downloads and runs Specky on demand:
126
+ | Scope | What it does | Best for |
127
+ |-------|-------------|----------|
128
+ | **Per workspace** (recommended) | Config file lives inside the repo, shared with the team via Git | Teams, open-source projects |
129
+ | **Global (once)** | Installed on your machine, available in every repo automatically | Personal use, quick setup |
123
130
 
124
- ```bash
125
- npx specky-sdd
126
- ```
127
-
128
- Or install globally for faster startup:
129
-
130
- ```bash
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
142
- ```
143
-
144
- Or use Docker Compose for a persistent setup:
131
+ ### Step 2: Install
145
132
 
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"}
133
+ <details open>
134
+ <summary><strong>📂 Per Workspace (recommended)</strong></summary>
154
135
 
155
- # View logs
156
- docker compose logs -f specky
136
+ No global install needed. You add a config file to the repo and `npx` handles the rest.
157
137
 
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:
138
+ **For VS Code with GitHub Copilot** create `.vscode/mcp.json` in the repo root:
191
139
 
192
140
  ```json
193
141
  {
@@ -203,74 +151,70 @@ Create `.vscode/mcp.json` in your project root:
203
151
  }
204
152
  ```
205
153
 
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>
212
-
213
- One command:
154
+ **For Claude Code** run this once inside the repo:
214
155
 
215
156
  ```bash
216
157
  claude mcp add specky -- npx -y specky-sdd
217
158
  ```
218
159
 
219
- Or add to your MCP settings manually:
160
+ **For Cursor** add to MCP settings (Settings > MCP Servers):
220
161
 
221
162
  ```json
222
163
  {
223
- "mcpServers": {
224
- "specky": {
225
- "command": "npx",
226
- "args": ["-y", "specky-sdd"],
227
- "env": {
228
- "SDD_WORKSPACE": "/path/to/your/project"
229
- }
230
- }
164
+ "specky": {
165
+ "command": "npx",
166
+ "args": ["-y", "specky-sdd"]
231
167
  }
232
168
  }
233
169
  ```
234
170
 
171
+ > 💡 Commit the config file to Git so every team member gets Specky automatically when they clone the repo.
172
+
235
173
  </details>
236
174
 
237
175
  <details>
238
- <summary><strong>Claude Desktop</strong></summary>
176
+ <summary><strong>🌐 Global (once, all repos)</strong></summary>
239
177
 
240
- Add to your `claude_desktop_config.json`:
178
+ Install globally and Specky is available everywhere on your machine:
241
179
 
242
- | OS | Config File Location |
243
- |----|---------------------|
244
- | macOS | `~/Library/Application Support/Claude/claude_desktop_config.json` |
245
- | Linux | `~/.config/Claude/claude_desktop_config.json` |
246
- | Windows | `%APPDATA%\Claude\claude_desktop_config.json` |
180
+ ```bash
181
+ npm install -g specky-sdd
182
+ ```
183
+
184
+ Then configure your IDE to use the global install:
247
185
 
186
+ **VS Code** (`.vscode/mcp.json`):
248
187
  ```json
249
188
  {
250
- "mcpServers": {
189
+ "servers": {
251
190
  "specky": {
252
- "command": "npx",
253
- "args": ["-y", "specky-sdd"],
254
- "env": {
255
- "SDD_WORKSPACE": "/path/to/your/project"
256
- }
191
+ "command": "specky-sdd",
192
+ "env": { "SDD_WORKSPACE": "${workspaceFolder}" }
257
193
  }
258
194
  }
259
195
  }
260
196
  ```
261
197
 
262
- </details>
198
+ **Claude Code**:
199
+ ```bash
200
+ claude mcp add specky -- specky-sdd
201
+ ```
263
202
 
264
- <details>
265
- <summary><strong>Cursor</strong></summary>
203
+ **Claude Desktop** (`claude_desktop_config.json`):
266
204
 
267
- Add to Cursor's MCP settings (Settings > MCP Servers):
205
+ | OS | Config location |
206
+ |----|----------------|
207
+ | macOS | `~/Library/Application Support/Claude/claude_desktop_config.json` |
208
+ | Linux | `~/.config/Claude/claude_desktop_config.json` |
209
+ | Windows | `%APPDATA%\Claude\claude_desktop_config.json` |
268
210
 
269
211
  ```json
270
212
  {
271
- "specky": {
272
- "command": "npx",
273
- "args": ["-y", "specky-sdd"]
213
+ "mcpServers": {
214
+ "specky": {
215
+ "command": "specky-sdd",
216
+ "env": { "SDD_WORKSPACE": "/path/to/your/project" }
217
+ }
274
218
  }
275
219
  }
276
220
  ```
@@ -278,22 +222,40 @@ Add to Cursor's MCP settings (Settings > MCP Servers):
278
222
  </details>
279
223
 
280
224
  <details>
281
- <summary><strong>Docker (HTTP mode), for any MCP client</strong></summary>
225
+ <summary><strong>🐳 Docker (HTTP mode, no Node.js required)</strong></summary>
282
226
 
283
- If your AI client supports HTTP-based MCP servers, point it to:
227
+ Run Specky as an HTTP server in a container:
284
228
 
229
+ ```bash
230
+ docker run -d --name specky -p 3200:3200 -v $(pwd):/workspace ghcr.io/paulasilvatech/specky:latest
285
231
  ```
286
- http://localhost:3200/mcp
232
+
233
+ Verify it's running:
234
+
235
+ ```bash
236
+ curl http://localhost:3200/health
287
237
  ```
288
238
 
289
- Start the container first:
239
+ Point any MCP client that supports HTTP to `http://localhost:3200/mcp`
240
+
241
+ Stop when done:
290
242
 
291
243
  ```bash
292
- docker compose up -d
244
+ docker stop specky && docker rm specky
293
245
  ```
294
246
 
295
247
  </details>
296
248
 
249
+ ### Step 3: Verify
250
+
251
+ Open your AI IDE and type:
252
+
253
+ ```
254
+ > What tools does Specky have?
255
+ ```
256
+
257
+ The AI should list the 47 SDD tools. If you see them, Specky is working.
258
+
297
259
  ### ✅ Try It Now
298
260
 
299
261
  Once connected, type this in your AI chat to see Specky in action:
@@ -578,7 +540,7 @@ The AI calls:
578
540
 
579
541
  The AI calls `sdd_export_work_items` + `sdd_create_pr` → generates work item payloads and PR body with full spec traceability.
580
542
 
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.
543
+ > 👉 **Next:** Learn about [EARS notation](#ears-notation) to understand the requirement patterns, or see [#all-52-tools](#all-47-tools) for a complete reference.
582
544
 
583
545
 
584
546
  ## 🔧 Brownfield Project: Add Features to Existing Code
@@ -771,7 +733,7 @@ The AI calls `sdd_advance_phase` → moves the pipeline forward if all prerequis
771
733
  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
734
 
773
735
 
774
- ## 🧰 All 47 Tools
736
+ ## 🧰 All 52 Tools
775
737
 
776
738
  ### 📥 Input and Conversion (5)
777
739
 
@@ -860,12 +822,33 @@ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
860
822
  | `sdd_metrics` | Project metrics dashboard |
861
823
  | `sdd_amend` | Amend project constitution |
862
824
 
863
- ### 🧪 Testing (2)
825
+ ### 🧪 Testing (3)
864
826
 
865
827
  | Tool | Description |
866
828
  |------|-------------|
867
829
  | `sdd_generate_tests` | Generate test stubs from acceptance criteria (vitest/jest/playwright/pytest/junit/xunit) |
868
830
  | `sdd_verify_tests` | Verify test results against requirements, report traceability coverage |
831
+ | `sdd_generate_pbt` | Generate property-based tests using fast-check (TypeScript) or Hypothesis (Python). Extracts invariants, round-trips, idempotence, state transitions, and negative properties from EARS requirements |
832
+
833
+ ### ⚡ Turnkey Specification (1)
834
+
835
+ | Tool | Description |
836
+ |------|-------------|
837
+ | `sdd_turnkey_spec` | Generate a complete EARS specification from a natural language description. Auto-extracts requirements, classifies all 5 EARS patterns, generates acceptance criteria, infers non-functional requirements, and identifies clarification questions |
838
+
839
+ ### 💾 Checkpointing (3)
840
+
841
+ | Tool | Description |
842
+ |------|-------------|
843
+ | `sdd_checkpoint` | Create a named snapshot of all spec artifacts and pipeline state |
844
+ | `sdd_restore` | Restore spec artifacts from a previous checkpoint (auto-creates backup before restoring) |
845
+ | `sdd_list_checkpoints` | List all available checkpoints for a feature with labels, dates, and phases |
846
+
847
+ ### 🔌 Ecosystem (1)
848
+
849
+ | Tool | Description |
850
+ |------|-------------|
851
+ | `sdd_check_ecosystem` | Report recommended MCP servers with install commands |
869
852
 
870
853
 
871
854
  ## 🏛️ The Spec-Driven Development Platform
@@ -878,11 +861,11 @@ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
878
861
 
879
862
  **[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
863
 
881
- **Specky** is the MCP engine that reimplements that methodology as 47 enforceable tools with programmatic validation. It enforces **how** to do it.
864
+ **Specky** is the MCP engine that reimplements that methodology as 52 enforceable tools with programmatic validation. It enforces **how** to do it.
882
865
 
883
866
  | | Spec-Kit (Methodology) | Specky (Engine) |
884
867
  |--|------------------------|-----------------|
885
- | **What it is** | Prompt templates + agent definitions | MCP server with 47 tools |
868
+ | **What it is** | Prompt templates + agent definitions | MCP server with 52 tools |
886
869
  | **How it works** | AI reads `.md` templates and follows instructions | AI calls tools that validate, enforce, and generate |
887
870
  | **Validation** | AI tries to follow the prompts | State machine, EARS regex, Zod schemas |
888
871
  | **Install** | Copy `.github/agents/` and `.claude/commands/` | `npx specky-sdd` (includes methodology built-in) |
@@ -1040,7 +1023,7 @@ Every pipeline phase produces a traceable artifact in `.specs/NNN-feature/`. The
1040
1023
  - **EARS Validator**.programmatic requirement quality enforcement
1041
1024
  - **Cross-Artifact Analysis**.automatic alignment checking between spec, design, and tasks
1042
1025
  - **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
1026
+ - **292 unit tests** with 89% code coverage; CI enforces thresholds on every push
1044
1027
 
1045
1028
 
1046
1029
  ## 🛠️ Development
@@ -1054,7 +1037,7 @@ npm install
1054
1037
  # Build
1055
1038
  npm run build
1056
1039
 
1057
- # Run tests (211 tests, 89% coverage)
1040
+ # Run tests (292 tests coverage)
1058
1041
  npm test
1059
1042
 
1060
1043
  # Run tests with coverage report
@@ -1075,31 +1058,36 @@ curl http://localhost:3200/health
1075
1058
 
1076
1059
  ## 🗺️ Roadmap
1077
1060
 
1078
- ### v2.2 (current, stable)
1061
+ ### v2.3 (current, stable)
1079
1062
 
1080
- Specky v2.2 is **production-ready** for teams and organizations adopting Spec-Driven Development.
1063
+ Specky v2.3 is **production-ready** with full Kiro-parity features and complete GitHub Copilot + Claude Code integration.
1081
1064
 
1082
1065
  | Capability | Status |
1083
1066
  |------------|--------|
1084
- | 47 MCP tools across 10 pipeline phases | ✅ Stable |
1067
+ | 52 MCP tools across 10 pipeline phases | ✅ Stable |
1068
+ | Turnkey spec from natural language (`sdd_turnkey_spec`) | ✅ New |
1069
+ | Property-based testing — fast-check + Hypothesis (`sdd_generate_pbt`) | ✅ New |
1070
+ | Checkpoint/restore for spec artifacts (`sdd_checkpoint`, `sdd_restore`) | ✅ New |
1071
+ | 6 executable hooks with Claude Code settings.json integration | ✅ New |
1072
+ | GitHub Actions SDD workflow (`sdd-hooks.yml`) | ✅ New |
1073
+ | 12 Claude Code commands + 5 Copilot agents with full workflows | ✅ New |
1074
+ | `.github/copilot-instructions.md` for Copilot project context | ✅ New |
1085
1075
  | State machine enforcement (no phase-skipping) | ✅ Stable |
1086
1076
  | EARS validation (6 patterns, vague term detection) | ✅ Stable |
1087
1077
  | 6 input types (transcript, PDF, DOCX, Figma, codebase, raw text) | ✅ Stable |
1088
1078
  | Compliance checking (HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001) | ✅ Stable |
1089
1079
  | Test generation (vitest, jest, playwright, pytest, junit, xunit) | ✅ Stable |
1090
1080
  | 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 |
1081
+ | 292 unit tests across 19 files | ✅ Stable |
1094
1082
 
1095
- ### v2.3 (planned)
1083
+ ### v2.4 (planned)
1096
1084
 
1097
1085
  | Feature | Description |
1098
1086
  |---------|-------------|
1099
1087
  | 🔐 HTTP authentication | Token-based auth for the HTTP transport (Docker/container mode) |
1100
1088
  | 📊 Observability | OpenTelemetry metrics and structured logging for tool invocations |
1101
- | 🔄 Spec versioning | Track specification versions with diff and rollback support |
1102
1089
  | 🌐 Internationalization | Spec templates in multiple languages (PT-BR, ES, FR, DE, JA) |
1090
+ | 🧠 AI-powered shrinking | Integrate fast-check/Hypothesis shrinking feedback into spec refinement |
1103
1091
 
1104
1092
  ### v3.0 (future)
1105
1093
 
package/SECURITY.md CHANGED
@@ -25,7 +25,7 @@ If you discover a security vulnerability in Specky, please report it responsibly
25
25
 
26
26
  ### Input Validation
27
27
 
28
- All 47 MCP tool inputs are validated using [Zod](https://zod.dev/) schemas with `.strict()` mode. No unknown fields are accepted. This prevents injection of unexpected parameters through the MCP JSON-RPC interface.
28
+ All 52 MCP tool inputs are validated using [Zod](https://zod.dev/) schemas with `.strict()` mode. No unknown fields are accepted. This prevents injection of unexpected parameters through the MCP JSON-RPC interface.
29
29
 
30
30
  ```
31
31
  AI Client → JSON-RPC → Zod .strict() validation → Service layer
@@ -6,7 +6,7 @@ export declare const VERSION: string;
6
6
  /** Server name for MCP handshake */
7
7
  export declare const SERVER_NAME = "specky";
8
8
  /** Total tool count for ecosystem check */
9
- export declare const TOTAL_TOOLS = 44;
9
+ export declare const TOTAL_TOOLS = 52;
10
10
  /**
11
11
  * MCP Ecosystem — Recommended external MCP servers.
12
12
  * Each entry describes a server that enhances Specky's capabilities.
@@ -185,6 +185,12 @@ export declare const TOOL_NAMES: {
185
185
  readonly GENERATE_ONBOARDING: "sdd_generate_onboarding";
186
186
  readonly METRICS: "sdd_metrics";
187
187
  readonly GENERATE_TESTS: "sdd_generate_tests";
188
+ readonly VERIFY_TESTS: "sdd_verify_tests";
189
+ readonly GENERATE_PBT: "sdd_generate_pbt";
190
+ readonly TURNKEY_SPEC: "sdd_turnkey_spec";
191
+ readonly CHECKPOINT: "sdd_checkpoint";
192
+ readonly RESTORE: "sdd_restore";
193
+ readonly LIST_CHECKPOINTS: "sdd_list_checkpoints";
188
194
  };
189
195
  export declare const TOOL_IMPORT_DOCUMENT = "sdd_import_document";
190
196
  export declare const TOOL_BATCH_IMPORT = "sdd_batch_import";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -10,7 +10,7 @@ export const VERSION = _pkg.version;
10
10
  /** Server name for MCP handshake */
11
11
  export const SERVER_NAME = "specky";
12
12
  /** Total tool count for ecosystem check */
13
- export const TOTAL_TOOLS = 44;
13
+ export const TOTAL_TOOLS = 52;
14
14
  /**
15
15
  * MCP Ecosystem — Recommended external MCP servers.
16
16
  * Each entry describes a server that enhances Specky's capabilities.
@@ -245,6 +245,15 @@ export const TOOL_NAMES = {
245
245
  METRICS: "sdd_metrics",
246
246
  // Testing
247
247
  GENERATE_TESTS: "sdd_generate_tests",
248
+ VERIFY_TESTS: "sdd_verify_tests",
249
+ // Property-Based Testing
250
+ GENERATE_PBT: "sdd_generate_pbt",
251
+ // Turnkey
252
+ TURNKEY_SPEC: "sdd_turnkey_spec",
253
+ // Checkpointing
254
+ CHECKPOINT: "sdd_checkpoint",
255
+ RESTORE: "sdd_restore",
256
+ LIST_CHECKPOINTS: "sdd_list_checkpoints",
248
257
  };
249
258
  // Input & Conversion
250
259
  export const TOOL_IMPORT_DOCUMENT = "sdd_import_document";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -39,6 +39,10 @@ import { registerIntegrationTools } from "./tools/integration.js";
39
39
  import { registerDocumentationTools } from "./tools/documentation.js";
40
40
  import { TestGenerator } from "./services/test-generator.js";
41
41
  import { registerTestingTools } from "./tools/testing.js";
42
+ import { registerCheckpointTools } from "./tools/checkpoint.js";
43
+ import { registerTurnkeyTools } from "./tools/turnkey.js";
44
+ import { PbtGenerator } from "./services/pbt-generator.js";
45
+ import { registerPbtTools } from "./tools/pbt.js";
42
46
  import { loadConfig } from "./config.js";
43
47
  // Resolve workspace root
44
48
  const workspaceRoot = process.env["SDD_WORKSPACE"] || process.cwd();
@@ -71,13 +75,14 @@ const complianceEngine = new ComplianceEngine();
71
75
  const docGenerator = new DocGenerator(fileManager);
72
76
  const gitManager = new GitManager(fileManager);
73
77
  const testGenerator = new TestGenerator(fileManager);
74
- // Register all tools (44 total)
75
- // v1 tools (17)
78
+ const pbtGenerator = new PbtGenerator(fileManager);
79
+ // Register all tools (52 total)
80
+ // v1 tools
76
81
  registerPipelineTools(server, fileManager, stateMachine, templateEngine, earsValidator);
77
82
  registerAnalysisTools(server, fileManager, stateMachine, templateEngine);
78
83
  registerUtilityTools(server, fileManager, stateMachine, templateEngine, codebaseScanner);
79
84
  registerTranscriptTools(server, fileManager, stateMachine, templateEngine, earsValidator, transcriptParser);
80
- // v2 tools (25)
85
+ // v2+ tools
81
86
  registerInputTools(server, fileManager, documentConverter, stateMachine);
82
87
  registerQualityTools(server, fileManager, stateMachine, templateEngine, complianceEngine, crossAnalyzer, earsValidator);
83
88
  registerVisualizationTools(server, fileManager, stateMachine, diagramGenerator);
@@ -86,6 +91,9 @@ registerEnvironmentTools(server, fileManager, stateMachine, iacGenerator, codeba
86
91
  registerIntegrationTools(server, fileManager, stateMachine, templateEngine, gitManager, workItemExporter);
87
92
  registerDocumentationTools(server, fileManager, stateMachine, docGenerator);
88
93
  registerTestingTools(server, fileManager, stateMachine, testGenerator);
94
+ registerCheckpointTools(server, fileManager, stateMachine);
95
+ registerTurnkeyTools(server, fileManager, stateMachine, templateEngine, earsValidator);
96
+ registerPbtTools(server, fileManager, stateMachine, pbtGenerator);
89
97
  // Graceful shutdown
90
98
  let isShuttingDown = false;
91
99
  function handleShutdown(signal) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}