specweave 0.13.4 → 0.13.6

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 (783) hide show
  1. package/bin/specweave.js +1 -0
  2. package/dist/cli/commands/init.d.ts +1 -0
  3. package/dist/cli/commands/init.d.ts.map +1 -1
  4. package/dist/cli/commands/init.js +50 -37
  5. package/dist/cli/commands/init.js.map +1 -1
  6. package/package.json +1 -1
  7. package/plugins/specweave/.claude-plugin/plugin.json +1 -2
  8. package/plugins/specweave/lib/hooks/git-diff-analyzer.js +129 -213
  9. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +146 -192
  10. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +103 -116
  11. package/plugins/specweave/lib/hooks/reflection-config-loader.js +85 -125
  12. package/plugins/specweave/lib/hooks/reflection-parser.js +267 -385
  13. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +169 -226
  14. package/plugins/specweave/lib/hooks/reflection-storage.js +223 -297
  15. package/plugins/specweave/lib/hooks/run-self-reflection.js +120 -191
  16. package/plugins/specweave/lib/hooks/sync-living-docs.js +87 -129
  17. package/plugins/specweave/lib/hooks/translate-file.js +239 -300
  18. package/plugins/specweave/lib/hooks/translate-living-docs.js +88 -144
  19. package/plugins/specweave/lib/hooks/types/reflection-types.js +57 -72
  20. package/plugins/specweave/lib/hooks/update-tasks-md.js +117 -179
  21. package/plugins/specweave-ado/.claude-plugin/plugin.json +1 -2
  22. package/plugins/specweave-ado/lib/ado-board-resolver.js +135 -205
  23. package/plugins/specweave-ado/lib/ado-hierarchical-sync.js +223 -335
  24. package/plugins/specweave-ado/lib/ado-spec-sync.js +380 -414
  25. package/plugins/specweave-ado/lib/project-selector.js +168 -196
  26. package/plugins/specweave-github/.claude-plugin/plugin.json +1 -2
  27. package/plugins/specweave-github/hooks/hooks.json +11 -0
  28. package/plugins/specweave-github/hooks/post-increment-done.sh +224 -0
  29. package/plugins/specweave-github/lib/cli-sync-increment-changes.js +9 -20
  30. package/plugins/specweave-github/lib/github-board-resolver.js +69 -115
  31. package/plugins/specweave-github/lib/github-client-v2.js +400 -389
  32. package/plugins/specweave-github/lib/github-client.js +246 -280
  33. package/plugins/specweave-github/lib/github-hierarchical-sync.js +168 -251
  34. package/plugins/specweave-github/lib/github-issue-updater.js +231 -288
  35. package/plugins/specweave-github/lib/github-spec-sync.js +379 -420
  36. package/plugins/specweave-github/lib/github-sync-bidirectional.js +175 -202
  37. package/plugins/specweave-github/lib/github-sync-increment-changes.js +212 -251
  38. package/plugins/specweave-github/lib/index.js +11 -10
  39. package/plugins/specweave-github/lib/repo-selector.js +174 -201
  40. package/plugins/specweave-github/lib/subtask-sync.js +132 -125
  41. package/plugins/specweave-github/lib/task-parser.js +191 -207
  42. package/plugins/specweave-github/lib/task-sync.js +344 -296
  43. package/plugins/specweave-github/lib/types.js +0 -5
  44. package/plugins/specweave-jira/.claude-plugin/plugin.json +1 -2
  45. package/plugins/specweave-jira/lib/jira-board-resolver.js +50 -79
  46. package/plugins/specweave-jira/lib/jira-hierarchical-sync.js +119 -191
  47. package/plugins/specweave-jira/lib/jira-spec-sync.js +366 -405
  48. package/plugins/specweave-jira/lib/project-selector.js +172 -201
  49. package/plugins/specweave-jira/lib/reorganization-detector.js +202 -237
  50. package/plugins/specweave-jira/lib/setup-wizard.js +162 -204
  51. package/src/templates/AGENTS.md.template +42 -0
  52. package/dist/core/agent-model-manager.d.ts +0 -52
  53. package/dist/core/agent-model-manager.d.ts.map +0 -1
  54. package/dist/core/agent-model-manager.js +0 -120
  55. package/dist/core/agent-model-manager.js.map +0 -1
  56. package/dist/core/model-selector.d.ts +0 -57
  57. package/dist/core/model-selector.d.ts.map +0 -1
  58. package/dist/core/model-selector.js +0 -115
  59. package/dist/core/model-selector.js.map +0 -1
  60. package/dist/core/phase-detector.d.ts +0 -62
  61. package/dist/core/phase-detector.d.ts.map +0 -1
  62. package/dist/core/phase-detector.js +0 -229
  63. package/dist/core/phase-detector.js.map +0 -1
  64. package/dist/hooks/lib/git-diff-analyzer.d.ts +0 -89
  65. package/dist/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  66. package/dist/hooks/lib/git-diff-analyzer.js +0 -226
  67. package/dist/hooks/lib/git-diff-analyzer.js.map +0 -1
  68. package/dist/hooks/lib/invoke-translator-skill.d.ts +0 -60
  69. package/dist/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  70. package/dist/hooks/lib/invoke-translator-skill.js +0 -201
  71. package/dist/hooks/lib/invoke-translator-skill.js.map +0 -1
  72. package/dist/hooks/lib/prepare-reflection-context.d.ts +0 -42
  73. package/dist/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  74. package/dist/hooks/lib/prepare-reflection-context.js +0 -123
  75. package/dist/hooks/lib/prepare-reflection-context.js.map +0 -1
  76. package/dist/hooks/lib/reflection-config-loader.d.ts +0 -45
  77. package/dist/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  78. package/dist/hooks/lib/reflection-config-loader.js +0 -132
  79. package/dist/hooks/lib/reflection-config-loader.js.map +0 -1
  80. package/dist/hooks/lib/reflection-parser.d.ts +0 -33
  81. package/dist/hooks/lib/reflection-parser.d.ts.map +0 -1
  82. package/dist/hooks/lib/reflection-parser.js +0 -419
  83. package/dist/hooks/lib/reflection-parser.js.map +0 -1
  84. package/dist/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  85. package/dist/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  86. package/dist/hooks/lib/reflection-prompt-builder.js +0 -239
  87. package/dist/hooks/lib/reflection-prompt-builder.js.map +0 -1
  88. package/dist/hooks/lib/reflection-storage.d.ts +0 -64
  89. package/dist/hooks/lib/reflection-storage.d.ts.map +0 -1
  90. package/dist/hooks/lib/reflection-storage.js +0 -305
  91. package/dist/hooks/lib/reflection-storage.js.map +0 -1
  92. package/dist/hooks/lib/run-self-reflection.d.ts +0 -43
  93. package/dist/hooks/lib/run-self-reflection.d.ts.map +0 -1
  94. package/dist/hooks/lib/run-self-reflection.js +0 -203
  95. package/dist/hooks/lib/run-self-reflection.js.map +0 -1
  96. package/dist/hooks/lib/sync-living-docs.d.ts +0 -27
  97. package/dist/hooks/lib/sync-living-docs.d.ts.map +0 -1
  98. package/dist/hooks/lib/sync-living-docs.js +0 -116
  99. package/dist/hooks/lib/sync-living-docs.js.map +0 -1
  100. package/dist/hooks/lib/translate-file.d.ts +0 -59
  101. package/dist/hooks/lib/translate-file.d.ts.map +0 -1
  102. package/dist/hooks/lib/translate-file.js +0 -350
  103. package/dist/hooks/lib/translate-file.js.map +0 -1
  104. package/dist/hooks/lib/translate-living-docs.d.ts +0 -13
  105. package/dist/hooks/lib/translate-living-docs.d.ts.map +0 -1
  106. package/dist/hooks/lib/translate-living-docs.js +0 -175
  107. package/dist/hooks/lib/translate-living-docs.js.map +0 -1
  108. package/dist/hooks/lib/types/reflection-types.d.ts +0 -164
  109. package/dist/hooks/lib/types/reflection-types.d.ts.map +0 -1
  110. package/dist/hooks/lib/types/reflection-types.js +0 -73
  111. package/dist/hooks/lib/types/reflection-types.js.map +0 -1
  112. package/dist/hooks/lib/update-tasks-md.d.ts +0 -29
  113. package/dist/hooks/lib/update-tasks-md.d.ts.map +0 -1
  114. package/dist/hooks/lib/update-tasks-md.js +0 -203
  115. package/dist/hooks/lib/update-tasks-md.js.map +0 -1
  116. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
  117. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
  118. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
  119. package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
  120. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
  121. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
  122. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
  123. package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
  124. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
  125. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
  126. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
  127. package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
  128. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
  129. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
  130. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
  131. package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
  132. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
  133. package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
  134. package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
  135. package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
  136. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
  137. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
  138. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
  139. package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
  140. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
  141. package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
  142. package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
  143. package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
  144. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
  145. package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
  146. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
  147. package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
  148. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -27
  149. package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
  150. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -144
  151. package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
  152. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
  153. package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
  154. package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
  155. package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
  156. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
  157. package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
  158. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
  159. package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
  160. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
  161. package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
  162. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
  163. package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
  164. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
  165. package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
  166. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
  167. package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
  168. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +0 -94
  169. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +0 -1
  170. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +0 -219
  171. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +0 -1
  172. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +0 -124
  173. package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +0 -1
  174. package/dist/plugins/specweave-ado/lib/ado-client-v2.js +0 -382
  175. package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +0 -1
  176. package/dist/plugins/specweave-ado/lib/ado-client.d.ts +0 -112
  177. package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +0 -1
  178. package/dist/plugins/specweave-ado/lib/ado-client.js +0 -257
  179. package/dist/plugins/specweave-ado/lib/ado-client.js.map +0 -1
  180. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +0 -40
  181. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +0 -1
  182. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +0 -370
  183. package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +0 -1
  184. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts +0 -100
  185. package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts.map +0 -1
  186. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js +0 -471
  187. package/dist/plugins/specweave-ado/lib/ado-spec-sync.js.map +0 -1
  188. package/dist/plugins/specweave-ado/lib/project-selector.d.ts +0 -42
  189. package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +0 -1
  190. package/dist/plugins/specweave-ado/lib/project-selector.js +0 -211
  191. package/dist/plugins/specweave-ado/lib/project-selector.js.map +0 -1
  192. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts +0 -12
  193. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts.map +0 -1
  194. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js +0 -28
  195. package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js.map +0 -1
  196. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +0 -54
  197. package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +0 -1
  198. package/dist/plugins/specweave-github/lib/github-board-resolver.js +0 -122
  199. package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +0 -1
  200. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +0 -104
  201. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +0 -1
  202. package/dist/plugins/specweave-github/lib/github-client-v2.js +0 -408
  203. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +0 -1
  204. package/dist/plugins/specweave-github/lib/github-client.d.ts +0 -96
  205. package/dist/plugins/specweave-github/lib/github-client.d.ts.map +0 -1
  206. package/dist/plugins/specweave-github/lib/github-client.js +0 -299
  207. package/dist/plugins/specweave-github/lib/github-client.js.map +0 -1
  208. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +0 -29
  209. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +0 -1
  210. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +0 -268
  211. package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +0 -1
  212. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts +0 -61
  213. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +0 -1
  214. package/dist/plugins/specweave-github/lib/github-issue-updater.js +0 -327
  215. package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +0 -1
  216. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +0 -108
  217. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +0 -1
  218. package/dist/plugins/specweave-github/lib/github-spec-sync.js +0 -505
  219. package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +0 -1
  220. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts +0 -36
  221. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +0 -1
  222. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +0 -228
  223. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +0 -1
  224. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts +0 -18
  225. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +0 -1
  226. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +0 -287
  227. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +0 -1
  228. package/dist/plugins/specweave-github/lib/index.d.ts +0 -10
  229. package/dist/plugins/specweave-github/lib/index.d.ts.map +0 -1
  230. package/dist/plugins/specweave-github/lib/index.js +0 -10
  231. package/dist/plugins/specweave-github/lib/index.js.map +0 -1
  232. package/dist/plugins/specweave-github/lib/repo-selector.d.ts +0 -49
  233. package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +0 -1
  234. package/dist/plugins/specweave-github/lib/repo-selector.js +0 -216
  235. package/dist/plugins/specweave-github/lib/repo-selector.js.map +0 -1
  236. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +0 -51
  237. package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +0 -1
  238. package/dist/plugins/specweave-github/lib/subtask-sync.js +0 -147
  239. package/dist/plugins/specweave-github/lib/subtask-sync.js.map +0 -1
  240. package/dist/plugins/specweave-github/lib/task-parser.d.ts +0 -37
  241. package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +0 -1
  242. package/dist/plugins/specweave-github/lib/task-parser.js +0 -211
  243. package/dist/plugins/specweave-github/lib/task-parser.js.map +0 -1
  244. package/dist/plugins/specweave-github/lib/task-sync.d.ts +0 -51
  245. package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +0 -1
  246. package/dist/plugins/specweave-github/lib/task-sync.js +0 -332
  247. package/dist/plugins/specweave-github/lib/task-sync.js.map +0 -1
  248. package/dist/plugins/specweave-github/lib/types.d.ts +0 -80
  249. package/dist/plugins/specweave-github/lib/types.d.ts.map +0 -1
  250. package/dist/plugins/specweave-github/lib/types.js +0 -5
  251. package/dist/plugins/specweave-github/lib/types.js.map +0 -1
  252. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +0 -50
  253. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +0 -1
  254. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +0 -84
  255. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +0 -1
  256. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +0 -33
  257. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +0 -1
  258. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +0 -206
  259. package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +0 -1
  260. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts +0 -105
  261. package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts.map +0 -1
  262. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js +0 -456
  263. package/dist/plugins/specweave-jira/lib/jira-spec-sync.js.map +0 -1
  264. package/dist/plugins/specweave-jira/lib/project-selector.d.ts +0 -42
  265. package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +0 -1
  266. package/dist/plugins/specweave-jira/lib/project-selector.js +0 -216
  267. package/dist/plugins/specweave-jira/lib/project-selector.js.map +0 -1
  268. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +0 -67
  269. package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +0 -1
  270. package/dist/plugins/specweave-jira/lib/reorganization-detector.js +0 -252
  271. package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +0 -1
  272. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +0 -29
  273. package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +0 -1
  274. package/dist/plugins/specweave-jira/lib/setup-wizard.js +0 -219
  275. package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +0 -1
  276. package/dist/src/adapters/adapter-base.d.ts +0 -71
  277. package/dist/src/adapters/adapter-base.d.ts.map +0 -1
  278. package/dist/src/adapters/adapter-base.js +0 -139
  279. package/dist/src/adapters/adapter-base.js.map +0 -1
  280. package/dist/src/adapters/adapter-interface.d.ts +0 -149
  281. package/dist/src/adapters/adapter-interface.d.ts.map +0 -1
  282. package/dist/src/adapters/adapter-interface.js +0 -8
  283. package/dist/src/adapters/adapter-interface.js.map +0 -1
  284. package/dist/src/adapters/adapter-loader.d.ts +0 -91
  285. package/dist/src/adapters/adapter-loader.d.ts.map +0 -1
  286. package/dist/src/adapters/adapter-loader.js +0 -238
  287. package/dist/src/adapters/adapter-loader.js.map +0 -1
  288. package/dist/src/adapters/agents-md-generator.d.ts +0 -48
  289. package/dist/src/adapters/agents-md-generator.d.ts.map +0 -1
  290. package/dist/src/adapters/agents-md-generator.js +0 -193
  291. package/dist/src/adapters/agents-md-generator.js.map +0 -1
  292. package/dist/src/adapters/claude/adapter.d.ts +0 -128
  293. package/dist/src/adapters/claude/adapter.d.ts.map +0 -1
  294. package/dist/src/adapters/claude/adapter.js +0 -415
  295. package/dist/src/adapters/claude/adapter.js.map +0 -1
  296. package/dist/src/adapters/claude-md-generator.d.ts +0 -78
  297. package/dist/src/adapters/claude-md-generator.d.ts.map +0 -1
  298. package/dist/src/adapters/claude-md-generator.js +0 -307
  299. package/dist/src/adapters/claude-md-generator.js.map +0 -1
  300. package/dist/src/adapters/codex/adapter.d.ts +0 -50
  301. package/dist/src/adapters/codex/adapter.d.ts.map +0 -1
  302. package/dist/src/adapters/codex/adapter.js +0 -316
  303. package/dist/src/adapters/codex/adapter.js.map +0 -1
  304. package/dist/src/adapters/cursor/adapter.d.ts +0 -98
  305. package/dist/src/adapters/cursor/adapter.d.ts.map +0 -1
  306. package/dist/src/adapters/cursor/adapter.js +0 -406
  307. package/dist/src/adapters/cursor/adapter.js.map +0 -1
  308. package/dist/src/adapters/doc-generator.d.ts +0 -69
  309. package/dist/src/adapters/doc-generator.d.ts.map +0 -1
  310. package/dist/src/adapters/doc-generator.js +0 -247
  311. package/dist/src/adapters/doc-generator.js.map +0 -1
  312. package/dist/src/adapters/gemini/adapter.d.ts +0 -50
  313. package/dist/src/adapters/gemini/adapter.d.ts.map +0 -1
  314. package/dist/src/adapters/gemini/adapter.js +0 -281
  315. package/dist/src/adapters/gemini/adapter.js.map +0 -1
  316. package/dist/src/adapters/generic/adapter.d.ts +0 -86
  317. package/dist/src/adapters/generic/adapter.d.ts.map +0 -1
  318. package/dist/src/adapters/generic/adapter.js +0 -338
  319. package/dist/src/adapters/generic/adapter.js.map +0 -1
  320. package/dist/src/cli/commands/abandon.d.ts +0 -13
  321. package/dist/src/cli/commands/abandon.d.ts.map +0 -1
  322. package/dist/src/cli/commands/abandon.js +0 -15
  323. package/dist/src/cli/commands/abandon.js.map +0 -1
  324. package/dist/src/cli/commands/import-docs.d.ts +0 -21
  325. package/dist/src/cli/commands/import-docs.d.ts.map +0 -1
  326. package/dist/src/cli/commands/import-docs.js +0 -146
  327. package/dist/src/cli/commands/import-docs.js.map +0 -1
  328. package/dist/src/cli/commands/init-multiproject.d.ts +0 -11
  329. package/dist/src/cli/commands/init-multiproject.d.ts.map +0 -1
  330. package/dist/src/cli/commands/init-multiproject.js +0 -202
  331. package/dist/src/cli/commands/init-multiproject.js.map +0 -1
  332. package/dist/src/cli/commands/init.d.ts +0 -9
  333. package/dist/src/cli/commands/init.d.ts.map +0 -1
  334. package/dist/src/cli/commands/init.js +0 -1444
  335. package/dist/src/cli/commands/init.js.map +0 -1
  336. package/dist/src/cli/commands/install.d.ts +0 -9
  337. package/dist/src/cli/commands/install.d.ts.map +0 -1
  338. package/dist/src/cli/commands/install.js +0 -127
  339. package/dist/src/cli/commands/install.js.map +0 -1
  340. package/dist/src/cli/commands/list.d.ts +0 -8
  341. package/dist/src/cli/commands/list.d.ts.map +0 -1
  342. package/dist/src/cli/commands/list.js +0 -119
  343. package/dist/src/cli/commands/list.js.map +0 -1
  344. package/dist/src/cli/commands/migrate-to-multiproject.d.ts +0 -37
  345. package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +0 -1
  346. package/dist/src/cli/commands/migrate-to-multiproject.js +0 -189
  347. package/dist/src/cli/commands/migrate-to-multiproject.js.map +0 -1
  348. package/dist/src/cli/commands/migrate-to-profiles.d.ts +0 -25
  349. package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +0 -1
  350. package/dist/src/cli/commands/migrate-to-profiles.js +0 -350
  351. package/dist/src/cli/commands/migrate-to-profiles.js.map +0 -1
  352. package/dist/src/cli/commands/pause.d.ts +0 -13
  353. package/dist/src/cli/commands/pause.d.ts.map +0 -1
  354. package/dist/src/cli/commands/pause.js +0 -15
  355. package/dist/src/cli/commands/pause.js.map +0 -1
  356. package/dist/src/cli/commands/qa.d.ts +0 -54
  357. package/dist/src/cli/commands/qa.d.ts.map +0 -1
  358. package/dist/src/cli/commands/qa.js +0 -98
  359. package/dist/src/cli/commands/qa.js.map +0 -1
  360. package/dist/src/cli/commands/resume.d.ts +0 -12
  361. package/dist/src/cli/commands/resume.d.ts.map +0 -1
  362. package/dist/src/cli/commands/resume.js +0 -14
  363. package/dist/src/cli/commands/resume.js.map +0 -1
  364. package/dist/src/cli/commands/status.d.ts +0 -12
  365. package/dist/src/cli/commands/status.d.ts.map +0 -1
  366. package/dist/src/cli/commands/status.js +0 -23
  367. package/dist/src/cli/commands/status.js.map +0 -1
  368. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  369. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  370. package/dist/src/cli/commands/switch-project.js +0 -91
  371. package/dist/src/cli/commands/switch-project.js.map +0 -1
  372. package/dist/src/cli/commands/validate-jira.d.ts +0 -35
  373. package/dist/src/cli/commands/validate-jira.d.ts.map +0 -1
  374. package/dist/src/cli/commands/validate-jira.js +0 -112
  375. package/dist/src/cli/commands/validate-jira.js.map +0 -1
  376. package/dist/src/cli/commands/validate-plugins.d.ts +0 -41
  377. package/dist/src/cli/commands/validate-plugins.d.ts.map +0 -1
  378. package/dist/src/cli/commands/validate-plugins.js +0 -171
  379. package/dist/src/cli/commands/validate-plugins.js.map +0 -1
  380. package/dist/src/cli/helpers/issue-tracker/ado.d.ts +0 -57
  381. package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +0 -1
  382. package/dist/src/cli/helpers/issue-tracker/ado.js +0 -243
  383. package/dist/src/cli/helpers/issue-tracker/ado.js.map +0 -1
  384. package/dist/src/cli/helpers/issue-tracker/github.d.ts +0 -65
  385. package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +0 -1
  386. package/dist/src/cli/helpers/issue-tracker/github.js +0 -426
  387. package/dist/src/cli/helpers/issue-tracker/github.js.map +0 -1
  388. package/dist/src/cli/helpers/issue-tracker/index.d.ts +0 -22
  389. package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +0 -1
  390. package/dist/src/cli/helpers/issue-tracker/index.js +0 -314
  391. package/dist/src/cli/helpers/issue-tracker/index.js.map +0 -1
  392. package/dist/src/cli/helpers/issue-tracker/jira.d.ts +0 -61
  393. package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +0 -1
  394. package/dist/src/cli/helpers/issue-tracker/jira.js +0 -404
  395. package/dist/src/cli/helpers/issue-tracker/jira.js.map +0 -1
  396. package/dist/src/cli/helpers/issue-tracker/types.d.ts +0 -108
  397. package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +0 -1
  398. package/dist/src/cli/helpers/issue-tracker/types.js +0 -16
  399. package/dist/src/cli/helpers/issue-tracker/types.js.map +0 -1
  400. package/dist/src/cli/helpers/issue-tracker/utils.d.ts +0 -112
  401. package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +0 -1
  402. package/dist/src/cli/helpers/issue-tracker/utils.js +0 -247
  403. package/dist/src/cli/helpers/issue-tracker/utils.js.map +0 -1
  404. package/dist/src/core/agent-model-manager.d.ts +0 -52
  405. package/dist/src/core/agent-model-manager.d.ts.map +0 -1
  406. package/dist/src/core/agent-model-manager.js +0 -120
  407. package/dist/src/core/agent-model-manager.js.map +0 -1
  408. package/dist/src/core/brownfield/analyzer.d.ts +0 -86
  409. package/dist/src/core/brownfield/analyzer.d.ts.map +0 -1
  410. package/dist/src/core/brownfield/analyzer.js +0 -365
  411. package/dist/src/core/brownfield/analyzer.js.map +0 -1
  412. package/dist/src/core/brownfield/importer.d.ts +0 -76
  413. package/dist/src/core/brownfield/importer.d.ts.map +0 -1
  414. package/dist/src/core/brownfield/importer.js +0 -287
  415. package/dist/src/core/brownfield/importer.js.map +0 -1
  416. package/dist/src/core/config-manager.d.ts +0 -47
  417. package/dist/src/core/config-manager.d.ts.map +0 -1
  418. package/dist/src/core/config-manager.js +0 -136
  419. package/dist/src/core/config-manager.js.map +0 -1
  420. package/dist/src/core/cost-tracker.d.ts +0 -108
  421. package/dist/src/core/cost-tracker.d.ts.map +0 -1
  422. package/dist/src/core/cost-tracker.js +0 -281
  423. package/dist/src/core/cost-tracker.js.map +0 -1
  424. package/dist/src/core/credentials-manager.d.ts +0 -107
  425. package/dist/src/core/credentials-manager.d.ts.map +0 -1
  426. package/dist/src/core/credentials-manager.js +0 -457
  427. package/dist/src/core/credentials-manager.js.map +0 -1
  428. package/dist/src/core/i18n/language-detector.d.ts +0 -29
  429. package/dist/src/core/i18n/language-detector.d.ts.map +0 -1
  430. package/dist/src/core/i18n/language-detector.js +0 -143
  431. package/dist/src/core/i18n/language-detector.js.map +0 -1
  432. package/dist/src/core/i18n/language-manager.d.ts +0 -101
  433. package/dist/src/core/i18n/language-manager.d.ts.map +0 -1
  434. package/dist/src/core/i18n/language-manager.js +0 -232
  435. package/dist/src/core/i18n/language-manager.js.map +0 -1
  436. package/dist/src/core/i18n/language-registry.d.ts +0 -44
  437. package/dist/src/core/i18n/language-registry.d.ts.map +0 -1
  438. package/dist/src/core/i18n/language-registry.js +0 -234
  439. package/dist/src/core/i18n/language-registry.js.map +0 -1
  440. package/dist/src/core/i18n/locale-manager.d.ts +0 -62
  441. package/dist/src/core/i18n/locale-manager.d.ts.map +0 -1
  442. package/dist/src/core/i18n/locale-manager.js +0 -137
  443. package/dist/src/core/i18n/locale-manager.js.map +0 -1
  444. package/dist/src/core/i18n/system-prompt-injector.d.ts +0 -33
  445. package/dist/src/core/i18n/system-prompt-injector.d.ts.map +0 -1
  446. package/dist/src/core/i18n/system-prompt-injector.js +0 -131
  447. package/dist/src/core/i18n/system-prompt-injector.js.map +0 -1
  448. package/dist/src/core/i18n/types.d.ts +0 -151
  449. package/dist/src/core/i18n/types.d.ts.map +0 -1
  450. package/dist/src/core/i18n/types.js +0 -11
  451. package/dist/src/core/i18n/types.js.map +0 -1
  452. package/dist/src/core/increment/limits.d.ts +0 -68
  453. package/dist/src/core/increment/limits.d.ts.map +0 -1
  454. package/dist/src/core/increment/limits.js +0 -224
  455. package/dist/src/core/increment/limits.js.map +0 -1
  456. package/dist/src/core/increment/metadata-manager.d.ts +0 -114
  457. package/dist/src/core/increment/metadata-manager.d.ts.map +0 -1
  458. package/dist/src/core/increment/metadata-manager.js +0 -320
  459. package/dist/src/core/increment/metadata-manager.js.map +0 -1
  460. package/dist/src/core/increment/status-commands.d.ts +0 -43
  461. package/dist/src/core/increment/status-commands.d.ts.map +0 -1
  462. package/dist/src/core/increment/status-commands.js +0 -277
  463. package/dist/src/core/increment/status-commands.js.map +0 -1
  464. package/dist/src/core/increment-status.d.ts +0 -72
  465. package/dist/src/core/increment-status.d.ts.map +0 -1
  466. package/dist/src/core/increment-status.js +0 -227
  467. package/dist/src/core/increment-status.js.map +0 -1
  468. package/dist/src/core/model-selector.d.ts +0 -57
  469. package/dist/src/core/model-selector.d.ts.map +0 -1
  470. package/dist/src/core/model-selector.js +0 -115
  471. package/dist/src/core/model-selector.js.map +0 -1
  472. package/dist/src/core/phase-detector.d.ts +0 -62
  473. package/dist/src/core/phase-detector.d.ts.map +0 -1
  474. package/dist/src/core/phase-detector.js +0 -229
  475. package/dist/src/core/phase-detector.js.map +0 -1
  476. package/dist/src/core/plugin-loader.d.ts +0 -131
  477. package/dist/src/core/plugin-loader.d.ts.map +0 -1
  478. package/dist/src/core/plugin-loader.js +0 -421
  479. package/dist/src/core/plugin-loader.js.map +0 -1
  480. package/dist/src/core/project-manager.d.ts +0 -127
  481. package/dist/src/core/project-manager.d.ts.map +0 -1
  482. package/dist/src/core/project-manager.js +0 -524
  483. package/dist/src/core/project-manager.js.map +0 -1
  484. package/dist/src/core/project-structure-detector.d.ts +0 -92
  485. package/dist/src/core/project-structure-detector.d.ts.map +0 -1
  486. package/dist/src/core/project-structure-detector.js +0 -289
  487. package/dist/src/core/project-structure-detector.js.map +0 -1
  488. package/dist/src/core/qa/qa-runner.d.ts +0 -16
  489. package/dist/src/core/qa/qa-runner.d.ts.map +0 -1
  490. package/dist/src/core/qa/qa-runner.js +0 -404
  491. package/dist/src/core/qa/qa-runner.js.map +0 -1
  492. package/dist/src/core/qa/quality-gate-decider.d.ts +0 -53
  493. package/dist/src/core/qa/quality-gate-decider.d.ts.map +0 -1
  494. package/dist/src/core/qa/quality-gate-decider.js +0 -268
  495. package/dist/src/core/qa/quality-gate-decider.js.map +0 -1
  496. package/dist/src/core/qa/risk-calculator.d.ts +0 -126
  497. package/dist/src/core/qa/risk-calculator.d.ts.map +0 -1
  498. package/dist/src/core/qa/risk-calculator.js +0 -247
  499. package/dist/src/core/qa/risk-calculator.js.map +0 -1
  500. package/dist/src/core/qa/types.d.ts +0 -315
  501. package/dist/src/core/qa/types.d.ts.map +0 -1
  502. package/dist/src/core/qa/types.js +0 -8
  503. package/dist/src/core/qa/types.js.map +0 -1
  504. package/dist/src/core/rfc-generator-v2.d.ts +0 -149
  505. package/dist/src/core/rfc-generator-v2.d.ts.map +0 -1
  506. package/dist/src/core/rfc-generator-v2.js +0 -399
  507. package/dist/src/core/rfc-generator-v2.js.map +0 -1
  508. package/dist/src/core/specs/spec-metadata-manager.d.ts +0 -70
  509. package/dist/src/core/specs/spec-metadata-manager.d.ts.map +0 -1
  510. package/dist/src/core/specs/spec-metadata-manager.js +0 -371
  511. package/dist/src/core/specs/spec-metadata-manager.js.map +0 -1
  512. package/dist/src/core/specs/spec-parser.d.ts +0 -66
  513. package/dist/src/core/specs/spec-parser.d.ts.map +0 -1
  514. package/dist/src/core/specs/spec-parser.js +0 -276
  515. package/dist/src/core/specs/spec-parser.js.map +0 -1
  516. package/dist/src/core/sync/bidirectional-engine.d.ts +0 -110
  517. package/dist/src/core/sync/bidirectional-engine.d.ts.map +0 -1
  518. package/dist/src/core/sync/bidirectional-engine.js +0 -356
  519. package/dist/src/core/sync/bidirectional-engine.js.map +0 -1
  520. package/dist/src/core/sync/folder-mapper.d.ts +0 -71
  521. package/dist/src/core/sync/folder-mapper.d.ts.map +0 -1
  522. package/dist/src/core/sync/folder-mapper.js +0 -168
  523. package/dist/src/core/sync/folder-mapper.js.map +0 -1
  524. package/dist/src/core/sync/profile-manager.d.ts +0 -72
  525. package/dist/src/core/sync/profile-manager.d.ts.map +0 -1
  526. package/dist/src/core/sync/profile-manager.js +0 -338
  527. package/dist/src/core/sync/profile-manager.js.map +0 -1
  528. package/dist/src/core/sync/profile-selector.d.ts +0 -52
  529. package/dist/src/core/sync/profile-selector.d.ts.map +0 -1
  530. package/dist/src/core/sync/profile-selector.js +0 -179
  531. package/dist/src/core/sync/profile-selector.js.map +0 -1
  532. package/dist/src/core/sync/profile-validator.d.ts +0 -52
  533. package/dist/src/core/sync/profile-validator.d.ts.map +0 -1
  534. package/dist/src/core/sync/profile-validator.js +0 -225
  535. package/dist/src/core/sync/profile-validator.js.map +0 -1
  536. package/dist/src/core/sync/project-context.d.ts +0 -81
  537. package/dist/src/core/sync/project-context.d.ts.map +0 -1
  538. package/dist/src/core/sync/project-context.js +0 -354
  539. package/dist/src/core/sync/project-context.js.map +0 -1
  540. package/dist/src/core/sync/rate-limiter.d.ts +0 -116
  541. package/dist/src/core/sync/rate-limiter.d.ts.map +0 -1
  542. package/dist/src/core/sync/rate-limiter.js +0 -308
  543. package/dist/src/core/sync/rate-limiter.js.map +0 -1
  544. package/dist/src/core/sync/time-range-selector.d.ts +0 -48
  545. package/dist/src/core/sync/time-range-selector.d.ts.map +0 -1
  546. package/dist/src/core/sync/time-range-selector.js +0 -224
  547. package/dist/src/core/sync/time-range-selector.js.map +0 -1
  548. package/dist/src/core/types/config.d.ts +0 -90
  549. package/dist/src/core/types/config.d.ts.map +0 -1
  550. package/dist/src/core/types/config.js +0 -44
  551. package/dist/src/core/types/config.js.map +0 -1
  552. package/dist/src/core/types/increment-metadata.d.ts +0 -120
  553. package/dist/src/core/types/increment-metadata.d.ts.map +0 -1
  554. package/dist/src/core/types/increment-metadata.js +0 -138
  555. package/dist/src/core/types/increment-metadata.js.map +0 -1
  556. package/dist/src/core/types/plugin.d.ts +0 -283
  557. package/dist/src/core/types/plugin.d.ts.map +0 -1
  558. package/dist/src/core/types/plugin.js +0 -49
  559. package/dist/src/core/types/plugin.js.map +0 -1
  560. package/dist/src/core/types/spec-metadata.d.ts +0 -229
  561. package/dist/src/core/types/spec-metadata.d.ts.map +0 -1
  562. package/dist/src/core/types/spec-metadata.js +0 -14
  563. package/dist/src/core/types/spec-metadata.js.map +0 -1
  564. package/dist/src/core/types/sync-profile.d.ts +0 -403
  565. package/dist/src/core/types/sync-profile.d.ts.map +0 -1
  566. package/dist/src/core/types/sync-profile.js +0 -55
  567. package/dist/src/core/types/sync-profile.js.map +0 -1
  568. package/dist/src/hooks/lib/git-diff-analyzer.d.ts +0 -89
  569. package/dist/src/hooks/lib/git-diff-analyzer.d.ts.map +0 -1
  570. package/dist/src/hooks/lib/git-diff-analyzer.js +0 -226
  571. package/dist/src/hooks/lib/git-diff-analyzer.js.map +0 -1
  572. package/dist/src/hooks/lib/invoke-translator-skill.d.ts +0 -60
  573. package/dist/src/hooks/lib/invoke-translator-skill.d.ts.map +0 -1
  574. package/dist/src/hooks/lib/invoke-translator-skill.js +0 -201
  575. package/dist/src/hooks/lib/invoke-translator-skill.js.map +0 -1
  576. package/dist/src/hooks/lib/prepare-reflection-context.d.ts +0 -42
  577. package/dist/src/hooks/lib/prepare-reflection-context.d.ts.map +0 -1
  578. package/dist/src/hooks/lib/prepare-reflection-context.js +0 -123
  579. package/dist/src/hooks/lib/prepare-reflection-context.js.map +0 -1
  580. package/dist/src/hooks/lib/reflection-config-loader.d.ts +0 -45
  581. package/dist/src/hooks/lib/reflection-config-loader.d.ts.map +0 -1
  582. package/dist/src/hooks/lib/reflection-config-loader.js +0 -132
  583. package/dist/src/hooks/lib/reflection-config-loader.js.map +0 -1
  584. package/dist/src/hooks/lib/reflection-parser.d.ts +0 -33
  585. package/dist/src/hooks/lib/reflection-parser.d.ts.map +0 -1
  586. package/dist/src/hooks/lib/reflection-parser.js +0 -419
  587. package/dist/src/hooks/lib/reflection-parser.js.map +0 -1
  588. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts +0 -56
  589. package/dist/src/hooks/lib/reflection-prompt-builder.d.ts.map +0 -1
  590. package/dist/src/hooks/lib/reflection-prompt-builder.js +0 -239
  591. package/dist/src/hooks/lib/reflection-prompt-builder.js.map +0 -1
  592. package/dist/src/hooks/lib/reflection-storage.d.ts +0 -64
  593. package/dist/src/hooks/lib/reflection-storage.d.ts.map +0 -1
  594. package/dist/src/hooks/lib/reflection-storage.js +0 -305
  595. package/dist/src/hooks/lib/reflection-storage.js.map +0 -1
  596. package/dist/src/hooks/lib/run-self-reflection.d.ts +0 -43
  597. package/dist/src/hooks/lib/run-self-reflection.d.ts.map +0 -1
  598. package/dist/src/hooks/lib/run-self-reflection.js +0 -203
  599. package/dist/src/hooks/lib/run-self-reflection.js.map +0 -1
  600. package/dist/src/hooks/lib/sync-living-docs.d.ts +0 -27
  601. package/dist/src/hooks/lib/sync-living-docs.d.ts.map +0 -1
  602. package/dist/src/hooks/lib/sync-living-docs.js +0 -116
  603. package/dist/src/hooks/lib/sync-living-docs.js.map +0 -1
  604. package/dist/src/hooks/lib/translate-file.d.ts +0 -59
  605. package/dist/src/hooks/lib/translate-file.d.ts.map +0 -1
  606. package/dist/src/hooks/lib/translate-file.js +0 -350
  607. package/dist/src/hooks/lib/translate-file.js.map +0 -1
  608. package/dist/src/hooks/lib/translate-living-docs.d.ts +0 -13
  609. package/dist/src/hooks/lib/translate-living-docs.d.ts.map +0 -1
  610. package/dist/src/hooks/lib/translate-living-docs.js +0 -175
  611. package/dist/src/hooks/lib/translate-living-docs.js.map +0 -1
  612. package/dist/src/hooks/lib/types/reflection-types.d.ts +0 -164
  613. package/dist/src/hooks/lib/types/reflection-types.d.ts.map +0 -1
  614. package/dist/src/hooks/lib/types/reflection-types.js +0 -73
  615. package/dist/src/hooks/lib/types/reflection-types.js.map +0 -1
  616. package/dist/src/hooks/lib/update-tasks-md.d.ts +0 -29
  617. package/dist/src/hooks/lib/update-tasks-md.d.ts.map +0 -1
  618. package/dist/src/hooks/lib/update-tasks-md.js +0 -203
  619. package/dist/src/hooks/lib/update-tasks-md.js.map +0 -1
  620. package/dist/src/integrations/ado/ado-client.d.ts +0 -127
  621. package/dist/src/integrations/ado/ado-client.d.ts.map +0 -1
  622. package/dist/src/integrations/ado/ado-client.js +0 -416
  623. package/dist/src/integrations/ado/ado-client.js.map +0 -1
  624. package/dist/src/integrations/jira/jira-client.d.ts +0 -139
  625. package/dist/src/integrations/jira/jira-client.d.ts.map +0 -1
  626. package/dist/src/integrations/jira/jira-client.js +0 -386
  627. package/dist/src/integrations/jira/jira-client.js.map +0 -1
  628. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +0 -75
  629. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +0 -1
  630. package/dist/src/integrations/jira/jira-incremental-mapper.js +0 -474
  631. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +0 -1
  632. package/dist/src/integrations/jira/jira-mapper.d.ts +0 -105
  633. package/dist/src/integrations/jira/jira-mapper.d.ts.map +0 -1
  634. package/dist/src/integrations/jira/jira-mapper.js +0 -494
  635. package/dist/src/integrations/jira/jira-mapper.js.map +0 -1
  636. package/dist/src/metrics/calculators/change-failure-rate.d.ts +0 -22
  637. package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +0 -1
  638. package/dist/src/metrics/calculators/change-failure-rate.js +0 -70
  639. package/dist/src/metrics/calculators/change-failure-rate.js.map +0 -1
  640. package/dist/src/metrics/calculators/deployment-frequency.d.ts +0 -20
  641. package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +0 -1
  642. package/dist/src/metrics/calculators/deployment-frequency.js +0 -61
  643. package/dist/src/metrics/calculators/deployment-frequency.js.map +0 -1
  644. package/dist/src/metrics/calculators/lead-time.d.ts +0 -22
  645. package/dist/src/metrics/calculators/lead-time.d.ts.map +0 -1
  646. package/dist/src/metrics/calculators/lead-time.js +0 -82
  647. package/dist/src/metrics/calculators/lead-time.js.map +0 -1
  648. package/dist/src/metrics/calculators/mttr.d.ts +0 -21
  649. package/dist/src/metrics/calculators/mttr.d.ts.map +0 -1
  650. package/dist/src/metrics/calculators/mttr.js +0 -60
  651. package/dist/src/metrics/calculators/mttr.js.map +0 -1
  652. package/dist/src/metrics/dora-calculator.d.ts +0 -28
  653. package/dist/src/metrics/dora-calculator.d.ts.map +0 -1
  654. package/dist/src/metrics/dora-calculator.js +0 -117
  655. package/dist/src/metrics/dora-calculator.js.map +0 -1
  656. package/dist/src/metrics/github-client.d.ts +0 -51
  657. package/dist/src/metrics/github-client.d.ts.map +0 -1
  658. package/dist/src/metrics/github-client.js +0 -133
  659. package/dist/src/metrics/github-client.js.map +0 -1
  660. package/dist/src/metrics/report-generator.d.ts +0 -17
  661. package/dist/src/metrics/report-generator.d.ts.map +0 -1
  662. package/dist/src/metrics/report-generator.js +0 -403
  663. package/dist/src/metrics/report-generator.js.map +0 -1
  664. package/dist/src/metrics/types.d.ts +0 -112
  665. package/dist/src/metrics/types.d.ts.map +0 -1
  666. package/dist/src/metrics/types.js +0 -10
  667. package/dist/src/metrics/types.js.map +0 -1
  668. package/dist/src/metrics/utils/percentile.d.ts +0 -25
  669. package/dist/src/metrics/utils/percentile.d.ts.map +0 -1
  670. package/dist/src/metrics/utils/percentile.js +0 -46
  671. package/dist/src/metrics/utils/percentile.js.map +0 -1
  672. package/dist/src/metrics/utils/tier-classifier.d.ts +0 -61
  673. package/dist/src/metrics/utils/tier-classifier.d.ts.map +0 -1
  674. package/dist/src/metrics/utils/tier-classifier.js +0 -100
  675. package/dist/src/metrics/utils/tier-classifier.js.map +0 -1
  676. package/dist/src/testing/test-generator.d.ts +0 -117
  677. package/dist/src/testing/test-generator.d.ts.map +0 -1
  678. package/dist/src/testing/test-generator.js +0 -370
  679. package/dist/src/testing/test-generator.js.map +0 -1
  680. package/dist/src/types/cost-tracking.d.ts +0 -43
  681. package/dist/src/types/cost-tracking.d.ts.map +0 -1
  682. package/dist/src/types/cost-tracking.js +0 -8
  683. package/dist/src/types/cost-tracking.js.map +0 -1
  684. package/dist/src/types/model-selection.d.ts +0 -53
  685. package/dist/src/types/model-selection.d.ts.map +0 -1
  686. package/dist/src/types/model-selection.js +0 -12
  687. package/dist/src/types/model-selection.js.map +0 -1
  688. package/dist/src/utils/agents-md-compiler.d.ts +0 -68
  689. package/dist/src/utils/agents-md-compiler.d.ts.map +0 -1
  690. package/dist/src/utils/agents-md-compiler.js +0 -420
  691. package/dist/src/utils/agents-md-compiler.js.map +0 -1
  692. package/dist/src/utils/auth-helpers.d.ts +0 -58
  693. package/dist/src/utils/auth-helpers.d.ts.map +0 -1
  694. package/dist/src/utils/auth-helpers.js +0 -108
  695. package/dist/src/utils/auth-helpers.js.map +0 -1
  696. package/dist/src/utils/auto-install.d.ts +0 -47
  697. package/dist/src/utils/auto-install.d.ts.map +0 -1
  698. package/dist/src/utils/auto-install.js +0 -211
  699. package/dist/src/utils/auto-install.js.map +0 -1
  700. package/dist/src/utils/claude-cli-detector.d.ts +0 -75
  701. package/dist/src/utils/claude-cli-detector.d.ts.map +0 -1
  702. package/dist/src/utils/claude-cli-detector.js +0 -285
  703. package/dist/src/utils/claude-cli-detector.js.map +0 -1
  704. package/dist/src/utils/cost-reporter.d.ts +0 -58
  705. package/dist/src/utils/cost-reporter.d.ts.map +0 -1
  706. package/dist/src/utils/cost-reporter.js +0 -224
  707. package/dist/src/utils/cost-reporter.js.map +0 -1
  708. package/dist/src/utils/docs-preview/config-generator.d.ts +0 -46
  709. package/dist/src/utils/docs-preview/config-generator.d.ts.map +0 -1
  710. package/dist/src/utils/docs-preview/config-generator.js +0 -377
  711. package/dist/src/utils/docs-preview/config-generator.js.map +0 -1
  712. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +0 -38
  713. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +0 -1
  714. package/dist/src/utils/docs-preview/docusaurus-setup.js +0 -177
  715. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +0 -1
  716. package/dist/src/utils/docs-preview/index.d.ts +0 -7
  717. package/dist/src/utils/docs-preview/index.d.ts.map +0 -1
  718. package/dist/src/utils/docs-preview/index.js +0 -7
  719. package/dist/src/utils/docs-preview/index.js.map +0 -1
  720. package/dist/src/utils/docs-preview/package-installer.d.ts +0 -42
  721. package/dist/src/utils/docs-preview/package-installer.d.ts.map +0 -1
  722. package/dist/src/utils/docs-preview/package-installer.js +0 -182
  723. package/dist/src/utils/docs-preview/package-installer.js.map +0 -1
  724. package/dist/src/utils/docs-preview/server-manager.d.ts +0 -30
  725. package/dist/src/utils/docs-preview/server-manager.d.ts.map +0 -1
  726. package/dist/src/utils/docs-preview/server-manager.js +0 -212
  727. package/dist/src/utils/docs-preview/server-manager.js.map +0 -1
  728. package/dist/src/utils/docs-preview/sidebar-builder.d.ts +0 -32
  729. package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +0 -1
  730. package/dist/src/utils/docs-preview/sidebar-builder.js +0 -202
  731. package/dist/src/utils/docs-preview/sidebar-builder.js.map +0 -1
  732. package/dist/src/utils/docs-preview/types.d.ts +0 -57
  733. package/dist/src/utils/docs-preview/types.d.ts.map +0 -1
  734. package/dist/src/utils/docs-preview/types.js +0 -2
  735. package/dist/src/utils/docs-preview/types.js.map +0 -1
  736. package/dist/src/utils/env-file.d.ts +0 -88
  737. package/dist/src/utils/env-file.d.ts.map +0 -1
  738. package/dist/src/utils/env-file.js +0 -180
  739. package/dist/src/utils/env-file.js.map +0 -1
  740. package/dist/src/utils/env-multi-project-parser.d.ts +0 -220
  741. package/dist/src/utils/env-multi-project-parser.d.ts.map +0 -1
  742. package/dist/src/utils/env-multi-project-parser.js +0 -403
  743. package/dist/src/utils/env-multi-project-parser.js.map +0 -1
  744. package/dist/src/utils/esm-helpers.d.ts +0 -50
  745. package/dist/src/utils/esm-helpers.d.ts.map +0 -1
  746. package/dist/src/utils/esm-helpers.js +0 -57
  747. package/dist/src/utils/esm-helpers.js.map +0 -1
  748. package/dist/src/utils/execFileNoThrow.d.ts +0 -99
  749. package/dist/src/utils/execFileNoThrow.d.ts.map +0 -1
  750. package/dist/src/utils/execFileNoThrow.js +0 -137
  751. package/dist/src/utils/execFileNoThrow.js.map +0 -1
  752. package/dist/src/utils/external-resource-validator.d.ts +0 -102
  753. package/dist/src/utils/external-resource-validator.d.ts.map +0 -1
  754. package/dist/src/utils/external-resource-validator.js +0 -442
  755. package/dist/src/utils/external-resource-validator.js.map +0 -1
  756. package/dist/src/utils/generate-skills-index.d.ts +0 -24
  757. package/dist/src/utils/generate-skills-index.d.ts.map +0 -1
  758. package/dist/src/utils/generate-skills-index.js +0 -410
  759. package/dist/src/utils/generate-skills-index.js.map +0 -1
  760. package/dist/src/utils/model-selection.d.ts +0 -75
  761. package/dist/src/utils/model-selection.d.ts.map +0 -1
  762. package/dist/src/utils/model-selection.js +0 -204
  763. package/dist/src/utils/model-selection.js.map +0 -1
  764. package/dist/src/utils/plugin-validator.d.ts +0 -161
  765. package/dist/src/utils/plugin-validator.d.ts.map +0 -1
  766. package/dist/src/utils/plugin-validator.js +0 -558
  767. package/dist/src/utils/plugin-validator.js.map +0 -1
  768. package/dist/src/utils/pricing-constants.d.ts +0 -70
  769. package/dist/src/utils/pricing-constants.d.ts.map +0 -1
  770. package/dist/src/utils/pricing-constants.js +0 -71
  771. package/dist/src/utils/pricing-constants.js.map +0 -1
  772. package/dist/src/utils/project-detection.d.ts +0 -141
  773. package/dist/src/utils/project-detection.d.ts.map +0 -1
  774. package/dist/src/utils/project-detection.js +0 -321
  775. package/dist/src/utils/project-detection.js.map +0 -1
  776. package/dist/src/utils/string-utils.d.ts +0 -40
  777. package/dist/src/utils/string-utils.d.ts.map +0 -1
  778. package/dist/src/utils/string-utils.js +0 -58
  779. package/dist/src/utils/string-utils.js.map +0 -1
  780. package/dist/src/utils/translation.d.ts +0 -187
  781. package/dist/src/utils/translation.d.ts.map +0 -1
  782. package/dist/src/utils/translation.js +0 -414
  783. package/dist/src/utils/translation.js.map +0 -1
@@ -1,279 +1,224 @@
1
- /**
2
- * File Translation CLI Utility
3
- *
4
- * Translates a single file from detected source language to target language
5
- * using the translation utilities and LLM invocation.
6
- *
7
- * This script is called from:
8
- * - Post-increment-planning hook (auto-translate spec.md, plan.md, tasks.md)
9
- * - Post-task-completion hook (auto-translate living docs)
10
- * - Manual /specweave:translate command
11
- *
12
- * Usage:
13
- * node translate-file.js <file-path> [--target-lang en] [--preview]
14
- *
15
- * @see src/utils/translation.ts
16
- * @see .specweave/increments/0006-llm-native-i18n/reports/DESIGN-POST-GENERATION-TRANSLATION.md
17
- */
18
- import fs from 'fs-extra';
19
- import { detectLanguage, prepareTranslation, postProcessTranslation, validateTranslation, getLanguageName, formatCost, } from '../../../../src/utils/translation.js';
20
- /**
21
- * Main translation function
22
- *
23
- * @param options - CLI options
24
- * @returns Translation result
25
- */
26
- export async function translateFile(options) {
27
- const { filePath, targetLang, preview, verbose } = options;
28
- // 1. Validate file exists
29
- if (!await fs.pathExists(filePath)) {
30
- throw new Error(`File not found: ${filePath}`);
31
- }
1
+ import fs from "fs-extra";
2
+ import {
3
+ detectLanguage,
4
+ prepareTranslation,
5
+ postProcessTranslation,
6
+ validateTranslation,
7
+ getLanguageName,
8
+ formatCost
9
+ } from "../../../../src/utils/translation.js";
10
+ async function translateFile(options) {
11
+ const { filePath, targetLang, preview, verbose } = options;
12
+ if (!await fs.pathExists(filePath)) {
13
+ throw new Error(`File not found: ${filePath}`);
14
+ }
15
+ if (verbose) {
16
+ console.log(`\u{1F4C4} Reading file: ${filePath}`);
17
+ }
18
+ const originalContent = await fs.readFile(filePath, "utf-8");
19
+ const detectionResult = detectLanguage(originalContent);
20
+ const sourceLanguage = detectionResult.language;
21
+ if (verbose) {
22
+ console.log(`\u{1F50D} Detected language: ${getLanguageName(sourceLanguage)} (confidence: ${(detectionResult.confidence * 100).toFixed(0)}%)`);
23
+ }
24
+ if (sourceLanguage === targetLang) {
32
25
  if (verbose) {
33
- console.log(`📄 Reading file: ${filePath}`);
26
+ console.log(`\u2705 File already in ${getLanguageName(targetLang)}, skipping translation`);
34
27
  }
35
- // 2. Read original content
36
- const originalContent = await fs.readFile(filePath, 'utf-8');
37
- // 3. Detect source language
38
- const detectionResult = detectLanguage(originalContent);
39
- const sourceLanguage = detectionResult.language;
28
+ return {
29
+ success: true,
30
+ filePath,
31
+ sourceLanguage,
32
+ targetLanguage: targetLang,
33
+ warnings: [`Already in ${getLanguageName(targetLang)}`],
34
+ cost: 0,
35
+ tokensUsed: 0
36
+ };
37
+ }
38
+ if (sourceLanguage === "unknown") {
40
39
  if (verbose) {
41
- console.log(`🔍 Detected language: ${getLanguageName(sourceLanguage)} (confidence: ${(detectionResult.confidence * 100).toFixed(0)}%)`);
42
- }
43
- // 4. Check if already in target language
44
- if (sourceLanguage === targetLang) {
45
- if (verbose) {
46
- console.log(`✅ File already in ${getLanguageName(targetLang)}, skipping translation`);
47
- }
48
- return {
49
- success: true,
50
- filePath,
51
- sourceLanguage,
52
- targetLanguage: targetLang,
53
- warnings: [`Already in ${getLanguageName(targetLang)}`],
54
- cost: 0,
55
- tokensUsed: 0,
56
- };
57
- }
58
- // 5. Check if source language is unknown
59
- if (sourceLanguage === 'unknown') {
60
- if (verbose) {
61
- console.warn(`⚠️ Could not detect language, assuming English`);
62
- }
63
- // Assume English if detection fails
64
- return {
65
- success: false,
66
- filePath,
67
- sourceLanguage: 'unknown',
68
- targetLanguage: targetLang,
69
- warnings: ['Language detection failed - file may already be in English or mixed language'],
70
- cost: 0,
71
- tokensUsed: 0,
72
- };
40
+ console.warn(`\u26A0\uFE0F Could not detect language, assuming English`);
73
41
  }
74
- // 6. Prepare translation
42
+ return {
43
+ success: false,
44
+ filePath,
45
+ sourceLanguage: "unknown",
46
+ targetLanguage: targetLang,
47
+ warnings: ["Language detection failed - file may already be in English or mixed language"],
48
+ cost: 0,
49
+ tokensUsed: 0
50
+ };
51
+ }
52
+ if (verbose) {
53
+ console.log(`\u{1F310} Translating from ${getLanguageName(sourceLanguage)} to ${getLanguageName(targetLang)}...`);
54
+ console.log(`\u{1F4B0} Estimated cost: ${formatCost(3e-3)} (using Haiku)`);
55
+ }
56
+ const prepared = prepareTranslation(originalContent, sourceLanguage, targetLang);
57
+ const translatedContent = await invokeLLMTranslation(prepared.prompt, verbose);
58
+ const finalContent = postProcessTranslation(translatedContent, prepared.preserved);
59
+ const warnings = validateTranslation(originalContent, finalContent);
60
+ if (warnings.length > 0 && verbose) {
61
+ console.warn(`\u26A0\uFE0F Translation warnings:`);
62
+ warnings.forEach((w) => console.warn(` - ${w}`));
63
+ }
64
+ if (preview) {
75
65
  if (verbose) {
76
- console.log(`🌐 Translating from ${getLanguageName(sourceLanguage)} to ${getLanguageName(targetLang)}...`);
77
- console.log(`💰 Estimated cost: ${formatCost(0.003)} (using Haiku)`);
78
- }
79
- const prepared = prepareTranslation(originalContent, sourceLanguage, targetLang);
80
- // 7. Invoke LLM for translation
81
- // NOTE: This is where we call the actual LLM
82
- // For now, we'll create a simple prompt that can be used with Claude Code's Task tool
83
- const translatedContent = await invokeLLMTranslation(prepared.prompt, verbose);
84
- // 8. Post-process translation
85
- const finalContent = postProcessTranslation(translatedContent, prepared.preserved);
86
- // 9. Validate translation
87
- const warnings = validateTranslation(originalContent, finalContent);
88
- if (warnings.length > 0 && verbose) {
89
- console.warn(`⚠️ Translation warnings:`);
90
- warnings.forEach(w => console.warn(` - ${w}`));
66
+ console.log(`
67
+ \u{1F4CB} PREVIEW (first 500 chars):
68
+ `);
69
+ console.log(finalContent.substring(0, 500));
70
+ console.log(`
71
+ ... (${finalContent.length} total characters)
72
+ `);
91
73
  }
92
- // 10. Preview or write
93
- if (preview) {
94
- if (verbose) {
95
- console.log(`\n📋 PREVIEW (first 500 chars):\n`);
96
- console.log(finalContent.substring(0, 500));
97
- console.log(`\n... (${finalContent.length} total characters)\n`);
98
- }
99
- return {
100
- success: true,
101
- filePath,
102
- sourceLanguage,
103
- targetLanguage: targetLang,
104
- warnings,
105
- cost: prepared.estimatedCost,
106
- tokensUsed: prepared.estimatedTokens,
107
- preview: finalContent,
108
- };
109
- }
110
- else {
111
- // Write translated content back to file
112
- await fs.writeFile(filePath, finalContent, 'utf-8');
113
- if (verbose) {
114
- console.log(`✅ Translation complete: ${filePath}`);
115
- console.log(` Tokens used: ${prepared.estimatedTokens.toLocaleString()}`);
116
- console.log(` Cost: ${formatCost(prepared.estimatedCost)}`);
117
- }
118
- return {
119
- success: true,
120
- filePath,
121
- sourceLanguage,
122
- targetLanguage: targetLang,
123
- warnings,
124
- cost: prepared.estimatedCost,
125
- tokensUsed: prepared.estimatedTokens,
126
- };
74
+ return {
75
+ success: true,
76
+ filePath,
77
+ sourceLanguage,
78
+ targetLanguage: targetLang,
79
+ warnings,
80
+ cost: prepared.estimatedCost,
81
+ tokensUsed: prepared.estimatedTokens,
82
+ preview: finalContent
83
+ };
84
+ } else {
85
+ await fs.writeFile(filePath, finalContent, "utf-8");
86
+ if (verbose) {
87
+ console.log(`\u2705 Translation complete: ${filePath}`);
88
+ console.log(` Tokens used: ${prepared.estimatedTokens.toLocaleString()}`);
89
+ console.log(` Cost: ${formatCost(prepared.estimatedCost)}`);
127
90
  }
91
+ return {
92
+ success: true,
93
+ filePath,
94
+ sourceLanguage,
95
+ targetLanguage: targetLang,
96
+ warnings,
97
+ cost: prepared.estimatedCost,
98
+ tokensUsed: prepared.estimatedTokens
99
+ };
100
+ }
128
101
  }
129
- /**
130
- * Invokes LLM for translation using Anthropic API
131
- *
132
- * PRODUCTION IMPLEMENTATION:
133
- * 1. Checks for ANTHROPIC_API_KEY in environment
134
- * 2. If available: Uses Anthropic API directly (fully automatic)
135
- * 3. If not available: Provides clear instructions for manual translation
136
- *
137
- * @param prompt - Translation prompt
138
- * @param verbose - Show detailed output
139
- * @returns Translated content
140
- */
141
102
  async function invokeLLMTranslation(prompt, verbose) {
142
- // Extract the content to translate (between --- markers)
143
- const contentMatch = prompt.match(/SOURCE DOCUMENT[^\n]*:\n---\n([\s\S]*?)\n---/);
144
- const contentToTranslate = contentMatch ? contentMatch[1] : '';
145
- // Check if ANTHROPIC_API_KEY is available
146
- const apiKey = process.env.ANTHROPIC_API_KEY;
147
- if (apiKey) {
148
- // Fully automatic translation using Anthropic API
149
- if (verbose) {
150
- console.log(`\n🤖 Translating via Anthropic API (Haiku model)...`);
151
- }
152
- try {
153
- // Dynamic import of Anthropic SDK (allows graceful fallback if not installed)
154
- const Anthropic = await import('@anthropic-ai/sdk').then(m => m.default);
155
- const anthropic = new Anthropic({
156
- apiKey,
157
- });
158
- const message = await anthropic.messages.create({
159
- model: 'claude-3-haiku-20240307',
160
- max_tokens: 8000,
161
- messages: [
162
- {
163
- role: 'user',
164
- content: prompt,
165
- },
166
- ],
167
- });
168
- // Extract translated content from response
169
- const translatedContent = message.content[0].type === 'text'
170
- ? message.content[0].text
171
- : contentToTranslate;
172
- if (verbose) {
173
- console.log(`✅ Translation complete via API`);
174
- console.log(` Model: claude-3-haiku-20240307`);
175
- console.log(` Input tokens: ${message.usage.input_tokens}`);
176
- console.log(` Output tokens: ${message.usage.output_tokens}`);
177
- console.log(` Cost: ~$${((message.usage.input_tokens * 0.25 + message.usage.output_tokens * 1.25) / 1000000).toFixed(4)}`);
178
- }
179
- return translatedContent;
180
- }
181
- catch (error) {
182
- console.error(`\n❌ API translation failed: ${error.message}`);
183
- console.error(` Falling back to manual translation instructions\n`);
184
- // Fall through to manual instructions
185
- }
186
- }
187
- // Fallback: Manual translation instructions
188
- const isInteractive = process.stdout.isTTY && process.env.CLAUDE_CODE_SESSION;
189
- if (isInteractive) {
190
- // Interactive mode: Output prompt for Claude to process
191
- if (verbose) {
192
- console.log(`\n🤖 Invoking Claude Code translator skill...`);
193
- console.log(` (Tip: Set ANTHROPIC_API_KEY for fully automatic translation)\n`);
194
- }
195
- // Output the translation prompt
196
- // The translator skill should auto-activate on this prompt
197
- console.log('\n' + '='.repeat(80));
198
- console.log('TRANSLATION REQUEST (translator skill will auto-activate):');
199
- console.log('='.repeat(80));
200
- console.log(prompt);
201
- console.log('='.repeat(80) + '\n');
202
- // In interactive mode, we expect the user/Claude to provide translation
203
- // For now, return a marker indicating manual intervention needed
204
- return `<!-- ⚠️ TRANSLATION IN PROGRESS - Manual translation required via translator skill -->\n\n${contentToTranslate}`;
103
+ const contentMatch = prompt.match(/SOURCE DOCUMENT[^\n]*:\n---\n([\s\S]*?)\n---/);
104
+ const contentToTranslate = contentMatch ? contentMatch[1] : "";
105
+ const apiKey = process.env.ANTHROPIC_API_KEY;
106
+ if (apiKey) {
107
+ if (verbose) {
108
+ console.log(`
109
+ \u{1F916} Translating via Anthropic API (Haiku model)...`);
205
110
  }
206
- else {
207
- // Non-interactive/automated mode: Provide clear instructions
208
- if (verbose) {
209
- console.log(`\n🤖 Generating translation (automated mode)...`);
210
- }
211
- console.error('\n⚠️ AUTO-TRANSLATION REQUIRES MANUAL STEP:');
212
- console.error(' Option A (Recommended): Set ANTHROPIC_API_KEY environment variable');
213
- console.error(' Option B: Run /specweave:translate <file-path>');
214
- console.error(' Option C: Manually translate the content\n');
215
- // Return original content with clear marker
216
- return `<!-- ⚠️ AUTO-TRANSLATION PENDING -->\n<!-- Set ANTHROPIC_API_KEY for automatic translation -->\n<!-- Or run: /specweave:translate to complete -->\n<!-- Original content below -->\n\n${contentToTranslate}`;
111
+ try {
112
+ const Anthropic = await import("@anthropic-ai/sdk").then((m) => m.default);
113
+ const anthropic = new Anthropic({
114
+ apiKey
115
+ });
116
+ const message = await anthropic.messages.create({
117
+ model: "claude-3-haiku-20240307",
118
+ max_tokens: 8e3,
119
+ messages: [
120
+ {
121
+ role: "user",
122
+ content: prompt
123
+ }
124
+ ]
125
+ });
126
+ const translatedContent = message.content[0].type === "text" ? message.content[0].text : contentToTranslate;
127
+ if (verbose) {
128
+ console.log(`\u2705 Translation complete via API`);
129
+ console.log(` Model: claude-3-haiku-20240307`);
130
+ console.log(` Input tokens: ${message.usage.input_tokens}`);
131
+ console.log(` Output tokens: ${message.usage.output_tokens}`);
132
+ console.log(` Cost: ~$${((message.usage.input_tokens * 0.25 + message.usage.output_tokens * 1.25) / 1e6).toFixed(4)}`);
133
+ }
134
+ return translatedContent;
135
+ } catch (error) {
136
+ console.error(`
137
+ \u274C API translation failed: ${error.message}`);
138
+ console.error(` Falling back to manual translation instructions
139
+ `);
217
140
  }
218
- }
219
- /**
220
- * Batch translate multiple files
221
- *
222
- * @param filePaths - Array of file paths to translate
223
- * @param targetLang - Target language
224
- * @param preview - Preview mode
225
- * @param verbose - Verbose output
226
- * @returns Array of translation results
227
- */
228
- export async function batchTranslateFiles(filePaths, targetLang = 'en', preview = false, verbose = false) {
229
- const results = [];
141
+ }
142
+ const isInteractive = process.stdout.isTTY && process.env.CLAUDE_CODE_SESSION;
143
+ if (isInteractive) {
230
144
  if (verbose) {
231
- console.log(`\n🔄 Batch translating ${filePaths.length} file(s) to ${getLanguageName(targetLang)}...\n`);
232
- }
233
- for (const filePath of filePaths) {
234
- try {
235
- const result = await translateFile({
236
- filePath,
237
- targetLang,
238
- preview,
239
- verbose,
240
- });
241
- results.push(result);
242
- }
243
- catch (error) {
244
- if (verbose) {
245
- console.error(`❌ Error translating ${filePath}: ${error.message}`);
246
- }
247
- results.push({
248
- success: false,
249
- filePath,
250
- sourceLanguage: 'unknown',
251
- targetLanguage: targetLang,
252
- warnings: [error.message],
253
- cost: 0,
254
- tokensUsed: 0,
255
- });
256
- }
145
+ console.log(`
146
+ \u{1F916} Invoking Claude Code translator skill...`);
147
+ console.log(` (Tip: Set ANTHROPIC_API_KEY for fully automatic translation)
148
+ `);
257
149
  }
258
- // Summary
150
+ console.log("\n" + "=".repeat(80));
151
+ console.log("TRANSLATION REQUEST (translator skill will auto-activate):");
152
+ console.log("=".repeat(80));
153
+ console.log(prompt);
154
+ console.log("=".repeat(80) + "\n");
155
+ return `<!-- \u26A0\uFE0F TRANSLATION IN PROGRESS - Manual translation required via translator skill -->
156
+
157
+ ${contentToTranslate}`;
158
+ } else {
259
159
  if (verbose) {
260
- const successful = results.filter(r => r.success).length;
261
- const totalCost = results.reduce((sum, r) => sum + r.cost, 0);
262
- const totalTokens = results.reduce((sum, r) => sum + r.tokensUsed, 0);
263
- console.log(`\n📊 Batch Translation Summary:`);
264
- console.log(` Successful: ${successful}/${filePaths.length}`);
265
- console.log(` Total tokens: ${totalTokens.toLocaleString()}`);
266
- console.log(` Total cost: ${formatCost(totalCost)}`);
160
+ console.log(`
161
+ \u{1F916} Generating translation (automated mode)...`);
162
+ }
163
+ console.error("\n\u26A0\uFE0F AUTO-TRANSLATION REQUIRES MANUAL STEP:");
164
+ console.error(" Option A (Recommended): Set ANTHROPIC_API_KEY environment variable");
165
+ console.error(" Option B: Run /specweave:translate <file-path>");
166
+ console.error(" Option C: Manually translate the content\n");
167
+ return `<!-- \u26A0\uFE0F AUTO-TRANSLATION PENDING -->
168
+ <!-- Set ANTHROPIC_API_KEY for automatic translation -->
169
+ <!-- Or run: /specweave:translate to complete -->
170
+ <!-- Original content below -->
171
+
172
+ ${contentToTranslate}`;
173
+ }
174
+ }
175
+ async function batchTranslateFiles(filePaths, targetLang = "en", preview = false, verbose = false) {
176
+ const results = [];
177
+ if (verbose) {
178
+ console.log(`
179
+ \u{1F504} Batch translating ${filePaths.length} file(s) to ${getLanguageName(targetLang)}...
180
+ `);
181
+ }
182
+ for (const filePath of filePaths) {
183
+ try {
184
+ const result = await translateFile({
185
+ filePath,
186
+ targetLang,
187
+ preview,
188
+ verbose
189
+ });
190
+ results.push(result);
191
+ } catch (error) {
192
+ if (verbose) {
193
+ console.error(`\u274C Error translating ${filePath}: ${error.message}`);
194
+ }
195
+ results.push({
196
+ success: false,
197
+ filePath,
198
+ sourceLanguage: "unknown",
199
+ targetLanguage: targetLang,
200
+ warnings: [error.message],
201
+ cost: 0,
202
+ tokensUsed: 0
203
+ });
267
204
  }
268
- return results;
205
+ }
206
+ if (verbose) {
207
+ const successful = results.filter((r) => r.success).length;
208
+ const totalCost = results.reduce((sum, r) => sum + r.cost, 0);
209
+ const totalTokens = results.reduce((sum, r) => sum + r.tokensUsed, 0);
210
+ console.log(`
211
+ \u{1F4CA} Batch Translation Summary:`);
212
+ console.log(` Successful: ${successful}/${filePaths.length}`);
213
+ console.log(` Total tokens: ${totalTokens.toLocaleString()}`);
214
+ console.log(` Total cost: ${formatCost(totalCost)}`);
215
+ }
216
+ return results;
269
217
  }
270
- /**
271
- * Parse CLI arguments
272
- */
273
218
  function parseArgs() {
274
- const args = process.argv.slice(2);
275
- if (args.length === 0 || args[0] === '--help' || args[0] === '-h') {
276
- console.log(`
219
+ const args = process.argv.slice(2);
220
+ if (args.length === 0 || args[0] === "--help" || args[0] === "-h") {
221
+ console.log(`
277
222
  Translation CLI Utility
278
223
 
279
224
  Usage:
@@ -300,51 +245,45 @@ Examples:
300
245
  # Translate to Spanish
301
246
  node translate-file.js plan.md --target-lang es
302
247
  `.trim());
303
- process.exit(0);
248
+ process.exit(0);
249
+ }
250
+ const filePath = args[0];
251
+ let targetLang = "en";
252
+ let preview = false;
253
+ let verbose = false;
254
+ for (let i = 1; i < args.length; i++) {
255
+ const arg = args[i];
256
+ if (arg === "--target-lang" && args[i + 1]) {
257
+ targetLang = args[i + 1];
258
+ i++;
259
+ } else if (arg === "--preview") {
260
+ preview = true;
261
+ } else if (arg === "--verbose" || arg === "-v") {
262
+ verbose = true;
304
263
  }
305
- const filePath = args[0];
306
- let targetLang = 'en';
307
- let preview = false;
308
- let verbose = false;
309
- // Parse options
310
- for (let i = 1; i < args.length; i++) {
311
- const arg = args[i];
312
- if (arg === '--target-lang' && args[i + 1]) {
313
- targetLang = args[i + 1];
314
- i++;
315
- }
316
- else if (arg === '--preview') {
317
- preview = true;
318
- }
319
- else if (arg === '--verbose' || arg === '-v') {
320
- verbose = true;
321
- }
322
- }
323
- return {
324
- filePath,
325
- targetLang,
326
- preview,
327
- verbose,
328
- };
264
+ }
265
+ return {
266
+ filePath,
267
+ targetLang,
268
+ preview,
269
+ verbose
270
+ };
329
271
  }
330
- /**
331
- * CLI entry point
332
- */
333
272
  async function main() {
334
- try {
335
- const options = parseArgs();
336
- const result = await translateFile(options);
337
- // Exit with appropriate code
338
- process.exit(result.success ? 0 : 1);
339
- }
340
- catch (error) {
341
- console.error(`❌ Translation failed: ${error.message}`);
342
- process.exit(1);
343
- }
273
+ try {
274
+ const options = parseArgs();
275
+ const result = await translateFile(options);
276
+ process.exit(result.success ? 0 : 1);
277
+ } catch (error) {
278
+ console.error(`\u274C Translation failed: ${error.message}`);
279
+ process.exit(1);
280
+ }
344
281
  }
345
- // Check if running as main module (ESM)
346
282
  const isMainModule = import.meta.url === `file://${process.argv[1]}`;
347
283
  if (isMainModule) {
348
- main();
284
+ main();
349
285
  }
350
- //# sourceMappingURL=translate-file.js.map
286
+ export {
287
+ batchTranslateFiles,
288
+ translateFile
289
+ };