@devtrack-solution/codesdd 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/.sdd/skills/curated/api-clean-flask-langgraph/SKILL.md +2751 -0
  2. package/.sdd/skills/curated/devtrack-api/SKILL.md +137 -0
  3. package/.sdd/skills/curated/devtrack-api/agents/openai.yaml +4 -0
  4. package/.sdd/skills/curated/devtrack-api/references/application-presentation.md +381 -0
  5. package/.sdd/skills/curated/devtrack-api/references/architecture-governance.md +219 -0
  6. package/.sdd/skills/curated/devtrack-api/references/domain-modeling.md +359 -0
  7. package/.sdd/skills/curated/devtrack-api/references/implementation-checklist.md +127 -0
  8. package/.sdd/skills/curated/devtrack-api/references/imports-lint.md +207 -0
  9. package/.sdd/skills/curated/devtrack-api/references/testing-validation.md +167 -0
  10. package/.sdd/skills/curated/devtrack-api/references/typeorm-infrastructure.md +334 -0
  11. package/LICENSE +21 -0
  12. package/README.md +842 -0
  13. package/bin/codesdd.js +10 -0
  14. package/dist/cli/index.d.ts +3 -0
  15. package/dist/cli/index.js +560 -0
  16. package/dist/commands/change.d.ts +35 -0
  17. package/dist/commands/change.js +296 -0
  18. package/dist/commands/completion.d.ts +72 -0
  19. package/dist/commands/completion.js +258 -0
  20. package/dist/commands/config.d.ts +36 -0
  21. package/dist/commands/config.js +552 -0
  22. package/dist/commands/feedback.d.ts +9 -0
  23. package/dist/commands/feedback.js +184 -0
  24. package/dist/commands/schema.d.ts +6 -0
  25. package/dist/commands/schema.js +870 -0
  26. package/dist/commands/sdd/execution.d.ts +3 -0
  27. package/dist/commands/sdd/execution.js +409 -0
  28. package/dist/commands/sdd/shared.d.ts +9 -0
  29. package/dist/commands/sdd/shared.js +84 -0
  30. package/dist/commands/sdd/skills.d.ts +3 -0
  31. package/dist/commands/sdd/skills.js +154 -0
  32. package/dist/commands/sdd.d.ts +3 -0
  33. package/dist/commands/sdd.js +769 -0
  34. package/dist/commands/show.d.ts +14 -0
  35. package/dist/commands/show.js +133 -0
  36. package/dist/commands/spec.d.ts +15 -0
  37. package/dist/commands/spec.js +228 -0
  38. package/dist/commands/validate.d.ts +24 -0
  39. package/dist/commands/validate.js +295 -0
  40. package/dist/commands/workflow/index.d.ts +17 -0
  41. package/dist/commands/workflow/index.js +12 -0
  42. package/dist/commands/workflow/instructions.d.ts +29 -0
  43. package/dist/commands/workflow/instructions.js +383 -0
  44. package/dist/commands/workflow/new-change.d.ts +11 -0
  45. package/dist/commands/workflow/new-change.js +45 -0
  46. package/dist/commands/workflow/schemas.d.ts +10 -0
  47. package/dist/commands/workflow/schemas.js +34 -0
  48. package/dist/commands/workflow/shared.d.ts +57 -0
  49. package/dist/commands/workflow/shared.js +117 -0
  50. package/dist/commands/workflow/status.d.ts +14 -0
  51. package/dist/commands/workflow/status.js +76 -0
  52. package/dist/commands/workflow/templates.d.ts +16 -0
  53. package/dist/commands/workflow/templates.js +68 -0
  54. package/dist/core/archive.d.ts +16 -0
  55. package/dist/core/archive.js +487 -0
  56. package/dist/core/artifact-graph/graph.d.ts +56 -0
  57. package/dist/core/artifact-graph/graph.js +141 -0
  58. package/dist/core/artifact-graph/index.d.ts +7 -0
  59. package/dist/core/artifact-graph/index.js +13 -0
  60. package/dist/core/artifact-graph/instruction-loader.d.ts +143 -0
  61. package/dist/core/artifact-graph/instruction-loader.js +215 -0
  62. package/dist/core/artifact-graph/resolver.d.ts +81 -0
  63. package/dist/core/artifact-graph/resolver.js +258 -0
  64. package/dist/core/artifact-graph/schema.d.ts +13 -0
  65. package/dist/core/artifact-graph/schema.js +108 -0
  66. package/dist/core/artifact-graph/state.d.ts +12 -0
  67. package/dist/core/artifact-graph/state.js +54 -0
  68. package/dist/core/artifact-graph/types.d.ts +45 -0
  69. package/dist/core/artifact-graph/types.js +43 -0
  70. package/dist/core/available-tools.d.ts +16 -0
  71. package/dist/core/available-tools.js +30 -0
  72. package/dist/core/branding.d.ts +8 -0
  73. package/dist/core/branding.js +12 -0
  74. package/dist/core/cli/command-matrix.d.ts +23 -0
  75. package/dist/core/cli/command-matrix.js +123 -0
  76. package/dist/core/command-generation/adapters/amazon-q.d.ts +13 -0
  77. package/dist/core/command-generation/adapters/amazon-q.js +26 -0
  78. package/dist/core/command-generation/adapters/antigravity.d.ts +13 -0
  79. package/dist/core/command-generation/adapters/antigravity.js +26 -0
  80. package/dist/core/command-generation/adapters/auggie.d.ts +13 -0
  81. package/dist/core/command-generation/adapters/auggie.js +27 -0
  82. package/dist/core/command-generation/adapters/claude.d.ts +13 -0
  83. package/dist/core/command-generation/adapters/claude.js +50 -0
  84. package/dist/core/command-generation/adapters/cline.d.ts +14 -0
  85. package/dist/core/command-generation/adapters/cline.js +27 -0
  86. package/dist/core/command-generation/adapters/codebuddy.d.ts +13 -0
  87. package/dist/core/command-generation/adapters/codebuddy.js +28 -0
  88. package/dist/core/command-generation/adapters/codex.d.ts +16 -0
  89. package/dist/core/command-generation/adapters/codex.js +39 -0
  90. package/dist/core/command-generation/adapters/continue.d.ts +13 -0
  91. package/dist/core/command-generation/adapters/continue.js +28 -0
  92. package/dist/core/command-generation/adapters/costrict.d.ts +13 -0
  93. package/dist/core/command-generation/adapters/costrict.js +27 -0
  94. package/dist/core/command-generation/adapters/crush.d.ts +13 -0
  95. package/dist/core/command-generation/adapters/crush.js +30 -0
  96. package/dist/core/command-generation/adapters/cursor.d.ts +14 -0
  97. package/dist/core/command-generation/adapters/cursor.js +44 -0
  98. package/dist/core/command-generation/adapters/factory.d.ts +13 -0
  99. package/dist/core/command-generation/adapters/factory.js +27 -0
  100. package/dist/core/command-generation/adapters/gemini.d.ts +13 -0
  101. package/dist/core/command-generation/adapters/gemini.js +26 -0
  102. package/dist/core/command-generation/adapters/github-copilot.d.ts +13 -0
  103. package/dist/core/command-generation/adapters/github-copilot.js +26 -0
  104. package/dist/core/command-generation/adapters/iflow.d.ts +13 -0
  105. package/dist/core/command-generation/adapters/iflow.js +29 -0
  106. package/dist/core/command-generation/adapters/index.d.ts +29 -0
  107. package/dist/core/command-generation/adapters/index.js +29 -0
  108. package/dist/core/command-generation/adapters/kilocode.d.ts +14 -0
  109. package/dist/core/command-generation/adapters/kilocode.js +23 -0
  110. package/dist/core/command-generation/adapters/kiro.d.ts +13 -0
  111. package/dist/core/command-generation/adapters/kiro.js +26 -0
  112. package/dist/core/command-generation/adapters/opencode.d.ts +13 -0
  113. package/dist/core/command-generation/adapters/opencode.js +29 -0
  114. package/dist/core/command-generation/adapters/pi.d.ts +14 -0
  115. package/dist/core/command-generation/adapters/pi.js +41 -0
  116. package/dist/core/command-generation/adapters/qoder.d.ts +13 -0
  117. package/dist/core/command-generation/adapters/qoder.js +30 -0
  118. package/dist/core/command-generation/adapters/qwen.d.ts +13 -0
  119. package/dist/core/command-generation/adapters/qwen.js +26 -0
  120. package/dist/core/command-generation/adapters/roocode.d.ts +14 -0
  121. package/dist/core/command-generation/adapters/roocode.js +27 -0
  122. package/dist/core/command-generation/adapters/windsurf.d.ts +14 -0
  123. package/dist/core/command-generation/adapters/windsurf.js +51 -0
  124. package/dist/core/command-generation/generator.d.ts +21 -0
  125. package/dist/core/command-generation/generator.js +27 -0
  126. package/dist/core/command-generation/index.d.ts +22 -0
  127. package/dist/core/command-generation/index.js +24 -0
  128. package/dist/core/command-generation/registry.d.ts +36 -0
  129. package/dist/core/command-generation/registry.js +92 -0
  130. package/dist/core/command-generation/types.d.ts +56 -0
  131. package/dist/core/command-generation/types.js +8 -0
  132. package/dist/core/completions/command-registry.d.ts +7 -0
  133. package/dist/core/completions/command-registry.js +461 -0
  134. package/dist/core/completions/completion-provider.d.ts +60 -0
  135. package/dist/core/completions/completion-provider.js +102 -0
  136. package/dist/core/completions/factory.d.ts +64 -0
  137. package/dist/core/completions/factory.js +75 -0
  138. package/dist/core/completions/generators/bash-generator.d.ts +32 -0
  139. package/dist/core/completions/generators/bash-generator.js +174 -0
  140. package/dist/core/completions/generators/fish-generator.d.ts +32 -0
  141. package/dist/core/completions/generators/fish-generator.js +157 -0
  142. package/dist/core/completions/generators/powershell-generator.d.ts +33 -0
  143. package/dist/core/completions/generators/powershell-generator.js +207 -0
  144. package/dist/core/completions/generators/zsh-generator.d.ts +44 -0
  145. package/dist/core/completions/generators/zsh-generator.js +250 -0
  146. package/dist/core/completions/installers/bash-installer.d.ts +87 -0
  147. package/dist/core/completions/installers/bash-installer.js +318 -0
  148. package/dist/core/completions/installers/fish-installer.d.ts +43 -0
  149. package/dist/core/completions/installers/fish-installer.js +143 -0
  150. package/dist/core/completions/installers/powershell-installer.d.ts +88 -0
  151. package/dist/core/completions/installers/powershell-installer.js +327 -0
  152. package/dist/core/completions/installers/zsh-installer.d.ts +125 -0
  153. package/dist/core/completions/installers/zsh-installer.js +452 -0
  154. package/dist/core/completions/templates/bash-templates.d.ts +6 -0
  155. package/dist/core/completions/templates/bash-templates.js +24 -0
  156. package/dist/core/completions/templates/fish-templates.d.ts +7 -0
  157. package/dist/core/completions/templates/fish-templates.js +39 -0
  158. package/dist/core/completions/templates/powershell-templates.d.ts +6 -0
  159. package/dist/core/completions/templates/powershell-templates.js +25 -0
  160. package/dist/core/completions/templates/zsh-templates.d.ts +6 -0
  161. package/dist/core/completions/templates/zsh-templates.js +36 -0
  162. package/dist/core/completions/types.d.ts +79 -0
  163. package/dist/core/completions/types.js +2 -0
  164. package/dist/core/config-prompts.d.ts +9 -0
  165. package/dist/core/config-prompts.js +34 -0
  166. package/dist/core/config-schema.d.ts +86 -0
  167. package/dist/core/config-schema.js +213 -0
  168. package/dist/core/config.d.ts +17 -0
  169. package/dist/core/config.js +33 -0
  170. package/dist/core/converters/json-converter.d.ts +6 -0
  171. package/dist/core/converters/json-converter.js +51 -0
  172. package/dist/core/global-config.d.ts +44 -0
  173. package/dist/core/global-config.js +125 -0
  174. package/dist/core/index.d.ts +2 -0
  175. package/dist/core/index.js +3 -0
  176. package/dist/core/init.d.ts +36 -0
  177. package/dist/core/init.js +576 -0
  178. package/dist/core/legacy-cleanup.d.ts +162 -0
  179. package/dist/core/legacy-cleanup.js +512 -0
  180. package/dist/core/list.d.ts +9 -0
  181. package/dist/core/list.js +173 -0
  182. package/dist/core/migration.d.ts +23 -0
  183. package/dist/core/migration.js +108 -0
  184. package/dist/core/parsers/change-parser.d.ts +13 -0
  185. package/dist/core/parsers/change-parser.js +193 -0
  186. package/dist/core/parsers/markdown-parser.d.ts +22 -0
  187. package/dist/core/parsers/markdown-parser.js +187 -0
  188. package/dist/core/parsers/requirement-blocks.d.ts +37 -0
  189. package/dist/core/parsers/requirement-blocks.js +201 -0
  190. package/dist/core/profile-sync-drift.d.ts +38 -0
  191. package/dist/core/profile-sync-drift.js +201 -0
  192. package/dist/core/profiles.d.ts +26 -0
  193. package/dist/core/profiles.js +41 -0
  194. package/dist/core/project-config.d.ts +64 -0
  195. package/dist/core/project-config.js +223 -0
  196. package/dist/core/schemas/base.schema.d.ts +13 -0
  197. package/dist/core/schemas/base.schema.js +13 -0
  198. package/dist/core/schemas/change.schema.d.ts +73 -0
  199. package/dist/core/schemas/change.schema.js +31 -0
  200. package/dist/core/schemas/index.d.ts +4 -0
  201. package/dist/core/schemas/index.js +4 -0
  202. package/dist/core/schemas/spec.schema.d.ts +18 -0
  203. package/dist/core/schemas/spec.schema.js +15 -0
  204. package/dist/core/sdd/adr-policy.d.ts +7 -0
  205. package/dist/core/sdd/adr-policy.js +47 -0
  206. package/dist/core/sdd/adr.d.ts +4 -0
  207. package/dist/core/sdd/adr.js +27 -0
  208. package/dist/core/sdd/bootstrap.d.ts +28 -0
  209. package/dist/core/sdd/bootstrap.js +353 -0
  210. package/dist/core/sdd/check.d.ts +51 -0
  211. package/dist/core/sdd/check.js +831 -0
  212. package/dist/core/sdd/coordination/coordination-adapters.d.ts +73 -0
  213. package/dist/core/sdd/coordination/coordination-adapters.js +87 -0
  214. package/dist/core/sdd/coordination/index.d.ts +2 -0
  215. package/dist/core/sdd/coordination/index.js +2 -0
  216. package/dist/core/sdd/dedup.d.ts +23 -0
  217. package/dist/core/sdd/dedup.js +62 -0
  218. package/dist/core/sdd/default-bootstrap-files.d.ts +23 -0
  219. package/dist/core/sdd/default-bootstrap-files.js +385 -0
  220. package/dist/core/sdd/default-skills.d.ts +16 -0
  221. package/dist/core/sdd/default-skills.js +427 -0
  222. package/dist/core/sdd/diagnose.d.ts +25 -0
  223. package/dist/core/sdd/diagnose.js +1312 -0
  224. package/dist/core/sdd/docs-sync.d.ts +21 -0
  225. package/dist/core/sdd/docs-sync.js +231 -0
  226. package/dist/core/sdd/domain/helpers.d.ts +6 -0
  227. package/dist/core/sdd/domain/helpers.js +37 -0
  228. package/dist/core/sdd/domain/lifecycle-guardrails.d.ts +22 -0
  229. package/dist/core/sdd/domain/lifecycle-guardrails.js +31 -0
  230. package/dist/core/sdd/domain/lifecycle-hooks.d.ts +16 -0
  231. package/dist/core/sdd/domain/lifecycle-hooks.js +27 -0
  232. package/dist/core/sdd/domain/post-active-validation.d.ts +15 -0
  233. package/dist/core/sdd/domain/post-active-validation.js +71 -0
  234. package/dist/core/sdd/domain/traceability.d.ts +8 -0
  235. package/dist/core/sdd/domain/traceability.js +83 -0
  236. package/dist/core/sdd/domain/transition-engine.d.ts +49 -0
  237. package/dist/core/sdd/domain/transition-engine.js +120 -0
  238. package/dist/core/sdd/fingerprint.d.ts +23 -0
  239. package/dist/core/sdd/fingerprint.js +146 -0
  240. package/dist/core/sdd/import-openspec.d.ts +31 -0
  241. package/dist/core/sdd/import-openspec.js +232 -0
  242. package/dist/core/sdd/init.d.ts +36 -0
  243. package/dist/core/sdd/init.js +65 -0
  244. package/dist/core/sdd/json-schema.d.ts +6 -0
  245. package/dist/core/sdd/json-schema.js +59 -0
  246. package/dist/core/sdd/legacy-operations.d.ts +286 -0
  247. package/dist/core/sdd/legacy-operations.js +2175 -0
  248. package/dist/core/sdd/lenses.d.ts +14 -0
  249. package/dist/core/sdd/lenses.js +97 -0
  250. package/dist/core/sdd/merge-catalog.d.ts +9 -0
  251. package/dist/core/sdd/merge-catalog.js +70 -0
  252. package/dist/core/sdd/migrate-workspace.d.ts +36 -0
  253. package/dist/core/sdd/migrate-workspace.js +344 -0
  254. package/dist/core/sdd/migrate.d.ts +24 -0
  255. package/dist/core/sdd/migrate.js +385 -0
  256. package/dist/core/sdd/resolve-project-root.d.ts +15 -0
  257. package/dist/core/sdd/resolve-project-root.js +46 -0
  258. package/dist/core/sdd/root-resolver.d.ts +16 -0
  259. package/dist/core/sdd/root-resolver.js +62 -0
  260. package/dist/core/sdd/sanitize.d.ts +35 -0
  261. package/dist/core/sdd/sanitize.js +750 -0
  262. package/dist/core/sdd/services/approve.service.d.ts +20 -0
  263. package/dist/core/sdd/services/approve.service.js +82 -0
  264. package/dist/core/sdd/services/audit.service.d.ts +53 -0
  265. package/dist/core/sdd/services/audit.service.js +136 -0
  266. package/dist/core/sdd/services/breakdown.service.d.ts +35 -0
  267. package/dist/core/sdd/services/breakdown.service.js +185 -0
  268. package/dist/core/sdd/services/context.service.d.ts +346 -0
  269. package/dist/core/sdd/services/context.service.js +278 -0
  270. package/dist/core/sdd/services/debate.service.d.ts +16 -0
  271. package/dist/core/sdd/services/debate.service.js +73 -0
  272. package/dist/core/sdd/services/decide.service.d.ts +23 -0
  273. package/dist/core/sdd/services/decide.service.js +81 -0
  274. package/dist/core/sdd/services/dedup-apply.service.d.ts +39 -0
  275. package/dist/core/sdd/services/dedup-apply.service.js +259 -0
  276. package/dist/core/sdd/services/feature-lint.service.d.ts +29 -0
  277. package/dist/core/sdd/services/feature-lint.service.js +146 -0
  278. package/dist/core/sdd/services/finalize.service.d.ts +33 -0
  279. package/dist/core/sdd/services/finalize.service.js +707 -0
  280. package/dist/core/sdd/services/frontend-gap.service.d.ts +23 -0
  281. package/dist/core/sdd/services/frontend-gap.service.js +117 -0
  282. package/dist/core/sdd/services/frontend-impact.service.d.ts +19 -0
  283. package/dist/core/sdd/services/frontend-impact.service.js +46 -0
  284. package/dist/core/sdd/services/ingest-deposito.service.d.ts +32 -0
  285. package/dist/core/sdd/services/ingest-deposito.service.js +231 -0
  286. package/dist/core/sdd/services/insight.service.d.ts +21 -0
  287. package/dist/core/sdd/services/insight.service.js +81 -0
  288. package/dist/core/sdd/services/legacy-capability.service.d.ts +24 -0
  289. package/dist/core/sdd/services/legacy-capability.service.js +59 -0
  290. package/dist/core/sdd/services/mcp-runtime.service.d.ts +42 -0
  291. package/dist/core/sdd/services/mcp-runtime.service.js +144 -0
  292. package/dist/core/sdd/services/metrics.service.d.ts +49 -0
  293. package/dist/core/sdd/services/metrics.service.js +181 -0
  294. package/dist/core/sdd/services/next.service.d.ts +35 -0
  295. package/dist/core/sdd/services/next.service.js +54 -0
  296. package/dist/core/sdd/services/onboard.service.d.ts +9 -0
  297. package/dist/core/sdd/services/onboard.service.js +165 -0
  298. package/dist/core/sdd/services/rebuild.service.d.ts +31 -0
  299. package/dist/core/sdd/services/rebuild.service.js +482 -0
  300. package/dist/core/sdd/services/scan-naming.service.d.ts +43 -0
  301. package/dist/core/sdd/services/scan-naming.service.js +246 -0
  302. package/dist/core/sdd/services/skills-invoke.service.d.ts +24 -0
  303. package/dist/core/sdd/services/skills-invoke.service.js +63 -0
  304. package/dist/core/sdd/services/skills-sync.service.d.ts +15 -0
  305. package/dist/core/sdd/services/skills-sync.service.js +117 -0
  306. package/dist/core/sdd/services/start.service.d.ts +26 -0
  307. package/dist/core/sdd/services/start.service.js +237 -0
  308. package/dist/core/sdd/skills.d.ts +15 -0
  309. package/dist/core/sdd/skills.js +46 -0
  310. package/dist/core/sdd/state-lock.d.ts +19 -0
  311. package/dist/core/sdd/state-lock.js +144 -0
  312. package/dist/core/sdd/state.d.ts +155 -0
  313. package/dist/core/sdd/state.js +1000 -0
  314. package/dist/core/sdd/store/in-memory-adapter.d.ts +12 -0
  315. package/dist/core/sdd/store/in-memory-adapter.js +27 -0
  316. package/dist/core/sdd/store/index.d.ts +5 -0
  317. package/dist/core/sdd/store/index.js +5 -0
  318. package/dist/core/sdd/store/sdd-stores.d.ts +25 -0
  319. package/dist/core/sdd/store/sdd-stores.js +59 -0
  320. package/dist/core/sdd/store/state-store.d.ts +32 -0
  321. package/dist/core/sdd/store/state-store.js +2 -0
  322. package/dist/core/sdd/store/yaml-file-adapter.d.ts +12 -0
  323. package/dist/core/sdd/store/yaml-file-adapter.js +43 -0
  324. package/dist/core/sdd/structural-health.d.ts +557 -0
  325. package/dist/core/sdd/structural-health.js +187 -0
  326. package/dist/core/sdd/transaction.d.ts +14 -0
  327. package/dist/core/sdd/transaction.js +100 -0
  328. package/dist/core/sdd/types.d.ts +1570 -0
  329. package/dist/core/sdd/types.js +617 -0
  330. package/dist/core/sdd/views.d.ts +3 -0
  331. package/dist/core/sdd/views.js +560 -0
  332. package/dist/core/sdd/workspace-schemas.d.ts +620 -0
  333. package/dist/core/sdd/workspace-schemas.js +254 -0
  334. package/dist/core/sdd/write-manifest.d.ts +25 -0
  335. package/dist/core/sdd/write-manifest.js +353 -0
  336. package/dist/core/shared/index.d.ts +8 -0
  337. package/dist/core/shared/index.js +8 -0
  338. package/dist/core/shared/skill-generation.d.ts +49 -0
  339. package/dist/core/shared/skill-generation.js +106 -0
  340. package/dist/core/shared/tool-detection.d.ts +71 -0
  341. package/dist/core/shared/tool-detection.js +158 -0
  342. package/dist/core/specs-apply.d.ts +73 -0
  343. package/dist/core/specs-apply.js +385 -0
  344. package/dist/core/styles/palette.d.ts +7 -0
  345. package/dist/core/styles/palette.js +8 -0
  346. package/dist/core/templates/index.d.ts +8 -0
  347. package/dist/core/templates/index.js +9 -0
  348. package/dist/core/templates/skill-templates.d.ts +20 -0
  349. package/dist/core/templates/skill-templates.js +19 -0
  350. package/dist/core/templates/types.d.ts +19 -0
  351. package/dist/core/templates/types.js +5 -0
  352. package/dist/core/templates/workflows/apply-change.d.ts +10 -0
  353. package/dist/core/templates/workflows/apply-change.js +308 -0
  354. package/dist/core/templates/workflows/archive-change.d.ts +10 -0
  355. package/dist/core/templates/workflows/archive-change.js +277 -0
  356. package/dist/core/templates/workflows/bulk-archive-change.d.ts +10 -0
  357. package/dist/core/templates/workflows/bulk-archive-change.js +502 -0
  358. package/dist/core/templates/workflows/continue-change.d.ts +10 -0
  359. package/dist/core/templates/workflows/continue-change.js +232 -0
  360. package/dist/core/templates/workflows/explore.d.ts +10 -0
  361. package/dist/core/templates/workflows/explore.js +475 -0
  362. package/dist/core/templates/workflows/feedback.d.ts +9 -0
  363. package/dist/core/templates/workflows/feedback.js +108 -0
  364. package/dist/core/templates/workflows/ff-change.d.ts +10 -0
  365. package/dist/core/templates/workflows/ff-change.js +206 -0
  366. package/dist/core/templates/workflows/new-change.d.ts +10 -0
  367. package/dist/core/templates/workflows/new-change.js +151 -0
  368. package/dist/core/templates/workflows/onboard.d.ts +10 -0
  369. package/dist/core/templates/workflows/onboard.js +573 -0
  370. package/dist/core/templates/workflows/propose.d.ts +10 -0
  371. package/dist/core/templates/workflows/propose.js +224 -0
  372. package/dist/core/templates/workflows/sdd.d.ts +10 -0
  373. package/dist/core/templates/workflows/sdd.js +107 -0
  374. package/dist/core/templates/workflows/sync-specs.d.ts +10 -0
  375. package/dist/core/templates/workflows/sync-specs.js +286 -0
  376. package/dist/core/templates/workflows/verify-change.d.ts +10 -0
  377. package/dist/core/templates/workflows/verify-change.js +346 -0
  378. package/dist/core/update.d.ts +77 -0
  379. package/dist/core/update.js +538 -0
  380. package/dist/core/validation/constants.d.ts +34 -0
  381. package/dist/core/validation/constants.js +40 -0
  382. package/dist/core/validation/types.d.ts +18 -0
  383. package/dist/core/validation/types.js +2 -0
  384. package/dist/core/validation/validator.d.ts +33 -0
  385. package/dist/core/validation/validator.js +409 -0
  386. package/dist/core/view.d.ts +8 -0
  387. package/dist/core/view.js +170 -0
  388. package/dist/index.d.ts +3 -0
  389. package/dist/index.js +3 -0
  390. package/dist/prompts/searchable-multi-select.d.ts +28 -0
  391. package/dist/prompts/searchable-multi-select.js +159 -0
  392. package/dist/telemetry/config.d.ts +32 -0
  393. package/dist/telemetry/config.js +68 -0
  394. package/dist/telemetry/index.d.ts +44 -0
  395. package/dist/telemetry/index.js +207 -0
  396. package/dist/ui/ascii-patterns.d.ts +16 -0
  397. package/dist/ui/ascii-patterns.js +133 -0
  398. package/dist/ui/welcome-screen.d.ts +10 -0
  399. package/dist/ui/welcome-screen.js +146 -0
  400. package/dist/utils/change-metadata.d.ts +51 -0
  401. package/dist/utils/change-metadata.js +147 -0
  402. package/dist/utils/change-utils.d.ts +62 -0
  403. package/dist/utils/change-utils.js +121 -0
  404. package/dist/utils/command-references.d.ts +18 -0
  405. package/dist/utils/command-references.js +20 -0
  406. package/dist/utils/file-system.d.ts +36 -0
  407. package/dist/utils/file-system.js +281 -0
  408. package/dist/utils/index.d.ts +6 -0
  409. package/dist/utils/index.js +9 -0
  410. package/dist/utils/interactive.d.ts +18 -0
  411. package/dist/utils/interactive.js +21 -0
  412. package/dist/utils/item-discovery.d.ts +4 -0
  413. package/dist/utils/item-discovery.js +73 -0
  414. package/dist/utils/match.d.ts +3 -0
  415. package/dist/utils/match.js +22 -0
  416. package/dist/utils/openspec-compat.d.ts +2 -0
  417. package/dist/utils/openspec-compat.js +2 -0
  418. package/dist/utils/shell-detection.d.ts +20 -0
  419. package/dist/utils/shell-detection.js +41 -0
  420. package/dist/utils/task-progress.d.ts +8 -0
  421. package/dist/utils/task-progress.js +36 -0
  422. package/package.json +111 -0
  423. package/schemas/sdd/1-spec.schema.json +221 -0
  424. package/schemas/sdd/2-plan.schema.json +199 -0
  425. package/schemas/sdd/3-tasks.schema.json +102 -0
  426. package/schemas/sdd/4-changelog.schema.json +55 -0
  427. package/schemas/sdd/5-quality.schema.json +427 -0
  428. package/schemas/sdd/workspace-catalog.schema.json +1012 -0
  429. package/schemas/spec-driven/schema.yaml +153 -0
  430. package/schemas/spec-driven/templates/design.md +19 -0
  431. package/schemas/spec-driven/templates/proposal.md +23 -0
  432. package/schemas/spec-driven/templates/spec.md +8 -0
  433. package/schemas/spec-driven/templates/tasks.md +9 -0
@@ -0,0 +1,16 @@
1
+ import type { SkillCatalogState } from './types.js';
2
+ export interface BuiltInSkillSourceTree {
3
+ kind: 'source-tree';
4
+ sourceRoot: string;
5
+ }
6
+ export type BuiltInSkillTree = Record<string, string>;
7
+ export type BuiltInSkillDefinition = string | BuiltInSkillTree | BuiltInSkillSourceTree;
8
+ export declare const DEFAULT_CURATED_SKILL_CATALOG: SkillCatalogState;
9
+ export declare const SOURCE_INTAKE_SDD_SKILL_MD = "---\nname: source-intake-sdd\ndescription: Reads the .sdd/sources folder, indexes raw sources, and classifies project intake material.\n---\n\n# Source Intake SDD\n\nUse this skill when the project has raw material in `.sdd/sources/`.\n\n## Objective\n\nTurn a heterogeneous document set into a traceable operational inventory.\n\n## Where To Look\n\n- `.sdd/sources/prds/`\n- `.sdd/sources/rfcs/`\n- `.sdd/sources/briefings/`\n- `.sdd/sources/stories/`\n- `.sdd/sources/wireframes/`\n- `.sdd/sources/html-mocks/`\n- `.sdd/sources/visual-references/`\n- `.sdd/sources/interviews/`\n- `.sdd/sources/attachments/`\n- `.sdd/sources/legacy/`\n\n## Required Flow\n\n1. List existing sources.\n2. Classify each source by type.\n3. Register/update `.sdd/state/source-index.yaml`.\n4. Fill for each item:\n - `type`\n - `path`\n - `title`\n - `status`\n - `summary`\n - `used_by`\n - `consolidation_targets`\n5. Do not generate backlog directly in this step.\n\n## Golden Rule\n\n- Raw source is not canonical source.\n- The goal here is inventory and classification.\n- Backlog is created only after semantic normalization.\n";
10
+ export declare const BUSINESS_EXTRACTOR_SDD_SKILL_MD = "---\nname: business-extractor-sdd\ndescription: Extracts stories, business rules, actors, integrations, and constraints from source material.\n---\n\n# Business Extractor SDD\n\nUse this skill when the repository already has PRDs, briefings, stories, or consolidated documents.\n\n## Expected Outputs\n\n- canonical context updates:\n - `.sdd/state/architecture.yaml`\n - `.sdd/state/service-catalog.yaml`\n - `.sdd/state/tech-stack.yaml`\n - `.sdd/state/integration-contracts.yaml`\n- suggestions for:\n - EPICs\n - FEATs\n - INSIGHTs only when real ambiguity exists\n\n## How To Decide The Destination\n\n- If the excerpt describes system structure, consolidate it into context.\n- If the excerpt is a large approved decision, normalize it into an EPIC.\n- If the excerpt is already clear and executable, normalize it into a FEAT.\n- If the excerpt is ambiguous, contradictory, or incomplete, normalize it into an INSIGHT.\n\n## Do Not\n\n- Do not turn an entire PRD into a direct task list.\n- Do not invent technical details that are not present in the source.\n";
11
+ export declare const FRONTEND_EXTRACTOR_SDD_SKILL_MD = "---\nname: frontend-extractor-sdd\ndescription: Extracts frontend surfaces, routes, components, gaps, and decisions from images, HTML, wireframes, and references.\n---\n\n# Frontend Extractor SDD\n\nUse this skill when visual inspiration or UI/UX definitions exist in `.sdd/sources/`.\n\n## Accepted Sources\n\n- wireframes\n- screenshots\n- reference images\n- mocked HTML\n- stories with interface impact\n\n## Expected Outputs\n\n- `.sdd/state/frontend-map.yaml`\n- `.sdd/state/frontend-gaps.yaml`\n- `.sdd/state/frontend-decisions.yaml`\n\n## Classification Criteria\n\n- What is clearly defined as a screen/route goes into frontend-map.\n- What is missing but necessary to cover the journey goes into frontend-gaps.\n- UX rationale, navigation, layout, patterns, and inspiration go into frontend-decisions.\n- If a surface is well-defined and executable, it can become a FEAT.\n";
12
+ export declare const PLANNING_NORMALIZER_SDD_SKILL_MD = "---\nname: planning-normalizer-sdd\ndescription: Converts extracted source material into the SDD operational backlog, prioritizing context, EPICs, and FEATs.\n---\n\n# Planning Normalizer SDD\n\nUse this skill after inventorying sources and extracting business/frontend context.\n\n## Mission\n\nTurn consolidated knowledge into operational SDD artifacts.\n\n## Normalization Order\n\n1. canonical context\n2. EPICs\n3. FEATs\n4. INSIGHTs only for exceptions\n\n## Rules\n\n- Do not force debate when the source is already consolidated and unambiguous.\n- Use debate only for uncertainty, conflict, ambiguity, or open architecture options.\n- Connect FEATs with `blocked_by`, `lock_domains`, `produces`, and `consumes` when enough evidence exists.\n- Record in `.sdd/state/source-index.yaml` which sources generated each EPIC/FEAT.\n\n## Minimum Result\n\nAt the end, the agent must be able to answer:\n- what is system context;\n- what is already approved for planning;\n- what can enter execution now.\n";
13
+ export declare function buildCuratedBundlesMarkdown(): string;
14
+ export declare const REPO_CONTEXT_BOOTSTRAP_SKILL_MD: string;
15
+ export declare const BUILT_IN_SDD_SKILLS: Record<string, BuiltInSkillDefinition>;
16
+ //# sourceMappingURL=default-skills.d.ts.map
@@ -0,0 +1,427 @@
1
+ import { CLI_NAME } from '../branding.js';
2
+ const DEFAULT_TOOLS = ['codex', 'cursor', 'claude', 'gemini'];
3
+ const DEFAULT_SOURCE_REPO = 'https://github.com/sickn33/antigravity-awesome-skills';
4
+ const LOCAL_SDD_SKILL_PATHS = {
5
+ 'api-clean-flask-langgraph': '.sdd/skills/curated/api-clean-flask-langgraph/SKILL.md',
6
+ 'devtrack-api': '.sdd/skills/curated/devtrack-api/SKILL.md',
7
+ 'source-intake-sdd': '.sdd/skills/curated/source-intake-sdd/SKILL.md',
8
+ 'business-extractor-sdd': '.sdd/skills/curated/business-extractor-sdd/SKILL.md',
9
+ 'frontend-extractor-sdd': '.sdd/skills/curated/frontend-extractor-sdd/SKILL.md',
10
+ 'planning-normalizer-sdd': '.sdd/skills/curated/planning-normalizer-sdd/SKILL.md',
11
+ 'mobile-design': '.sdd/skills/curated/sdd-curated-mobile-design/SKILL.md',
12
+ };
13
+ const SKILL_METADATA_OVERRIDES = {
14
+ 'api-clean-flask-langgraph': {
15
+ title: 'API Clean Flask LangGraph',
16
+ description: 'Canonical Python/Flask agentic backend skill with Clean Architecture boundaries, tenant/security authority-source rules, OpenSDD decision support (runtime-safe), production-readiness guidance, and maintainable quality gates.',
17
+ },
18
+ 'devtrack-api': {
19
+ title: 'DevTrack API',
20
+ description: 'Model-agnostic backend engineering and governance skill for DevTrack APIs using NestJS, TypeORM, DDD/Clean Architecture boundaries, evidence-based validation, and safe operational delivery.',
21
+ },
22
+ };
23
+ const CURATED_BUNDLES = [
24
+ {
25
+ id: 'source-intake',
26
+ title: 'Source Intake',
27
+ domains: ['intake', 'planning', 'frontend'],
28
+ phases: ['discover', 'plan'],
29
+ skillIds: [
30
+ 'source-intake-sdd',
31
+ 'business-extractor-sdd',
32
+ 'frontend-extractor-sdd',
33
+ 'planning-normalizer-sdd',
34
+ ],
35
+ },
36
+ {
37
+ id: 'essentials-core',
38
+ title: 'Essentials Core',
39
+ domains: ['general', 'process'],
40
+ phases: ['discover', 'plan', 'execute', 'verify', 'finalize'],
41
+ skillIds: [
42
+ 'concise-planning',
43
+ 'brainstorming',
44
+ 'lint-and-validate',
45
+ 'systematic-debugging',
46
+ 'test-driven-development',
47
+ 'doc-coauthoring',
48
+ 'create-pr',
49
+ 'git-pushing',
50
+ 'kaizen',
51
+ 'code-review-checklist',
52
+ ],
53
+ },
54
+ {
55
+ id: 'architecture-backend',
56
+ title: 'Architecture Backend',
57
+ domains: ['architecture', 'backend'],
58
+ phases: ['discover', 'plan', 'execute', 'verify'],
59
+ skillIds: [
60
+ 'architecture',
61
+ 'senior-architect',
62
+ 'architecture-patterns',
63
+ 'microservices-patterns',
64
+ 'domain-driven-design',
65
+ 'ddd-context-mapping',
66
+ 'ddd-tactical-patterns',
67
+ 'api-design-principles',
68
+ 'database-design',
69
+ 'devtrack-api',
70
+ 'typescript-expert',
71
+ ],
72
+ },
73
+ {
74
+ id: 'python-agentic-backend',
75
+ title: 'Python Agentic Backend',
76
+ domains: ['backend', 'api', 'python', 'flask', 'websocket', 'ai', 'agent', 'saas'],
77
+ phases: ['plan', 'execute', 'verify', 'finalize'],
78
+ skillIds: ['api-clean-flask-langgraph'],
79
+ },
80
+ {
81
+ id: 'frontend-product',
82
+ title: 'Frontend Product',
83
+ domains: ['frontend', 'product'],
84
+ phases: ['plan', 'execute', 'verify'],
85
+ skillIds: [
86
+ 'frontend-design',
87
+ 'react-best-practices',
88
+ 'react-patterns',
89
+ 'nextjs-best-practices',
90
+ 'nextjs-app-router-patterns',
91
+ 'tailwind-patterns',
92
+ 'ui-ux-pro-max',
93
+ 'mobile-design',
94
+ 'form-cro',
95
+ 'frontend-developer',
96
+ ],
97
+ },
98
+ {
99
+ id: 'security-quality',
100
+ title: 'Security Quality',
101
+ domains: ['security', 'quality'],
102
+ phases: ['plan', 'execute', 'verify'],
103
+ skillIds: [
104
+ 'security-auditor',
105
+ 'api-security-best-practices',
106
+ 'backend-security-coder',
107
+ 'frontend-security-coder',
108
+ 'cc-skill-security-review',
109
+ 'top-web-vulnerabilities',
110
+ 'vulnerability-scanner',
111
+ 'ethical-hacking-methodology',
112
+ 'cloud-penetration-testing',
113
+ 'pci-compliance',
114
+ ],
115
+ },
116
+ {
117
+ id: 'ai-agentic',
118
+ title: 'AI Agentic',
119
+ domains: ['ai', 'agent'],
120
+ phases: ['discover', 'plan', 'execute', 'verify', 'finalize'],
121
+ skillIds: [
122
+ 'prompt-engineering',
123
+ 'context-window-management',
124
+ 'ai-agents-architect',
125
+ 'agent-evaluation',
126
+ 'mcp-builder',
127
+ 'rag-engineer',
128
+ 'rag-implementation',
129
+ 'prompt-caching',
130
+ 'langgraph',
131
+ 'langfuse',
132
+ ],
133
+ },
134
+ {
135
+ id: 'devops-integration',
136
+ title: 'DevOps Integration',
137
+ domains: ['devops', 'integration'],
138
+ phases: ['plan', 'execute', 'verify', 'finalize'],
139
+ skillIds: [
140
+ 'docker-expert',
141
+ 'aws-serverless',
142
+ 'kubernetes-architect',
143
+ 'terraform-specialist',
144
+ 'environment-setup-guide',
145
+ 'deployment-procedures',
146
+ 'observability-engineer',
147
+ 'distributed-tracing',
148
+ 'performance-engineer',
149
+ 'incident-responder',
150
+ ],
151
+ },
152
+ ];
153
+ function titleFromSkillId(skillId) {
154
+ return skillId
155
+ .split('-')
156
+ .map((part) => (part.length > 0 ? part[0].toUpperCase() + part.slice(1) : part))
157
+ .join(' ');
158
+ }
159
+ function priorityForIndex(index) {
160
+ const priority = 10 - index;
161
+ return priority < 6 ? 6 : priority;
162
+ }
163
+ function buildSkillEntry(bundle, skillId, index) {
164
+ const localSourcePath = LOCAL_SDD_SKILL_PATHS[skillId];
165
+ const isLocalSkill = Boolean(localSourcePath);
166
+ const metadata = SKILL_METADATA_OVERRIDES[skillId] || {};
167
+ return {
168
+ id: skillId,
169
+ source_repo: isLocalSkill ? 'local://opensdd/sdd' : DEFAULT_SOURCE_REPO,
170
+ source_path: isLocalSkill ? localSourcePath : `skills/${skillId}/SKILL.md`,
171
+ title: metadata.title || titleFromSkillId(skillId),
172
+ description: metadata.description || (isLocalSkill
173
+ ? `Native SDD skill for ${bundle.title.toLowerCase()}.`
174
+ : `Curated skill for ${bundle.title.toLowerCase()} in the SDD flow.`),
175
+ phases: bundle.phases,
176
+ domains: bundle.domains,
177
+ tools: DEFAULT_TOOLS,
178
+ bundle_ids: [bundle.id],
179
+ priority: priorityForIndex(index),
180
+ };
181
+ }
182
+ export const DEFAULT_CURATED_SKILL_CATALOG = {
183
+ version: 1,
184
+ skills: CURATED_BUNDLES.flatMap((bundle) => bundle.skillIds.map((skillId, index) => buildSkillEntry(bundle, skillId, index))),
185
+ bundles: CURATED_BUNDLES.map((bundle) => ({
186
+ id: bundle.id,
187
+ title: bundle.title,
188
+ skill_ids: [...bundle.skillIds],
189
+ })),
190
+ };
191
+ export const SOURCE_INTAKE_SDD_SKILL_MD = `---
192
+ name: source-intake-sdd
193
+ description: Reads the .sdd/sources folder, indexes raw sources, and classifies project intake material.
194
+ ---
195
+
196
+ # Source Intake SDD
197
+
198
+ Use this skill when the project has raw material in \`.sdd/sources/\`.
199
+
200
+ ## Objective
201
+
202
+ Turn a heterogeneous document set into a traceable operational inventory.
203
+
204
+ ## Where To Look
205
+
206
+ - \`.sdd/sources/prds/\`
207
+ - \`.sdd/sources/rfcs/\`
208
+ - \`.sdd/sources/briefings/\`
209
+ - \`.sdd/sources/stories/\`
210
+ - \`.sdd/sources/wireframes/\`
211
+ - \`.sdd/sources/html-mocks/\`
212
+ - \`.sdd/sources/visual-references/\`
213
+ - \`.sdd/sources/interviews/\`
214
+ - \`.sdd/sources/attachments/\`
215
+ - \`.sdd/sources/legacy/\`
216
+
217
+ ## Required Flow
218
+
219
+ 1. List existing sources.
220
+ 2. Classify each source by type.
221
+ 3. Register/update \`.sdd/state/source-index.yaml\`.
222
+ 4. Fill for each item:
223
+ - \`type\`
224
+ - \`path\`
225
+ - \`title\`
226
+ - \`status\`
227
+ - \`summary\`
228
+ - \`used_by\`
229
+ - \`consolidation_targets\`
230
+ 5. Do not generate backlog directly in this step.
231
+
232
+ ## Golden Rule
233
+
234
+ - Raw source is not canonical source.
235
+ - The goal here is inventory and classification.
236
+ - Backlog is created only after semantic normalization.
237
+ `;
238
+ export const BUSINESS_EXTRACTOR_SDD_SKILL_MD = `---
239
+ name: business-extractor-sdd
240
+ description: Extracts stories, business rules, actors, integrations, and constraints from source material.
241
+ ---
242
+
243
+ # Business Extractor SDD
244
+
245
+ Use this skill when the repository already has PRDs, briefings, stories, or consolidated documents.
246
+
247
+ ## Expected Outputs
248
+
249
+ - canonical context updates:
250
+ - \`.sdd/state/architecture.yaml\`
251
+ - \`.sdd/state/service-catalog.yaml\`
252
+ - \`.sdd/state/tech-stack.yaml\`
253
+ - \`.sdd/state/integration-contracts.yaml\`
254
+ - suggestions for:
255
+ - EPICs
256
+ - FEATs
257
+ - INSIGHTs only when real ambiguity exists
258
+
259
+ ## How To Decide The Destination
260
+
261
+ - If the excerpt describes system structure, consolidate it into context.
262
+ - If the excerpt is a large approved decision, normalize it into an EPIC.
263
+ - If the excerpt is already clear and executable, normalize it into a FEAT.
264
+ - If the excerpt is ambiguous, contradictory, or incomplete, normalize it into an INSIGHT.
265
+
266
+ ## Do Not
267
+
268
+ - Do not turn an entire PRD into a direct task list.
269
+ - Do not invent technical details that are not present in the source.
270
+ `;
271
+ export const FRONTEND_EXTRACTOR_SDD_SKILL_MD = `---
272
+ name: frontend-extractor-sdd
273
+ description: Extracts frontend surfaces, routes, components, gaps, and decisions from images, HTML, wireframes, and references.
274
+ ---
275
+
276
+ # Frontend Extractor SDD
277
+
278
+ Use this skill when visual inspiration or UI/UX definitions exist in \`.sdd/sources/\`.
279
+
280
+ ## Accepted Sources
281
+
282
+ - wireframes
283
+ - screenshots
284
+ - reference images
285
+ - mocked HTML
286
+ - stories with interface impact
287
+
288
+ ## Expected Outputs
289
+
290
+ - \`.sdd/state/frontend-map.yaml\`
291
+ - \`.sdd/state/frontend-gaps.yaml\`
292
+ - \`.sdd/state/frontend-decisions.yaml\`
293
+
294
+ ## Classification Criteria
295
+
296
+ - What is clearly defined as a screen/route goes into frontend-map.
297
+ - What is missing but necessary to cover the journey goes into frontend-gaps.
298
+ - UX rationale, navigation, layout, patterns, and inspiration go into frontend-decisions.
299
+ - If a surface is well-defined and executable, it can become a FEAT.
300
+ `;
301
+ export const PLANNING_NORMALIZER_SDD_SKILL_MD = `---
302
+ name: planning-normalizer-sdd
303
+ description: Converts extracted source material into the SDD operational backlog, prioritizing context, EPICs, and FEATs.
304
+ ---
305
+
306
+ # Planning Normalizer SDD
307
+
308
+ Use this skill after inventorying sources and extracting business/frontend context.
309
+
310
+ ## Mission
311
+
312
+ Turn consolidated knowledge into operational SDD artifacts.
313
+
314
+ ## Normalization Order
315
+
316
+ 1. canonical context
317
+ 2. EPICs
318
+ 3. FEATs
319
+ 4. INSIGHTs only for exceptions
320
+
321
+ ## Rules
322
+
323
+ - Do not force debate when the source is already consolidated and unambiguous.
324
+ - Use debate only for uncertainty, conflict, ambiguity, or open architecture options.
325
+ - Connect FEATs with \`blocked_by\`, \`lock_domains\`, \`produces\`, and \`consumes\` when enough evidence exists.
326
+ - Record in \`.sdd/state/source-index.yaml\` which sources generated each EPIC/FEAT.
327
+
328
+ ## Minimum Result
329
+
330
+ At the end, the agent must be able to answer:
331
+ - what is system context;
332
+ - what is already approved for planning;
333
+ - what can enter execution now.
334
+ `;
335
+ export function buildCuratedBundlesMarkdown() {
336
+ const lines = [
337
+ '# Skill Curation (en-US)',
338
+ '',
339
+ `This file describes the initial curation of ${DEFAULT_CURATED_SKILL_CATALOG.skills.length} skills for SDD usage.`,
340
+ '',
341
+ '## Objective',
342
+ '- Reduce the 900+ skill universe to a practical set.',
343
+ '- Accelerate planning, execution, and validation.',
344
+ '- Make delegation between agents easier in English.',
345
+ '',
346
+ ];
347
+ CURATED_BUNDLES.forEach((bundle, index) => {
348
+ lines.push(`## Bundle ${index + 1}: ${bundle.title} (${bundle.skillIds.length})`);
349
+ bundle.skillIds.forEach((skillId) => lines.push(`- ${skillId}`));
350
+ lines.push('');
351
+ });
352
+ lines.push('## Highlighted Local Skill');
353
+ lines.push('- `api-clean-flask-langgraph` belongs to bundle `python-agentic-backend`.');
354
+ lines.push('- It is the canonical local reference for Python/Flask Clean Architecture, OpenSDD decision support (without runtime dependency), production-readiness guidance, and quality gates.');
355
+ lines.push('- Canonical file: `.sdd/skills/curated/api-clean-flask-langgraph/SKILL.md`.');
356
+ lines.push('- `devtrack-api` belongs to bundle `architecture-backend`.');
357
+ lines.push('- Canonical directory: `.sdd/skills/curated/devtrack-api/` (includes `agents/` and `references/`).');
358
+ lines.push('');
359
+ lines.push('## Canonical Source');
360
+ lines.push('- `.sdd/state/skill-catalog.yaml`');
361
+ lines.push('');
362
+ lines.push('## Operational Rule');
363
+ lines.push('- The skills in this document are a curation reference.');
364
+ lines.push('- Official skills and bundles state must be edited only in canonical YAML.');
365
+ lines.push('');
366
+ return lines.join('\n');
367
+ }
368
+ export const REPO_CONTEXT_BOOTSTRAP_SKILL_MD = `---
369
+ name: repo-context-bootstrap
370
+ description: Inspects an existing repository to fill initial SDD context with evidence and avoid fragile inference.
371
+ ---
372
+
373
+ # Repo Context Bootstrap
374
+
375
+ Use this skill when the project already exists and you need reliable initial SDD context.
376
+
377
+ ## Objective
378
+
379
+ Map and document, based on repository evidence:
380
+ - technology stack;
381
+ - service catalog;
382
+ - initial architecture;
383
+ - integrations/contracts;
384
+ - relevant directory map.
385
+
386
+ ## Required Flow
387
+
388
+ 1. Run \`${CLI_NAME} sdd init --frontend --lang en-US --layout en-US\` if the SDD structure does not exist yet.
389
+ 2. Execute \`${CLI_NAME} sdd init-context --mode merge\`.
390
+ 3. Read the generated files:
391
+ - \`.sdd/core/spec-tecnologica.md\`
392
+ - \`.sdd/core/servicos.md\`
393
+ - \`.sdd/core/arquitetura.md\`
394
+ - \`.sdd/core/repo-map.md\`
395
+ 4. Validate with \`${CLI_NAME} sdd check --render\`.
396
+ 5. Register any doubt or low confidence as a review item in \`.sdd/planning/tech-debt.md\`.
397
+
398
+ ## Quality Rules
399
+
400
+ - Do not invent services that do not appear in directories or manifests.
401
+ - Do not invent integrations without concrete signals in dependencies or configs.
402
+ - Prioritize evidence in:
403
+ - \`package.json\`, \`pnpm-workspace.yaml\`, \`docker-compose.yml\`;
404
+ - directories \`apps/\`, \`services/\`, \`packages/\`, \`src/\`;
405
+ - framework configuration files.
406
+ - When uncertain, record it as "needs human review".
407
+
408
+ ## Expected Result
409
+
410
+ After execution, the project should have enough useful initial context for a new agent to continue without broad code inspection.
411
+ `;
412
+ export const BUILT_IN_SDD_SKILLS = {
413
+ 'repo-context-bootstrap': REPO_CONTEXT_BOOTSTRAP_SKILL_MD,
414
+ 'source-intake-sdd': SOURCE_INTAKE_SDD_SKILL_MD,
415
+ 'business-extractor-sdd': BUSINESS_EXTRACTOR_SDD_SKILL_MD,
416
+ 'frontend-extractor-sdd': FRONTEND_EXTRACTOR_SDD_SKILL_MD,
417
+ 'planning-normalizer-sdd': PLANNING_NORMALIZER_SDD_SKILL_MD,
418
+ 'api-clean-flask-langgraph': {
419
+ kind: 'source-tree',
420
+ sourceRoot: '.sdd/skills/curated/api-clean-flask-langgraph',
421
+ },
422
+ 'devtrack-api': {
423
+ kind: 'source-tree',
424
+ sourceRoot: '.sdd/skills/curated/devtrack-api',
425
+ },
426
+ };
427
+ //# sourceMappingURL=default-skills.js.map
@@ -0,0 +1,25 @@
1
+ import { type StructuralDiagnosticReport } from './structural-health.js';
2
+ export interface SddDiagnoseOptions {
3
+ strict?: boolean;
4
+ }
5
+ export interface SddDiagnoseCommandOptions extends SddDiagnoseOptions {
6
+ output?: string;
7
+ }
8
+ export interface SddDiagnoseResult {
9
+ report: StructuralDiagnosticReport;
10
+ exitCode: number;
11
+ health: 'HEALTHY' | 'WARNING' | 'ERROR' | 'BLOCKED';
12
+ outputPath?: string;
13
+ }
14
+ export declare class SddDiagnosticOptionsError extends Error {
15
+ constructor(message: string);
16
+ }
17
+ export declare function getDiagnosticExitCode(report: StructuralDiagnosticReport): number;
18
+ export declare function getDiagnosticHealth(report: StructuralDiagnosticReport): SddDiagnoseResult['health'];
19
+ export declare function diagnoseSddRoot(projectRoot: string, options?: SddDiagnoseOptions): Promise<StructuralDiagnosticReport>;
20
+ export declare function writeDiagnosticReport(projectRoot: string, outputPath: string, report: StructuralDiagnosticReport): Promise<string>;
21
+ export declare function formatDiagnosticText(report: StructuralDiagnosticReport): string;
22
+ export declare class SddDiagnoseCommand {
23
+ execute(projectRoot: string, options?: SddDiagnoseCommandOptions): Promise<SddDiagnoseResult>;
24
+ }
25
+ //# sourceMappingURL=diagnose.d.ts.map