specweave 0.4.1 → 0.6.3

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 (400) hide show
  1. package/.claude-plugin/README.md +312 -0
  2. package/.claude-plugin/marketplace.json +210 -0
  3. package/CLAUDE.md +952 -609
  4. package/README.md +179 -761
  5. package/bin/install-agents.sh +1 -1
  6. package/bin/install-commands.sh +66 -14
  7. package/bin/install-hooks.sh +1 -1
  8. package/bin/install-skills.sh +1 -1
  9. package/bin/specweave.js +2 -0
  10. package/dist/adapters/claude/adapter.d.ts +49 -11
  11. package/dist/adapters/claude/adapter.d.ts.map +1 -1
  12. package/dist/adapters/claude/adapter.js +175 -42
  13. package/dist/adapters/claude/adapter.js.map +1 -1
  14. package/dist/adapters/copilot/adapter.d.ts +20 -2
  15. package/dist/adapters/copilot/adapter.d.ts.map +1 -1
  16. package/dist/adapters/copilot/adapter.js +117 -7
  17. package/dist/adapters/copilot/adapter.js.map +1 -1
  18. package/dist/adapters/cursor/adapter.d.ts +18 -0
  19. package/dist/adapters/cursor/adapter.d.ts.map +1 -1
  20. package/dist/adapters/cursor/adapter.js +55 -3
  21. package/dist/adapters/cursor/adapter.js.map +1 -1
  22. package/dist/adapters/generic/adapter.d.ts +18 -0
  23. package/dist/adapters/generic/adapter.d.ts.map +1 -1
  24. package/dist/adapters/generic/adapter.js +55 -3
  25. package/dist/adapters/generic/adapter.js.map +1 -1
  26. package/dist/cli/commands/init.d.ts +1 -0
  27. package/dist/cli/commands/init.d.ts.map +1 -1
  28. package/dist/cli/commands/init.js +521 -185
  29. package/dist/cli/commands/init.js.map +1 -1
  30. package/dist/cli/commands/install.d.ts +2 -0
  31. package/dist/cli/commands/install.d.ts.map +1 -1
  32. package/dist/cli/commands/install.js +28 -25
  33. package/dist/cli/commands/install.js.map +1 -1
  34. package/dist/cli/commands/list.d.ts +2 -0
  35. package/dist/cli/commands/list.d.ts.map +1 -1
  36. package/dist/cli/commands/list.js +26 -24
  37. package/dist/cli/commands/list.js.map +1 -1
  38. package/dist/cli/commands/plugin.d.ts +23 -6
  39. package/dist/cli/commands/plugin.d.ts.map +1 -1
  40. package/dist/cli/commands/plugin.js +92 -66
  41. package/dist/cli/commands/plugin.js.map +1 -1
  42. package/dist/core/i18n/language-detector.d.ts +29 -0
  43. package/dist/core/i18n/language-detector.d.ts.map +1 -0
  44. package/dist/core/i18n/language-detector.js +143 -0
  45. package/dist/core/i18n/language-detector.js.map +1 -0
  46. package/dist/core/i18n/language-manager.d.ts +101 -0
  47. package/dist/core/i18n/language-manager.d.ts.map +1 -0
  48. package/dist/core/i18n/language-manager.js +232 -0
  49. package/dist/core/i18n/language-manager.js.map +1 -0
  50. package/dist/core/i18n/language-registry.d.ts +44 -0
  51. package/dist/core/i18n/language-registry.d.ts.map +1 -0
  52. package/dist/core/i18n/language-registry.js +234 -0
  53. package/dist/core/i18n/language-registry.js.map +1 -0
  54. package/dist/core/i18n/locale-manager.d.ts +62 -0
  55. package/dist/core/i18n/locale-manager.d.ts.map +1 -0
  56. package/dist/core/i18n/locale-manager.js +137 -0
  57. package/dist/core/i18n/locale-manager.js.map +1 -0
  58. package/dist/core/i18n/system-prompt-injector.d.ts +33 -0
  59. package/dist/core/i18n/system-prompt-injector.d.ts.map +1 -0
  60. package/dist/core/i18n/system-prompt-injector.js +131 -0
  61. package/dist/core/i18n/system-prompt-injector.js.map +1 -0
  62. package/dist/core/i18n/types.d.ts +151 -0
  63. package/dist/core/i18n/types.d.ts.map +1 -0
  64. package/dist/core/i18n/types.js +11 -0
  65. package/dist/core/i18n/types.js.map +1 -0
  66. package/dist/core/increment-status.d.ts +72 -0
  67. package/dist/core/increment-status.d.ts.map +1 -0
  68. package/dist/core/increment-status.js +227 -0
  69. package/dist/core/increment-status.js.map +1 -0
  70. package/dist/core/plugin-loader.d.ts +33 -13
  71. package/dist/core/plugin-loader.d.ts.map +1 -1
  72. package/dist/core/plugin-loader.js +145 -43
  73. package/dist/core/plugin-loader.js.map +1 -1
  74. package/dist/core/types/config.d.ts +51 -0
  75. package/dist/core/types/config.d.ts.map +1 -0
  76. package/dist/core/types/config.js +21 -0
  77. package/dist/core/types/config.js.map +1 -0
  78. package/dist/core/types/plugin.d.ts +73 -42
  79. package/dist/core/types/plugin.d.ts.map +1 -1
  80. package/dist/core/types/plugin.js +4 -3
  81. package/dist/core/types/plugin.js.map +1 -1
  82. package/dist/hooks/lib/sync-living-docs.d.ts +27 -0
  83. package/dist/hooks/lib/sync-living-docs.d.ts.map +1 -0
  84. package/dist/hooks/lib/sync-living-docs.js +116 -0
  85. package/dist/hooks/lib/sync-living-docs.js.map +1 -0
  86. package/dist/hooks/lib/translate-living-docs.d.ts +13 -0
  87. package/dist/hooks/lib/translate-living-docs.d.ts.map +1 -0
  88. package/dist/hooks/lib/translate-living-docs.js +166 -0
  89. package/dist/hooks/lib/translate-living-docs.js.map +1 -0
  90. package/dist/hooks/lib/update-tasks-md.d.ts +29 -0
  91. package/dist/hooks/lib/update-tasks-md.d.ts.map +1 -0
  92. package/dist/hooks/lib/update-tasks-md.js +203 -0
  93. package/dist/hooks/lib/update-tasks-md.js.map +1 -0
  94. package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -1
  95. package/dist/integrations/jira/jira-mapper.js.map +1 -1
  96. package/dist/locales/de/.gitkeep +0 -0
  97. package/dist/locales/de/cli.json +108 -0
  98. package/dist/locales/en/cli.json +285 -0
  99. package/dist/locales/en/errors.json +7 -0
  100. package/dist/locales/en/templates.json +6 -0
  101. package/dist/locales/es/.gitkeep +0 -0
  102. package/dist/locales/es/cli.json +41 -0
  103. package/dist/locales/fr/.gitkeep +0 -0
  104. package/dist/locales/fr/cli.json +108 -0
  105. package/dist/locales/ja/.gitkeep +0 -0
  106. package/dist/locales/ja/cli.json +108 -0
  107. package/dist/locales/ko/.gitkeep +0 -0
  108. package/dist/locales/ko/cli.json +108 -0
  109. package/dist/locales/pt/.gitkeep +0 -0
  110. package/dist/locales/pt/cli.json +108 -0
  111. package/dist/locales/ru/.gitkeep +0 -0
  112. package/dist/locales/ru/cli.json +269 -0
  113. package/dist/locales/zh/.gitkeep +0 -0
  114. package/dist/locales/zh/cli.json +108 -0
  115. package/dist/plugins/specweave-github/lib/github-client.d.ts +86 -0
  116. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +1 -0
  117. package/dist/plugins/specweave-github/lib/github-client.js +275 -0
  118. package/dist/plugins/specweave-github/lib/github-client.js.map +1 -0
  119. package/dist/plugins/specweave-github/lib/index.d.ts +10 -0
  120. package/dist/plugins/specweave-github/lib/index.d.ts.map +1 -0
  121. package/dist/plugins/specweave-github/lib/index.js +10 -0
  122. package/dist/plugins/specweave-github/lib/index.js.map +1 -0
  123. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +51 -0
  124. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +1 -0
  125. package/dist/plugins/specweave-github/lib/subtask-sync.js +147 -0
  126. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +1 -0
  127. package/dist/plugins/specweave-github/lib/task-parser.d.ts +37 -0
  128. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +1 -0
  129. package/dist/plugins/specweave-github/lib/task-parser.js +211 -0
  130. package/dist/plugins/specweave-github/lib/task-parser.js.map +1 -0
  131. package/dist/plugins/specweave-github/lib/task-sync.d.ts +51 -0
  132. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +1 -0
  133. package/dist/plugins/specweave-github/lib/task-sync.js +332 -0
  134. package/dist/plugins/specweave-github/lib/task-sync.js.map +1 -0
  135. package/dist/plugins/specweave-github/lib/types.d.ts +80 -0
  136. package/dist/plugins/specweave-github/lib/types.d.ts.map +1 -0
  137. package/dist/plugins/specweave-github/lib/types.js +5 -0
  138. package/dist/plugins/specweave-github/lib/types.js.map +1 -0
  139. package/dist/utils/agents-md-compiler.d.ts +68 -0
  140. package/dist/utils/agents-md-compiler.d.ts.map +1 -0
  141. package/dist/utils/agents-md-compiler.js +420 -0
  142. package/dist/utils/agents-md-compiler.js.map +1 -0
  143. package/dist/utils/execFileNoThrow.d.ts +97 -0
  144. package/dist/utils/execFileNoThrow.d.ts.map +1 -0
  145. package/dist/utils/execFileNoThrow.js +130 -0
  146. package/dist/utils/execFileNoThrow.js.map +1 -0
  147. package/dist/utils/generate-skills-index.js +4 -4
  148. package/dist/utils/generate-skills-index.js.map +1 -1
  149. package/package.json +13 -14
  150. package/plugins/.specweave/logs/hooks-debug.log +24 -0
  151. package/plugins/.specweave/logs/last-hook-fire +1 -0
  152. package/plugins/.specweave/logs/last-todowrite-time +1 -0
  153. package/plugins/.specweave/logs/tasks.log +6 -0
  154. package/plugins/specweave/.claude-plugin/plugin.json +22 -0
  155. package/{src → plugins/specweave}/agents/pm/AGENT.md +80 -0
  156. package/plugins/specweave/agents/translator/AGENT.md +282 -0
  157. package/{src → plugins/specweave}/commands/README.md +11 -11
  158. package/{src/commands/specweave.costs.md → plugins/specweave/commands/costs.md} +8 -8
  159. package/{src/commands/specweave.do.md → plugins/specweave/commands/do.md} +35 -8
  160. package/{src/commands/specweave.done.md → plugins/specweave/commands/done.md} +1 -1
  161. package/{src/commands/specweave.inc.md → plugins/specweave/commands/inc.md} +1 -1
  162. package/{src/commands/specweave.increment.md → plugins/specweave/commands/increment.md} +84 -19
  163. package/{src/commands/specweave.next.md → plugins/specweave/commands/next.md} +1 -1
  164. package/{src/commands/specweave.progress.md → plugins/specweave/commands/progress.md} +1 -1
  165. package/{src → plugins/specweave}/commands/specweave.md +57 -25
  166. package/{src/commands/specweave.sync-docs.md → plugins/specweave/commands/sync-docs.md} +6 -6
  167. package/plugins/specweave/commands/translate.md +425 -0
  168. package/{src/commands/specweave.validate.md → plugins/specweave/commands/validate.md} +2 -2
  169. package/plugins/specweave/hooks/hooks.json +15 -0
  170. package/plugins/specweave/hooks/post-task-completion.sh +265 -0
  171. package/plugins/specweave/skills/SKILLS-INDEX.md +229 -0
  172. package/{src → plugins/specweave}/skills/brownfield-analyzer/SKILL.md +66 -24
  173. package/{src → plugins/specweave}/skills/context-loader/SKILL.md +1 -1
  174. package/plugins/specweave/skills/context-optimizer/SKILL.md +588 -0
  175. package/plugins/specweave/skills/docs-updater/SKILL.md +0 -0
  176. package/{src → plugins/specweave}/skills/increment-planner/SKILL.md +81 -4
  177. package/plugins/specweave/skills/plugin-detector/SKILL.md +211 -0
  178. package/{src → plugins/specweave}/skills/project-kickstarter/SKILL.md +7 -7
  179. package/plugins/specweave/skills/rfc-generator/SKILL.md +369 -0
  180. package/{src → plugins/specweave}/skills/specweave-detector/SKILL.md +2 -2
  181. package/plugins/specweave/skills/specweave-framework/SKILL.md +498 -0
  182. package/plugins/specweave/skills/specweave-framework/test-cases/test-1-increment-naming.yaml +11 -0
  183. package/plugins/specweave/skills/specweave-framework/test-cases/test-2-source-of-truth.yaml +11 -0
  184. package/plugins/specweave/skills/specweave-framework/test-cases/test-3-increment-discipline.yaml +12 -0
  185. package/plugins/specweave/skills/specweave-framework/test-cases/test-4-file-placement.yaml +11 -0
  186. package/{src → plugins/specweave}/skills/tdd-workflow/SKILL.md +21 -21
  187. package/plugins/specweave/skills/translator/SKILL.md +172 -0
  188. package/plugins/specweave-ado/.claude-plugin/plugin.json +8 -0
  189. package/plugins/specweave-alternatives/.claude-plugin/plugin.json +8 -0
  190. package/plugins/specweave-alternatives/skills/bmad-method-expert/SKILL.md +626 -0
  191. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/analyze-project.js +318 -0
  192. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/check-setup.js +208 -0
  193. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/generate-template.js +1149 -0
  194. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/validate-documents.js +340 -0
  195. package/plugins/specweave-alternatives/skills/spec-kit-expert/SKILL.md +1010 -0
  196. package/plugins/specweave-backend/.claude-plugin/plugin.json +8 -0
  197. package/plugins/specweave-cost-optimizer/.claude-plugin/plugin.json +8 -0
  198. package/plugins/specweave-diagrams/.claude-plugin/plugin.json +8 -0
  199. package/plugins/specweave-docs/.claude-plugin/plugin.json +8 -0
  200. package/plugins/specweave-docs/skills/docusaurus/SKILL.md +526 -0
  201. package/plugins/specweave-figma/.claude-plugin/.mcp.json +12 -0
  202. package/plugins/specweave-figma/.claude-plugin/plugin.json +8 -0
  203. package/plugins/specweave-figma/ARCHITECTURE.md +453 -0
  204. package/plugins/specweave-figma/README.md +728 -0
  205. package/plugins/specweave-figma/skills/figma-to-code/SKILL.md +632 -0
  206. package/plugins/specweave-figma/skills/figma-to-code/test-1-token-generation.yaml +29 -0
  207. package/plugins/specweave-figma/skills/figma-to-code/test-2-component-generation.yaml +27 -0
  208. package/plugins/specweave-figma/skills/figma-to-code/test-3-typescript-generation.yaml +28 -0
  209. package/plugins/specweave-frontend/.claude-plugin/plugin.json +8 -0
  210. package/plugins/specweave-github/.claude-plugin/plugin.json +19 -0
  211. package/plugins/specweave-github/agents/github-manager/AGENT.md +651 -0
  212. package/plugins/specweave-github/commands/github-close-issue.md +418 -0
  213. package/plugins/specweave-github/commands/github-create-issue.md +307 -0
  214. package/plugins/specweave-github/commands/github-status.md +533 -0
  215. package/plugins/specweave-github/commands/github-sync-tasks.md +530 -0
  216. package/plugins/specweave-github/commands/github-sync.md +443 -0
  217. package/plugins/specweave-github/lib/github-client.ts +330 -0
  218. package/plugins/specweave-github/lib/index.ts +10 -0
  219. package/plugins/specweave-github/lib/subtask-sync.ts +225 -0
  220. package/plugins/specweave-github/lib/task-parser.ts +246 -0
  221. package/plugins/specweave-github/lib/task-sync.ts +402 -0
  222. package/plugins/specweave-github/lib/types.ts +86 -0
  223. package/plugins/specweave-github/skills/github-issue-tracker/SKILL.md +497 -0
  224. package/plugins/specweave-github/skills/github-sync/SKILL.md +461 -0
  225. package/plugins/specweave-infrastructure/.claude-plugin/plugin.json +8 -0
  226. package/plugins/specweave-jira/.claude-plugin/plugin.json +8 -0
  227. package/{src → plugins/specweave-jira}/commands/specweave.sync-jira.md +18 -18
  228. package/plugins/specweave-kubernetes/.claude-plugin/plugin.json +8 -0
  229. package/plugins/specweave-ml/.claude-plugin/plugin.json +38 -0
  230. package/plugins/specweave-ml/README.md +885 -0
  231. package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +402 -0
  232. package/plugins/specweave-ml/commands/ml-deploy.md +116 -0
  233. package/plugins/specweave-ml/commands/ml-evaluate.md +87 -0
  234. package/plugins/specweave-ml/commands/ml-explain.md +83 -0
  235. package/plugins/specweave-ml/skills/anomaly-detector/SKILL.md +559 -0
  236. package/plugins/specweave-ml/skills/automl-optimizer/SKILL.md +485 -0
  237. package/plugins/specweave-ml/skills/cv-pipeline-builder/SKILL.md +157 -0
  238. package/plugins/specweave-ml/skills/data-visualizer/SKILL.md +521 -0
  239. package/plugins/specweave-ml/skills/experiment-tracker/SKILL.md +535 -0
  240. package/plugins/specweave-ml/skills/feature-engineer/SKILL.md +566 -0
  241. package/plugins/specweave-ml/skills/ml-deployment-helper/SKILL.md +345 -0
  242. package/plugins/specweave-ml/skills/ml-pipeline-orchestrator/SKILL.md +518 -0
  243. package/plugins/specweave-ml/skills/model-evaluator/SKILL.md +155 -0
  244. package/plugins/specweave-ml/skills/model-explainer/SKILL.md +227 -0
  245. package/plugins/specweave-ml/skills/model-registry/SKILL.md +541 -0
  246. package/plugins/specweave-ml/skills/nlp-pipeline-builder/SKILL.md +180 -0
  247. package/plugins/specweave-ml/skills/time-series-forecaster/SKILL.md +569 -0
  248. package/plugins/specweave-payments/.claude-plugin/plugin.json +8 -0
  249. package/plugins/specweave-testing/.claude-plugin/plugin.json +8 -0
  250. package/plugins/specweave-tooling/.claude-plugin/plugin.json +8 -0
  251. package/plugins/specweave-ui/.claude-plugin/plugin.json +26 -0
  252. package/plugins/specweave-ui/.mcp.json +14 -0
  253. package/plugins/specweave-ui/README.md +386 -0
  254. package/src/adapters/claude/adapter.ts +193 -46
  255. package/src/adapters/copilot/adapter.ts +132 -7
  256. package/src/adapters/cursor/adapter.ts +62 -3
  257. package/src/adapters/generic/adapter.ts +62 -3
  258. package/src/templates/AGENTS.md.template +170 -1
  259. package/src/templates/CLAUDE.md.template +122 -24
  260. package/src/templates/tasks.md.template +261 -0
  261. package/src/agents/ml-engineer/AGENT.md +0 -150
  262. package/src/commands/specweave.sync-github.md +0 -269
  263. package/src/hooks/post-task-completion.sh +0 -121
  264. package/src/skills/SKILLS-INDEX.md +0 -444
  265. package/src/skills/github-sync/SKILL.md +0 -234
  266. /package/{src → plugins/specweave}/agents/architect/AGENT.md +0 -0
  267. /package/{src → plugins/specweave}/agents/code-reviewer.md +0 -0
  268. /package/{src → plugins/specweave}/agents/docs-writer/AGENT.md +0 -0
  269. /package/{src → plugins/specweave}/agents/performance/AGENT.md +0 -0
  270. /package/{src → plugins/specweave}/agents/qa-lead/AGENT.md +0 -0
  271. /package/{src → plugins/specweave}/agents/security/AGENT.md +0 -0
  272. /package/{src → plugins/specweave}/agents/tdd-orchestrator/AGENT.md +0 -0
  273. /package/{src → plugins/specweave}/agents/tech-lead/AGENT.md +0 -0
  274. /package/{src/commands/specweave.list-increments.md → plugins/specweave/commands/list-increments.md} +0 -0
  275. /package/{src/commands/specweave.tdd-cycle.md → plugins/specweave/commands/tdd-cycle.md} +0 -0
  276. /package/{src/commands/specweave.tdd-green.md → plugins/specweave/commands/tdd-green.md} +0 -0
  277. /package/{src/commands/specweave.tdd-red.md → plugins/specweave/commands/tdd-red.md} +0 -0
  278. /package/{src/commands/specweave.tdd-refactor.md → plugins/specweave/commands/tdd-refactor.md} +0 -0
  279. /package/{src → plugins/specweave}/hooks/README.md +0 -0
  280. /package/{src → plugins/specweave}/hooks/docs-changed.sh +0 -0
  281. /package/{src → plugins/specweave}/hooks/human-input-required.sh +0 -0
  282. /package/{src → plugins/specweave}/hooks/post-increment-plugin-detect.sh +0 -0
  283. /package/{src → plugins/specweave}/hooks/pre-implementation.sh +0 -0
  284. /package/{src → plugins/specweave}/hooks/pre-task-plugin-detect.sh +0 -0
  285. /package/{src → plugins/specweave}/skills/brownfield-onboarder/SKILL.md +0 -0
  286. /package/{src → plugins/specweave}/skills/docs-updater/README.md +0 -0
  287. /package/{src → plugins/specweave}/skills/increment-planner/scripts/feature-utils.js +0 -0
  288. /package/{src → plugins/specweave}/skills/increment-quality-judge/SKILL.md +0 -0
  289. /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-1-high-confidence-full-product.yaml +0 -0
  290. /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-2-medium-confidence-partial.yaml +0 -0
  291. /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-3-low-confidence-technical-question.yaml +0 -0
  292. /package/{src → plugins/specweave}/skills/project-kickstarter/test-cases/test-4-opt-out-explicit.yaml +0 -0
  293. /package/{src → plugins/specweave}/skills/role-orchestrator/README.md +0 -0
  294. /package/{src → plugins/specweave}/skills/role-orchestrator/SKILL.md +0 -0
  295. /package/{src → plugins/specweave}/skills/task-builder/README.md +0 -0
  296. /package/{src → plugins/specweave-ado}/skills/ado-sync/README.md +0 -0
  297. /package/{src → plugins/specweave-ado}/skills/ado-sync/SKILL.md +0 -0
  298. /package/{src → plugins/specweave-ado}/skills/specweave-ado-mapper/SKILL.md +0 -0
  299. /package/{src → plugins/specweave-backend}/agents/database-optimizer/AGENT.md +0 -0
  300. /package/{src → plugins/specweave-backend}/skills/dotnet-backend/SKILL.md +0 -0
  301. /package/{src → plugins/specweave-backend}/skills/nodejs-backend/SKILL.md +0 -0
  302. /package/{src → plugins/specweave-backend}/skills/python-backend/SKILL.md +0 -0
  303. /package/{src → plugins/specweave-cost-optimizer}/skills/cost-optimizer/SKILL.md +0 -0
  304. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/AGENT.md +0 -0
  305. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-component-template.mmd +0 -0
  306. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-container-template.mmd +0 -0
  307. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-context-template.mmd +0 -0
  308. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/deployment-template.mmd +0 -0
  309. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/er-diagram-template.mmd +0 -0
  310. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/sequence-template.mmd +0 -0
  311. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -0
  312. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-2-sequence.yaml +0 -0
  313. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -0
  314. /package/{src → plugins/specweave-diagrams}/skills/diagrams-architect/SKILL.md +0 -0
  315. /package/{src → plugins/specweave-diagrams}/skills/diagrams-generator/SKILL.md +0 -0
  316. /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/README.md +0 -0
  317. /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/SKILL.md +0 -0
  318. /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/README.md +0 -0
  319. /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/SKILL.md +0 -0
  320. /package/{src → plugins/specweave-frontend}/skills/design-system-architect/SKILL.md +0 -0
  321. /package/{src → plugins/specweave-frontend}/skills/frontend/SKILL.md +0 -0
  322. /package/{src → plugins/specweave-frontend}/skills/nextjs/SKILL.md +0 -0
  323. /package/{src → plugins/specweave-infrastructure}/agents/devops/AGENT.md +0 -0
  324. /package/{src → plugins/specweave-infrastructure}/agents/network-engineer/AGENT.md +0 -0
  325. /package/{src → plugins/specweave-infrastructure}/agents/observability-engineer/AGENT.md +0 -0
  326. /package/{src → plugins/specweave-infrastructure}/agents/performance-engineer/AGENT.md +0 -0
  327. /package/{src → plugins/specweave-infrastructure}/agents/sre/AGENT.md +0 -0
  328. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/backend-diagnostics.md +0 -0
  329. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/database-diagnostics.md +0 -0
  330. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/infrastructure.md +0 -0
  331. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/monitoring.md +0 -0
  332. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/security-incidents.md +0 -0
  333. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/ui-diagnostics.md +0 -0
  334. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/01-high-cpu-usage.md +0 -0
  335. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/02-database-deadlock.md +0 -0
  336. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/03-memory-leak.md +0 -0
  337. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/04-slow-api-response.md +0 -0
  338. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/05-ddos-attack.md +0 -0
  339. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/06-disk-full.md +0 -0
  340. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/07-service-down.md +0 -0
  341. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/08-data-corruption.md +0 -0
  342. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/09-cascade-failure.md +0 -0
  343. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/10-rate-limit-exceeded.md +0 -0
  344. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/health-check.sh +0 -0
  345. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/log-analyzer.py +0 -0
  346. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/metrics-collector.sh +0 -0
  347. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/trace-analyzer.js +0 -0
  348. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/incident-report.md +0 -0
  349. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/mitigation-plan.md +0 -0
  350. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/post-mortem.md +0 -0
  351. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/runbook-template.md +0 -0
  352. /package/{src → plugins/specweave-infrastructure}/commands/specweave.monitor-setup.md +0 -0
  353. /package/{src → plugins/specweave-infrastructure}/commands/specweave.slo-implement.md +0 -0
  354. /package/{src → plugins/specweave-infrastructure}/skills/distributed-tracing/SKILL.md +0 -0
  355. /package/{src → plugins/specweave-infrastructure}/skills/grafana-dashboards/SKILL.md +0 -0
  356. /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/README.md +0 -0
  357. /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/SKILL.md +0 -0
  358. /package/{src → plugins/specweave-infrastructure}/skills/prometheus-configuration/SKILL.md +0 -0
  359. /package/{src → plugins/specweave-infrastructure}/skills/slo-implementation/SKILL.md +0 -0
  360. /package/{src → plugins/specweave-jira}/skills/jira-sync/README.md +0 -0
  361. /package/{src → plugins/specweave-jira}/skills/jira-sync/SKILL.md +0 -0
  362. /package/{src → plugins/specweave-jira}/skills/specweave-jira-mapper/SKILL.md +0 -0
  363. /package/{src → plugins/specweave-kubernetes}/agents/kubernetes-architect/AGENT.md +0 -0
  364. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/SKILL.md +0 -0
  365. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/argocd-setup.md +0 -0
  366. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/sync-policies.md +0 -0
  367. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/SKILL.md +0 -0
  368. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/Chart.yaml.template +0 -0
  369. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/values.yaml.template +0 -0
  370. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/references/chart-structure.md +0 -0
  371. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/scripts/validate-chart.sh +0 -0
  372. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/SKILL.md +0 -0
  373. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/configmap-template.yaml +0 -0
  374. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/deployment-template.yaml +0 -0
  375. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/service-template.yaml +0 -0
  376. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/deployment-spec.md +0 -0
  377. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/service-spec.md +0 -0
  378. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/SKILL.md +0 -0
  379. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/assets/network-policy-template.yaml +0 -0
  380. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/references/rbac-patterns.md +0 -0
  381. /package/{src → plugins/specweave-ml}/agents/data-scientist/AGENT.md +0 -0
  382. /package/{src → plugins/specweave-ml}/agents/mlops-engineer/AGENT.md +0 -0
  383. /package/{src → plugins/specweave-ml}/commands/specweave.ml-pipeline.md +0 -0
  384. /package/{src → plugins/specweave-ml}/skills/ml-pipeline-workflow/SKILL.md +0 -0
  385. /package/{src → plugins/specweave-payments}/agents/payment-integration/AGENT.md +0 -0
  386. /package/{src → plugins/specweave-payments}/skills/billing-automation/SKILL.md +0 -0
  387. /package/{src → plugins/specweave-payments}/skills/paypal-integration/SKILL.md +0 -0
  388. /package/{src → plugins/specweave-payments}/skills/pci-compliance/SKILL.md +0 -0
  389. /package/{src → plugins/specweave-payments}/skills/stripe-integration/SKILL.md +0 -0
  390. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/README.md +0 -0
  391. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/SKILL.md +0 -0
  392. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/execute.js +0 -0
  393. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/lib/utils.js +0 -0
  394. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/package.json +0 -0
  395. /package/{src → plugins/specweave-tooling}/skills/skill-creator/LICENSE.txt +0 -0
  396. /package/{src → plugins/specweave-tooling}/skills/skill-creator/SKILL.md +0 -0
  397. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/init_skill.py +0 -0
  398. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/package_skill.py +0 -0
  399. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/quick_validate.py +0 -0
  400. /package/{src → plugins/specweave-tooling}/skills/skill-router/SKILL.md +0 -0
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Type definitions for GitHub sync plugin
3
+ */
4
+ export interface Task {
5
+ id: string;
6
+ title: string;
7
+ priority: 'P0' | 'P1' | 'P2' | 'P3';
8
+ estimate: string;
9
+ status: 'pending' | 'in_progress' | 'completed' | 'blocked';
10
+ githubIssue?: number;
11
+ assignee?: string;
12
+ description: string;
13
+ subtasks?: Subtask[];
14
+ filesToCreate?: string[];
15
+ filesToModify?: string[];
16
+ implementation?: string;
17
+ acceptanceCriteria?: string[];
18
+ dependencies?: string[];
19
+ blocks?: string[];
20
+ phase?: string;
21
+ }
22
+ export interface Subtask {
23
+ id: string;
24
+ description: string;
25
+ estimate: string;
26
+ completed: boolean;
27
+ }
28
+ export interface IncrementMetadata {
29
+ id: string;
30
+ title: string;
31
+ version?: string;
32
+ priority: 'P0' | 'P1' | 'P2' | 'P3';
33
+ status: 'planning' | 'in-progress' | 'completed' | 'cancelled';
34
+ github?: {
35
+ milestone?: number;
36
+ epic_issue?: number;
37
+ task_issues?: Record<string, number>;
38
+ last_sync?: string;
39
+ };
40
+ }
41
+ export interface GitHubIssue {
42
+ number: number;
43
+ title: string;
44
+ body: string;
45
+ state: 'open' | 'closed';
46
+ html_url: string;
47
+ labels: string[];
48
+ milestone?: {
49
+ number: number;
50
+ title: string;
51
+ };
52
+ }
53
+ export interface GitHubMilestone {
54
+ number: number;
55
+ title: string;
56
+ description: string;
57
+ state: 'open' | 'closed';
58
+ }
59
+ export interface SyncResult {
60
+ milestone?: GitHubMilestone;
61
+ epic: GitHubIssue;
62
+ tasks: Array<{
63
+ taskId: string;
64
+ issue: GitHubIssue;
65
+ }>;
66
+ errors: Array<{
67
+ taskId?: string;
68
+ error: string;
69
+ }>;
70
+ }
71
+ export interface GitHubSyncOptions {
72
+ force?: boolean;
73
+ dryRun?: boolean;
74
+ batchDelay?: number;
75
+ batchSize?: number;
76
+ milestoneDays?: number;
77
+ projectName?: string;
78
+ fastMode?: boolean;
79
+ }
80
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/plugins/specweave-github/lib/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for GitHub sync plugin
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/plugins/specweave-github/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * AGENTS.md Compiler (Cross-Platform)
3
+ *
4
+ * Compiles SpecWeave plugins (skills, agents, commands) into unified AGENTS.md format
5
+ * for non-Claude tools (Cursor, Copilot, Generic)
6
+ *
7
+ * Reads from NPM package location (auto-detected):
8
+ * - Windows: %APPDATA%\npm\node_modules\specweave\
9
+ * - macOS: /usr/local/lib/node_modules/specweave/ or /opt/homebrew/lib/node_modules/specweave/
10
+ * - Linux: /usr/local/lib/node_modules/specweave/
11
+ * - Local development: ./skills/, ./agents/, ./commands/
12
+ *
13
+ * Supports: Windows 10+, macOS 10.15+, Linux (Ubuntu, Debian, RHEL, etc.)
14
+ */
15
+ interface Skill {
16
+ name: string;
17
+ description: string;
18
+ content: string;
19
+ activationKeywords?: string[];
20
+ }
21
+ interface Agent {
22
+ name: string;
23
+ role: string;
24
+ description: string;
25
+ content: string;
26
+ activatesFor?: string[];
27
+ capabilities?: string[];
28
+ }
29
+ interface Command {
30
+ name: string;
31
+ description: string;
32
+ usage: string;
33
+ content: string;
34
+ }
35
+ interface CompilationResult {
36
+ agentsMd: string;
37
+ skills: Skill[];
38
+ agents: Agent[];
39
+ commands: Command[];
40
+ }
41
+ /**
42
+ * Find SpecWeave installation path (cross-platform)
43
+ *
44
+ * Supports Windows, macOS, and Linux with all common NPM installation locations.
45
+ * Priority: NPM global → NPM local → local development
46
+ *
47
+ * @returns Absolute path to SpecWeave installation
48
+ * @throws Error if SpecWeave installation not found
49
+ */
50
+ export declare function getSpecweaveInstallPath(): string;
51
+ /**
52
+ * Read all skills from skills/ directory
53
+ */
54
+ export declare function readSkills(basePath: string): Promise<Skill[]>;
55
+ /**
56
+ * Read all agents from agents/ directory
57
+ */
58
+ export declare function readAgents(basePath: string): Promise<Agent[]>;
59
+ /**
60
+ * Read all commands from commands/ directory
61
+ */
62
+ export declare function readCommands(basePath: string): Promise<Command[]>;
63
+ /**
64
+ * Compile plugins to AGENTS.md format
65
+ */
66
+ export declare function compileToAgentsMd(basePath: string): Promise<CompilationResult>;
67
+ export { CompilationResult };
68
+ //# sourceMappingURL=agents-md-compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-md-compiler.d.ts","sourceRoot":"","sources":["../../src/utils/agents-md-compiler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAgBH,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAMD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAoFhD;AA2BD;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAmCnE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAmCnE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CA4BvE;AAcD;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAapF;AA+MD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,420 @@
1
+ /**
2
+ * AGENTS.md Compiler (Cross-Platform)
3
+ *
4
+ * Compiles SpecWeave plugins (skills, agents, commands) into unified AGENTS.md format
5
+ * for non-Claude tools (Cursor, Copilot, Generic)
6
+ *
7
+ * Reads from NPM package location (auto-detected):
8
+ * - Windows: %APPDATA%\npm\node_modules\specweave\
9
+ * - macOS: /usr/local/lib/node_modules/specweave/ or /opt/homebrew/lib/node_modules/specweave/
10
+ * - Linux: /usr/local/lib/node_modules/specweave/
11
+ * - Local development: ./skills/, ./agents/, ./commands/
12
+ *
13
+ * Supports: Windows 10+, macOS 10.15+, Linux (Ubuntu, Debian, RHEL, etc.)
14
+ */
15
+ import fs from 'fs-extra';
16
+ import path from 'path';
17
+ import yaml from 'js-yaml';
18
+ // ============================================================================
19
+ // Path Resolution
20
+ // ============================================================================
21
+ /**
22
+ * Find SpecWeave installation path (cross-platform)
23
+ *
24
+ * Supports Windows, macOS, and Linux with all common NPM installation locations.
25
+ * Priority: NPM global → NPM local → local development
26
+ *
27
+ * @returns Absolute path to SpecWeave installation
28
+ * @throws Error if SpecWeave installation not found
29
+ */
30
+ export function getSpecweaveInstallPath() {
31
+ const platform = process.platform;
32
+ const homeDir = process.env.HOME || process.env.USERPROFILE || '';
33
+ // Build platform-specific paths
34
+ const paths = [];
35
+ // === Windows Paths ===
36
+ if (platform === 'win32') {
37
+ const appData = process.env.APPDATA || path.join(homeDir, 'AppData', 'Roaming');
38
+ const programFiles = process.env['ProgramFiles'] || 'C:\\Program Files';
39
+ const programFilesX86 = process.env['ProgramFiles(x86)'] || 'C:\\Program Files (x86)';
40
+ paths.push(
41
+ // NPM global (most common on Windows)
42
+ path.join(appData, 'npm', 'node_modules', 'specweave'),
43
+ // NPM global (system install)
44
+ path.join(programFiles, 'nodejs', 'node_modules', 'specweave'), path.join(programFilesX86, 'nodejs', 'node_modules', 'specweave'),
45
+ // nvm-windows
46
+ path.join(appData, 'nvm', 'node_modules', 'specweave'),
47
+ // Custom prefix
48
+ path.join(homeDir, '.npm-global', 'node_modules', 'specweave'));
49
+ }
50
+ // === macOS Paths ===
51
+ if (platform === 'darwin') {
52
+ paths.push(
53
+ // NPM global (Intel Macs)
54
+ '/usr/local/lib/node_modules/specweave',
55
+ // NPM global (Apple Silicon - Homebrew)
56
+ '/opt/homebrew/lib/node_modules/specweave',
57
+ // NVM (Node Version Manager)
58
+ path.join(homeDir, '.nvm', 'versions', 'node', 'lib', 'node_modules', 'specweave'),
59
+ // Custom prefix
60
+ path.join(homeDir, '.npm-global', 'lib', 'node_modules', 'specweave'));
61
+ }
62
+ // === Linux Paths ===
63
+ if (platform === 'linux') {
64
+ paths.push(
65
+ // NPM global (common)
66
+ '/usr/local/lib/node_modules/specweave', '/usr/lib/node_modules/specweave',
67
+ // NVM
68
+ path.join(homeDir, '.nvm', 'versions', 'node', 'lib', 'node_modules', 'specweave'),
69
+ // Custom prefix
70
+ path.join(homeDir, '.npm-global', 'lib', 'node_modules', 'specweave'));
71
+ }
72
+ // === Universal Paths (all platforms) ===
73
+ paths.push(
74
+ // NPM local (project-specific)
75
+ path.join(process.cwd(), 'node_modules', 'specweave'),
76
+ // Local development (current directory)
77
+ process.cwd());
78
+ // Search for valid installation
79
+ for (const p of paths) {
80
+ try {
81
+ const skillsPath = path.join(p, 'skills');
82
+ if (fs.existsSync(skillsPath)) {
83
+ // Verify it's a valid SpecWeave installation
84
+ const testSkill = path.join(skillsPath, 'increment-planner', 'SKILL.md');
85
+ if (fs.existsSync(testSkill)) {
86
+ return p;
87
+ }
88
+ }
89
+ }
90
+ catch (error) {
91
+ // Skip invalid paths
92
+ continue;
93
+ }
94
+ }
95
+ throw new Error('Could not find SpecWeave installation. Ensure SpecWeave is installed:\n' +
96
+ ' npm install -g specweave\n\n' +
97
+ 'Searched paths:\n' +
98
+ paths.map(p => ` - ${p}`).join('\n'));
99
+ }
100
+ // ============================================================================
101
+ // Parsers
102
+ // ============================================================================
103
+ /**
104
+ * Parse YAML frontmatter from markdown file
105
+ */
106
+ function parseFrontmatter(content) {
107
+ const frontmatterRegex = /^---\n([\s\S]*?)\n---\n([\s\S]*)$/;
108
+ const match = content.match(frontmatterRegex);
109
+ if (!match) {
110
+ return { frontmatter: {}, body: content };
111
+ }
112
+ try {
113
+ const frontmatter = yaml.load(match[1]);
114
+ const body = match[2].trim();
115
+ return { frontmatter, body };
116
+ }
117
+ catch (error) {
118
+ console.warn('Failed to parse frontmatter:', error);
119
+ return { frontmatter: {}, body: content };
120
+ }
121
+ }
122
+ /**
123
+ * Read all skills from skills/ directory
124
+ */
125
+ export async function readSkills(basePath) {
126
+ const skillsDir = path.join(basePath, 'skills');
127
+ if (!fs.existsSync(skillsDir)) {
128
+ return [];
129
+ }
130
+ const skillFolders = fs.readdirSync(skillsDir).filter((f) => {
131
+ const stat = fs.statSync(path.join(skillsDir, f));
132
+ return stat.isDirectory();
133
+ });
134
+ const skills = [];
135
+ for (const folder of skillFolders) {
136
+ const skillFile = path.join(skillsDir, folder, 'SKILL.md');
137
+ if (!fs.existsSync(skillFile)) {
138
+ continue;
139
+ }
140
+ const content = fs.readFileSync(skillFile, 'utf-8');
141
+ const { frontmatter, body } = parseFrontmatter(content);
142
+ const skill = {
143
+ name: frontmatter.name || folder,
144
+ description: frontmatter.description || 'No description',
145
+ content: body,
146
+ activationKeywords: frontmatter.description
147
+ ? extractKeywords(frontmatter.description)
148
+ : [],
149
+ };
150
+ skills.push(skill);
151
+ }
152
+ return skills;
153
+ }
154
+ /**
155
+ * Read all agents from agents/ directory
156
+ */
157
+ export async function readAgents(basePath) {
158
+ const agentsDir = path.join(basePath, 'agents');
159
+ if (!fs.existsSync(agentsDir)) {
160
+ return [];
161
+ }
162
+ const agentFolders = fs.readdirSync(agentsDir).filter((f) => {
163
+ const stat = fs.statSync(path.join(agentsDir, f));
164
+ return stat.isDirectory();
165
+ });
166
+ const agents = [];
167
+ for (const folder of agentFolders) {
168
+ const agentFile = path.join(agentsDir, folder, 'AGENT.md');
169
+ if (!fs.existsSync(agentFile)) {
170
+ continue;
171
+ }
172
+ const content = fs.readFileSync(agentFile, 'utf-8');
173
+ const { frontmatter, body } = parseFrontmatter(content);
174
+ const agent = {
175
+ name: frontmatter.name || folder,
176
+ role: frontmatter.role || 'Agent',
177
+ description: frontmatter.description || 'No description',
178
+ content: body,
179
+ activatesFor: frontmatter['activates-for'] || [],
180
+ capabilities: frontmatter.capabilities || [],
181
+ };
182
+ agents.push(agent);
183
+ }
184
+ return agents;
185
+ }
186
+ /**
187
+ * Read all commands from commands/ directory
188
+ */
189
+ export async function readCommands(basePath) {
190
+ const commandsDir = path.join(basePath, 'commands');
191
+ if (!fs.existsSync(commandsDir)) {
192
+ return [];
193
+ }
194
+ const commandFiles = fs.readdirSync(commandsDir).filter((f) => f.endsWith('.md'));
195
+ const commands = [];
196
+ for (const file of commandFiles) {
197
+ const commandFile = path.join(commandsDir, file);
198
+ const content = fs.readFileSync(commandFile, 'utf-8');
199
+ const { frontmatter, body } = parseFrontmatter(content);
200
+ const commandName = frontmatter.name || file.replace('.md', '');
201
+ const command = {
202
+ name: commandName,
203
+ description: frontmatter.description || 'No description',
204
+ usage: `/${commandName}`,
205
+ content: body,
206
+ };
207
+ commands.push(command);
208
+ }
209
+ return commands;
210
+ }
211
+ /**
212
+ * Extract keywords from description
213
+ */
214
+ function extractKeywords(description) {
215
+ const words = description.toLowerCase().split(/[,\s]+/);
216
+ return words.filter((w) => w.length > 3);
217
+ }
218
+ // ============================================================================
219
+ // AGENTS.MD Compiler
220
+ // ============================================================================
221
+ /**
222
+ * Compile plugins to AGENTS.md format
223
+ */
224
+ export async function compileToAgentsMd(basePath) {
225
+ const skills = await readSkills(basePath);
226
+ const agents = await readAgents(basePath);
227
+ const commands = await readCommands(basePath);
228
+ const agentsMd = generateAgentsMd(skills, agents, commands);
229
+ return {
230
+ agentsMd,
231
+ skills,
232
+ agents,
233
+ commands,
234
+ };
235
+ }
236
+ /**
237
+ * Generate AGENTS.md content
238
+ */
239
+ function generateAgentsMd(skills, agents, commands) {
240
+ const sections = [];
241
+ // Header
242
+ sections.push(`# SpecWeave Development Guide
243
+
244
+ **Version**: 0.5.0
245
+ **Plugin System**: Claude Code Native + Multi-Tool Support
246
+
247
+ This project uses SpecWeave for spec-driven development. SpecWeave provides specialized agents, skills, and commands to guide the development workflow.
248
+
249
+ ---
250
+
251
+ ## Quick Start
252
+
253
+ ### For Claude Code Users
254
+
255
+ \`\`\`bash
256
+ # Add SpecWeave marketplace
257
+ /plugin marketplace add anton-abyzov/specweave
258
+
259
+ # Install core framework
260
+ /plugin install specweave@specweave
261
+
262
+ # Install GitHub plugin (optional)
263
+ /plugin install specweave-github@specweave
264
+ \`\`\`
265
+
266
+ ### For Other Tools (Cursor, Copilot, etc.)
267
+
268
+ This AGENTS.md file contains all necessary context. Your AI assistant will automatically read it.
269
+
270
+ ---
271
+ `);
272
+ // Agents section
273
+ sections.push(`## Available Agents\n`);
274
+ for (const agent of agents) {
275
+ const emoji = getAgentEmoji(agent.name);
276
+ sections.push(`### ${emoji} ${capitalize(agent.name)} (${agent.role})\n`);
277
+ sections.push(`**Description**: ${agent.description}\n`);
278
+ if (agent.activatesFor && agent.activatesFor.length > 0) {
279
+ sections.push(`**Activates for**: ${agent.activatesFor.join(', ')}\n`);
280
+ }
281
+ if (agent.capabilities && agent.capabilities.length > 0) {
282
+ sections.push(`**Capabilities**:\n`);
283
+ for (const cap of agent.capabilities) {
284
+ sections.push(`- ${cap}\n`);
285
+ }
286
+ }
287
+ sections.push(`\n---\n\n`);
288
+ }
289
+ // Skills section
290
+ sections.push(`## Available Skills\n`);
291
+ for (const skill of skills) {
292
+ sections.push(`### ${skill.name}\n`);
293
+ sections.push(`**Description**: ${skill.description}\n`);
294
+ if (skill.activationKeywords && skill.activationKeywords.length > 0) {
295
+ sections.push(`**Activates for**: ${skill.activationKeywords.slice(0, 5).join(', ')}\n`);
296
+ }
297
+ sections.push(`\n---\n\n`);
298
+ }
299
+ // Commands section
300
+ sections.push(`## Available Commands\n`);
301
+ for (const command of commands) {
302
+ sections.push(`### ${command.usage}\n`);
303
+ sections.push(`**Description**: ${command.description}\n`);
304
+ sections.push(`\n---\n\n`);
305
+ }
306
+ // Project structure
307
+ sections.push(`## Project Structure
308
+
309
+ \`\`\`
310
+ .specweave/
311
+ ├── increments/ # Feature development
312
+ │ ├── 0001-feature-name/
313
+ │ │ ├── spec.md # Product specification
314
+ │ │ ├── plan.md # Technical implementation
315
+ │ │ ├── tasks.md # Actionable tasks
316
+ │ │ ├── tests.md # Test strategy
317
+ │ │ ├── logs/ # Execution logs
318
+ │ │ ├── reports/ # Analysis files
319
+ │ │ └── scripts/ # Helper scripts
320
+ │ └── _backlog/ # Planned future work
321
+
322
+ ├── docs/
323
+ │ ├── internal/ # Strategic docs (NEVER published)
324
+ │ │ ├── strategy/ # Business strategy, market analysis
325
+ │ │ ├── architecture/ # Technical architecture
326
+ │ │ │ ├── adr/ # Architecture Decision Records
327
+ │ │ │ ├── rfc/ # Request for Comments
328
+ │ │ │ ├── diagrams/ # Mermaid + SVG diagrams
329
+ │ │ │ └── hld-*.md # High-Level Design
330
+ │ │ └── delivery/ # Implementation notes, runbooks
331
+ │ │
332
+ │ └── public/ # User-facing docs (can publish)
333
+ │ ├── guides/
334
+ │ └── api/
335
+
336
+ └── logs/ # Framework logs (gitignored)
337
+ \`\`\`
338
+
339
+ ---
340
+
341
+ ## Typical Workflow
342
+
343
+ ### 1. Plan New Increment
344
+
345
+ \`\`\`bash
346
+ /specweave.inc "user authentication with OAuth"
347
+ \`\`\`
348
+
349
+ Creates:
350
+ - \`.specweave/increments/0001-user-authentication/spec.md\`
351
+ - \`.specweave/increments/0001-user-authentication/plan.md\`
352
+ - \`.specweave/increments/0001-user-authentication/tasks.md\`
353
+ - \`.specweave/increments/0001-user-authentication/tests.md\`
354
+
355
+ ### 2. Execute Tasks
356
+
357
+ \`\`\`bash
358
+ /specweave.do
359
+ \`\`\`
360
+
361
+ - Executes tasks sequentially
362
+ - Hooks fire after EVERY task
363
+ - Living docs update automatically
364
+
365
+ ### 3. Check Progress
366
+
367
+ \`\`\`bash
368
+ /specweave.progress
369
+ \`\`\`
370
+
371
+ Shows completion percentage and next action.
372
+
373
+ ### 4. Close Increment
374
+
375
+ \`\`\`bash
376
+ /specweave.done 0001
377
+ \`\`\`
378
+
379
+ PM validation, updates status.
380
+
381
+ ---
382
+
383
+ ## Best Practices
384
+
385
+ ### DO:
386
+ - ✅ Always start with \`/specweave.inc\` for new features
387
+ - ✅ Review specs before implementation
388
+ - ✅ Execute tasks via \`/specweave.do\` (hooks fire automatically)
389
+ - ✅ Validate before closing: \`/specweave.validate\`
390
+
391
+ ### DON'T:
392
+ - ❌ Skip spec creation (no "cowboy coding")
393
+ - ❌ Create files in project root (use increment folders)
394
+ - ❌ Ignore PM gate validation
395
+
396
+ ---
397
+
398
+ **Last Updated**: 2025-11-02 (v0.5.0)
399
+ `);
400
+ return sections.join('');
401
+ }
402
+ /**
403
+ * Get emoji for agent type
404
+ */
405
+ function getAgentEmoji(name) {
406
+ const emojiMap = {
407
+ pm: '🎯',
408
+ architect: '🏗️',
409
+ 'tech-lead': '👨‍💻',
410
+ 'github-manager': '🐙',
411
+ };
412
+ return emojiMap[name.toLowerCase()] || '🤖';
413
+ }
414
+ /**
415
+ * Capitalize first letter
416
+ */
417
+ function capitalize(str) {
418
+ return str.charAt(0).toUpperCase() + str.slice(1);
419
+ }
420
+ //# sourceMappingURL=agents-md-compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-md-compiler.js","sourceRoot":"","sources":["../../src/utils/agents-md-compiler.ts"],"names":[],"mappings":"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"}