specky-sdd 3.10.2 → 3.11.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 (322) hide show
  1. package/.apm/agents/specky-design-architect.agent.md +8 -28
  2. package/.apm/agents/specky-implementer.agent.md +15 -27
  3. package/.apm/agents/specky-onboarding.agent.md +8 -49
  4. package/.apm/agents/specky-orchestrator.agent.md +12 -37
  5. package/.apm/agents/specky-quality-reviewer.agent.md +9 -30
  6. package/.apm/agents/specky-release-engineer.agent.md +8 -30
  7. package/.apm/agents/specky-requirements-engineer.agent.md +1 -1
  8. package/.apm/agents/specky-research-analyst.agent.md +1 -1
  9. package/.apm/agents/specky-sdd-clarify.agent.md +1 -1
  10. package/.apm/agents/specky-sdd-init.agent.md +8 -19
  11. package/.apm/agents/specky-spec-engineer.agent.md +8 -30
  12. package/.apm/agents/specky-task-planner.agent.md +7 -26
  13. package/.apm/agents/specky-test-verifier.agent.md +7 -17
  14. package/.apm/hooks/scripts/specky-artifact-validator.sh +14 -10
  15. package/.apm/hooks/scripts/specky-auto-checkpoint.sh +9 -4
  16. package/.apm/hooks/scripts/specky-branch-validator.sh +29 -116
  17. package/.apm/hooks/scripts/specky-cognitive-debt-alert.sh +6 -3
  18. package/.apm/hooks/scripts/specky-contract-context.bash +24 -0
  19. package/.apm/hooks/scripts/specky-contract-context.mjs +219 -0
  20. package/.apm/hooks/scripts/specky-drift-monitor.sh +6 -3
  21. package/.apm/hooks/scripts/specky-ears-validator.sh +5 -2
  22. package/.apm/hooks/scripts/specky-lgtm-gate.sh +12 -10
  23. package/.apm/hooks/scripts/specky-metrics-dashboard.sh +5 -2
  24. package/.apm/hooks/scripts/specky-phase-gate.sh +18 -9
  25. package/.apm/hooks/scripts/specky-pipeline-guard.sh +19 -26
  26. package/.apm/hooks/scripts/specky-release-gate.sh +38 -46
  27. package/.apm/hooks/scripts/specky-security-scan.sh +53 -36
  28. package/.apm/hooks/scripts/specky-session-banner.sh +22 -74
  29. package/.apm/hooks/scripts/specky-spec-quality.sh +7 -4
  30. package/.apm/hooks/scripts/specky-spec-sync.sh +12 -11
  31. package/.apm/hooks/scripts/specky-task-tracer.sh +5 -2
  32. package/.apm/hooks/specky-run.sh +3 -0
  33. package/.apm/instructions/claude-instructions.instructions.md +3 -3
  34. package/.apm/instructions/copilot-instructions.instructions.md +3 -3
  35. package/.apm/instructions/cursor-instructions.instructions.md +3 -3
  36. package/.apm/instructions/opencode-instructions.instructions.md +2 -2
  37. package/.apm/prompts/specky-brownfield.prompt.md +8 -5
  38. package/.apm/prompts/specky-greenfield.prompt.md +7 -5
  39. package/.apm/prompts/specky-implement.prompt.md +1 -1
  40. package/.apm/prompts/specky-orchestrate.prompt.md +1 -1
  41. package/.apm/skills/specky-design-architect/SKILL.md +39 -16
  42. package/.apm/skills/specky-implementer/SKILL.md +46 -158
  43. package/.apm/skills/specky-onboarding/SKILL.md +50 -156
  44. package/.apm/skills/specky-orchestrator/SKILL.md +28 -26
  45. package/.apm/skills/specky-quality-reviewer/SKILL.md +38 -23
  46. package/.apm/skills/specky-release-engineer/SKILL.md +38 -270
  47. package/.apm/skills/specky-research-analyst/SKILL.md +1 -1
  48. package/.apm/skills/specky-sdd-init/SKILL.md +61 -23
  49. package/.apm/skills/specky-sdd-pipeline/SKILL.md +36 -216
  50. package/.apm/skills/specky-spec-engineer/SKILL.md +40 -17
  51. package/.apm/skills/specky-task-planner/SKILL.md +31 -12
  52. package/.apm/skills/specky-test-verifier/SKILL.md +23 -202
  53. package/CHANGELOG.md +39 -0
  54. package/README.md +49 -47
  55. package/SECURITY.md +5 -1
  56. package/apm-policy.yml +2 -0
  57. package/apm.lock.yaml +55 -53
  58. package/apm.yml +3 -3
  59. package/config.yml +32 -53
  60. package/dist/cli/commands/doctor.d.ts.map +1 -1
  61. package/dist/cli/commands/doctor.js +106 -20
  62. package/dist/cli/commands/doctor.js.map +1 -1
  63. package/dist/cli/commands/init.d.ts +2 -0
  64. package/dist/cli/commands/init.d.ts.map +1 -1
  65. package/dist/cli/commands/init.js +105 -7
  66. package/dist/cli/commands/init.js.map +1 -1
  67. package/dist/cli/commands/migrate-contracts.d.ts +15 -0
  68. package/dist/cli/commands/migrate-contracts.d.ts.map +1 -0
  69. package/dist/cli/commands/migrate-contracts.js +311 -0
  70. package/dist/cli/commands/migrate-contracts.js.map +1 -0
  71. package/dist/cli/commands/status.d.ts.map +1 -1
  72. package/dist/cli/commands/status.js +63 -48
  73. package/dist/cli/commands/status.js.map +1 -1
  74. package/dist/cli/index.js +82 -27
  75. package/dist/cli/index.js.map +1 -1
  76. package/dist/cli/lib/apm/policy.d.ts +1 -0
  77. package/dist/cli/lib/apm/policy.d.ts.map +1 -1
  78. package/dist/cli/lib/apm/policy.js +15 -0
  79. package/dist/cli/lib/apm/policy.js.map +1 -1
  80. package/dist/cli/lib/asset-copier.d.ts +1 -0
  81. package/dist/cli/lib/asset-copier.d.ts.map +1 -1
  82. package/dist/cli/lib/asset-copier.js +4 -4
  83. package/dist/cli/lib/asset-copier.js.map +1 -1
  84. package/dist/cli/lib/cursor-plugin-writer.d.ts.map +1 -1
  85. package/dist/cli/lib/cursor-plugin-writer.js +34 -9
  86. package/dist/cli/lib/cursor-plugin-writer.js.map +1 -1
  87. package/dist/cli/lib/harness/compilers/claude.js +3 -3
  88. package/dist/cli/lib/harness/compilers/claude.js.map +1 -1
  89. package/dist/cli/lib/harness/compilers/common.d.ts +10 -1
  90. package/dist/cli/lib/harness/compilers/common.d.ts.map +1 -1
  91. package/dist/cli/lib/harness/compilers/common.js +71 -8
  92. package/dist/cli/lib/harness/compilers/common.js.map +1 -1
  93. package/dist/cli/lib/harness/compilers/copilot.js +3 -3
  94. package/dist/cli/lib/harness/compilers/copilot.js.map +1 -1
  95. package/dist/cli/lib/harness/compilers/cursor.js +3 -3
  96. package/dist/cli/lib/harness/compilers/cursor.js.map +1 -1
  97. package/dist/cli/lib/harness/compilers/opencode.js +3 -3
  98. package/dist/cli/lib/harness/compilers/opencode.js.map +1 -1
  99. package/dist/cli/lib/harness/tool-map.d.ts +8 -1
  100. package/dist/cli/lib/harness/tool-map.d.ts.map +1 -1
  101. package/dist/cli/lib/harness/tool-map.js +74 -0
  102. package/dist/cli/lib/harness/tool-map.js.map +1 -1
  103. package/dist/cli/lib/harness/types.d.ts +11 -1
  104. package/dist/cli/lib/harness/types.d.ts.map +1 -1
  105. package/dist/cli/lib/mcp-writer.d.ts +2 -1
  106. package/dist/cli/lib/mcp-writer.d.ts.map +1 -1
  107. package/dist/cli/lib/mcp-writer.js +13 -5
  108. package/dist/cli/lib/mcp-writer.js.map +1 -1
  109. package/dist/cli/lib/settings-merger.d.ts +15 -0
  110. package/dist/cli/lib/settings-merger.d.ts.map +1 -1
  111. package/dist/cli/lib/settings-merger.js +66 -1
  112. package/dist/cli/lib/settings-merger.js.map +1 -1
  113. package/dist/config.d.ts +110 -42
  114. package/dist/config.d.ts.map +1 -1
  115. package/dist/config.js +129 -140
  116. package/dist/config.js.map +1 -1
  117. package/dist/constants.d.ts +1 -1
  118. package/dist/constants.d.ts.map +1 -1
  119. package/dist/contracts/pipeline-profiles.d.ts +61 -0
  120. package/dist/contracts/pipeline-profiles.d.ts.map +1 -0
  121. package/dist/contracts/pipeline-profiles.js +303 -0
  122. package/dist/contracts/pipeline-profiles.js.map +1 -0
  123. package/dist/contracts/tool-contracts.d.ts +449 -0
  124. package/dist/contracts/tool-contracts.d.ts.map +1 -0
  125. package/dist/contracts/tool-contracts.js +83 -0
  126. package/dist/contracts/tool-contracts.js.map +1 -0
  127. package/dist/contracts/use-case.d.ts +736 -0
  128. package/dist/contracts/use-case.d.ts.map +1 -0
  129. package/dist/contracts/use-case.js +352 -0
  130. package/dist/contracts/use-case.js.map +1 -0
  131. package/dist/index.js +7 -4
  132. package/dist/index.js.map +1 -1
  133. package/dist/schemas/common.d.ts +3 -3
  134. package/dist/schemas/common.d.ts.map +1 -1
  135. package/dist/schemas/common.js +1 -4
  136. package/dist/schemas/common.js.map +1 -1
  137. package/dist/schemas/context.d.ts +2 -2
  138. package/dist/schemas/environment.d.ts +6 -17
  139. package/dist/schemas/environment.d.ts.map +1 -1
  140. package/dist/schemas/environment.js +1 -28
  141. package/dist/schemas/environment.js.map +1 -1
  142. package/dist/schemas/feature-content.d.ts +116 -0
  143. package/dist/schemas/feature-content.d.ts.map +1 -0
  144. package/dist/schemas/feature-content.js +65 -0
  145. package/dist/schemas/feature-content.js.map +1 -0
  146. package/dist/schemas/infrastructure.d.ts +6 -28
  147. package/dist/schemas/infrastructure.d.ts.map +1 -1
  148. package/dist/schemas/infrastructure.js +1 -30
  149. package/dist/schemas/infrastructure.js.map +1 -1
  150. package/dist/schemas/input.d.ts +412 -8
  151. package/dist/schemas/input.d.ts.map +1 -1
  152. package/dist/schemas/input.js +6 -7
  153. package/dist/schemas/input.js.map +1 -1
  154. package/dist/schemas/integration.d.ts +22 -28
  155. package/dist/schemas/integration.d.ts.map +1 -1
  156. package/dist/schemas/integration.js +11 -47
  157. package/dist/schemas/integration.js.map +1 -1
  158. package/dist/schemas/metrics.d.ts +3 -2
  159. package/dist/schemas/metrics.d.ts.map +1 -1
  160. package/dist/schemas/metrics.js +2 -1
  161. package/dist/schemas/metrics.js.map +1 -1
  162. package/dist/schemas/pbt.d.ts +2 -7
  163. package/dist/schemas/pbt.d.ts.map +1 -1
  164. package/dist/schemas/pbt.js +1 -9
  165. package/dist/schemas/pbt.js.map +1 -1
  166. package/dist/schemas/pipeline.d.ts +282 -35
  167. package/dist/schemas/pipeline.d.ts.map +1 -1
  168. package/dist/schemas/pipeline.js +29 -15
  169. package/dist/schemas/pipeline.js.map +1 -1
  170. package/dist/schemas/quality.d.ts +15 -19
  171. package/dist/schemas/quality.d.ts.map +1 -1
  172. package/dist/schemas/quality.js +6 -3
  173. package/dist/schemas/quality.js.map +1 -1
  174. package/dist/schemas/routing.d.ts +2 -2
  175. package/dist/schemas/routing.d.ts.map +1 -1
  176. package/dist/schemas/routing.js +2 -4
  177. package/dist/schemas/routing.js.map +1 -1
  178. package/dist/schemas/testing.d.ts +4 -13
  179. package/dist/schemas/testing.d.ts.map +1 -1
  180. package/dist/schemas/testing.js +2 -10
  181. package/dist/schemas/testing.js.map +1 -1
  182. package/dist/schemas/transcript.d.ts +648 -10
  183. package/dist/schemas/transcript.d.ts.map +1 -1
  184. package/dist/schemas/transcript.js +25 -12
  185. package/dist/schemas/transcript.js.map +1 -1
  186. package/dist/schemas/utility.d.ts +28 -15
  187. package/dist/schemas/utility.d.ts.map +1 -1
  188. package/dist/schemas/utility.js +23 -14
  189. package/dist/schemas/utility.js.map +1 -1
  190. package/dist/schemas/visualization.d.ts +66 -15
  191. package/dist/schemas/visualization.d.ts.map +1 -1
  192. package/dist/schemas/visualization.js +36 -12
  193. package/dist/schemas/visualization.js.map +1 -1
  194. package/dist/services/codebase-scanner.d.ts +1 -1
  195. package/dist/services/codebase-scanner.d.ts.map +1 -1
  196. package/dist/services/codebase-scanner.js +2 -2
  197. package/dist/services/codebase-scanner.js.map +1 -1
  198. package/dist/services/compliance-engine.d.ts +3 -2
  199. package/dist/services/compliance-engine.d.ts.map +1 -1
  200. package/dist/services/compliance-engine.js +34 -21
  201. package/dist/services/compliance-engine.js.map +1 -1
  202. package/dist/services/diagram-generator.d.ts +4 -96
  203. package/dist/services/diagram-generator.d.ts.map +1 -1
  204. package/dist/services/diagram-generator.js +18 -1051
  205. package/dist/services/diagram-generator.js.map +1 -1
  206. package/dist/services/doc-generator.d.ts +19 -52
  207. package/dist/services/doc-generator.d.ts.map +1 -1
  208. package/dist/services/doc-generator.js +389 -524
  209. package/dist/services/doc-generator.js.map +1 -1
  210. package/dist/services/execution-context.d.ts +32 -0
  211. package/dist/services/execution-context.d.ts.map +1 -0
  212. package/dist/services/execution-context.js +120 -0
  213. package/dist/services/execution-context.js.map +1 -0
  214. package/dist/services/file-manager.d.ts +16 -4
  215. package/dist/services/file-manager.d.ts.map +1 -1
  216. package/dist/services/file-manager.js +81 -5
  217. package/dist/services/file-manager.js.map +1 -1
  218. package/dist/services/iac-generator.d.ts +9 -10
  219. package/dist/services/iac-generator.d.ts.map +1 -1
  220. package/dist/services/iac-generator.js +36 -99
  221. package/dist/services/iac-generator.js.map +1 -1
  222. package/dist/services/methodology.js +1 -1
  223. package/dist/services/methodology.js.map +1 -1
  224. package/dist/services/metrics-generator.d.ts +1 -1
  225. package/dist/services/metrics-generator.d.ts.map +1 -1
  226. package/dist/services/metrics-generator.js +2 -2
  227. package/dist/services/metrics-generator.js.map +1 -1
  228. package/dist/services/pbt-generator.d.ts +10 -31
  229. package/dist/services/pbt-generator.d.ts.map +1 -1
  230. package/dist/services/pbt-generator.js +43 -515
  231. package/dist/services/pbt-generator.js.map +1 -1
  232. package/dist/services/state-machine.d.ts +22 -16
  233. package/dist/services/state-machine.d.ts.map +1 -1
  234. package/dist/services/state-machine.js +176 -179
  235. package/dist/services/state-machine.js.map +1 -1
  236. package/dist/services/template-engine.d.ts +11 -5
  237. package/dist/services/template-engine.d.ts.map +1 -1
  238. package/dist/services/template-engine.js +48 -21
  239. package/dist/services/template-engine.js.map +1 -1
  240. package/dist/services/test-generator.d.ts +11 -7
  241. package/dist/services/test-generator.d.ts.map +1 -1
  242. package/dist/services/test-generator.js +45 -54
  243. package/dist/services/test-generator.js.map +1 -1
  244. package/dist/templates/design.md +6 -0
  245. package/dist/tools/analysis.d.ts.map +1 -1
  246. package/dist/tools/analysis.js +8 -9
  247. package/dist/tools/analysis.js.map +1 -1
  248. package/dist/tools/checkpoint.d.ts.map +1 -1
  249. package/dist/tools/checkpoint.js +43 -46
  250. package/dist/tools/checkpoint.js.map +1 -1
  251. package/dist/tools/context.d.ts.map +1 -1
  252. package/dist/tools/context.js +5 -7
  253. package/dist/tools/context.js.map +1 -1
  254. package/dist/tools/documentation.d.ts +1 -4
  255. package/dist/tools/documentation.d.ts.map +1 -1
  256. package/dist/tools/documentation.js +112 -193
  257. package/dist/tools/documentation.js.map +1 -1
  258. package/dist/tools/environment.d.ts +1 -1
  259. package/dist/tools/environment.d.ts.map +1 -1
  260. package/dist/tools/environment.js +58 -99
  261. package/dist/tools/environment.js.map +1 -1
  262. package/dist/tools/infrastructure.d.ts.map +1 -1
  263. package/dist/tools/infrastructure.js +36 -38
  264. package/dist/tools/infrastructure.js.map +1 -1
  265. package/dist/tools/input.d.ts.map +1 -1
  266. package/dist/tools/input.js +18 -11
  267. package/dist/tools/input.js.map +1 -1
  268. package/dist/tools/integration.d.ts.map +1 -1
  269. package/dist/tools/integration.js +64 -65
  270. package/dist/tools/integration.js.map +1 -1
  271. package/dist/tools/metrics.d.ts.map +1 -1
  272. package/dist/tools/metrics.js +18 -30
  273. package/dist/tools/metrics.js.map +1 -1
  274. package/dist/tools/pbt.d.ts.map +1 -1
  275. package/dist/tools/pbt.js +10 -12
  276. package/dist/tools/pbt.js.map +1 -1
  277. package/dist/tools/pipeline.d.ts.map +1 -1
  278. package/dist/tools/pipeline.js +156 -274
  279. package/dist/tools/pipeline.js.map +1 -1
  280. package/dist/tools/quality.d.ts.map +1 -1
  281. package/dist/tools/quality.js +58 -45
  282. package/dist/tools/quality.js.map +1 -1
  283. package/dist/tools/response-builder.d.ts.map +1 -1
  284. package/dist/tools/response-builder.js +12 -10
  285. package/dist/tools/response-builder.js.map +1 -1
  286. package/dist/tools/testing.d.ts.map +1 -1
  287. package/dist/tools/testing.js +28 -29
  288. package/dist/tools/testing.js.map +1 -1
  289. package/dist/tools/tool-enforcement.d.ts +2 -0
  290. package/dist/tools/tool-enforcement.d.ts.map +1 -1
  291. package/dist/tools/tool-enforcement.js +84 -59
  292. package/dist/tools/tool-enforcement.js.map +1 -1
  293. package/dist/tools/transcript.d.ts.map +1 -1
  294. package/dist/tools/transcript.js +304 -374
  295. package/dist/tools/transcript.js.map +1 -1
  296. package/dist/tools/turnkey.d.ts +1 -31
  297. package/dist/tools/turnkey.d.ts.map +1 -1
  298. package/dist/tools/turnkey.js +104 -488
  299. package/dist/tools/turnkey.js.map +1 -1
  300. package/dist/tools/utility.d.ts.map +1 -1
  301. package/dist/tools/utility.js +115 -134
  302. package/dist/tools/utility.js.map +1 -1
  303. package/dist/tools/visualization.d.ts +1 -25
  304. package/dist/tools/visualization.d.ts.map +1 -1
  305. package/dist/tools/visualization.js +187 -562
  306. package/dist/tools/visualization.js.map +1 -1
  307. package/dist/types.d.ts +21 -11
  308. package/dist/types.d.ts.map +1 -1
  309. package/dist/utils/artifact-metadata.d.ts +8 -0
  310. package/dist/utils/artifact-metadata.d.ts.map +1 -0
  311. package/dist/utils/artifact-metadata.js +10 -0
  312. package/dist/utils/artifact-metadata.js.map +1 -0
  313. package/dist/utils/requirement-partition.d.ts +8 -0
  314. package/dist/utils/requirement-partition.d.ts.map +1 -0
  315. package/dist/utils/requirement-partition.js +15 -0
  316. package/dist/utils/requirement-partition.js.map +1 -0
  317. package/package.json +11 -2
  318. package/templates/design.md +6 -0
  319. package/dist/utils/design-stubs.d.ts +0 -32
  320. package/dist/utils/design-stubs.d.ts.map +0 -1
  321. package/dist/utils/design-stubs.js +0 -103
  322. package/dist/utils/design-stubs.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -7,6 +7,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [3.11.1] - 2026-07-16
11
+
12
+ ### Added
13
+
14
+ - Signed per-feature use-case contracts for the 54 supported lifecycle, workload, and execution-mode combinations.
15
+ - Central execution-context resolution and contract enforcement for the MCP tool surface.
16
+ - `specky migrate-contracts` for explicit migration of legacy root state to signed v5 per-feature state.
17
+ - Contract-aware pipeline profiles, strict capability configuration, explicit evidence payloads, and atomic multi-file writes.
18
+
19
+ ### Changed
20
+
21
+ - Documentation, diagrams, research, and turnkey specification tools now consume caller-supplied evidence and contract configuration instead of synthesizing unspecified content.
22
+ - Agents, prompts, skills, hooks, installer output, generated API reference, and public site content describe the signed per-feature contract model.
23
+ - Build output is cleaned before compilation so deleted source modules cannot remain in the npm tarball.
24
+
25
+ ### Fixed
26
+
27
+ - Cursor plugin creation now avoids the previously identified TOCTOU path race and removes unsafe `any` usage.
28
+ - APM primitive lock material is regenerated for the current canonical assets.
29
+
30
+ ### Security
31
+
32
+ - Feature-scoped MCP tools reject ambiguous, legacy, missing, or mismatched execution context rather than selecting a feature implicitly.
33
+
34
+ ## [3.11.0] - 2026-07-13
35
+
36
+ ### Added
37
+
38
+ - Canonical agent `capabilities:` declarations compiled into target-native tool identifiers for Copilot, Claude Code, Cursor, and OpenCode.
39
+ - `--permission-profile=scoped|prompt` installation modes. The scoped Claude profile derives narrow native, command, and MCP allow rules from installed agent capabilities.
40
+ - Optional GitHub MCP registration with `--integration=github`, including target-aware diagnostics in `specky doctor`.
41
+ - [Target Capabilities](docs/TARGET-CAPABILITIES.md) reference for target rendering, approval boundaries, and GitHub MCP routing.
42
+
43
+ ### Changed
44
+
45
+ - Initializer, orchestrator, verifier, implementer, and release workflows now declare the Git/test/release capabilities their instructions require.
46
+ - Release workflows distinguish Specky payload generation from authenticated GitHub MCP mutations.
47
+ - APM runtime references are pinned to the package release version rather than `@latest`.
48
+
10
49
  ## [3.10.2] - 2026-07-13
11
50
 
12
51
  Patch release: Specky logo in VS Code and Cursor MCP / Agent Plugins UI.
package/README.md CHANGED
@@ -2,13 +2,13 @@
2
2
  <br>
3
3
  <img src="site/specky-brand-logo.svg" alt="Specky" height="80">
4
4
  <br><br>
5
- <p><strong>13 agents. 58 MCP tools. 10-phase pipeline. One CLI.</strong></p>
5
+ <p><strong>13 agents. 58 MCP tools. Explicit use-case contracts. One CLI.</strong></p>
6
6
  <p>Agentic Spec-Driven Development</p>
7
7
 
8
8
  <p>
9
9
  <img src="https://img.shields.io/badge/agents-13-374151?style=flat-square" alt="13 Agents"/>
10
10
  <img src="https://img.shields.io/badge/tools-58_MCP-4b5563?style=flat-square" alt="58 Tools"/>
11
- <img src="https://img.shields.io/badge/phases-10_enforced-6b7280?style=flat-square" alt="10 Phases"/>
11
+ <img src="https://img.shields.io/badge/phase_graphs-contract_scoped-6b7280?style=flat-square" alt="Contract-scoped phase graphs"/>
12
12
  <img src="https://img.shields.io/badge/hooks-16-9ca3af?style=flat-square" alt="16 Hooks"/>
13
13
  <img src="https://img.shields.io/badge/license-MIT-d1d5db?style=flat-square" alt="MIT"/>
14
14
  </p>
@@ -33,6 +33,7 @@
33
33
  <p>
34
34
  <a href="https://getspecky.ai">Website</a> ·
35
35
  <a href="docs/GETTING-STARTED.md">Getting Started</a> ·
36
+ <a href="docs/USE-CASE-CONTRACTS.md">Use-Case Contracts</a> ·
36
37
  <a href="https://www.npmjs.com/package/specky-sdd">npm</a> ·
37
38
  <a href="SECURITY.md">Security</a>
38
39
  </p>
@@ -50,19 +51,20 @@
50
51
  | | [Where Specifications Live](#where-specifications-live) | File structure and naming conventions |
51
52
  | | [Input Methods](#input-methods-6-ways-to-start) | 6 ways to feed Specky |
52
53
  | | [Three Project Types](#three-project-types-one-pipeline) | Greenfield, Brownfield, Modernization |
54
+ | | [Use-Case Contracts](docs/USE-CASE-CONTRACTS.md) | Lifecycle, workload, mode, capabilities, evidence, migration |
53
55
  | | [How to upgrade](#how-to-upgrade) | Bump npm + refresh project assets (no `--target` needed) |
54
56
  | | [Staying up to date](#staying-up-to-date) | Update notifications and opt-out |
55
- | **Pipeline** | [Pipeline and LGTM Gates](#pipeline-and-lgtm-gates) | 10 phases with human review gates |
57
+ | **Pipeline** | [Pipeline and LGTM Gates](#pipeline-and-lgtm-gates) | Feature-specific phase graphs and configured review gates |
56
58
  | | [All 58 Tools](#all-58-tools) | Complete tool reference by category |
57
59
  | | [EARS Notation](#ears-notation) | The 6 requirement patterns |
58
60
  | **Enterprise** | [Compliance Frameworks](#compliance-frameworks) | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 |
59
61
  | | [Enterprise Ready](#enterprise-ready) | Security, audit trail, quality gates |
60
62
  | **Platform** | [The SDD Platform](#the-spec-driven-development-platform) | Built on Spec-Kit, everything included |
61
- | | [Roadmap](#roadmap) | v3.10 current, v3.11+ planned |
63
+ | | [Roadmap](#roadmap) | v3.11.1 current, future capabilities planned |
62
64
 
63
65
  ## What is Specky?
64
66
 
65
- Specky is a **CLI toolkit for Spec-Driven Development** — 13 specialized agents, 58 MCP tools, 22 prompts, 14 skills, and 16 automation hooks that enforces a deterministic 10-phase pipeline from **any input** (meeting transcripts, documents, Figma designs, or natural language prompts) through specifications, architecture, infrastructure as code, implementation, and deployment.
67
+ Specky is a **CLI toolkit for Spec-Driven Development** — 13 specialized agents, 58 MCP tools, 22 prompts, 14 skills, and 16 automation hooks. Each feature selects an explicit lifecycle, workload, execution mode, and capability configuration; Specky persists the resolved phase graph and rejects missing identity, hidden defaults, unsupported capabilities, and ungrounded artifact evidence.
66
68
 
67
69
  Powered by the [Spec-Kit](https://github.com/paulasilvatech/spec-kit) methodology. Install the `specky` CLI and it places agents, prompts, skills, hooks, and the MCP server registration into your project — for **GitHub Copilot** (VS Code), **Claude Code**, **Cursor**, or **OpenCode**.
68
70
 
@@ -82,8 +84,8 @@ Specky is a **complete AI development toolkit** — not just an MCP server. The
82
84
 
83
85
  An MCP server gives you **tools**. The CLI toolkit gives you the **experience**:
84
86
 
85
- - **Tools alone**: You call `sdd_write_spec` and hope you're in the right phase, with the right prerequisites, on the right branch.
86
- - **CLI toolkit**: You type `@specky-orchestrator` and the agent validates your phase, checks your branch, loads the right skill, calls the right tool, runs pre/post hooks, and pauses for LGTM before advancing.
87
+ - **Tools alone**: You must provide exact feature identity, use-case selection, capability parameters, and evidence.
88
+ - **CLI toolkit**: You invoke `@specky-orchestrator`; it loads the feature's signed contract, follows its persisted graph, delegates to lean agents that read rich skills, and applies configured gates.
87
89
 
88
90
  The MCP engine is the runtime. The agents + hooks + skills are the product.
89
91
 
@@ -101,7 +103,7 @@ specky install --target=copilot # VS Code + GitHub Copilot (recommended)
101
103
  specky install --target=claude # Claude Code
102
104
  specky install --target=cursor # Cursor
103
105
  specky install --target=opencode # OpenCode
104
- specky install --target=agent-skills # Shared .agents/skills bundle
106
+ specky install --target=agent-skills # Skills-only shared .agents/skills bundle
105
107
  ```
106
108
 
107
109
  > **Important:** Prefer `--target=...`. The legacy `--ide` flag still works for `copilot`, `claude`, `both`, and `auto`, but it is deprecated in favor of APM-style targets. If Copilot is installed in a workspace, Specky strips Claude hooks from `.claude/settings.json` to prevent Copilot cross-read blocks. See [docs/INSTALL.md](docs/INSTALL.md) for details.
@@ -114,9 +116,9 @@ npm install --save-dev specky-sdd@latest
114
116
  npx specky install --target=copilot
115
117
  ```
116
118
 
117
- The CLI installs 13 agents, 22 prompts, 14 skills, 16 hooks, the target MCP server registration (pinned to the installed version), and pre-authorizes or scopes tools according to the selected harness. It does **not** pre-authorize arbitrary shell, `rm`, or network access; those still prompt. Run `specky doctor` anytime to validate integrity and config.
119
+ The CLI installs 13 agents, 22 prompts, 14 skills, 16 hooks, and target-local MCP registration pinned to the installed version. Canonical agent capabilities compile to the selected harness's native tools; they are not inferred from workflow prose. Use `--permission-profile=scoped` (default) for narrow Claude pre-authorization, or `--permission-profile=prompt` to leave every approval with the host. Specky does **not** pre-authorize arbitrary shell, `rm`, network access, or credentials. Add `--integration=github` only when GitHub MCP routing is required. Run `specky doctor` anytime to validate integrity and configuration.
118
120
 
119
- Generated assets are platform-native. `specky install --target=copilot` writes GitHub Copilot agents/prompts with VS Code tool names such as `search`, `agent`, and `specky/sdd_get_status`, plus prompt `agent: agent` frontmatter. `specky install --target=claude` writes Claude Code agents/commands with `Read`, `Glob`, `Grep`, `Task`, and `mcp__specky__sdd_get_status`, with Copilot-only prompt metadata removed. Wave 1 APM targets also include Cursor, OpenCode, and the neutral `agent-skills` target.
121
+ Generated assets are platform-native. `specky install --target=copilot` writes GitHub Copilot agents/prompts with VS Code tool names such as `search`, `agent`, and `specky/sdd_get_status`, plus prompt `agent: agent` frontmatter. `specky install --target=claude` writes Claude Code agents/commands with `Read`, `Glob`, `Grep`, `Task`, and `mcp__specky__sdd_get_status`, with Copilot-only prompt metadata removed. Cursor and OpenCode receive their own native vocabulary. `agent-skills` is intentionally skills-only. See [Target Capabilities](docs/TARGET-CAPABILITIES.md) for the full capability matrix, GitHub MCP opt-in, and host approval boundaries.
120
122
 
121
123
  Specky also has an APM governance layer for enterprise package control. `apm.yml` declares the package primitives, targets, and MCP runtime; `apm.lock.yaml` pins primitive hashes; `apm-policy.yml` enforces MCP and tool-name policy. Maintainers and CI can run `specky apm validate`, `specky apm policy`, `specky apm verify-lock`, and `specky apm sbom` before publishing or installing. See [Uso do APM pelo Specky](docs/APM-USAGE.md) for the detailed model, including why APM is not a runtime proxy and why users do not need to install the Microsoft APM CLI.
122
124
 
@@ -175,7 +177,7 @@ flowchart LR
175
177
 
176
178
  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.
177
179
 
178
- 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.
180
+ The result is avoidable rework: requirements, acceptance criteria, design decisions, tasks, tests, and release evidence cannot be traced to one reviewed contract.
179
181
 
180
182
  ### The Solution: Deterministic Development
181
183
 
@@ -195,7 +197,7 @@ The result? Teams spend 40% of their time on rework because requirements were ne
195
197
 
196
198
  Specky adds a **deterministic engine** between your intent and your code:
197
199
 
198
- - **State Machine**: 10 mandatory phases, no skipping. Init, Discover, Specify, Clarify, Design, Tasks, Analyze, Implement, Verify, Release.
200
+ - **State Machine**: signed per-feature phase graphs for full, rapid, and emergency execution modes.
199
201
  - **EARS Validator**: Every requirement validated against 6 patterns. No vague statements pass.
200
202
  - **Cross-Artifact Analysis**: Automatic alignment checking between spec, design, and tasks. Orphaned requirements are flagged instantly.
201
203
  - **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.
@@ -207,18 +209,18 @@ Specky adds a **deterministic engine** between your intent and your code:
207
209
  | Capability | Specky |
208
210
  |---|---|
209
211
  | Complete CLI toolkit | 13 agents, 22 prompts, 14 skills, 16 hooks + 58 MCP tools |
210
- | Pipeline orchestrator | @specky-orchestrator coordinates all 10 phases end-to-end |
212
+ | Pipeline orchestrator | @specky-orchestrator follows the selected feature's signed phase graph |
211
213
  | Onboarding wizard | @specky-onboarding detects context and guides setup |
212
- | Any input (PDF, DOCX, PPTX, transcript, Figma) to spec | 58 MCP tools handle all input formats |
214
+ | Explicit input contracts | Document, transcript, and Figma tools require enabled capabilities and complete parameters |
213
215
  | EARS validation (programmatic, not AI guessing) | 6 patterns enforced at schema level |
214
- | Enforced pipeline (not suggestions) | 10 phases with actual gates that block advancement |
216
+ | Enforced pipeline (not suggestions) | Contract-specific phases, central analysis gate, optional configured LGTM blocking |
215
217
  | Pre/post hooks on every phase | specky-artifact-validator, specky-branch-validator, specky-phase-gate, specky-lgtm-gate |
216
- | 17 diagram types generated automatically | C4 (4 levels), sequence, ER, activity, use case, DFD, deployment, network |
217
- | Infrastructure as Code | Terraform, Bicep, Dockerfile from DESIGN.md |
218
+ | Workload-specific diagrams | Exact required manifest, explicit Mermaid/FigJam payloads, source evidence references |
219
+ | Infrastructure as Code | Terraform from persisted cloud/resources; DESIGN.md evidence required |
218
220
  | Work item export | GitHub Issues, Azure Boards, Jira via MCP-to-MCP routing |
219
- | 6 compliance frameworks | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 built-in |
221
+ | 5 compliance frameworks | HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001 with explicit control-ID evidence |
220
222
  | Cross-artifact traceability | Requirement to design to task to test to code |
221
- | Gitflow-SDD branching | spec/NNN develop stage main |
223
+ | Explicit release policy | Branch prefix, base, draft, and checkpoint choices persisted per feature |
222
224
  | Unified CLI distribution | `npm install -g specky-sdd && specky install --target=copilot` — one binary, multi-OS (macOS/Linux/Windows/WSL) |
223
225
  | First-class harness targets | VS Code + Copilot, Claude Code, Cursor, OpenCode, plus shared `.agents/skills` |
224
226
  | Zero outbound calls from the MCP server | Air-gap friendly; code never leaves your machine. The CLI's once-daily update check is [opt-out](#staying-up-to-date) |
@@ -284,7 +286,7 @@ The onboarding wizard detects your project context (greenfield/brownfield/modern
284
286
  @specky-orchestrator run the pipeline for a todo API
285
287
  ```
286
288
 
287
- The orchestrator coordinates all 10 phases: Init Discover Specify Clarify Design Tasks Analyze Implement Verify Release, with LGTM gates at Specify, Design, and Tasks.
289
+ The orchestrator resolves the selected feature contract and follows its `full`, `rapid`, or `emergency` phase graph. Specify, Design, and Tasks require `lgtm: true` only when workspace configuration enables LGTM enforcement.
288
290
 
289
291
  | Your situation | Guide |
290
292
  |---------------|-------|
@@ -557,26 +559,26 @@ The AI calls `sdd_write_tasks` → creates `TASKS.md` with implementation tasks
557
559
  ### Step 5: Quality gates
558
560
 
559
561
  ```
560
- > Run analysis, compliance check for SOC2, and generate all diagrams
562
+ > Run analysis, submit SOC2 control evidence, and validate the workload-required diagram set
561
563
  ```
562
564
 
563
565
  The AI calls:
564
566
 
565
567
  - `sdd_run_analysis` → completeness audit, orphaned criteria detection
566
- - `sdd_compliance_check` → SOC2 controls validation
567
- - `sdd_generate_all_diagrams` → architecture, sequence, ER, flow, dependency, traceability diagrams
568
+ - `sdd_compliance_check` → evaluates the persisted SOC2 pack using evidence keyed by control ID
569
+ - `sdd_generate_all_diagrams` → validates exactly the workload-required Mermaid payloads against source evidence
568
570
 
569
571
  ### Step 6: Generate infrastructure and tests
570
572
 
571
573
  ```
572
- > Generate Terraform for Azure, a Dockerfile, and test stubs for vitest
574
+ > Generate the persisted Azure Terraform resources, Docker environment, and executable Vitest bindings
573
575
  ```
574
576
 
575
577
  The AI calls:
576
578
 
577
- - `sdd_generate_iac` → Terraform configuration
578
- - `sdd_generate_dockerfile` → Dockerfile + docker-compose
579
- - `sdd_generate_tests` → Test stubs with acceptance criteria mapped to test cases
579
+ - `sdd_generate_iac` → Terraform for the exact cloud/resources stored in the feature contract
580
+ - `sdd_generate_dockerfile` → Dockerfile/compose from the persisted development stack
581
+ - `sdd_generate_tests` → executable tests from fingerprinted requirement bindings
580
582
 
581
583
  ### Step 7: Export and ship
582
584
 
@@ -758,9 +760,9 @@ flowchart LR
758
760
  class G1,G2,G3 gate;
759
761
  ```
760
762
 
761
- 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.
763
+ This diagram is the `full` execution-mode graph. Rapid and emergency contracts persist smaller ordered graphs. The state machine blocks transitions outside the selected feature's graph.
762
764
 
763
- **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.
765
+ **LGTM gates:** Specify, Design, and Tasks can require `lgtm: true` when `.specky/config.yml` enables LGTM enforcement. When disabled, review remains useful but is not a hidden blocking default.
764
766
 
765
767
  **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.
766
768
 
@@ -833,13 +835,13 @@ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
833
835
  | `sdd_validate_ears` | Batch EARS requirement validation |
834
836
  | `sdd_check_sync` | Spec-vs-implementation drift detection report |
835
837
 
836
- ### Diagrams and Visualization (4) -- 17 Diagram Types
838
+ ### Diagrams and Visualization (4) Workload-Contracted Payloads
837
839
 
838
840
  | Tool | Description |
839
841
  |------|-------------|
840
- | `sdd_generate_diagram` | Single Mermaid diagram (17 software engineering diagram types) |
841
- | `sdd_generate_all_diagrams` | All diagrams for a feature at once |
842
- | `sdd_generate_user_stories` | User stories with flow diagrams |
842
+ | `sdd_generate_diagram` | Single Mermaid diagram validated against the workload contract's required set |
843
+ | `sdd_generate_all_diagrams` | The exact diagram set the feature contract requires, written atomically |
844
+ | `sdd_generate_user_stories` | User stories with flow diagrams (web-application workload) |
843
845
  | `sdd_figma_diagram` | FigJam-ready diagram via Figma MCP |
844
846
 
845
847
  ### Infrastructure as Code (3)
@@ -893,15 +895,15 @@ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
893
895
 
894
896
  | Tool | Description |
895
897
  |------|-------------|
896
- | `sdd_generate_tests` | Generate test stubs from acceptance criteria (vitest/jest/playwright/pytest/junit/xunit) |
898
+ | `sdd_generate_tests` | Assemble executable tests from persisted requirement bindings (vitest/jest/playwright/pytest/junit/xunit) |
897
899
  | `sdd_verify_tests` | Verify test results against requirements, report traceability coverage |
898
- | `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 |
900
+ | `sdd_generate_pbt` | Assemble executable fast-check or Hypothesis properties from persisted requirement bindings; no generated model stubs |
899
901
 
900
902
  ### Turnkey Specification (1)
901
903
 
902
904
  | Tool | Description |
903
905
  |------|-------------|
904
- | `sdd_turnkey_spec` | Generate a complete EARS specification from a natural language description. Auto-extracts requirements, classifies all 6 EARS patterns, generates acceptance criteria, infers non-functional requirements, and identifies clarification questions |
906
+ | `sdd_turnkey_spec` | Assemble caller-authored EARS requirements, criteria, evidence, discovery context, and clarification responses for an initialized feature; never infers requirements or creates state |
905
907
 
906
908
  ### Checkpointing (3)
907
909
 
@@ -921,7 +923,7 @@ All artifacts are saved in [`.specs/NNN-feature/`](#where-specifications-live).
921
923
 
922
924
  | Tool | Description |
923
925
  |------|-------------|
924
- | `sdd_model_routing` | Model routing decision table for all 10 phases with cost analysis |
926
+ | `sdd_model_routing` | Capability-class routing guidance for the phase vocabulary; the selected feature graph controls applicable phases |
925
927
  | `sdd_context_status` | Context tier assignment (Hot/Domain/Cold) for spec artifacts with token savings |
926
928
  | `sdd_check_access` | RBAC access check for current role with per-tool permissions summary |
927
929
 
@@ -1161,7 +1163,7 @@ Specky is 100% open source (MIT) — enterprise mode is just an opt-in configura
1161
1163
 
1162
1164
  - **3 runtime dependencies** — minimal attack surface (`@modelcontextprotocol/sdk`, `zod`, `yaml`)
1163
1165
  - **Zero outbound network requests from the MCP server** — all data stays local; the CLI's optional once-daily update check is the only network touch ([opt-out](#staying-up-to-date))
1164
- - **No `eval()` or dynamic code execution** template rendering is string replacement only
1166
+ - **Strict template rendering** missing variables/loops raise `TemplateRenderError`; no TODO substitution or dynamic template execution
1165
1167
  - **Path traversal prevention**: FileManager sanitizes all paths, blocks `..` sequences
1166
1168
  - **Zod `.strict()` validation** — every tool input is schema-validated; unknown fields rejected
1167
1169
  - **specky-security-scan hook** blocks commits containing hardcoded secrets (exit code 2)
@@ -1183,7 +1185,7 @@ When using Specky, follow these practices to protect your data:
1183
1185
  | **Never expose HTTP mode to public networks without TLS** | HTTP has optional bearer-token auth but no TLS | `--http` binds to `127.0.0.1` by default; set `SDD_HTTP_TOKEN` (shared) or `SDD_HTTP_TOKENS_FILE` (per-user identity + role) for bearer auth. For remote access, add a reverse proxy (nginx, Caddy) terminating TLS |
1184
1186
  | **Protect the `.specs/` directory** | Contains your specification artifacts (architecture, API contracts, business logic) | Add `.specs/` to `.gitignore` if specs contain sensitive IP, or use a private repo |
1185
1187
  | **Protect checkpoints** | `.specs/{feature}/.checkpoints/` stores full artifact snapshots | Same as above — treat checkpoints like source code |
1186
- | **Review auto-generated specs before committing** | Turnkey and auto-pipeline generate from natural language — may capture sensitive details | Review SPECIFICATION.md and DESIGN.md before `git add` |
1188
+ | **Review source-backed artifacts before committing** | Transcript/document inputs and explicit source quotes may contain sensitive details | Review SPECIFICATION.md, DESIGN.md, and TRANSCRIPT.md before `git add` |
1187
1189
  | **Keep the specky-security-scan hook enabled** | Detects API keys, passwords, tokens in staged files | Comes pre-configured; don't disable `.claude/hooks/specky-security-scan.sh` |
1188
1190
  | **Use environment variables for secrets** | Specky never stores credentials, but your specs might reference them | Write `$DATABASE_URL` in specs, never the actual connection string |
1189
1191
  | **Run `npm audit` regularly** | Catches dependency vulnerabilities | `npm audit` — CI runs this automatically on every PR |
@@ -1253,9 +1255,9 @@ npm run dev
1253
1255
  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
1254
1256
 
1255
1257
  # Run the published image from GHCR (multi-arch: linux/amd64 + linux/arm64)
1256
- docker pull ghcr.io/paulasilvatech/specky:latest # or pin a release: :3.10.2
1258
+ docker pull ghcr.io/paulasilvatech/specky:latest # or pin a release: :3.11.1
1257
1259
  docker run --rm -p 3200:3200 ghcr.io/paulasilvatech/specky:latest
1258
- curl http://localhost:3200/health # -> {"status":"ok","version":"3.10.2"}
1260
+ curl http://localhost:3200/health # -> {"status":"ok","version":"3.11.1"}
1259
1261
 
1260
1262
  # Or build and run locally from source
1261
1263
  docker build -t specky-sdd:dev .
@@ -1270,20 +1272,20 @@ deployments (enterprise profile, token auth, TLS proxy, private packages) see
1270
1272
 
1271
1273
  ## Roadmap
1272
1274
 
1273
- ### v3.10 (current)
1275
+ ### v3.11.1 (current)
1274
1276
 
1275
1277
  | Capability | Status |
1276
1278
  |------------|--------|
1277
- | 58 MCP tools across 10 enforced pipeline phases | Stable |
1279
+ | 58 MCP tools driven by signed per-feature use-case contracts | Stable |
1278
1280
  | Unified `specky` CLI: install, doctor, status, upgrade, hooks, serve | Stable |
1279
1281
  | Target-specific install: `--target=copilot`, `claude`, `cursor`, `opencode`, or `agent-skills` | Stable |
1280
1282
  | Copilot-safe hook manifests (no lifecycle event cross-read) | Stable |
1281
1283
  | Phase validation on every tool with gate enforcement | Stable |
1282
- | 17 software engineering diagram types (C4, sequence, ER, DFD, deployment, network) | Stable |
1284
+ | Workload-contracted diagram sets (C4, sequence, ER, DFD, deployment, network) | Stable |
1283
1285
  | 12-section system design template (C4 model, security, infrastructure) | Stable |
1284
1286
  | Enriched interactive responses on all tools (progress, handoff, education) | Stable |
1285
1287
  | Parallel documentation generation (5 types via Promise.all) | Stable |
1286
- | Turnkey spec from natural language (`sdd_turnkey_spec`) | Stable |
1288
+ | Explicit turnkey specification assembly (`sdd_turnkey_spec`) | Stable |
1287
1289
  | Property-based testing with fast-check and Hypothesis (`sdd_generate_pbt`) | Stable |
1288
1290
  | Checkpoint/restore for spec artifacts | Stable |
1289
1291
  | Intelligence layer: model routing hints on all tools | Stable |
@@ -1293,7 +1295,7 @@ deployments (enterprise profile, token auth, TLS proxy, private packages) see
1293
1295
  | Intent drift detection with amendment suggestions | Stable |
1294
1296
  | 16 automation hooks (advisory-default, strict opt-in via SPECKY_GUARD) | Stable |
1295
1297
  | 13 specialized agents + 22 prompts + 14 skills | Stable |
1296
- | 6 compliance frameworks (HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001) | Stable |
1298
+ | 5 compliance frameworks (HIPAA, SOC2, GDPR, PCI-DSS, ISO 27001) with explicit control evidence | Stable |
1297
1299
  | 6 input types (transcript, PDF, DOCX, Figma, codebase, raw text) | Stable |
1298
1300
  | Test generation for 6 frameworks (vitest, jest, playwright, pytest, junit, xunit) | Stable |
1299
1301
  | MCP-to-MCP routing (GitHub, Azure DevOps, Jira, Terraform, Figma, Docker) | Stable |
@@ -1312,7 +1314,7 @@ deployments (enterprise profile, token auth, TLS proxy, private packages) see
1312
1314
  | OpenCode two-step bootstrap (`install` + `compile`) | Stable |
1313
1315
  | VS Code MCP dual schema (`servers` + `mcpServers`) | Stable |
1314
1316
 
1315
- ### v3.11+ (planned)
1317
+ ### Future capabilities (planned)
1316
1318
 
1317
1319
  | Feature | Description |
1318
1320
  |---------|-------------|
package/SECURITY.md CHANGED
@@ -46,6 +46,10 @@ AI Client → JSON-RPC → Zod .strict() validation → Service layer
46
46
 
47
47
  Specky does **not** use `eval()`, `Function()`, `vm.runInNewContext()`, or any dynamic code execution. Template rendering uses string replacement only — no template engines that execute code.
48
48
 
49
+ ### Agent Capability Boundaries
50
+
51
+ The Specky MCP server does not execute arbitrary shell commands or persist GitHub credentials. Generated agents may declare narrowly scoped Git, test, or release-gate capabilities, but the selected host runtime executes and approves those native tools. The optional GitHub MCP integration is registered only with `specky install --integration=github`; GitHub authentication and repository authorization remain with the signed-in host identity. See [Target Capabilities](docs/TARGET-CAPABILITIES.md).
52
+
49
53
  ### Network Calls
50
54
 
51
55
  The **MCP server makes zero outbound network calls**. All data stays on the user's machine. It communicates only via stdio (JSON-RPC over stdin/stdout) or optional HTTP transport on localhost, and this holds unconditionally — `specky serve` never performs the update check described below.
@@ -127,7 +131,7 @@ The audit trail's plain hash chain detects corruption but not deliberate rewriti
127
131
  - Zero `any` types in source code — enforced by CI
128
132
  - All schemas use `.strict()` — rejects unknown fields
129
133
  - `FileManager` is the sole I/O boundary — no direct `fs` calls in tools or other services
130
- - No shell command execution branch names and PR payloads are data only, not executed
134
+ - The Specky MCP server does not execute shell commands; target runtimes may execute only the explicitly declared, host-approved agent capabilities
131
135
 
132
136
  ## Security Best Practices for Users
133
137
 
package/apm-policy.yml CHANGED
@@ -16,6 +16,8 @@ mcp:
16
16
  allowTransitive: false
17
17
  allowedServers:
18
18
  - specky
19
+ optionalCapabilityServers:
20
+ - github
19
21
 
20
22
  # Hook governance. Hook manifests may only register these event types.
21
23
  hooks:
package/apm.lock.yaml CHANGED
@@ -2,45 +2,47 @@
2
2
  schemaVersion: 1
3
3
  package:
4
4
  name: specky-sdd
5
- version: 3.10.2
5
+ version: 3.11.1
6
6
  primitives:
7
- .apm/agents/specky-design-architect.agent.md: sha256:a9411a98bd2fe4c4aa1e6eab66e84eaf9a010897d408e1737a279fe58f7023b2
8
- .apm/agents/specky-implementer.agent.md: sha256:76c546fe70fe3f5399ba25f0e6de3d9b280880fe7c12d88f093cee55c0b02ece
9
- .apm/agents/specky-onboarding.agent.md: sha256:755a51c27eb1fe044ce4940fe6dda3a8eb0ff983c04d1c00e1d59be59723aa9d
10
- .apm/agents/specky-orchestrator.agent.md: sha256:aae379a2dd8833fc9861ee9302f244032856a739b3fb31f568713f866a16f0c8
11
- .apm/agents/specky-quality-reviewer.agent.md: sha256:cdcbe7bee2a4c669b52b8a67d5f31bc01ea0b518ca6daabf57a4603af2312c83
12
- .apm/agents/specky-release-engineer.agent.md: sha256:b33e0f64b6fe23fb427c9368945d76e780aff1d8d848ab67bbcb2fa1a03f50e9
13
- .apm/agents/specky-requirements-engineer.agent.md: sha256:69f84bf9a9f7d76475f7a21e9067c906b73c2a867db9fefe50abee2a4942b762
14
- .apm/agents/specky-research-analyst.agent.md: sha256:4bc469d91b8c573cde9097efdbf1ba9fc0bc9580b4e0148e679bb689fbf744b0
15
- .apm/agents/specky-sdd-clarify.agent.md: sha256:6dcd4879b2fff198a1fa80d61003eec852d4b1a82b7da1bf46c037a00bd463b6
16
- .apm/agents/specky-sdd-init.agent.md: sha256:dff5a301375885781085f0421524cd58ef2305c43084c71e09625c2255182e8a
17
- .apm/agents/specky-spec-engineer.agent.md: sha256:1a119fb44d1e48189726d61a1fbe11b2291535defed71316a8dba01f43401efd
18
- .apm/agents/specky-task-planner.agent.md: sha256:5be3951932c925d09ff7c0a6066ccad2e25bc9fcc3950088b6966cefe6b98fde
19
- .apm/agents/specky-test-verifier.agent.md: sha256:26291f7940f909649da55f8755f0b4a03bbaeae15e2fd61c18f00e7488d44220
20
- .apm/hooks/scripts/specky-artifact-validator.sh: sha256:2c255e3221cca919ace520ce319c66cc4904aa9c917ce08a52547fe63f8d9770
21
- .apm/hooks/scripts/specky-auto-checkpoint.sh: sha256:46d5a336b20c844469574b2281b5cae24ee5116547a262bb160135aaef38d62e
22
- .apm/hooks/scripts/specky-branch-validator.sh: sha256:73256941bdc4aaac518935214c6f0029f32b1529307088243142fe7423594cf6
23
- .apm/hooks/scripts/specky-cognitive-debt-alert.sh: sha256:b790bfcc693081e22639704e9f99e76635aa34474b1cdbe2bae2204fc9d69dae
24
- .apm/hooks/scripts/specky-drift-monitor.sh: sha256:842636d4e125d855c47dfae1182113f684b0dbe9a215d47105f66a8ccec431f4
25
- .apm/hooks/scripts/specky-ears-validator.sh: sha256:96d6b1f64d64d9e230b95f3f90487c8109eb3f72d1420b106fcb2b0d5a2807a0
26
- .apm/hooks/scripts/specky-lgtm-gate.sh: sha256:7ec0a7b92dfec4f419785cab0005df452d41ce9f3edcb1c283e7fe93408e9c0b
27
- .apm/hooks/scripts/specky-metrics-dashboard.sh: sha256:5893891464add75f138e01717679e8e40c504b757d0520d0131d67210aca82ae
28
- .apm/hooks/scripts/specky-phase-gate.sh: sha256:28c2a180b64290312f224dcbc702a50dd812a01200e011e6d662738af113c6e2
29
- .apm/hooks/scripts/specky-pipeline-guard.sh: sha256:c985e7d7ad0b31ef4045557122e5d6804707f6c41c7ca89d974822d1557d8b53
30
- .apm/hooks/scripts/specky-release-gate.sh: sha256:6216bb9eaeccd761e92673231cfd0d13674f4b0dcd170f58daf8db9d3074cf00
31
- .apm/hooks/scripts/specky-security-scan.sh: sha256:eacda868bfffdfd483b820774f86b37e64578effb1019fdffebfd7651348692c
32
- .apm/hooks/scripts/specky-session-banner.sh: sha256:731c33f21cf9346258d97f3926a6482e702ff6697afa6b1dda241a9a1c124f51
33
- .apm/hooks/scripts/specky-spec-quality.sh: sha256:c0f0a47f108257f75140de5b06619b994d1833462ebba569d4c46fcb973d2e51
34
- .apm/hooks/scripts/specky-spec-sync.sh: sha256:48072608e947a19df03b136627c8b7cf01597cee0aed4b15d01fc9f2a5daccea
35
- .apm/hooks/scripts/specky-task-tracer.sh: sha256:fe7bf1d20dc48f21b68b78b8540ce6c9bbeb6b1e299b3099579b7cc922fd3588
7
+ .apm/agents/specky-design-architect.agent.md: sha256:54c69e392e21cbc1097fce8dd9d53d457d2a80d442390c6072c7d8dc5429c47f
8
+ .apm/agents/specky-implementer.agent.md: sha256:4bad0b5238d185e25011cc01de90a146d2e719ad2621c814989c5e2986f13772
9
+ .apm/agents/specky-onboarding.agent.md: sha256:ce0ef19ef0a54d354dfe376daf70182689eb938f28675ba50d59c2a728f40e67
10
+ .apm/agents/specky-orchestrator.agent.md: sha256:4c5199380792fac7a551c5be570d157a064e677d741f0477e841e15d0766c816
11
+ .apm/agents/specky-quality-reviewer.agent.md: sha256:6e50b686360f780d35c6d2732fefd4d650a613488aba4923e924bafe725521f8
12
+ .apm/agents/specky-release-engineer.agent.md: sha256:fba4fcc0ebd15e7a77a13f03dd15370bf4f2baf2bed54ede550de26258f37a2f
13
+ .apm/agents/specky-requirements-engineer.agent.md: sha256:9393480399ced54dd8b201e6821103c9ed9e27fdbdf7426745e0da9535f60ddb
14
+ .apm/agents/specky-research-analyst.agent.md: sha256:92cd4041e0b021efa310e2cf12abb3c45e8f08e490e4b9bb275a81f4c4845cd9
15
+ .apm/agents/specky-sdd-clarify.agent.md: sha256:0dac1b774dc616eecddd5937e6ee520de32cdb12482fe3c25181a9e199d82302
16
+ .apm/agents/specky-sdd-init.agent.md: sha256:884835a042774aa0f94d4442585d3ae9c101496b96645218be6e539d00cb708d
17
+ .apm/agents/specky-spec-engineer.agent.md: sha256:aeea9446edd6a993b70d46367e1a4f43e847eb199ef6e2e549693721604dd962
18
+ .apm/agents/specky-task-planner.agent.md: sha256:44f9ef861eb4efa3de02b0d13b66a9abe029bab674e88afd1c4b4af9d8526177
19
+ .apm/agents/specky-test-verifier.agent.md: sha256:b93435c5947c3f8ee8cc63f0f197d622ad20c45f8b615b23c7b7efbae44e1442
20
+ .apm/hooks/scripts/specky-artifact-validator.sh: sha256:5d75f3d61ae7a4dd51fc5c8470444c003e983eb7f90edfdbd06fcf614cfa388d
21
+ .apm/hooks/scripts/specky-auto-checkpoint.sh: sha256:b10018985bc627d33b7a0ef29c2e743b3b6ef20f0d35d60b05c381fd2c58ae53
22
+ .apm/hooks/scripts/specky-branch-validator.sh: sha256:185e49625b35f6cf926ec3f73a947d05000c2e232a8e55bd2528ac7a32f84a9d
23
+ .apm/hooks/scripts/specky-cognitive-debt-alert.sh: sha256:125df179fc4778970ddceb6283bcd6f62cf67705c80e452cc389dedecc3f81a5
24
+ .apm/hooks/scripts/specky-contract-context.bash: sha256:0093dcd64fd7e3e498398208005ac280db71742585d9ed1cc91966491133393a
25
+ .apm/hooks/scripts/specky-contract-context.mjs: sha256:2a8ce6fc8861ab9668ff36c6cbf260421cf623538a1a7cb7d60ea1a1b1fd60c1
26
+ .apm/hooks/scripts/specky-drift-monitor.sh: sha256:2050c40fdc74ce636e64c4c4e8b448102eddee77e3a274a26430feb8546d5f90
27
+ .apm/hooks/scripts/specky-ears-validator.sh: sha256:e267fa02d60fc660a9b1eb022e52fe3514aa0e7890b685e80de231222039b926
28
+ .apm/hooks/scripts/specky-lgtm-gate.sh: sha256:6ba53f5a9ebc593a0ecc6ccd21fa7006876731c4871cffb11662437a37299b08
29
+ .apm/hooks/scripts/specky-metrics-dashboard.sh: sha256:05894d6a7fb08c5063f201ed41c4b4a7bc1016958fac823b2344b1847021874f
30
+ .apm/hooks/scripts/specky-phase-gate.sh: sha256:aacef51523610811f0dc0bcbdbfb883ae9e87c90197e89d6a0f452990cd8e02a
31
+ .apm/hooks/scripts/specky-pipeline-guard.sh: sha256:cabcc62ff28c3077e7eafb3b1d8e8341242202d17ad16c8bce270e99f891b190
32
+ .apm/hooks/scripts/specky-release-gate.sh: sha256:7963ea92861ea7bc2f13813ae19f0d618002fa406d64a5bb6c100ad42e28501c
33
+ .apm/hooks/scripts/specky-security-scan.sh: sha256:5d621e43dec7ac3a9be607ecc622a1548c6f9aefa6f5a470d5d094fb60e41626
34
+ .apm/hooks/scripts/specky-session-banner.sh: sha256:92928d633f34186f9d35450f6bd02292211dae96ca08ef01a2854aa1deffc82a
35
+ .apm/hooks/scripts/specky-spec-quality.sh: sha256:2b94a846076807700cdbb157f2ef4bddbe1dfb4b32fbc6d1aed5e4b9a67715cd
36
+ .apm/hooks/scripts/specky-spec-sync.sh: sha256:a884d4b6d44af3f3c7dcd536c9c9b2dfa08855a54d2020c8f1274f217a2f165f
37
+ .apm/hooks/scripts/specky-task-tracer.sh: sha256:db4b7fbc5799da2ac2ac7d5b434b03af7797e5d977cdf4e7e26531a8f9eeb96d
36
38
  .apm/hooks/sdd-hooks.json: sha256:ec018c950bfca25d9e67da9eb69bdaf6ca9d38ed7ebc5696f6bd06bffdec55f5
37
- .apm/hooks/specky-run.sh: sha256:0cb829414419cc05d5a592df130630045ef94d319f292815203b378b571bd721
38
- .apm/instructions/claude-instructions.instructions.md: sha256:9b3b77bb220950b3d087b0d5b5999bc60aa4a6d7a07b87fff914e4c1aa872982
39
- .apm/instructions/copilot-instructions.instructions.md: sha256:9acf227bde8f64f18b15c174171fa148f6d08dec48f163ad4524da77b4a0c93c
40
- .apm/instructions/cursor-instructions.instructions.md: sha256:ee58c87b29de0c58f373834ebee31c469943821f655153febec6bd1f6c649051
41
- .apm/instructions/opencode-instructions.instructions.md: sha256:a93d80cef598d99ea4d5116aa64c1e5c8c392316dea31b0448975677a9aac450
39
+ .apm/hooks/specky-run.sh: sha256:d5d1a41de4aec428c86a358b37fc248df1e0a3856957b01bd0be389aa4124c4d
40
+ .apm/instructions/claude-instructions.instructions.md: sha256:52eee0c2b4d75830552e6da7aceb33e866d536af71e2a8df17f0c2e5edef304e
41
+ .apm/instructions/copilot-instructions.instructions.md: sha256:99c8f75e8ed9912d9b7e1198f40eee964e50fdf2dbbe86f65b8d90646a7d4b17
42
+ .apm/instructions/cursor-instructions.instructions.md: sha256:1e53572ad481e21427c724ac7ee5fab1c2895e4d211feeaa7f6b8fa706f683db
43
+ .apm/instructions/opencode-instructions.instructions.md: sha256:944db8341600fabcd83e49102fef2c9657462acd57b8f081d56198bb37abcf53
42
44
  .apm/prompts/specky-api.prompt.md: sha256:4a13ba39ba58773cbb0bf39c12e462a80d2348aa5fdc4ce612f924658f00c7ed
43
- .apm/prompts/specky-brownfield.prompt.md: sha256:0f66839cc82434fead66a7dd5e26934f385afc95a3537b414471f3603b31b4ec
45
+ .apm/prompts/specky-brownfield.prompt.md: sha256:f3d20312ca7dc7d7c2d0005b9b475fdf7ca542aff77c42511192ba49c1b731cd
44
46
  .apm/prompts/specky-check-drift.prompt.md: sha256:f3a04b00ef10167cbd1cdcf63f8b8595d3bc8196d107b48963f8b123f711f3af
45
47
  .apm/prompts/specky-clarify.prompt.md: sha256:60ec6230c3dbf2c943896dae07f8643335e55ce6e14a90d91b815fe77aada930
46
48
  .apm/prompts/specky-debug-hook.prompt.md: sha256:c5c0054280f3f05103f4ac2459631f6f1494fe10f248bf8c9a4779d83f5d60b4
@@ -48,11 +50,11 @@ primitives:
48
50
  .apm/prompts/specky-design.prompt.md: sha256:c125b4e9da56de11160189b6c23665a181b35753cd4c86191925e7896f282f24
49
51
  .apm/prompts/specky-from-figma.prompt.md: sha256:0ba1d4d4a9ced39ea89bae8fa98ae3449c2d973510e9a6cf80e3cfe9f29b1fce
50
52
  .apm/prompts/specky-from-meeting.prompt.md: sha256:7682a5a2784fd8b9f95e67eca8d8eb21f4755c5c3e5ad4f2c02412493f9ac35f
51
- .apm/prompts/specky-greenfield.prompt.md: sha256:64f6cce93ad3fad4f61c72aa079b27bc8c78f43915a8ceff022a3b703fadb230
52
- .apm/prompts/specky-implement.prompt.md: sha256:94cb003d5a096b28c099a09cf003dfc3c4da2eb841b859cf1f56f79f5e1bfaec
53
+ .apm/prompts/specky-greenfield.prompt.md: sha256:07e8c25dbd0a7532f1a23535a88789bd501bacb3fbf7f9501c3b8e9c533f5ea5
54
+ .apm/prompts/specky-implement.prompt.md: sha256:2253cdf444bb8f3f7472f785f4632b5edfbaa0fe9bc123989320936ba2ec5274
53
55
  .apm/prompts/specky-migration.prompt.md: sha256:b0ec812513f30718be36666dd2a4cc377ec099d68928e9bfc691ac14360e36f6
54
56
  .apm/prompts/specky-onboarding.prompt.md: sha256:164d338bf9b48b6f4bbaf78ebcdc504f96c871913add892188b53f35f9b72911
55
- .apm/prompts/specky-orchestrate.prompt.md: sha256:8b40cc61bed8f85103c0bf6ea5ff4fa4741b0b8af6a18ec71dc8a049434cf62e
57
+ .apm/prompts/specky-orchestrate.prompt.md: sha256:170aae7b935cfd18607101bea80400e80d6faa362817ccc1eb29c97f6ed590b9
56
58
  .apm/prompts/specky-pipeline-status.prompt.md: sha256:3c796d1c8e46c635eda5cb08d890b711ce129308ffa309923874361e7912cc27
57
59
  .apm/prompts/specky-release.prompt.md: sha256:6bf07516853fc1ce31d73af9ecaf8c9c49d02c060fd4fe7f9cda329805f3c1c5
58
60
  .apm/prompts/specky-research.prompt.md: sha256:bb1040cbfeb90f9c3ecd0ae6f31e3dbfa09e7937c970844d107414fc7b7f54de
@@ -61,21 +63,21 @@ primitives:
61
63
  .apm/prompts/specky-specify.prompt.md: sha256:b160f1e6d90657702430a404bd7a372f98161b4c78a1d2f43e827cb0b2dc3e04
62
64
  .apm/prompts/specky-tasks.prompt.md: sha256:e06dd4cd6c4e7edddd2bc8319bacc6b4b4c849d3e52ba892fa08f4a77ed711cc
63
65
  .apm/prompts/specky-verify.prompt.md: sha256:217327ac0c25b1d39c2fa41390f535aaae38e7c81d8e4cf3127917f44f98d3b9
64
- .apm/skills/specky-design-architect/SKILL.md: sha256:2fd4cfccbef9083e5b124b026bceb7caab664675fc72b8144488b14bc4dfbaae
65
- .apm/skills/specky-implementer/SKILL.md: sha256:fba84269cb3dc350d5c9dfe307e2dceec635ed4bafe9c4a59e460846acbd267b
66
- .apm/skills/specky-onboarding/SKILL.md: sha256:52ad70e7b3962745bd49e636cf2ec27f893f5e8b231c5eabf342db6378af73bd
67
- .apm/skills/specky-orchestrator/SKILL.md: sha256:7164ed55355028c8ebb40631b90d9901640aece221039d9fa9764f081643fb1d
68
- .apm/skills/specky-quality-reviewer/SKILL.md: sha256:0ed6a9f62d16b0e65eb491f4c30fbf9b87bc4ffd67fce0759f94c85be816db32
69
- .apm/skills/specky-release-engineer/SKILL.md: sha256:45e642cca21ca4b27bf78e96d8f16d59a30a3fd9b7d913ac00470d6c0a8ebeea
70
- .apm/skills/specky-research-analyst/SKILL.md: sha256:2a136457af156ce9225798a9c25097b0fcf1e6e9582ac55afd60cc03085b38fa
66
+ .apm/skills/specky-design-architect/SKILL.md: sha256:72d1e3317f13ea005c722c96d2c5fb263f326da1548ddd23c669fab7665e42b8
67
+ .apm/skills/specky-implementer/SKILL.md: sha256:475cc070ffeaf0fd7a32ce13ef428e9466431ae78319e928b078884d20104b7e
68
+ .apm/skills/specky-onboarding/SKILL.md: sha256:7fe13985db0bcfbd2a3dde10424949c30aaeb8cabd94c3c5860550f76c8c7601
69
+ .apm/skills/specky-orchestrator/SKILL.md: sha256:ea59f3fb697e9a80818cd438be012e6dc567f976c2730b96e8e20a90d4c3ac94
70
+ .apm/skills/specky-quality-reviewer/SKILL.md: sha256:fdba4e24141898c9222dbb38be2f08b0b2ba82950c10088553445b95edf78835
71
+ .apm/skills/specky-release-engineer/SKILL.md: sha256:a4345263b6414031b4e6ef09938a011438e697b73aa86ee37f3819bc1bce8c87
72
+ .apm/skills/specky-research-analyst/SKILL.md: sha256:f78ab9100a54c4b438ac9d9b6090c4a7c498d39d3cdba6b8952615bdc7619f1e
71
73
  .apm/skills/specky-sdd-clarify/SKILL.md: sha256:7d4958d33b71671fa932b82d88da90f7f055c9ba97e45e1083f7db1b9097f42d
72
- .apm/skills/specky-sdd-init/SKILL.md: sha256:a64c25719b1fbc3b74fe85a5b3284261023382dd393f79d73269c7ebe12f7e67
74
+ .apm/skills/specky-sdd-init/SKILL.md: sha256:5849974e38a3d7dd2e68737d66c8ec932d1dd06107ca594cceeb63e7ecce09d6
73
75
  .apm/skills/specky-sdd-markdown-standard/SKILL.md: sha256:ca74b956fa30cc40f2223e6692797f3d7048ddf5b3e082835476fa3e0de1af66
74
76
  .apm/skills/specky-sdd-pipeline/references/ears-notation.md: sha256:580dc051802750904ef409b9f89873ad250326bc17c992bd53366b3b1a04f1c5
75
77
  .apm/skills/specky-sdd-pipeline/references/model-routing.md: sha256:6ca9bd5cde2a8d227c795d37c4d43b712dd183c10d5d87b987514b494f7c28f3
76
- .apm/skills/specky-sdd-pipeline/SKILL.md: sha256:a056e76afcc13964ace69f5fdca001d02870c83e171286b0763919048bbd1027
77
- .apm/skills/specky-spec-engineer/SKILL.md: sha256:b5722dacc513a69b54a2d474e1dfa4a25029c5f6f2a930fae3b0ed8f3c9eb49e
78
- .apm/skills/specky-task-planner/SKILL.md: sha256:bf391eaa0541ae507f99eacd18a8747b597bcde4ff84d9a389fdc4aad5e76ed7
79
- .apm/skills/specky-test-verifier/SKILL.md: sha256:7e663a68f597f409a7209e07830b90b467052583bde8557eed389848baaa8609
80
- apm-policy.yml: sha256:421910c17b1a7431f1336d8374538c111245c0c1de58adc6d8eddc185010a639
81
- apm.yml: sha256:faaad94df10783caf1226b684caac659685a418e70e3f4172610bdbfc89cdb5e
78
+ .apm/skills/specky-sdd-pipeline/SKILL.md: sha256:4ba6750b0a3e370fe396980cc63f929f79e94f09542bb97e9c951c40bdc55a82
79
+ .apm/skills/specky-spec-engineer/SKILL.md: sha256:372ae3faf5cddf9ba90e1133c0117b032f5ae697069d008e3a3f797e78d60e83
80
+ .apm/skills/specky-task-planner/SKILL.md: sha256:9c1d97624c293525cca9bea253a1f186de593e0d130a5a2b8a704451a200a1f4
81
+ .apm/skills/specky-test-verifier/SKILL.md: sha256:cae6ad89db7ea84aaaab66665db3dbccd3106aedccd73a0869ae7badcc8a2673
82
+ apm-policy.yml: sha256:560cfde2c8efe36bdc2cbb095f259506d51312249d3b4cee67640e244e972530
83
+ apm.yml: sha256:408667a5ff6d41cd041bbabc599aa304a6f05ce2a82fe5bd47a428a776297860
package/apm.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  name: specky-sdd
2
- version: 3.10.2
2
+ version: 3.11.1
3
3
  description: "Agentic Spec-Driven Development — 10-phase pipeline with 58 MCP tools, 13 agents, 22 prompts, 14 skills, 16 hooks, EARS notation, model routing, and enterprise security"
4
4
  author: Paula Silva
5
5
  license: MIT
@@ -32,7 +32,7 @@ mcp:
32
32
  registry: false
33
33
  transport: stdio
34
34
  command: npx
35
- args: ["-y", "specky-sdd@latest", "serve"]
35
+ args: ["-y", "specky-sdd@3.11.1", "serve"]
36
36
  tools: ["sdd_*"]
37
37
 
38
38
  dependencies:
@@ -41,7 +41,7 @@ dependencies:
41
41
  registry: false
42
42
  transport: stdio
43
43
  command: npx
44
- args: ["-y", "specky-sdd@latest"]
44
+ args: ["-y", "specky-sdd@3.11.1"]
45
45
  tools: ["*"]
46
46
 
47
47
  scripts: