specweave 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/.claude-plugin/README.md +325 -0
  2. package/.claude-plugin/marketplace.json +210 -0
  3. package/CLAUDE.md +871 -596
  4. package/README.md +188 -137
  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 +346 -124
  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 +7 -1
  39. package/dist/cli/commands/plugin.d.ts.map +1 -1
  40. package/dist/cli/commands/plugin.js +72 -61
  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 +269 -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/generate-skills-index.js +4 -4
  144. package/dist/utils/generate-skills-index.js.map +1 -1
  145. package/package.json +12 -13
  146. package/plugins/specweave-ado/.claude-plugin/plugin.json +8 -0
  147. package/plugins/specweave-alternatives/.claude-plugin/plugin.json +8 -0
  148. package/plugins/specweave-alternatives/skills/bmad-method-expert/SKILL.md +626 -0
  149. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/analyze-project.js +318 -0
  150. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/check-setup.js +208 -0
  151. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/generate-template.js +1149 -0
  152. package/plugins/specweave-alternatives/skills/bmad-method-expert/scripts/validate-documents.js +340 -0
  153. package/plugins/specweave-alternatives/skills/spec-kit-expert/SKILL.md +1010 -0
  154. package/plugins/specweave-backend/.claude-plugin/plugin.json +8 -0
  155. package/plugins/specweave-core/.claude-plugin/plugin.json +25 -0
  156. package/{src → plugins/specweave-core}/agents/pm/AGENT.md +80 -0
  157. package/plugins/specweave-core/agents/translator/AGENT.md +282 -0
  158. package/{src → plugins/specweave-core}/commands/README.md +11 -11
  159. package/{src → plugins/specweave-core}/commands/specweave.costs.md +7 -7
  160. package/{src → plugins/specweave-core}/commands/specweave.do.md +34 -7
  161. package/{src → plugins/specweave-core}/commands/specweave.increment.md +83 -18
  162. package/{src → plugins/specweave-core}/commands/specweave.md +49 -17
  163. package/{src → plugins/specweave-core}/commands/specweave.sync-docs.md +5 -5
  164. package/plugins/specweave-core/commands/specweave.translate.md +425 -0
  165. package/{src → plugins/specweave-core}/commands/specweave.validate.md +1 -1
  166. package/plugins/specweave-core/hooks/hooks.json +13 -0
  167. package/plugins/specweave-core/hooks/post-task-completion.sh +265 -0
  168. package/plugins/specweave-core/skills/SKILLS-INDEX.md +229 -0
  169. package/{src → plugins/specweave-core}/skills/brownfield-analyzer/SKILL.md +66 -24
  170. package/{src → plugins/specweave-core}/skills/context-loader/SKILL.md +1 -1
  171. package/plugins/specweave-core/skills/context-optimizer/SKILL.md +588 -0
  172. package/plugins/specweave-core/skills/docs-updater/SKILL.md +0 -0
  173. package/{src → plugins/specweave-core}/skills/increment-planner/SKILL.md +81 -4
  174. package/plugins/specweave-core/skills/plugin-detector/SKILL.md +211 -0
  175. package/{src → plugins/specweave-core}/skills/project-kickstarter/SKILL.md +7 -7
  176. package/plugins/specweave-core/skills/rfc-generator/SKILL.md +369 -0
  177. package/{src → plugins/specweave-core}/skills/specweave-detector/SKILL.md +2 -2
  178. package/plugins/specweave-core/skills/specweave-framework/SKILL.md +498 -0
  179. package/plugins/specweave-core/skills/specweave-framework/test-cases/test-1-increment-naming.yaml +11 -0
  180. package/plugins/specweave-core/skills/specweave-framework/test-cases/test-2-source-of-truth.yaml +11 -0
  181. package/plugins/specweave-core/skills/specweave-framework/test-cases/test-3-increment-discipline.yaml +12 -0
  182. package/plugins/specweave-core/skills/specweave-framework/test-cases/test-4-file-placement.yaml +11 -0
  183. package/{src → plugins/specweave-core}/skills/tdd-workflow/SKILL.md +20 -20
  184. package/plugins/specweave-core/skills/translator/SKILL.md +172 -0
  185. package/plugins/specweave-cost-optimizer/.claude-plugin/plugin.json +8 -0
  186. package/plugins/specweave-diagrams/.claude-plugin/plugin.json +8 -0
  187. package/plugins/specweave-docs/.claude-plugin/plugin.json +8 -0
  188. package/plugins/specweave-docs/skills/docusaurus/SKILL.md +526 -0
  189. package/plugins/specweave-figma/.claude-plugin/.mcp.json +12 -0
  190. package/plugins/specweave-figma/.claude-plugin/plugin.json +8 -0
  191. package/plugins/specweave-figma/ARCHITECTURE.md +453 -0
  192. package/plugins/specweave-figma/README.md +728 -0
  193. package/plugins/specweave-figma/skills/figma-to-code/SKILL.md +632 -0
  194. package/plugins/specweave-figma/skills/figma-to-code/test-1-token-generation.yaml +29 -0
  195. package/plugins/specweave-figma/skills/figma-to-code/test-2-component-generation.yaml +27 -0
  196. package/plugins/specweave-figma/skills/figma-to-code/test-3-typescript-generation.yaml +28 -0
  197. package/plugins/specweave-frontend/.claude-plugin/plugin.json +8 -0
  198. package/plugins/specweave-github/.claude-plugin/plugin.json +8 -0
  199. package/plugins/specweave-github/agents/github-manager/AGENT.md +651 -0
  200. package/plugins/specweave-github/commands/github-close-issue.md +418 -0
  201. package/plugins/specweave-github/commands/github-create-issue.md +307 -0
  202. package/plugins/specweave-github/commands/github-status.md +533 -0
  203. package/plugins/specweave-github/commands/github-sync-tasks.md +530 -0
  204. package/plugins/specweave-github/commands/github-sync.md +443 -0
  205. package/plugins/specweave-github/lib/github-client.ts +330 -0
  206. package/plugins/specweave-github/lib/index.ts +10 -0
  207. package/plugins/specweave-github/lib/subtask-sync.ts +225 -0
  208. package/plugins/specweave-github/lib/task-parser.ts +246 -0
  209. package/plugins/specweave-github/lib/task-sync.ts +402 -0
  210. package/plugins/specweave-github/lib/types.ts +86 -0
  211. package/plugins/specweave-github/skills/github-issue-tracker/SKILL.md +497 -0
  212. package/plugins/specweave-github/skills/github-sync/SKILL.md +461 -0
  213. package/plugins/specweave-infrastructure/.claude-plugin/plugin.json +8 -0
  214. package/plugins/specweave-jira/.claude-plugin/plugin.json +8 -0
  215. package/{src → plugins/specweave-jira}/commands/specweave.sync-jira.md +18 -18
  216. package/plugins/specweave-kubernetes/.claude-plugin/plugin.json +8 -0
  217. package/plugins/specweave-ml/.claude-plugin/plugin.json +39 -0
  218. package/plugins/specweave-ml/README.md +885 -0
  219. package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +402 -0
  220. package/plugins/specweave-ml/commands/ml-deploy.md +116 -0
  221. package/plugins/specweave-ml/commands/ml-evaluate.md +87 -0
  222. package/plugins/specweave-ml/commands/ml-explain.md +83 -0
  223. package/plugins/specweave-ml/skills/anomaly-detector/SKILL.md +559 -0
  224. package/plugins/specweave-ml/skills/automl-optimizer/SKILL.md +485 -0
  225. package/plugins/specweave-ml/skills/cv-pipeline-builder/SKILL.md +157 -0
  226. package/plugins/specweave-ml/skills/data-visualizer/SKILL.md +521 -0
  227. package/plugins/specweave-ml/skills/experiment-tracker/SKILL.md +535 -0
  228. package/plugins/specweave-ml/skills/feature-engineer/SKILL.md +566 -0
  229. package/plugins/specweave-ml/skills/ml-deployment-helper/SKILL.md +345 -0
  230. package/plugins/specweave-ml/skills/ml-pipeline-orchestrator/SKILL.md +518 -0
  231. package/plugins/specweave-ml/skills/model-evaluator/SKILL.md +155 -0
  232. package/plugins/specweave-ml/skills/model-explainer/SKILL.md +227 -0
  233. package/plugins/specweave-ml/skills/model-registry/SKILL.md +541 -0
  234. package/plugins/specweave-ml/skills/nlp-pipeline-builder/SKILL.md +180 -0
  235. package/plugins/specweave-ml/skills/time-series-forecaster/SKILL.md +569 -0
  236. package/plugins/specweave-payments/.claude-plugin/plugin.json +8 -0
  237. package/plugins/specweave-testing/.claude-plugin/plugin.json +8 -0
  238. package/plugins/specweave-tooling/.claude-plugin/plugin.json +8 -0
  239. package/plugins/specweave-ui/.claude-plugin/plugin.json +106 -0
  240. package/plugins/specweave-ui/.mcp.json +14 -0
  241. package/plugins/specweave-ui/README.md +386 -0
  242. package/src/adapters/claude/adapter.ts +193 -46
  243. package/src/adapters/copilot/adapter.ts +132 -7
  244. package/src/adapters/cursor/adapter.ts +62 -3
  245. package/src/adapters/generic/adapter.ts +62 -3
  246. package/src/templates/AGENTS.md.template +170 -1
  247. package/src/templates/CLAUDE.md.template +122 -24
  248. package/src/templates/tasks.md.template +261 -0
  249. package/src/agents/ml-engineer/AGENT.md +0 -150
  250. package/src/commands/specweave.sync-github.md +0 -269
  251. package/src/hooks/post-task-completion.sh +0 -121
  252. package/src/skills/SKILLS-INDEX.md +0 -444
  253. package/src/skills/github-sync/SKILL.md +0 -234
  254. /package/{src → plugins/specweave-ado}/skills/ado-sync/README.md +0 -0
  255. /package/{src → plugins/specweave-ado}/skills/ado-sync/SKILL.md +0 -0
  256. /package/{src → plugins/specweave-ado}/skills/specweave-ado-mapper/SKILL.md +0 -0
  257. /package/{src → plugins/specweave-backend}/agents/database-optimizer/AGENT.md +0 -0
  258. /package/{src → plugins/specweave-backend}/skills/dotnet-backend/SKILL.md +0 -0
  259. /package/{src → plugins/specweave-backend}/skills/nodejs-backend/SKILL.md +0 -0
  260. /package/{src → plugins/specweave-backend}/skills/python-backend/SKILL.md +0 -0
  261. /package/{src → plugins/specweave-core}/agents/architect/AGENT.md +0 -0
  262. /package/{src → plugins/specweave-core}/agents/code-reviewer.md +0 -0
  263. /package/{src → plugins/specweave-core}/agents/docs-writer/AGENT.md +0 -0
  264. /package/{src → plugins/specweave-core}/agents/performance/AGENT.md +0 -0
  265. /package/{src → plugins/specweave-core}/agents/qa-lead/AGENT.md +0 -0
  266. /package/{src → plugins/specweave-core}/agents/security/AGENT.md +0 -0
  267. /package/{src → plugins/specweave-core}/agents/tdd-orchestrator/AGENT.md +0 -0
  268. /package/{src → plugins/specweave-core}/agents/tech-lead/AGENT.md +0 -0
  269. /package/{src → plugins/specweave-core}/commands/specweave.done.md +0 -0
  270. /package/{src → plugins/specweave-core}/commands/specweave.inc.md +0 -0
  271. /package/{src → plugins/specweave-core}/commands/specweave.list-increments.md +0 -0
  272. /package/{src → plugins/specweave-core}/commands/specweave.next.md +0 -0
  273. /package/{src → plugins/specweave-core}/commands/specweave.progress.md +0 -0
  274. /package/{src → plugins/specweave-core}/commands/specweave.tdd-cycle.md +0 -0
  275. /package/{src → plugins/specweave-core}/commands/specweave.tdd-green.md +0 -0
  276. /package/{src → plugins/specweave-core}/commands/specweave.tdd-red.md +0 -0
  277. /package/{src → plugins/specweave-core}/commands/specweave.tdd-refactor.md +0 -0
  278. /package/{src → plugins/specweave-core}/hooks/README.md +0 -0
  279. /package/{src → plugins/specweave-core}/hooks/docs-changed.sh +0 -0
  280. /package/{src → plugins/specweave-core}/hooks/human-input-required.sh +0 -0
  281. /package/{src → plugins/specweave-core}/hooks/post-increment-plugin-detect.sh +0 -0
  282. /package/{src → plugins/specweave-core}/hooks/pre-implementation.sh +0 -0
  283. /package/{src → plugins/specweave-core}/hooks/pre-task-plugin-detect.sh +0 -0
  284. /package/{src → plugins/specweave-core}/skills/brownfield-onboarder/SKILL.md +0 -0
  285. /package/{src → plugins/specweave-core}/skills/docs-updater/README.md +0 -0
  286. /package/{src → plugins/specweave-core}/skills/increment-planner/scripts/feature-utils.js +0 -0
  287. /package/{src → plugins/specweave-core}/skills/increment-quality-judge/SKILL.md +0 -0
  288. /package/{src → plugins/specweave-core}/skills/project-kickstarter/test-cases/test-1-high-confidence-full-product.yaml +0 -0
  289. /package/{src → plugins/specweave-core}/skills/project-kickstarter/test-cases/test-2-medium-confidence-partial.yaml +0 -0
  290. /package/{src → plugins/specweave-core}/skills/project-kickstarter/test-cases/test-3-low-confidence-technical-question.yaml +0 -0
  291. /package/{src → plugins/specweave-core}/skills/project-kickstarter/test-cases/test-4-opt-out-explicit.yaml +0 -0
  292. /package/{src → plugins/specweave-core}/skills/role-orchestrator/README.md +0 -0
  293. /package/{src → plugins/specweave-core}/skills/role-orchestrator/SKILL.md +0 -0
  294. /package/{src → plugins/specweave-core}/skills/task-builder/README.md +0 -0
  295. /package/{src → plugins/specweave-cost-optimizer}/skills/cost-optimizer/SKILL.md +0 -0
  296. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/AGENT.md +0 -0
  297. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-component-template.mmd +0 -0
  298. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-container-template.mmd +0 -0
  299. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/c4-context-template.mmd +0 -0
  300. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/deployment-template.mmd +0 -0
  301. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/er-diagram-template.mmd +0 -0
  302. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/templates/sequence-template.mmd +0 -0
  303. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -0
  304. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-2-sequence.yaml +0 -0
  305. /package/{src → plugins/specweave-diagrams}/agents/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -0
  306. /package/{src → plugins/specweave-diagrams}/skills/diagrams-architect/SKILL.md +0 -0
  307. /package/{src → plugins/specweave-diagrams}/skills/diagrams-generator/SKILL.md +0 -0
  308. /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/README.md +0 -0
  309. /package/{src → plugins/specweave-docs}/skills/spec-driven-brainstorming/SKILL.md +0 -0
  310. /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/README.md +0 -0
  311. /package/{src → plugins/specweave-docs}/skills/spec-driven-debugging/SKILL.md +0 -0
  312. /package/{src → plugins/specweave-frontend}/skills/design-system-architect/SKILL.md +0 -0
  313. /package/{src → plugins/specweave-frontend}/skills/frontend/SKILL.md +0 -0
  314. /package/{src → plugins/specweave-frontend}/skills/nextjs/SKILL.md +0 -0
  315. /package/{src → plugins/specweave-infrastructure}/agents/devops/AGENT.md +0 -0
  316. /package/{src → plugins/specweave-infrastructure}/agents/network-engineer/AGENT.md +0 -0
  317. /package/{src → plugins/specweave-infrastructure}/agents/observability-engineer/AGENT.md +0 -0
  318. /package/{src → plugins/specweave-infrastructure}/agents/performance-engineer/AGENT.md +0 -0
  319. /package/{src → plugins/specweave-infrastructure}/agents/sre/AGENT.md +0 -0
  320. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/backend-diagnostics.md +0 -0
  321. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/database-diagnostics.md +0 -0
  322. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/infrastructure.md +0 -0
  323. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/monitoring.md +0 -0
  324. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/security-incidents.md +0 -0
  325. /package/{src → plugins/specweave-infrastructure}/agents/sre/modules/ui-diagnostics.md +0 -0
  326. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/01-high-cpu-usage.md +0 -0
  327. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/02-database-deadlock.md +0 -0
  328. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/03-memory-leak.md +0 -0
  329. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/04-slow-api-response.md +0 -0
  330. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/05-ddos-attack.md +0 -0
  331. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/06-disk-full.md +0 -0
  332. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/07-service-down.md +0 -0
  333. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/08-data-corruption.md +0 -0
  334. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/09-cascade-failure.md +0 -0
  335. /package/{src → plugins/specweave-infrastructure}/agents/sre/playbooks/10-rate-limit-exceeded.md +0 -0
  336. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/health-check.sh +0 -0
  337. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/log-analyzer.py +0 -0
  338. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/metrics-collector.sh +0 -0
  339. /package/{src → plugins/specweave-infrastructure}/agents/sre/scripts/trace-analyzer.js +0 -0
  340. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/incident-report.md +0 -0
  341. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/mitigation-plan.md +0 -0
  342. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/post-mortem.md +0 -0
  343. /package/{src → plugins/specweave-infrastructure}/agents/sre/templates/runbook-template.md +0 -0
  344. /package/{src → plugins/specweave-infrastructure}/commands/specweave.monitor-setup.md +0 -0
  345. /package/{src → plugins/specweave-infrastructure}/commands/specweave.slo-implement.md +0 -0
  346. /package/{src → plugins/specweave-infrastructure}/skills/distributed-tracing/SKILL.md +0 -0
  347. /package/{src → plugins/specweave-infrastructure}/skills/grafana-dashboards/SKILL.md +0 -0
  348. /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/README.md +0 -0
  349. /package/{src → plugins/specweave-infrastructure}/skills/hetzner-provisioner/SKILL.md +0 -0
  350. /package/{src → plugins/specweave-infrastructure}/skills/prometheus-configuration/SKILL.md +0 -0
  351. /package/{src → plugins/specweave-infrastructure}/skills/slo-implementation/SKILL.md +0 -0
  352. /package/{src → plugins/specweave-jira}/skills/jira-sync/README.md +0 -0
  353. /package/{src → plugins/specweave-jira}/skills/jira-sync/SKILL.md +0 -0
  354. /package/{src → plugins/specweave-jira}/skills/specweave-jira-mapper/SKILL.md +0 -0
  355. /package/{src → plugins/specweave-kubernetes}/agents/kubernetes-architect/AGENT.md +0 -0
  356. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/SKILL.md +0 -0
  357. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/argocd-setup.md +0 -0
  358. /package/{src → plugins/specweave-kubernetes}/skills/gitops-workflow/references/sync-policies.md +0 -0
  359. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/SKILL.md +0 -0
  360. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/Chart.yaml.template +0 -0
  361. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/assets/values.yaml.template +0 -0
  362. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/references/chart-structure.md +0 -0
  363. /package/{src → plugins/specweave-kubernetes}/skills/helm-chart-scaffolding/scripts/validate-chart.sh +0 -0
  364. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/SKILL.md +0 -0
  365. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/configmap-template.yaml +0 -0
  366. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/deployment-template.yaml +0 -0
  367. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/assets/service-template.yaml +0 -0
  368. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/deployment-spec.md +0 -0
  369. /package/{src → plugins/specweave-kubernetes}/skills/k8s-manifest-generator/references/service-spec.md +0 -0
  370. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/SKILL.md +0 -0
  371. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/assets/network-policy-template.yaml +0 -0
  372. /package/{src → plugins/specweave-kubernetes}/skills/k8s-security-policies/references/rbac-patterns.md +0 -0
  373. /package/{src → plugins/specweave-ml}/agents/data-scientist/AGENT.md +0 -0
  374. /package/{src → plugins/specweave-ml}/agents/mlops-engineer/AGENT.md +0 -0
  375. /package/{src → plugins/specweave-ml}/commands/specweave.ml-pipeline.md +0 -0
  376. /package/{src → plugins/specweave-ml}/skills/ml-pipeline-workflow/SKILL.md +0 -0
  377. /package/{src → plugins/specweave-payments}/agents/payment-integration/AGENT.md +0 -0
  378. /package/{src → plugins/specweave-payments}/skills/billing-automation/SKILL.md +0 -0
  379. /package/{src → plugins/specweave-payments}/skills/paypal-integration/SKILL.md +0 -0
  380. /package/{src → plugins/specweave-payments}/skills/pci-compliance/SKILL.md +0 -0
  381. /package/{src → plugins/specweave-payments}/skills/stripe-integration/SKILL.md +0 -0
  382. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/README.md +0 -0
  383. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/SKILL.md +0 -0
  384. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/execute.js +0 -0
  385. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/lib/utils.js +0 -0
  386. /package/{src → plugins/specweave-testing}/skills/e2e-playwright/package.json +0 -0
  387. /package/{src → plugins/specweave-tooling}/skills/skill-creator/LICENSE.txt +0 -0
  388. /package/{src → plugins/specweave-tooling}/skills/skill-creator/SKILL.md +0 -0
  389. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/init_skill.py +0 -0
  390. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/package_skill.py +0 -0
  391. /package/{src → plugins/specweave-tooling}/skills/skill-creator/scripts/quick_validate.py +0 -0
  392. /package/{src → plugins/specweave-tooling}/skills/skill-router/SKILL.md +0 -0
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Language Manager
3
+ *
4
+ * Central manager for all i18n operations in SpecWeave.
5
+ * Coordinates language detection, switching, and translation.
6
+ *
7
+ * @module core/i18n
8
+ */
9
+ import { SupportedLanguage, I18nConfig, UserLanguagePreference, LanguageConfig, LocaleStrings } from './types.js';
10
+ /**
11
+ * Central language manager singleton
12
+ */
13
+ export declare class LanguageManager {
14
+ private currentLanguage;
15
+ private config;
16
+ private userPreference?;
17
+ constructor(config?: Partial<I18nConfig>);
18
+ /**
19
+ * Get current language
20
+ */
21
+ getCurrentLanguage(): SupportedLanguage;
22
+ /**
23
+ * Set current language
24
+ */
25
+ setCurrentLanguage(language: SupportedLanguage): void;
26
+ /**
27
+ * Get language configuration
28
+ */
29
+ getLanguageConfig(language?: SupportedLanguage): LanguageConfig;
30
+ /**
31
+ * Get locale strings for current language
32
+ */
33
+ getLocaleStrings(language?: SupportedLanguage): LocaleStrings;
34
+ /**
35
+ * Get all available languages
36
+ */
37
+ getAvailableLanguages(): import("./types.js").LanguageMetadata[];
38
+ /**
39
+ * Check if language is enabled
40
+ */
41
+ isLanguageEnabled(language: SupportedLanguage): boolean;
42
+ /**
43
+ * Enable a language
44
+ */
45
+ enableLanguage(language: SupportedLanguage): void;
46
+ /**
47
+ * Disable a language
48
+ */
49
+ disableLanguage(language: SupportedLanguage): void;
50
+ /**
51
+ * Set user language preference
52
+ */
53
+ setUserPreference(preference: UserLanguagePreference): void;
54
+ /**
55
+ * Get user language preference
56
+ */
57
+ getUserPreference(): UserLanguagePreference | undefined;
58
+ /**
59
+ * Auto-detect language from content
60
+ */
61
+ detectLanguage(content?: string): SupportedLanguage;
62
+ /**
63
+ * Apply language to project
64
+ * Injects system prompts into all skills/agents/commands
65
+ */
66
+ applyLanguageToProject(projectPath: string, targetLanguage: SupportedLanguage, options?: {
67
+ includeSkills?: boolean;
68
+ includeAgents?: boolean;
69
+ includeCommands?: boolean;
70
+ overwrite?: boolean;
71
+ }): Promise<void>;
72
+ /**
73
+ * Save configuration to file
74
+ */
75
+ saveConfig(configPath: string): Promise<void>;
76
+ /**
77
+ * Load configuration from file
78
+ */
79
+ loadConfig(configPath: string): Promise<void>;
80
+ }
81
+ /**
82
+ * Get singleton instance
83
+ */
84
+ export declare function getLanguageManager(config?: Partial<I18nConfig>): LanguageManager;
85
+ /**
86
+ * Reset singleton (for testing)
87
+ */
88
+ export declare function resetLanguageManager(): void;
89
+ /**
90
+ * Static utility: Get system prompt for language
91
+ */
92
+ export declare function getSystemPromptForLanguage(language: SupportedLanguage): string;
93
+ /**
94
+ * Static utility: Check if language is supported
95
+ */
96
+ export declare function isLanguageSupported(code: string): code is SupportedLanguage;
97
+ /**
98
+ * Static utility: Get all supported languages
99
+ */
100
+ export declare function getSupportedLanguages(): SupportedLanguage[];
101
+ //# sourceMappingURL=language-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-manager.d.ts","sourceRoot":"","sources":["../../../src/core/i18n/language-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,aAAa,EACd,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAyB;gBAEpC,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC;IAoBxC;;OAEG;IACH,kBAAkB,IAAI,iBAAiB;IAIvC;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAIrD;;OAEG;IACH,iBAAiB,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,cAAc;IAI/D;;OAEG;IACH,gBAAgB,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,aAAa;IAK7D;;OAEG;IACH,qBAAqB;IAIrB;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO;IAIvD;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAMjD;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAMlD;;OAEG;IACH,iBAAiB,CAAC,UAAU,EAAE,sBAAsB,GAAG,IAAI;IAK3D;;OAEG;IACH,iBAAiB,IAAI,sBAAsB,GAAG,SAAS;IAIvD;;OAEG;IACH,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,iBAAiB;IAKnD;;;OAGG;IACG,sBAAsB,CAC1B,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,iBAAiB,EACjC,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GACA,OAAO,CAAC,IAAI,CAAC;IAsDhB;;OAEG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAenD;;OAEG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAyBpD;AAKD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,eAAe,CAKhF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAG9E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,iBAAiB,CAG3E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,iBAAiB,EAAE,CAE3D"}
@@ -0,0 +1,232 @@
1
+ /**
2
+ * Language Manager
3
+ *
4
+ * Central manager for all i18n operations in SpecWeave.
5
+ * Coordinates language detection, switching, and translation.
6
+ *
7
+ * @module core/i18n
8
+ */
9
+ import fs from 'fs-extra';
10
+ import path from 'path';
11
+ import { getLanguageConfig, getAllLanguages, } from './language-registry.js';
12
+ import { detectLanguage, detectLanguageFromEnvironment } from './language-detector.js';
13
+ import { injectPromptsIntoDirectory } from './system-prompt-injector.js';
14
+ /**
15
+ * Central language manager singleton
16
+ */
17
+ export class LanguageManager {
18
+ constructor(config) {
19
+ // Initialize with defaults
20
+ this.config = {
21
+ defaultLanguage: config?.defaultLanguage || 'en',
22
+ enabledLanguages: config?.enabledLanguages || ['en'],
23
+ // If defaultLanguage is explicitly set, don't auto-detect (SIMPLIFIED)
24
+ autoDetect: config?.autoDetect !== undefined ? config.autoDetect : !config?.defaultLanguage,
25
+ cache: config?.cache,
26
+ };
27
+ // Set current language (SIMPLIFIED LOGIC)
28
+ // Priority: 1) Auto-detect if enabled, 2) Default language
29
+ if (this.config.autoDetect && !config?.defaultLanguage) {
30
+ const detected = detectLanguageFromEnvironment();
31
+ this.currentLanguage = detected.language;
32
+ }
33
+ else {
34
+ this.currentLanguage = this.config.defaultLanguage;
35
+ }
36
+ }
37
+ /**
38
+ * Get current language
39
+ */
40
+ getCurrentLanguage() {
41
+ return this.currentLanguage;
42
+ }
43
+ /**
44
+ * Set current language
45
+ */
46
+ setCurrentLanguage(language) {
47
+ this.currentLanguage = language;
48
+ }
49
+ /**
50
+ * Get language configuration
51
+ */
52
+ getLanguageConfig(language) {
53
+ return getLanguageConfig(language || this.currentLanguage);
54
+ }
55
+ /**
56
+ * Get locale strings for current language
57
+ */
58
+ getLocaleStrings(language) {
59
+ const config = this.getLanguageConfig(language);
60
+ return config.strings;
61
+ }
62
+ /**
63
+ * Get all available languages
64
+ */
65
+ getAvailableLanguages() {
66
+ return getAllLanguages();
67
+ }
68
+ /**
69
+ * Check if language is enabled
70
+ */
71
+ isLanguageEnabled(language) {
72
+ return this.config.enabledLanguages.includes(language);
73
+ }
74
+ /**
75
+ * Enable a language
76
+ */
77
+ enableLanguage(language) {
78
+ if (!this.config.enabledLanguages.includes(language)) {
79
+ this.config.enabledLanguages.push(language);
80
+ }
81
+ }
82
+ /**
83
+ * Disable a language
84
+ */
85
+ disableLanguage(language) {
86
+ this.config.enabledLanguages = this.config.enabledLanguages.filter((lang) => lang !== language);
87
+ }
88
+ /**
89
+ * Set user language preference
90
+ */
91
+ setUserPreference(preference) {
92
+ this.userPreference = preference;
93
+ this.currentLanguage = preference.primary;
94
+ }
95
+ /**
96
+ * Get user language preference
97
+ */
98
+ getUserPreference() {
99
+ return this.userPreference;
100
+ }
101
+ /**
102
+ * Auto-detect language from content
103
+ */
104
+ detectLanguage(content) {
105
+ const result = detectLanguage({ content });
106
+ return result.language;
107
+ }
108
+ /**
109
+ * Apply language to project
110
+ * Injects system prompts into all skills/agents/commands
111
+ */
112
+ async applyLanguageToProject(projectPath, targetLanguage, options) {
113
+ const { includeSkills = true, includeAgents = true, includeCommands = true, overwrite = false, } = options || {};
114
+ let totalInjected = 0;
115
+ console.log(`\n🌍 Applying ${targetLanguage} language to project...`);
116
+ // Inject into skills
117
+ if (includeSkills) {
118
+ const skillsPath = path.join(projectPath, '.claude', 'skills');
119
+ if (await fs.pathExists(skillsPath)) {
120
+ console.log(`\n📚 Processing skills...`);
121
+ const count = await injectPromptsIntoDirectory(skillsPath, targetLanguage, {
122
+ overwrite,
123
+ recursive: true,
124
+ });
125
+ totalInjected += count;
126
+ }
127
+ }
128
+ // Inject into agents
129
+ if (includeAgents) {
130
+ const agentsPath = path.join(projectPath, '.claude', 'agents');
131
+ if (await fs.pathExists(agentsPath)) {
132
+ console.log(`\n🤖 Processing agents...`);
133
+ const count = await injectPromptsIntoDirectory(agentsPath, targetLanguage, {
134
+ overwrite,
135
+ recursive: true,
136
+ });
137
+ totalInjected += count;
138
+ }
139
+ }
140
+ // Inject into commands
141
+ if (includeCommands) {
142
+ const commandsPath = path.join(projectPath, '.claude', 'commands');
143
+ if (await fs.pathExists(commandsPath)) {
144
+ console.log(`\n⚡ Processing commands...`);
145
+ const count = await injectPromptsIntoDirectory(commandsPath, targetLanguage, {
146
+ overwrite,
147
+ recursive: true,
148
+ });
149
+ totalInjected += count;
150
+ }
151
+ }
152
+ console.log(`\n✅ Language applied! Injected prompts into ${totalInjected} files.`);
153
+ }
154
+ /**
155
+ * Save configuration to file
156
+ */
157
+ async saveConfig(configPath) {
158
+ const config = {
159
+ i18n: {
160
+ defaultLanguage: this.config.defaultLanguage,
161
+ enabledLanguages: this.config.enabledLanguages,
162
+ autoDetect: this.config.autoDetect,
163
+ currentLanguage: this.currentLanguage,
164
+ userPreference: this.userPreference,
165
+ },
166
+ };
167
+ await fs.writeJSON(configPath, config, { spaces: 2 });
168
+ console.log(`✅ Saved i18n configuration to ${configPath}`);
169
+ }
170
+ /**
171
+ * Load configuration from file
172
+ */
173
+ async loadConfig(configPath) {
174
+ if (!(await fs.pathExists(configPath))) {
175
+ console.log(`⚠️ Config file not found: ${configPath}`);
176
+ return;
177
+ }
178
+ const data = await fs.readJSON(configPath);
179
+ if (data.i18n) {
180
+ this.config = {
181
+ defaultLanguage: data.i18n.defaultLanguage || 'en',
182
+ enabledLanguages: data.i18n.enabledLanguages || ['en'],
183
+ autoDetect: data.i18n.autoDetect !== undefined ? data.i18n.autoDetect : true,
184
+ };
185
+ if (data.i18n.currentLanguage) {
186
+ this.currentLanguage = data.i18n.currentLanguage;
187
+ }
188
+ if (data.i18n.userPreference) {
189
+ this.userPreference = data.i18n.userPreference;
190
+ }
191
+ console.log(`✅ Loaded i18n configuration from ${configPath}`);
192
+ }
193
+ }
194
+ }
195
+ // Singleton instance
196
+ let instance = null;
197
+ /**
198
+ * Get singleton instance
199
+ */
200
+ export function getLanguageManager(config) {
201
+ if (!instance) {
202
+ instance = new LanguageManager(config);
203
+ }
204
+ return instance;
205
+ }
206
+ /**
207
+ * Reset singleton (for testing)
208
+ */
209
+ export function resetLanguageManager() {
210
+ instance = null;
211
+ }
212
+ /**
213
+ * Static utility: Get system prompt for language
214
+ */
215
+ export function getSystemPromptForLanguage(language) {
216
+ const config = getLanguageConfig(language);
217
+ return config.systemPrompt;
218
+ }
219
+ /**
220
+ * Static utility: Check if language is supported
221
+ */
222
+ export function isLanguageSupported(code) {
223
+ const supported = ['en', 'ru', 'es', 'zh', 'de', 'fr', 'ja', 'ko', 'pt'];
224
+ return supported.includes(code);
225
+ }
226
+ /**
227
+ * Static utility: Get all supported languages
228
+ */
229
+ export function getSupportedLanguages() {
230
+ return ['en', 'ru', 'es', 'zh', 'de', 'fr', 'ja', 'ko', 'pt'];
231
+ }
232
+ //# sourceMappingURL=language-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-manager.js","sourceRoot":"","sources":["../../../src/core/i18n/language-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Language Registry - Metadata for all supported languages
3
+ *
4
+ * Provides native names, system prompts, and configuration for each language.
5
+ *
6
+ * @module core/i18n
7
+ */
8
+ import { SupportedLanguage, LanguageMetadata, LanguageConfig } from './types.js';
9
+ /**
10
+ * Language metadata for UI display and selection
11
+ */
12
+ export declare const LANGUAGE_METADATA: Record<SupportedLanguage, LanguageMetadata>;
13
+ /**
14
+ * System prompts for LLM-native translation
15
+ * These are injected at the top of skills/agents/commands
16
+ */
17
+ export declare const SYSTEM_PROMPTS: Record<SupportedLanguage, string>;
18
+ /**
19
+ * Full language configurations
20
+ * Note: Currently only English has locale strings
21
+ * Other languages will use system prompts for LLM-native translation
22
+ */
23
+ export declare const LANGUAGE_CONFIGS: Record<SupportedLanguage, LanguageConfig>;
24
+ /**
25
+ * Get language metadata by code
26
+ */
27
+ export declare function getLanguageMetadata(code: SupportedLanguage): LanguageMetadata;
28
+ /**
29
+ * Get language configuration by code
30
+ */
31
+ export declare function getLanguageConfig(code: SupportedLanguage): LanguageConfig;
32
+ /**
33
+ * Get system prompt for language
34
+ */
35
+ export declare function getSystemPrompt(code: SupportedLanguage): string;
36
+ /**
37
+ * Get all supported languages
38
+ */
39
+ export declare function getAllLanguages(): LanguageMetadata[];
40
+ /**
41
+ * Check if language is supported
42
+ */
43
+ export declare function isLanguageSupported(code: string): code is SupportedLanguage;
44
+ //# sourceMappingURL=language-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-registry.d.ts","sourceRoot":"","sources":["../../../src/core/i18n/language-registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAiB,MAAM,YAAY,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,CAgEzE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAU5D,CAAC;AAqCF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAyEtE,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,GAAG,gBAAgB,CAE7E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAEzE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,gBAAgB,EAAE,CAEpD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,iBAAiB,CAE3E"}
@@ -0,0 +1,234 @@
1
+ /**
2
+ * Language Registry - Metadata for all supported languages
3
+ *
4
+ * Provides native names, system prompts, and configuration for each language.
5
+ *
6
+ * @module core/i18n
7
+ */
8
+ /**
9
+ * Language metadata for UI display and selection
10
+ */
11
+ export const LANGUAGE_METADATA = {
12
+ en: {
13
+ code: 'en',
14
+ nativeName: 'English',
15
+ englishName: 'English',
16
+ flag: '🇬🇧',
17
+ completionPercent: 100,
18
+ },
19
+ ru: {
20
+ code: 'ru',
21
+ nativeName: 'Русский',
22
+ englishName: 'Russian',
23
+ flag: '🇷🇺',
24
+ completionPercent: 0,
25
+ },
26
+ es: {
27
+ code: 'es',
28
+ nativeName: 'Español',
29
+ englishName: 'Spanish',
30
+ flag: '🇪🇸',
31
+ completionPercent: 0,
32
+ },
33
+ zh: {
34
+ code: 'zh',
35
+ nativeName: '中文',
36
+ englishName: 'Chinese',
37
+ flag: '🇨🇳',
38
+ completionPercent: 0,
39
+ },
40
+ de: {
41
+ code: 'de',
42
+ nativeName: 'Deutsch',
43
+ englishName: 'German',
44
+ flag: '🇩🇪',
45
+ completionPercent: 0,
46
+ },
47
+ fr: {
48
+ code: 'fr',
49
+ nativeName: 'Français',
50
+ englishName: 'French',
51
+ flag: '🇫🇷',
52
+ completionPercent: 0,
53
+ },
54
+ ja: {
55
+ code: 'ja',
56
+ nativeName: '日本語',
57
+ englishName: 'Japanese',
58
+ flag: '🇯🇵',
59
+ completionPercent: 0,
60
+ },
61
+ ko: {
62
+ code: 'ko',
63
+ nativeName: '한국어',
64
+ englishName: 'Korean',
65
+ flag: '🇰🇷',
66
+ completionPercent: 0,
67
+ },
68
+ pt: {
69
+ code: 'pt',
70
+ nativeName: 'Português',
71
+ englishName: 'Portuguese',
72
+ flag: '🇧🇷',
73
+ completionPercent: 0,
74
+ },
75
+ };
76
+ /**
77
+ * System prompts for LLM-native translation
78
+ * These are injected at the top of skills/agents/commands
79
+ */
80
+ export const SYSTEM_PROMPTS = {
81
+ en: '', // No prompt needed for English (default)
82
+ ru: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Russian (Русский). Maintain technical terms in English when appropriate.',
83
+ es: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Spanish (Español). Maintain technical terms in English when appropriate.',
84
+ zh: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Simplified Chinese (简体中文). Maintain technical terms in English when appropriate.',
85
+ de: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in German (Deutsch). Maintain technical terms in English when appropriate.',
86
+ fr: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in French (Français). Maintain technical terms in English when appropriate.',
87
+ ja: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Japanese (日本語). Maintain technical terms in English when appropriate.',
88
+ ko: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Korean (한국어). Maintain technical terms in English when appropriate.',
89
+ pt: '**LANGUAGE INSTRUCTION**: All responses, generated content, and documentation MUST be in Portuguese (Português). Maintain technical terms in English when appropriate.',
90
+ };
91
+ /**
92
+ * English locale strings (default)
93
+ */
94
+ const ENGLISH_STRINGS = {
95
+ cli: {
96
+ welcome: 'Welcome to SpecWeave!',
97
+ error: 'Error',
98
+ success: 'Success',
99
+ warning: 'Warning',
100
+ info: 'Info',
101
+ },
102
+ increment: {
103
+ created: 'Increment created',
104
+ inProgress: 'In progress',
105
+ completed: 'Completed',
106
+ failed: 'Failed',
107
+ taskComplete: 'Task completed',
108
+ allTasksComplete: 'All tasks completed',
109
+ },
110
+ validation: {
111
+ invalidInput: 'Invalid input',
112
+ missingFile: 'File not found',
113
+ incompleteTasks: 'Incomplete tasks found',
114
+ blockingIncrement: 'Previous increments must be completed first',
115
+ },
116
+ gates: {
117
+ taskGatePass: 'All tasks completed',
118
+ taskGateFail: 'Some tasks incomplete',
119
+ testGatePass: 'All tests passing',
120
+ testGateFail: 'Some tests failing',
121
+ docsGatePass: 'Documentation up to date',
122
+ docsGateFail: 'Documentation needs update',
123
+ },
124
+ };
125
+ /**
126
+ * Full language configurations
127
+ * Note: Currently only English has locale strings
128
+ * Other languages will use system prompts for LLM-native translation
129
+ */
130
+ export const LANGUAGE_CONFIGS = {
131
+ en: {
132
+ code: 'en',
133
+ nativeName: 'English',
134
+ englishName: 'English',
135
+ systemPrompt: SYSTEM_PROMPTS.en,
136
+ rtl: false,
137
+ strings: ENGLISH_STRINGS,
138
+ },
139
+ ru: {
140
+ code: 'ru',
141
+ nativeName: 'Русский',
142
+ englishName: 'Russian',
143
+ systemPrompt: SYSTEM_PROMPTS.ru,
144
+ rtl: false,
145
+ strings: ENGLISH_STRINGS, // Will be translated via LLM
146
+ },
147
+ es: {
148
+ code: 'es',
149
+ nativeName: 'Español',
150
+ englishName: 'Spanish',
151
+ systemPrompt: SYSTEM_PROMPTS.es,
152
+ rtl: false,
153
+ strings: ENGLISH_STRINGS,
154
+ },
155
+ zh: {
156
+ code: 'zh',
157
+ nativeName: '中文',
158
+ englishName: 'Chinese',
159
+ systemPrompt: SYSTEM_PROMPTS.zh,
160
+ rtl: false,
161
+ strings: ENGLISH_STRINGS,
162
+ },
163
+ de: {
164
+ code: 'de',
165
+ nativeName: 'Deutsch',
166
+ englishName: 'German',
167
+ systemPrompt: SYSTEM_PROMPTS.de,
168
+ rtl: false,
169
+ strings: ENGLISH_STRINGS,
170
+ },
171
+ fr: {
172
+ code: 'fr',
173
+ nativeName: 'Français',
174
+ englishName: 'French',
175
+ systemPrompt: SYSTEM_PROMPTS.fr,
176
+ rtl: false,
177
+ strings: ENGLISH_STRINGS,
178
+ },
179
+ ja: {
180
+ code: 'ja',
181
+ nativeName: '日本語',
182
+ englishName: 'Japanese',
183
+ systemPrompt: SYSTEM_PROMPTS.ja,
184
+ rtl: false,
185
+ strings: ENGLISH_STRINGS,
186
+ },
187
+ ko: {
188
+ code: 'ko',
189
+ nativeName: '한국어',
190
+ englishName: 'Korean',
191
+ systemPrompt: SYSTEM_PROMPTS.ko,
192
+ rtl: false,
193
+ strings: ENGLISH_STRINGS,
194
+ },
195
+ pt: {
196
+ code: 'pt',
197
+ nativeName: 'Português',
198
+ englishName: 'Portuguese',
199
+ systemPrompt: SYSTEM_PROMPTS.pt,
200
+ rtl: false,
201
+ strings: ENGLISH_STRINGS,
202
+ },
203
+ };
204
+ /**
205
+ * Get language metadata by code
206
+ */
207
+ export function getLanguageMetadata(code) {
208
+ return LANGUAGE_METADATA[code];
209
+ }
210
+ /**
211
+ * Get language configuration by code
212
+ */
213
+ export function getLanguageConfig(code) {
214
+ return LANGUAGE_CONFIGS[code];
215
+ }
216
+ /**
217
+ * Get system prompt for language
218
+ */
219
+ export function getSystemPrompt(code) {
220
+ return SYSTEM_PROMPTS[code];
221
+ }
222
+ /**
223
+ * Get all supported languages
224
+ */
225
+ export function getAllLanguages() {
226
+ return Object.values(LANGUAGE_METADATA);
227
+ }
228
+ /**
229
+ * Check if language is supported
230
+ */
231
+ export function isLanguageSupported(code) {
232
+ return code in LANGUAGE_METADATA;
233
+ }
234
+ //# sourceMappingURL=language-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-registry.js","sourceRoot":"","sources":["../../../src/core/i18n/language-registry.ts"],"names":[],"mappings":"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"}