@planu/cli 0.96.4 → 0.97.0

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 (238) hide show
  1. package/dist/cli/commands/install.d.ts.map +1 -1
  2. package/dist/cli/commands/install.js +70 -2
  3. package/dist/cli/commands/install.js.map +1 -1
  4. package/dist/config/compliance-profiles.json +62 -0
  5. package/dist/config/license-plans.json +19 -2
  6. package/dist/config/spec-templates/crud-rest-api/spec.md +35 -0
  7. package/dist/config/spec-templates/crud-rest-api/template.json +10 -0
  8. package/dist/config/spec-templates/email-notifications/spec.md +31 -0
  9. package/dist/config/spec-templates/email-notifications/template.json +10 -0
  10. package/dist/config/spec-templates/file-upload-s3/spec.md +31 -0
  11. package/dist/config/spec-templates/file-upload-s3/template.json +11 -0
  12. package/dist/config/spec-templates/jwt-auth/spec.md +35 -0
  13. package/dist/config/spec-templates/jwt-auth/template.json +10 -0
  14. package/dist/config/spec-templates/oauth-social-login/spec.md +31 -0
  15. package/dist/config/spec-templates/oauth-social-login/template.json +10 -0
  16. package/dist/config/spec-templates/rate-limiting/spec.md +31 -0
  17. package/dist/config/spec-templates/rate-limiting/template.json +10 -0
  18. package/dist/config/spec-templates/stripe-payments/spec.md +32 -0
  19. package/dist/config/spec-templates/stripe-payments/template.json +10 -0
  20. package/dist/config/spec-templates/webhook-system/spec.md +36 -0
  21. package/dist/config/spec-templates/webhook-system/template.json +10 -0
  22. package/dist/engine/agent-ready-exporter/formatters/devin.d.ts +7 -0
  23. package/dist/engine/agent-ready-exporter/formatters/devin.d.ts.map +1 -0
  24. package/dist/engine/agent-ready-exporter/formatters/devin.js +23 -0
  25. package/dist/engine/agent-ready-exporter/formatters/devin.js.map +1 -0
  26. package/dist/engine/agent-ready-exporter/formatters/generic.d.ts +7 -0
  27. package/dist/engine/agent-ready-exporter/formatters/generic.d.ts.map +1 -0
  28. package/dist/engine/agent-ready-exporter/formatters/generic.js +9 -0
  29. package/dist/engine/agent-ready-exporter/formatters/generic.js.map +1 -0
  30. package/dist/engine/agent-ready-exporter/formatters/kiro.d.ts +6 -0
  31. package/dist/engine/agent-ready-exporter/formatters/kiro.d.ts.map +1 -0
  32. package/dist/engine/agent-ready-exporter/formatters/kiro.js +34 -0
  33. package/dist/engine/agent-ready-exporter/formatters/kiro.js.map +1 -0
  34. package/dist/engine/agent-ready-exporter/formatters/swe-agent.d.ts +6 -0
  35. package/dist/engine/agent-ready-exporter/formatters/swe-agent.d.ts.map +1 -0
  36. package/dist/engine/agent-ready-exporter/formatters/swe-agent.js +40 -0
  37. package/dist/engine/agent-ready-exporter/formatters/swe-agent.js.map +1 -0
  38. package/dist/engine/agent-ready-exporter.d.ts +11 -0
  39. package/dist/engine/agent-ready-exporter.d.ts.map +1 -0
  40. package/dist/engine/agent-ready-exporter.js +86 -0
  41. package/dist/engine/agent-ready-exporter.js.map +1 -0
  42. package/dist/engine/compliance-checker.d.ts +19 -0
  43. package/dist/engine/compliance-checker.d.ts.map +1 -0
  44. package/dist/engine/compliance-checker.js +145 -0
  45. package/dist/engine/compliance-checker.js.map +1 -0
  46. package/dist/engine/generate-tests/generators/property-based-generator.d.ts +12 -0
  47. package/dist/engine/generate-tests/generators/property-based-generator.d.ts.map +1 -0
  48. package/dist/engine/generate-tests/generators/property-based-generator.js +159 -0
  49. package/dist/engine/generate-tests/generators/property-based-generator.js.map +1 -0
  50. package/dist/engine/jira-exporter.d.ts +39 -0
  51. package/dist/engine/jira-exporter.d.ts.map +1 -0
  52. package/dist/engine/jira-exporter.js +190 -0
  53. package/dist/engine/jira-exporter.js.map +1 -0
  54. package/dist/engine/linear-exporter.d.ts +32 -0
  55. package/dist/engine/linear-exporter.d.ts.map +1 -0
  56. package/dist/engine/linear-exporter.js +184 -0
  57. package/dist/engine/linear-exporter.js.map +1 -0
  58. package/dist/engine/planu-config-writer.d.ts +13 -2
  59. package/dist/engine/planu-config-writer.d.ts.map +1 -1
  60. package/dist/engine/planu-config-writer.js +32 -1
  61. package/dist/engine/planu-config-writer.js.map +1 -1
  62. package/dist/engine/property-test-generator.d.ts +14 -0
  63. package/dist/engine/property-test-generator.d.ts.map +1 -0
  64. package/dist/engine/property-test-generator.js +223 -0
  65. package/dist/engine/property-test-generator.js.map +1 -0
  66. package/dist/engine/skill-evaluator.d.ts +21 -0
  67. package/dist/engine/skill-evaluator.d.ts.map +1 -0
  68. package/dist/engine/skill-evaluator.js +126 -0
  69. package/dist/engine/skill-evaluator.js.map +1 -0
  70. package/dist/engine/spec-quality-scorer.d.ts +4 -0
  71. package/dist/engine/spec-quality-scorer.d.ts.map +1 -0
  72. package/dist/engine/spec-quality-scorer.js +334 -0
  73. package/dist/engine/spec-quality-scorer.js.map +1 -0
  74. package/dist/engine/spec-template-engine.d.ts +26 -0
  75. package/dist/engine/spec-template-engine.d.ts.map +1 -0
  76. package/dist/engine/spec-template-engine.js +127 -0
  77. package/dist/engine/spec-template-engine.js.map +1 -0
  78. package/dist/index.js +10 -0
  79. package/dist/index.js.map +1 -1
  80. package/dist/storage/compliance-store.d.ts +11 -0
  81. package/dist/storage/compliance-store.d.ts.map +1 -0
  82. package/dist/storage/compliance-store.js +30 -0
  83. package/dist/storage/compliance-store.js.map +1 -0
  84. package/dist/storage/jira-store.d.ts +30 -0
  85. package/dist/storage/jira-store.d.ts.map +1 -0
  86. package/dist/storage/jira-store.js +84 -0
  87. package/dist/storage/jira-store.js.map +1 -0
  88. package/dist/storage/linear-store.d.ts +30 -0
  89. package/dist/storage/linear-store.d.ts.map +1 -0
  90. package/dist/storage/linear-store.js +84 -0
  91. package/dist/storage/linear-store.js.map +1 -0
  92. package/dist/tools/check-readiness.d.ts.map +1 -1
  93. package/dist/tools/check-readiness.js +8 -2
  94. package/dist/tools/check-readiness.js.map +1 -1
  95. package/dist/tools/compliance-handler.d.ts +6 -0
  96. package/dist/tools/compliance-handler.d.ts.map +1 -0
  97. package/dist/tools/compliance-handler.js +99 -0
  98. package/dist/tools/compliance-handler.js.map +1 -0
  99. package/dist/tools/eval-skill-handler.d.ts +4 -0
  100. package/dist/tools/eval-skill-handler.d.ts.map +1 -0
  101. package/dist/tools/eval-skill-handler.js +26 -0
  102. package/dist/tools/eval-skill-handler.js.map +1 -0
  103. package/dist/tools/export-spec.d.ts.map +1 -1
  104. package/dist/tools/export-spec.js +42 -1
  105. package/dist/tools/export-spec.js.map +1 -1
  106. package/dist/tools/generate-tests/generators/property-based-generator.d.ts +11 -0
  107. package/dist/tools/generate-tests/generators/property-based-generator.d.ts.map +1 -0
  108. package/dist/tools/generate-tests/generators/property-based-generator.js +27 -0
  109. package/dist/tools/generate-tests/generators/property-based-generator.js.map +1 -0
  110. package/dist/tools/generate-tests/spec-dispatcher.d.ts +5 -0
  111. package/dist/tools/generate-tests/spec-dispatcher.d.ts.map +1 -1
  112. package/dist/tools/generate-tests/spec-dispatcher.js +18 -1
  113. package/dist/tools/generate-tests/spec-dispatcher.js.map +1 -1
  114. package/dist/tools/init-project/config-builder.d.ts +3 -2
  115. package/dist/tools/init-project/config-builder.d.ts.map +1 -1
  116. package/dist/tools/init-project/config-builder.js +9 -4
  117. package/dist/tools/init-project/config-builder.js.map +1 -1
  118. package/dist/tools/init-project/handler.d.ts.map +1 -1
  119. package/dist/tools/init-project/handler.js +3 -2
  120. package/dist/tools/init-project/handler.js.map +1 -1
  121. package/dist/tools/jira-sync-handler.d.ts +6 -0
  122. package/dist/tools/jira-sync-handler.d.ts.map +1 -0
  123. package/dist/tools/jira-sync-handler.js +220 -0
  124. package/dist/tools/jira-sync-handler.js.map +1 -0
  125. package/dist/tools/linear-sync-handler.d.ts +6 -0
  126. package/dist/tools/linear-sync-handler.d.ts.map +1 -0
  127. package/dist/tools/linear-sync-handler.js +212 -0
  128. package/dist/tools/linear-sync-handler.js.map +1 -0
  129. package/dist/tools/register-export-tools.d.ts.map +1 -1
  130. package/dist/tools/register-export-tools.js +10 -3
  131. package/dist/tools/register-export-tools.js.map +1 -1
  132. package/dist/tools/register-spec-314.d.ts +3 -0
  133. package/dist/tools/register-spec-314.d.ts.map +1 -0
  134. package/dist/tools/register-spec-314.js +38 -0
  135. package/dist/tools/register-spec-314.js.map +1 -0
  136. package/dist/tools/register-spec-316.d.ts +3 -0
  137. package/dist/tools/register-spec-316.d.ts.map +1 -0
  138. package/dist/tools/register-spec-316.js +71 -0
  139. package/dist/tools/register-spec-316.js.map +1 -0
  140. package/dist/tools/register-spec-317.d.ts +3 -0
  141. package/dist/tools/register-spec-317.d.ts.map +1 -0
  142. package/dist/tools/register-spec-317.js +158 -0
  143. package/dist/tools/register-spec-317.js.map +1 -0
  144. package/dist/tools/register-spec-319.d.ts +3 -0
  145. package/dist/tools/register-spec-319.d.ts.map +1 -0
  146. package/dist/tools/register-spec-319.js +59 -0
  147. package/dist/tools/register-spec-319.js.map +1 -0
  148. package/dist/tools/register-spec-320.d.ts +3 -0
  149. package/dist/tools/register-spec-320.d.ts.map +1 -0
  150. package/dist/tools/register-spec-320.js +60 -0
  151. package/dist/tools/register-spec-320.js.map +1 -0
  152. package/dist/tools/register-spec-tools/core-spec-tools.d.ts.map +1 -1
  153. package/dist/tools/register-spec-tools/core-spec-tools.js +15 -1
  154. package/dist/tools/register-spec-tools/core-spec-tools.js.map +1 -1
  155. package/dist/tools/schemas/index.d.ts +1 -1
  156. package/dist/tools/schemas/index.d.ts.map +1 -1
  157. package/dist/tools/schemas/index.js +1 -1
  158. package/dist/tools/schemas/index.js.map +1 -1
  159. package/dist/tools/schemas/spec.d.ts +6 -0
  160. package/dist/tools/schemas/spec.d.ts.map +1 -1
  161. package/dist/tools/schemas/spec.js +4 -0
  162. package/dist/tools/schemas/spec.js.map +1 -1
  163. package/dist/tools/set-work-mode-handler.d.ts +7 -0
  164. package/dist/tools/set-work-mode-handler.d.ts.map +1 -0
  165. package/dist/tools/set-work-mode-handler.js +30 -0
  166. package/dist/tools/set-work-mode-handler.js.map +1 -0
  167. package/dist/tools/spec-marketplace-handler.d.ts +6 -0
  168. package/dist/tools/spec-marketplace-handler.d.ts.map +1 -0
  169. package/dist/tools/spec-marketplace-handler.js +113 -0
  170. package/dist/tools/spec-marketplace-handler.js.map +1 -0
  171. package/dist/tools/spec-quality-score-handler.d.ts +7 -0
  172. package/dist/tools/spec-quality-score-handler.d.ts.map +1 -0
  173. package/dist/tools/spec-quality-score-handler.js +106 -0
  174. package/dist/tools/spec-quality-score-handler.js.map +1 -0
  175. package/dist/tools/status-handler.d.ts.map +1 -1
  176. package/dist/tools/status-handler.js +12 -3
  177. package/dist/tools/status-handler.js.map +1 -1
  178. package/dist/types/agent-ready.d.ts +58 -0
  179. package/dist/types/agent-ready.d.ts.map +1 -0
  180. package/dist/types/agent-ready.js +3 -0
  181. package/dist/types/agent-ready.js.map +1 -0
  182. package/dist/types/common/primitives.d.ts +2 -0
  183. package/dist/types/common/primitives.d.ts.map +1 -1
  184. package/dist/types/compliance.d.ts +44 -0
  185. package/dist/types/compliance.d.ts.map +1 -0
  186. package/dist/types/compliance.js +3 -0
  187. package/dist/types/compliance.js.map +1 -0
  188. package/dist/types/export.d.ts +5 -1
  189. package/dist/types/export.d.ts.map +1 -1
  190. package/dist/types/export.js +1 -1
  191. package/dist/types/export.js.map +1 -1
  192. package/dist/types/index.d.ts +7 -0
  193. package/dist/types/index.d.ts.map +1 -1
  194. package/dist/types/index.js +7 -0
  195. package/dist/types/index.js.map +1 -1
  196. package/dist/types/jira-linear.d.ts +216 -0
  197. package/dist/types/jira-linear.d.ts.map +1 -0
  198. package/dist/types/jira-linear.js +3 -0
  199. package/dist/types/jira-linear.js.map +1 -0
  200. package/dist/types/project/inputs.d.ts +3 -1
  201. package/dist/types/project/inputs.d.ts.map +1 -1
  202. package/dist/types/project/planu-config.d.ts +2 -0
  203. package/dist/types/project/planu-config.d.ts.map +1 -1
  204. package/dist/types/property-testing.d.ts +50 -0
  205. package/dist/types/property-testing.d.ts.map +1 -0
  206. package/dist/types/property-testing.js +3 -0
  207. package/dist/types/property-testing.js.map +1 -0
  208. package/dist/types/skill-eval.d.ts +41 -0
  209. package/dist/types/skill-eval.d.ts.map +1 -0
  210. package/dist/types/skill-eval.js +3 -0
  211. package/dist/types/skill-eval.js.map +1 -0
  212. package/dist/types/spec-marketplace.d.ts +31 -0
  213. package/dist/types/spec-marketplace.d.ts.map +1 -0
  214. package/dist/types/spec-marketplace.js +3 -0
  215. package/dist/types/spec-marketplace.js.map +1 -0
  216. package/dist/types/spec-quality.d.ts +36 -0
  217. package/dist/types/spec-quality.d.ts.map +1 -0
  218. package/dist/types/spec-quality.js +3 -0
  219. package/dist/types/spec-quality.js.map +1 -0
  220. package/package.json +7 -2
  221. package/src/config/compliance-profiles.json +62 -0
  222. package/src/config/license-plans.json +19 -2
  223. package/src/config/spec-templates/crud-rest-api/spec.md +35 -0
  224. package/src/config/spec-templates/crud-rest-api/template.json +10 -0
  225. package/src/config/spec-templates/email-notifications/spec.md +31 -0
  226. package/src/config/spec-templates/email-notifications/template.json +10 -0
  227. package/src/config/spec-templates/file-upload-s3/spec.md +31 -0
  228. package/src/config/spec-templates/file-upload-s3/template.json +11 -0
  229. package/src/config/spec-templates/jwt-auth/spec.md +35 -0
  230. package/src/config/spec-templates/jwt-auth/template.json +10 -0
  231. package/src/config/spec-templates/oauth-social-login/spec.md +31 -0
  232. package/src/config/spec-templates/oauth-social-login/template.json +10 -0
  233. package/src/config/spec-templates/rate-limiting/spec.md +31 -0
  234. package/src/config/spec-templates/rate-limiting/template.json +10 -0
  235. package/src/config/spec-templates/stripe-payments/spec.md +32 -0
  236. package/src/config/spec-templates/stripe-payments/template.json +10 -0
  237. package/src/config/spec-templates/webhook-system/spec.md +36 -0
  238. package/src/config/spec-templates/webhook-system/template.json +10 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linear-sync-handler.js","sourceRoot":"","sources":["../../src/tools/linear-sync-handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-export-tools.d.ts","sourceRoot":"","sources":["../../src/tools/register-export-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsB3D"}
1
+ {"version":3,"file":"register-export-tools.d.ts","sourceRoot":"","sources":["../../src/tools/register-export-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+B3D"}
@@ -3,19 +3,26 @@ import { handleExportSpec } from './export-spec.js';
3
3
  import { safeLicensed } from './safe-handler.js';
4
4
  export function registerExportTools(server) {
5
5
  server.registerTool('export_spec', {
6
- description: 'Export a spec to an external format. Currently supports spec-kit format ' +
7
- '(GitHub spec-kit compatible: spec.md, plan.md, tasks.md). ' +
6
+ description: 'Export a spec to an external format. Supports spec-kit format ' +
7
+ '(GitHub spec-kit compatible: spec.md, plan.md, tasks.md) and agent-ready format ' +
8
+ '(structured JSON optimized for autonomous coding agents: Devin, Kiro, SWE-agent, generic). ' +
8
9
  'Writes files to .specify/specs/{slug}/ by default.',
9
10
  annotations: { readOnlyHint: false },
10
11
  inputSchema: {
11
12
  specId: z.string().min(1).max(500).describe('Spec ID to export (e.g. "SPEC-001")'),
12
13
  projectPath: z.string().min(1).max(2000).describe('Absolute path to the project root'),
13
- format: z.enum(['spec-kit']).describe('Export format. Valid values: spec-kit'),
14
+ format: z
15
+ .enum(['spec-kit', 'agent-ready'])
16
+ .describe('Export format. Valid values: spec-kit, agent-ready'),
14
17
  outputDir: z
15
18
  .string()
16
19
  .max(2000)
17
20
  .optional()
18
21
  .describe('Custom output directory (default: .specify/specs/{slug}/ inside projectPath)'),
22
+ agentTarget: z
23
+ .enum(['devin', 'kiro', 'swe-agent', 'generic'])
24
+ .optional()
25
+ .describe('Target agent for agent-ready format. Valid values: devin, kiro, swe-agent, generic. Defaults to generic. Only used when format is agent-ready.'),
19
26
  },
20
27
  }, safeLicensed('export_spec', async (args) => handleExportSpec(args)));
21
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"register-export-tools.js","sourceRoot":"","sources":["../../src/tools/register-export-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,WAAW,EACT,0EAA0E;YAC1E,4DAA4D;YAC5D,oDAAoD;QACtD,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;QACpC,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAClF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACtF,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAC9E,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,8EAA8E,CAAC;SAC5F;KACF,EACD,YAAY,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"register-export-tools.js","sourceRoot":"","sources":["../../src/tools/register-export-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,WAAW,EACT,gEAAgE;YAChE,kFAAkF;YAClF,6FAA6F;YAC7F,oDAAoD;QACtD,WAAW,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;QACpC,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAClF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;YACtF,MAAM,EAAE,CAAC;iBACN,IAAI,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;iBACjC,QAAQ,CAAC,oDAAoD,CAAC;YACjE,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,8EAA8E,CAAC;YAC3F,WAAW,EAAE,CAAC;iBACX,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;iBAC/C,QAAQ,EAAE;iBACV,QAAQ,CACP,gJAAgJ,CACjJ;SACJ;KACF,EACD,YAAY,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerSpecQualityScoreTools(server: McpServer): void;
3
+ //# sourceMappingURL=register-spec-314.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-314.d.ts","sourceRoot":"","sources":["../../src/tools/register-spec-314.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0CrE"}
@@ -0,0 +1,38 @@
1
+ // tools/register-spec-314.ts — Registers SPEC-314 quality score tool
2
+ import { z } from 'zod';
3
+ import { safeTracked } from './safe-handler.js';
4
+ import { handleSpecQualityScore } from './spec-quality-score-handler.js';
5
+ export function registerSpecQualityScoreTools(server) {
6
+ // -------------------------------------------------------------------------
7
+ // spec_quality_score — compute 0-100 quality score with 4 dimensions
8
+ // -------------------------------------------------------------------------
9
+ server.registerTool('spec_quality_score', {
10
+ description: 'Compute a 0-100 quality score for a spec across 4 dimensions: ' +
11
+ 'completeness (title, description, AC, scope, estimation), ' +
12
+ 'testability (verifiable AC, no vague words), ' +
13
+ 'ambiguity (no contradictions, terms defined, edge cases covered), ' +
14
+ 'and risk (cross-module deps, architectural scope, NFRs present). ' +
15
+ 'Returns a letter grade (A-F) and actionable recommendations.',
16
+ inputSchema: {
17
+ specId: z
18
+ .string()
19
+ .min(1)
20
+ .max(500)
21
+ .describe('Spec ID to evaluate (e.g. SPEC-042).'),
22
+ projectPath: z
23
+ .string()
24
+ .min(1)
25
+ .max(4096)
26
+ .optional()
27
+ .describe('Absolute path to the project root (preferred over projectId).'),
28
+ projectId: z
29
+ .string()
30
+ .min(1)
31
+ .max(500)
32
+ .optional()
33
+ .describe('Project hash ID (use projectPath instead when possible).'),
34
+ },
35
+ annotations: { title: 'Spec Quality Score', readOnlyHint: true },
36
+ }, safeTracked('spec_quality_score', (args) => handleSpecQualityScore(args)));
37
+ }
38
+ //# sourceMappingURL=register-spec-314.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-314.js","sourceRoot":"","sources":["../../src/tools/register-spec-314.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAGrE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,MAAM,UAAU,6BAA6B,CAAC,MAAiB;IAC7D,4EAA4E;IAC5E,qEAAqE;IACrE,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,WAAW,EACT,gEAAgE;YAChE,4DAA4D;YAC5D,+CAA+C;YAC/C,oEAAoE;YACpE,mEAAmE;YACnE,8DAA8D;QAChE,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,+DAA+D,CAAC;YAC5E,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;SACxE;QACD,WAAW,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE;KACjE,EACD,WAAW,CAAC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CACzC,sBAAsB,CACpB,IAAoE,CACrE,CACF,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerEvalSkillTools(server: McpServer): void;
3
+ //# sourceMappingURL=register-spec-316.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-316.d.ts","sourceRoot":"","sources":["../../src/tools/register-spec-316.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkE9D"}
@@ -0,0 +1,71 @@
1
+ // tools/register-spec-316.ts — Registers eval_skill and eval_rule tools (SPEC-316)
2
+ import { z } from 'zod';
3
+ import { safeTracked } from './safe-handler.js';
4
+ import { handleEvalSkill, handleEvalRule } from './eval-skill-handler.js';
5
+ const evalScenarioSchema = z.object({
6
+ input: z.string().min(1).max(2000).describe('Natural language description of the user input or trigger for this scenario.'),
7
+ expectedOutput: z
8
+ .string()
9
+ .min(1)
10
+ .max(4000)
11
+ .describe('The expected text fragment or output that the skill/rule should produce or reference.'),
12
+ criteria: z
13
+ .array(z.string().min(1).max(500))
14
+ .min(1)
15
+ .describe('List of keyword or phrase criteria that must appear in the skill/rule content to pass this scenario.'),
16
+ });
17
+ export function registerEvalSkillTools(server) {
18
+ // -------------------------------------------------------------------------
19
+ // eval_skill — evaluate a skill file against test scenarios
20
+ // -------------------------------------------------------------------------
21
+ server.registerTool('eval_skill', {
22
+ description: 'Evaluate the quality of a Claude skill file against a set of test scenarios. ' +
23
+ 'Reads the skill from .claude/skills/{skillName}.md and checks whether each scenario\'s ' +
24
+ 'criteria appear in the skill content. ' +
25
+ 'Returns a pass rate, average score, per-scenario results, and recommendations for improvement.',
26
+ inputSchema: {
27
+ skillName: z
28
+ .string()
29
+ .min(1)
30
+ .max(500)
31
+ .describe('Skill file name without extension (e.g. "vitest") or with extension (e.g. "vitest.md").'),
32
+ projectPath: z
33
+ .string()
34
+ .min(1)
35
+ .max(4096)
36
+ .describe('Absolute path to the project root. Skills are read from {projectPath}/.claude/skills/.'),
37
+ testScenarios: z
38
+ .array(evalScenarioSchema)
39
+ .min(1)
40
+ .describe('One or more test scenarios to evaluate the skill against.'),
41
+ },
42
+ annotations: { title: 'Evaluate Skill Quality', readOnlyHint: true },
43
+ }, safeTracked('eval_skill', (args) => handleEvalSkill(args)));
44
+ // -------------------------------------------------------------------------
45
+ // eval_rule — evaluate a rule file against test scenarios
46
+ // -------------------------------------------------------------------------
47
+ server.registerTool('eval_rule', {
48
+ description: 'Evaluate the quality of a Claude rule file against a set of test scenarios. ' +
49
+ 'Reads the rule from .claude/rules/{ruleName}.md and checks whether each scenario\'s ' +
50
+ 'criteria appear in the rule content. ' +
51
+ 'Returns a pass rate, average score, per-scenario results, and recommendations for improvement.',
52
+ inputSchema: {
53
+ ruleName: z
54
+ .string()
55
+ .min(1)
56
+ .max(500)
57
+ .describe('Rule file name without extension (e.g. "testing") or with extension (e.g. "testing.md").'),
58
+ projectPath: z
59
+ .string()
60
+ .min(1)
61
+ .max(4096)
62
+ .describe('Absolute path to the project root. Rules are read from {projectPath}/.claude/rules/.'),
63
+ testScenarios: z
64
+ .array(evalScenarioSchema)
65
+ .min(1)
66
+ .describe('One or more test scenarios to evaluate the rule against.'),
67
+ },
68
+ annotations: { title: 'Evaluate Rule Quality', readOnlyHint: true },
69
+ }, safeTracked('eval_rule', (args) => handleEvalRule(args)));
70
+ }
71
+ //# sourceMappingURL=register-spec-316.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-316.js","sourceRoot":"","sources":["../../src/tools/register-spec-316.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAGnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG1E,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,8EAA8E,CAAC;IAC3H,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,CAAC,uFAAuF,CAAC;IACpG,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,sGAAsG,CAAC;CACpH,CAAC,CAAC;AAEH,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,4EAA4E;IAC5E,4DAA4D;IAC5D,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,WAAW,EACT,+EAA+E;YAC/E,yFAAyF;YACzF,wCAAwC;YACxC,gGAAgG;QAClG,WAAW,EAAE;YACX,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,yFAAyF,CAAC;YACtG,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,CAAC,wFAAwF,CAAC;YACrG,aAAa,EAAE,CAAC;iBACb,KAAK,CAAC,kBAAkB,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,2DAA2D,CAAC;SACzE;QACD,WAAW,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE;KACrE,EACD,WAAW,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAsB,CAAC,CAAC,CAC7E,CAAC;IAEF,4EAA4E;IAC5E,0DAA0D;IAC1D,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,WAAW,EACX;QACE,WAAW,EACT,8EAA8E;YAC9E,sFAAsF;YACtF,uCAAuC;YACvC,gGAAgG;QAClG,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,0FAA0F,CAAC;YACvG,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,CAAC,sFAAsF,CAAC;YACnG,aAAa,EAAE,CAAC;iBACb,KAAK,CAAC,kBAAkB,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,0DAA0D,CAAC;SACxE;QACD,WAAW,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,YAAY,EAAE,IAAI,EAAE;KACpE,EACD,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAqB,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerJiraLinearTools(server: McpServer): void;
3
+ //# sourceMappingURL=register-spec-317.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-317.d.ts","sourceRoot":"","sources":["../../src/tools/register-spec-317.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+CzE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmM/D"}
@@ -0,0 +1,158 @@
1
+ // tools/register-spec-317.ts — Registers Jira and Linear bidirectional sync tools (SPEC-317)
2
+ import { z } from 'zod';
3
+ import { safeTracked } from './safe-handler.js';
4
+ import { handleConfigureJira, handleSyncToJira, handleJiraStatus, handleRemoveJira, } from './jira-sync-handler.js';
5
+ import { handleConfigureLinear, handleSyncToLinear, handleLinearStatus, handleRemoveLinear, } from './linear-sync-handler.js';
6
+ const syncModeSchema = z
7
+ .enum(['push', 'pull', 'bidirectional'])
8
+ .describe('Sync direction. ' +
9
+ '"push" sends Planu spec data to the external tool. ' +
10
+ '"pull" reads status from the external tool (informational). ' +
11
+ '"bidirectional" performs push then pull.');
12
+ const projectPathSchema = z
13
+ .string()
14
+ .min(1)
15
+ .max(4096)
16
+ .describe('Absolute path to the project root where Planu stores its data.');
17
+ const specIdSchema = z
18
+ .string()
19
+ .min(1)
20
+ .max(50)
21
+ .optional()
22
+ .describe('Optional SPEC-XXX identifier. Omit to sync all approved and done specs.');
23
+ export function registerJiraLinearTools(server) {
24
+ // ---------------------------------------------------------------------------
25
+ // configure_jira
26
+ // ---------------------------------------------------------------------------
27
+ server.registerTool('configure_jira', {
28
+ description: 'Configure Jira Cloud integration for a project. ' +
29
+ 'Credentials are stored locally and used by sync_to_jira. ' +
30
+ 'Requires a Jira Cloud domain, project key, email, and API token. ' +
31
+ 'Get your API token at: https://id.atlassian.com/manage-profile/security/api-tokens',
32
+ inputSchema: {
33
+ projectPath: projectPathSchema,
34
+ domain: z
35
+ .string()
36
+ .min(1)
37
+ .max(253)
38
+ .describe('Jira Cloud domain without suffix, e.g. "mycompany" for mycompany.atlassian.net.'),
39
+ email: z
40
+ .string()
41
+ .min(5)
42
+ .max(254)
43
+ .describe('Email address associated with the Atlassian API token.'),
44
+ apiToken: z
45
+ .string()
46
+ .min(1)
47
+ .max(500)
48
+ .describe('Atlassian API token. Generate at id.atlassian.com/manage-profile/security/api-tokens.'),
49
+ projectKey: z
50
+ .string()
51
+ .min(1)
52
+ .max(20)
53
+ .describe('Jira project key where epics and stories will be created, e.g. "ENG" or "PLAT".'),
54
+ },
55
+ annotations: { title: 'Configure Jira Integration' },
56
+ }, safeTracked('configure_jira', (args) => handleConfigureJira(args)));
57
+ // ---------------------------------------------------------------------------
58
+ // sync_to_jira
59
+ // ---------------------------------------------------------------------------
60
+ server.registerTool('sync_to_jira', {
61
+ description: 'Sync Planu specs to Jira Cloud as Epics. ' +
62
+ 'By default syncs all approved and done specs. ' +
63
+ 'Supports push (Planu → Jira), pull (Jira → Planu informational), and bidirectional modes. ' +
64
+ 'Run configure_jira first.',
65
+ inputSchema: {
66
+ projectPath: projectPathSchema,
67
+ specId: specIdSchema,
68
+ mode: syncModeSchema,
69
+ },
70
+ annotations: { title: 'Sync Specs to Jira' },
71
+ }, safeTracked('sync_to_jira', (args) => handleSyncToJira(args)));
72
+ // ---------------------------------------------------------------------------
73
+ // jira_status
74
+ // ---------------------------------------------------------------------------
75
+ server.registerTool('jira_status', {
76
+ description: 'Show the current Jira integration status for a project: configuration, ' +
77
+ 'number of synced issues, and recent sync history.',
78
+ inputSchema: {
79
+ projectPath: projectPathSchema,
80
+ },
81
+ annotations: { title: 'Jira Integration Status', readOnlyHint: true },
82
+ }, safeTracked('jira_status', (args) => handleJiraStatus(args)));
83
+ // ---------------------------------------------------------------------------
84
+ // remove_jira
85
+ // ---------------------------------------------------------------------------
86
+ server.registerTool('remove_jira', {
87
+ description: 'Remove the Jira integration configuration for a project. ' +
88
+ 'Synced issue records and logs are preserved for reference. ' +
89
+ 'Run configure_jira to re-enable the integration.',
90
+ inputSchema: {
91
+ projectPath: projectPathSchema,
92
+ },
93
+ annotations: { title: 'Remove Jira Integration', destructiveHint: true },
94
+ }, safeTracked('remove_jira', (args) => handleRemoveJira(args)));
95
+ // ---------------------------------------------------------------------------
96
+ // configure_linear
97
+ // ---------------------------------------------------------------------------
98
+ server.registerTool('configure_linear', {
99
+ description: 'Configure Linear integration for a project. ' +
100
+ 'Credentials are stored locally and used by sync_to_linear. ' +
101
+ 'Requires a Linear personal API key and team ID. ' +
102
+ 'Get your API key at: https://linear.app/settings/api',
103
+ inputSchema: {
104
+ projectPath: projectPathSchema,
105
+ apiKey: z
106
+ .string()
107
+ .min(1)
108
+ .max(500)
109
+ .describe('Linear personal API key. Generate at https://linear.app/settings/api.'),
110
+ teamId: z
111
+ .string()
112
+ .min(1)
113
+ .max(100)
114
+ .describe('Linear team ID (UUID) where issues will be created. ' +
115
+ 'Find it in Linear Settings → Team → General.'),
116
+ },
117
+ annotations: { title: 'Configure Linear Integration' },
118
+ }, safeTracked('configure_linear', (args) => handleConfigureLinear(args)));
119
+ // ---------------------------------------------------------------------------
120
+ // sync_to_linear
121
+ // ---------------------------------------------------------------------------
122
+ server.registerTool('sync_to_linear', {
123
+ description: 'Sync Planu specs to Linear as issues. ' +
124
+ 'By default syncs all approved and done specs. ' +
125
+ 'Supports push (Planu → Linear), pull (Linear → Planu informational), and bidirectional modes. ' +
126
+ 'Run configure_linear first.',
127
+ inputSchema: {
128
+ projectPath: projectPathSchema,
129
+ specId: specIdSchema,
130
+ mode: syncModeSchema,
131
+ },
132
+ annotations: { title: 'Sync Specs to Linear' },
133
+ }, safeTracked('sync_to_linear', (args) => handleSyncToLinear(args)));
134
+ // ---------------------------------------------------------------------------
135
+ // linear_status
136
+ // ---------------------------------------------------------------------------
137
+ server.registerTool('linear_status', {
138
+ description: 'Show the current Linear integration status for a project: configuration, ' +
139
+ 'number of synced issues, and recent sync history.',
140
+ inputSchema: {
141
+ projectPath: projectPathSchema,
142
+ },
143
+ annotations: { title: 'Linear Integration Status', readOnlyHint: true },
144
+ }, safeTracked('linear_status', (args) => handleLinearStatus(args)));
145
+ // ---------------------------------------------------------------------------
146
+ // remove_linear
147
+ // ---------------------------------------------------------------------------
148
+ server.registerTool('remove_linear', {
149
+ description: 'Remove the Linear integration configuration for a project. ' +
150
+ 'Synced issue records and logs are preserved for reference. ' +
151
+ 'Run configure_linear to re-enable the integration.',
152
+ inputSchema: {
153
+ projectPath: projectPathSchema,
154
+ },
155
+ annotations: { title: 'Remove Linear Integration', destructiveHint: true },
156
+ }, safeTracked('remove_linear', (args) => handleRemoveLinear(args)));
157
+ }
158
+ //# sourceMappingURL=register-spec-317.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-317.js","sourceRoot":"","sources":["../../src/tools/register-spec-317.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerComplianceTools(server: McpServer): void;
3
+ //# sourceMappingURL=register-spec-319.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-319.d.ts","sourceRoot":"","sources":["../../src/tools/register-spec-319.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAczE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsE/D"}
@@ -0,0 +1,59 @@
1
+ // tools/register-spec-319.ts — Registers compliance tools (SPEC-319)
2
+ import { z } from 'zod';
3
+ import { safeTracked } from './safe-handler.js';
4
+ import { handleCheckCompliance, handleConfigureCompliance } from './compliance-handler.js';
5
+ const FRAMEWORK_ENUM = ['gdpr', 'hipaa', 'pci-dss', 'soc2', 'ccpa'];
6
+ const frameworkSchema = z
7
+ .enum(FRAMEWORK_ENUM)
8
+ .describe('Compliance framework. Valid values: gdpr, hipaa, pci-dss, soc2, ccpa.');
9
+ export function registerComplianceTools(server) {
10
+ // -------------------------------------------------------------------------
11
+ // check_compliance — evaluate a spec's AC against compliance frameworks
12
+ // -------------------------------------------------------------------------
13
+ server.registerTool('check_compliance', {
14
+ description: 'Evaluate a spec\'s acceptance criteria against regulatory compliance requirements. ' +
15
+ 'Detects gaps for the specified frameworks (or auto-detects relevant frameworks from spec content). ' +
16
+ 'Supported frameworks: gdpr, hipaa, pci-dss, soc2, ccpa.',
17
+ inputSchema: {
18
+ specId: z
19
+ .string()
20
+ .min(1)
21
+ .max(500)
22
+ .describe('Spec ID to check (e.g. SPEC-042).'),
23
+ projectPath: z
24
+ .string()
25
+ .min(1)
26
+ .max(4096)
27
+ .describe('Absolute path to the project root.'),
28
+ frameworks: z
29
+ .array(frameworkSchema)
30
+ .optional()
31
+ .describe('Compliance frameworks to check. If omitted, auto-detects from spec content ' +
32
+ 'or uses project-level configuration. ' +
33
+ 'Valid values: gdpr, hipaa, pci-dss, soc2, ccpa.'),
34
+ },
35
+ annotations: { title: 'Check Compliance', readOnlyHint: true },
36
+ }, safeTracked('check_compliance', (args) => handleCheckCompliance(args)));
37
+ // -------------------------------------------------------------------------
38
+ // configure_compliance — set project-level compliance frameworks
39
+ // -------------------------------------------------------------------------
40
+ server.registerTool('configure_compliance', {
41
+ description: 'Configure project-level compliance frameworks. ' +
42
+ 'Once set, `check_compliance` uses these frameworks when none are specified. ' +
43
+ 'Supported frameworks: gdpr, hipaa, pci-dss, soc2, ccpa.',
44
+ inputSchema: {
45
+ projectPath: z
46
+ .string()
47
+ .min(1)
48
+ .max(4096)
49
+ .describe('Absolute path to the project root.'),
50
+ frameworks: z
51
+ .array(frameworkSchema)
52
+ .min(1)
53
+ .describe('Compliance frameworks to activate for this project. ' +
54
+ 'Valid values: gdpr, hipaa, pci-dss, soc2, ccpa.'),
55
+ },
56
+ annotations: { title: 'Configure Compliance', destructiveHint: false },
57
+ }, safeTracked('configure_compliance', (args) => handleConfigureCompliance(args)));
58
+ }
59
+ //# sourceMappingURL=register-spec-319.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-319.js","sourceRoot":"","sources":["../../src/tools/register-spec-319.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAGrE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAG3F,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAE7E,MAAM,eAAe,GAAG,CAAC;KACtB,IAAI,CAAC,cAAc,CAAC;KACpB,QAAQ,CACP,uEAAuE,CACxE,CAAC;AAEJ,MAAM,UAAU,uBAAuB,CAAC,MAAiB;IACvD,4EAA4E;IAC5E,wEAAwE;IACxE,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,WAAW,EACT,qFAAqF;YACrF,qGAAqG;YACrG,yDAAyD;QAC3D,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,CAAC,oCAAoC,CAAC;YACjD,UAAU,EAAE,CAAC;iBACV,KAAK,CAAC,eAAe,CAAC;iBACtB,QAAQ,EAAE;iBACV,QAAQ,CACP,6EAA6E;gBAC7E,uCAAuC;gBACvC,iDAAiD,CAClD;SACJ;QACD,WAAW,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,IAAI,EAAE;KAC/D,EACD,WAAW,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,EAAE,CACvC,qBAAqB,CAAC,IAA4B,CAAC,CACpD,CACF,CAAC;IAEF,4EAA4E;IAC5E,iEAAiE;IACjE,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,WAAW,EACT,iDAAiD;YACjD,8EAA8E;YAC9E,yDAAyD;QAC3D,WAAW,EAAE;YACX,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,IAAI,CAAC;iBACT,QAAQ,CAAC,oCAAoC,CAAC;YACjD,UAAU,EAAE,CAAC;iBACV,KAAK,CAAC,eAAe,CAAC;iBACtB,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CACP,sDAAsD;gBACtD,iDAAiD,CAClD;SACJ;QACD,WAAW,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,KAAK,EAAE;KACvE,EACD,WAAW,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC3C,yBAAyB,CAAC,IAAgC,CAAC,CAC5D,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerSpecMarketplaceTools(server: McpServer): void;
3
+ //# sourceMappingURL=register-spec-320.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-320.d.ts","sourceRoot":"","sources":["../../src/tools/register-spec-320.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AASzE,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAiFpE"}
@@ -0,0 +1,60 @@
1
+ // tools/register-spec-320.ts — Registers spec marketplace tools (SPEC-320)
2
+ import { z } from 'zod';
3
+ import { safeTracked } from './safe-handler.js';
4
+ import { handleSearchSpecTemplates, handleApplySpecTemplate, handlePublishSpecTemplate, } from './spec-marketplace-handler.js';
5
+ export function registerSpecMarketplaceTools(server) {
6
+ // search_spec_templates — SPEC-320
7
+ server.registerTool('search_spec_templates', {
8
+ description: 'Search community spec templates by keyword or tag. Returns built-in templates (stripe-payments, oauth-social-login, crud-rest-api, file-upload-s3, jwt-auth, rate-limiting, email-notifications, webhook-system). Use apply_spec_template to instantiate one.',
9
+ annotations: { readOnlyHint: true },
10
+ inputSchema: {
11
+ projectPath: z.string().min(1).max(4096).describe('Absolute path to the project root.'),
12
+ query: z
13
+ .string()
14
+ .max(200)
15
+ .optional()
16
+ .describe('Optional keyword to search templates by name, description, or tags. Leave empty to list all templates.'),
17
+ },
18
+ }, safeTracked('search_spec_templates', async (args) => handleSearchSpecTemplates(args)));
19
+ // apply_spec_template — SPEC-320
20
+ server.registerTool('apply_spec_template', {
21
+ description: 'Instantiate a spec template by substituting variables into the template content. Returns the rendered spec.md content ready to pass to create_spec. Valid template names: stripe-payments, oauth-social-login, crud-rest-api, file-upload-s3, jwt-auth, rate-limiting, email-notifications, webhook-system.',
22
+ inputSchema: {
23
+ projectPath: z.string().min(1).max(4096).describe('Absolute path to the project root.'),
24
+ templateName: z
25
+ .string()
26
+ .min(1)
27
+ .max(100)
28
+ .describe('Name of the template to apply. Valid values: stripe-payments, oauth-social-login, crud-rest-api, file-upload-s3, jwt-auth, rate-limiting, email-notifications, webhook-system.'),
29
+ variables: z
30
+ .record(z.string(), z.string().max(500))
31
+ .describe('Key-value map of variable substitutions. Keys must match the template variable names (e.g. { "entity": "Product", "base_path": "/api/products" }).'),
32
+ },
33
+ }, safeTracked('apply_spec_template', async (args) => handleApplySpecTemplate({
34
+ projectPath: args.projectPath,
35
+ templateName: args.templateName,
36
+ variables: args.variables,
37
+ })));
38
+ // publish_spec_template — SPEC-320
39
+ server.registerTool('publish_spec_template', {
40
+ description: 'Publish an existing spec as a reusable template by extracting variable placeholders. Returns the template manifest JSON that can be shared with the team.',
41
+ annotations: { destructiveHint: false },
42
+ inputSchema: {
43
+ projectPath: z.string().min(1).max(4096).describe('Absolute path to the project root.'),
44
+ specId: z
45
+ .string()
46
+ .min(1)
47
+ .max(100)
48
+ .describe('ID of the spec to publish as a template (e.g. SPEC-042).'),
49
+ templateName: z
50
+ .string()
51
+ .min(1)
52
+ .max(100)
53
+ .describe('Slug name for the new template (e.g. stripe-payments-v2).'),
54
+ variables: z
55
+ .array(z.string().max(100))
56
+ .describe('List of variable names that will become template placeholders in the spec content (e.g. ["entity", "base_path"]).'),
57
+ },
58
+ }, safeTracked('publish_spec_template', async (args) => handlePublishSpecTemplate(args)));
59
+ }
60
+ //# sourceMappingURL=register-spec-320.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-spec-320.js","sourceRoot":"","sources":["../../src/tools/register-spec-320.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;AAEvC,MAAM,UAAU,4BAA4B,CAAC,MAAiB;IAC5D,mCAAmC;IACnC,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EACT,+PAA+P;QACjQ,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;QACnC,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACvF,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,wGAAwG,CACzG;SACJ;KACF,EACD,WAAW,CAAC,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CACtF,CAAC;IAEF,iCAAiC;IACjC,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;QACE,WAAW,EACT,6SAA6S;QAC/S,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACvF,YAAY,EAAE,CAAC;iBACZ,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CACP,gLAAgL,CACjL;YACH,SAAS,EAAE,CAAC;iBACT,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBACvC,QAAQ,CACP,oJAAoJ,CACrJ;SACJ;KACF,EACD,WAAW,CAAC,qBAAqB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAChD,uBAAuB,CAAC;QACtB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CACH,CACF,CAAC;IAEF,mCAAmC;IACnC,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,WAAW,EACT,2JAA2J;QAC7J,WAAW,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE;QACvC,WAAW,EAAE;YACX,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACvF,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,0DAA0D,CAAC;YACvE,YAAY,EAAE,CAAC;iBACZ,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,2DAA2D,CAAC;YACxE,SAAS,EAAE,CAAC;iBACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAC1B,QAAQ,CACP,mHAAmH,CACpH;SACJ;KACF,EACD,WAAW,CAAC,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CACtF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core-spec-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/register-spec-tools/core-spec-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0BzE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmS7D"}
1
+ {"version":3,"file":"core-spec-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/register-spec-tools/core-spec-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4BzE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAwT7D"}
@@ -1,9 +1,10 @@
1
1
  import { z } from 'zod';
2
2
  import { t } from '../../i18n/index.js';
3
3
  import { safeTracked, safeLicensed } from '../safe-handler.js';
4
- import { SupportedLocaleEnum, SpecStatusEnum, SpecTypeEnum, SpecScopeEnum, SpecTargetEnum, ExperienceLevelEnum, ListSpecsOutputSchema, EstimateOutputSchema, ValidateOutputSchema, } from '../schemas/index.js';
4
+ import { SupportedLocaleEnum, SpecStatusEnum, SpecTypeEnum, SpecScopeEnum, SpecTargetEnum, ExperienceLevelEnum, WorkModeEnum, ListSpecsOutputSchema, EstimateOutputSchema, ValidateOutputSchema, } from '../schemas/index.js';
5
5
  import { handleSetLocale } from '../set-locale.js';
6
6
  import { handleInitProject } from '../init-project.js';
7
+ import { handleSetWorkMode } from '../set-work-mode-handler.js';
7
8
  import { handleInitConstitution } from '../init-constitution.js';
8
9
  import { handleClarifyRequirements } from '../clarify-requirements.js';
9
10
  import { handleCreateSpec } from '../create-spec.js';
@@ -47,8 +48,21 @@ export function registerCoreSpecTools(server) {
47
48
  .boolean()
48
49
  .optional()
49
50
  .describe('Auto-install recommended skills into .claude/skills/ during init (default: true). Set to false to only list recommendations without installing.'),
51
+ workMode: WorkModeEnum.optional().describe('Preferred interaction style: guided (step-by-step hints for SDD newcomers) | standard (normal workflow, default) | expert (concise output, no onboarding hints). Ask the user before running init_project.'),
50
52
  },
51
53
  }, safeTracked('init_project', async (args) => handleInitProject(args)));
54
+ // 2b. set_work_mode — SPEC-313
55
+ server.registerTool('set_work_mode', {
56
+ description: 'Change your preferred interaction style with Planu. Stored in planu.json. ' +
57
+ 'guided = step-by-step hints for SDD newcomers. ' +
58
+ 'standard = normal workflow (default). ' +
59
+ 'expert = concise output, no onboarding hints.',
60
+ inputSchema: {
61
+ projectPath: z.string().max(4096).describe('Absolute path to the project root'),
62
+ workMode: WorkModeEnum.describe('New work mode: guided | standard | expert'),
63
+ },
64
+ annotations: { readOnlyHint: false },
65
+ }, safeTracked('set_work_mode', async (args) => handleSetWorkMode(args)));
52
66
  // 3. init_constitution
53
67
  server.registerTool('init_constitution', {
54
68
  description: t('tools.init_constitution.description'),
@@ -1 +1 @@
1
- {"version":3,"file":"core-spec-tools.js","sourceRoot":"","sources":["../../../src/tools/register-spec-tools/core-spec-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-spec-tools.js","sourceRoot":"","sources":["../../../src/tools/register-spec-tools/core-spec-tools.ts"],"names":[],"mappings":"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"}