specweave 0.33.4 → 0.33.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 (719) hide show
  1. package/.claude-plugin/README.md +13 -13
  2. package/.claude-plugin/marketplace.json +26 -37
  3. package/CLAUDE.md +445 -80
  4. package/README.md +34 -31
  5. package/bin/fix-marketplace-errors.sh +1 -1
  6. package/bin/install-commands.sh +2 -2
  7. package/bin/specweave.js +58 -1
  8. package/dist/plugins/specweave-github/lib/ThreeLayerSyncManager.d.ts +5 -0
  9. package/dist/plugins/specweave-github/lib/ThreeLayerSyncManager.d.ts.map +1 -1
  10. package/dist/plugins/specweave-github/lib/ThreeLayerSyncManager.js +14 -4
  11. package/dist/plugins/specweave-github/lib/ThreeLayerSyncManager.js.map +1 -1
  12. package/dist/plugins/specweave-github/lib/completion-calculator.d.ts +1 -0
  13. package/dist/plugins/specweave-github/lib/completion-calculator.d.ts.map +1 -1
  14. package/dist/plugins/specweave-github/lib/completion-calculator.js +2 -0
  15. package/dist/plugins/specweave-github/lib/completion-calculator.js.map +1 -1
  16. package/dist/plugins/specweave-github/lib/duplicate-detector.d.ts.map +1 -1
  17. package/dist/plugins/specweave-github/lib/duplicate-detector.js +20 -6
  18. package/dist/plugins/specweave-github/lib/duplicate-detector.js.map +1 -1
  19. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +9 -0
  20. package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +1 -1
  21. package/dist/plugins/specweave-github/lib/github-client-v2.js +31 -18
  22. package/dist/plugins/specweave-github/lib/github-client-v2.js.map +1 -1
  23. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts +7 -0
  24. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts.map +1 -1
  25. package/dist/plugins/specweave-github/lib/github-feature-sync.js +47 -11
  26. package/dist/plugins/specweave-github/lib/github-feature-sync.js.map +1 -1
  27. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js +39 -13
  28. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js.map +1 -1
  29. package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +1 -1
  30. package/dist/plugins/specweave-github/lib/github-issue-updater.js +15 -3
  31. package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +1 -1
  32. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +7 -0
  33. package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +1 -1
  34. package/dist/plugins/specweave-github/lib/github-spec-sync.js +17 -4
  35. package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +1 -1
  36. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +1 -1
  37. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +13 -3
  38. package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +1 -1
  39. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +1 -1
  40. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +14 -4
  41. package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +1 -1
  42. package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts.map +1 -1
  43. package/dist/plugins/specweave-github/lib/increment-issue-builder.js +24 -8
  44. package/dist/plugins/specweave-github/lib/increment-issue-builder.js.map +1 -1
  45. package/dist/plugins/specweave-github/lib/user-story-content-builder.d.ts.map +1 -1
  46. package/dist/plugins/specweave-github/lib/user-story-content-builder.js +21 -18
  47. package/dist/plugins/specweave-github/lib/user-story-content-builder.js.map +1 -1
  48. package/dist/plugins/specweave-github/lib/user-story-issue-builder.d.ts +3 -0
  49. package/dist/plugins/specweave-github/lib/user-story-issue-builder.d.ts.map +1 -1
  50. package/dist/plugins/specweave-github/lib/user-story-issue-builder.js +20 -19
  51. package/dist/plugins/specweave-github/lib/user-story-issue-builder.js.map +1 -1
  52. package/dist/src/cli/cleanup-zombies.js +34 -18
  53. package/dist/src/cli/cleanup-zombies.js.map +1 -1
  54. package/dist/src/cli/commands/discrepancies.js +6 -6
  55. package/dist/src/cli/commands/discrepancies.js.map +1 -1
  56. package/dist/src/cli/commands/docs.js +1 -1
  57. package/dist/src/cli/commands/docs.js.map +1 -1
  58. package/dist/src/cli/commands/import-docs.d.ts +1 -1
  59. package/dist/src/cli/commands/import-docs.js +2 -2
  60. package/dist/src/cli/commands/import-docs.js.map +1 -1
  61. package/dist/src/cli/commands/import-external.d.ts +1 -1
  62. package/dist/src/cli/commands/import-external.js +1 -1
  63. package/dist/src/cli/commands/init-multiproject.d.ts +1 -1
  64. package/dist/src/cli/commands/init-multiproject.js +3 -3
  65. package/dist/src/cli/commands/init-multiproject.js.map +1 -1
  66. package/dist/src/cli/commands/init.js +2 -2
  67. package/dist/src/cli/commands/init.js.map +1 -1
  68. package/dist/src/cli/commands/jobs.js +19 -2
  69. package/dist/src/cli/commands/jobs.js.map +1 -1
  70. package/dist/src/cli/commands/living-docs.d.ts +1 -0
  71. package/dist/src/cli/commands/living-docs.d.ts.map +1 -1
  72. package/dist/src/cli/commands/living-docs.js +19 -3
  73. package/dist/src/cli/commands/living-docs.js.map +1 -1
  74. package/dist/src/cli/commands/migrate-to-multiproject.js +1 -1
  75. package/dist/src/cli/commands/migrate-to-multiproject.js.map +1 -1
  76. package/dist/src/cli/commands/migrate-to-profiles.js +1 -1
  77. package/dist/src/cli/commands/migrate-to-profiles.js.map +1 -1
  78. package/dist/src/cli/commands/next-command.d.ts +1 -1
  79. package/dist/src/cli/commands/next-command.js +9 -9
  80. package/dist/src/cli/commands/next-command.js.map +1 -1
  81. package/dist/src/cli/commands/notifications.js +3 -3
  82. package/dist/src/cli/commands/notifications.js.map +1 -1
  83. package/dist/src/cli/commands/plan/increment-detector.js +2 -2
  84. package/dist/src/cli/commands/plan/increment-detector.js.map +1 -1
  85. package/dist/src/cli/commands/plan/plan-orchestrator.d.ts +2 -2
  86. package/dist/src/cli/commands/plan/plan-orchestrator.js +2 -2
  87. package/dist/src/cli/commands/plan/plan-validator.js +2 -2
  88. package/dist/src/cli/commands/plan/plan-validator.js.map +1 -1
  89. package/dist/src/cli/commands/plan/types.d.ts +1 -1
  90. package/dist/src/cli/commands/plan/types.js +1 -1
  91. package/dist/src/cli/commands/plan-command.d.ts +3 -3
  92. package/dist/src/cli/commands/plan-command.js +12 -12
  93. package/dist/src/cli/commands/plan-command.js.map +1 -1
  94. package/dist/src/cli/commands/project.d.ts +77 -0
  95. package/dist/src/cli/commands/project.d.ts.map +1 -0
  96. package/dist/src/cli/commands/project.js +526 -0
  97. package/dist/src/cli/commands/project.js.map +1 -0
  98. package/dist/src/cli/commands/save.d.ts +49 -0
  99. package/dist/src/cli/commands/save.d.ts.map +1 -0
  100. package/dist/src/cli/commands/save.js +583 -0
  101. package/dist/src/cli/commands/save.js.map +1 -0
  102. package/dist/src/cli/commands/sync-spec-commits.js +15 -6
  103. package/dist/src/cli/commands/sync-spec-commits.js.map +1 -1
  104. package/dist/src/cli/commands/sync-spec-content.js +15 -6
  105. package/dist/src/cli/commands/sync-spec-content.js.map +1 -1
  106. package/dist/src/cli/helpers/init/ado-repo-cloning.js +2 -2
  107. package/dist/src/cli/helpers/init/ado-repo-cloning.js.map +1 -1
  108. package/dist/src/cli/helpers/init/bitbucket-repo-cloning.d.ts +1 -1
  109. package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js +3 -3
  110. package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js.map +1 -1
  111. package/dist/src/cli/helpers/init/brownfield-analysis.js +18 -18
  112. package/dist/src/cli/helpers/init/brownfield-analysis.js.map +1 -1
  113. package/dist/src/cli/helpers/init/directory-structure.d.ts.map +1 -1
  114. package/dist/src/cli/helpers/init/directory-structure.js +3 -0
  115. package/dist/src/cli/helpers/init/directory-structure.js.map +1 -1
  116. package/dist/src/cli/helpers/init/external-import-grouping.d.ts.map +1 -1
  117. package/dist/src/cli/helpers/init/external-import-grouping.js +11 -7
  118. package/dist/src/cli/helpers/init/external-import-grouping.js.map +1 -1
  119. package/dist/src/cli/helpers/init/external-import.js +18 -18
  120. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  121. package/dist/src/cli/helpers/init/github-repo-cloning.d.ts +1 -1
  122. package/dist/src/cli/helpers/init/github-repo-cloning.js +3 -3
  123. package/dist/src/cli/helpers/init/github-repo-cloning.js.map +1 -1
  124. package/dist/src/cli/helpers/init/initial-increment-generator.js +12 -12
  125. package/dist/src/cli/helpers/init/living-docs-preflight.js +5 -5
  126. package/dist/src/cli/helpers/init/living-docs-preflight.js.map +1 -1
  127. package/dist/src/cli/helpers/init/next-steps.js +9 -9
  128. package/dist/src/cli/helpers/init/next-steps.js.map +1 -1
  129. package/dist/src/cli/helpers/init/plugin-installer.js +3 -3
  130. package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
  131. package/dist/src/cli/helpers/init/translation-config.js +9 -9
  132. package/dist/src/cli/helpers/init/translation-config.js.map +1 -1
  133. package/dist/src/cli/helpers/init/types.d.ts +1 -1
  134. package/dist/src/cli/helpers/init/types.d.ts.map +1 -1
  135. package/dist/src/cli/helpers/issue-tracker/ado.js +1 -1
  136. package/dist/src/cli/helpers/issue-tracker/ado.js.map +1 -1
  137. package/dist/src/cli/helpers/issue-tracker/github.js +1 -1
  138. package/dist/src/cli/helpers/issue-tracker/github.js.map +1 -1
  139. package/dist/src/cli/helpers/issue-tracker/index.js +2 -2
  140. package/dist/src/cli/helpers/issue-tracker/index.js.map +1 -1
  141. package/dist/src/cli/helpers/issue-tracker/jira.js +1 -1
  142. package/dist/src/cli/helpers/issue-tracker/jira.js.map +1 -1
  143. package/dist/src/cli/update-status-line.js +1 -1
  144. package/dist/src/cli/update-status-line.js.map +1 -1
  145. package/dist/src/cli/workers/brownfield-worker.js +1 -1
  146. package/dist/src/cli/workers/brownfield-worker.js.map +1 -1
  147. package/dist/src/cli/workers/clone-worker.js +22 -5
  148. package/dist/src/cli/workers/clone-worker.js.map +1 -1
  149. package/dist/src/cli/workers/import-worker.js +1 -1
  150. package/dist/src/cli/workers/import-worker.js.map +1 -1
  151. package/dist/src/core/background/brownfield-launcher.js +4 -4
  152. package/dist/src/core/background/brownfield-launcher.js.map +1 -1
  153. package/dist/src/core/background/index.d.ts +3 -3
  154. package/dist/src/core/background/index.js +3 -3
  155. package/dist/src/core/background/job-dependency.d.ts.map +1 -1
  156. package/dist/src/core/background/job-dependency.js +1 -0
  157. package/dist/src/core/background/job-dependency.js.map +1 -1
  158. package/dist/src/core/background/job-launcher.d.ts +1 -1
  159. package/dist/src/core/background/job-launcher.js +5 -5
  160. package/dist/src/core/background/job-launcher.js.map +1 -1
  161. package/dist/src/core/background/job-manager.d.ts +8 -0
  162. package/dist/src/core/background/job-manager.d.ts.map +1 -1
  163. package/dist/src/core/background/job-manager.js +19 -1
  164. package/dist/src/core/background/job-manager.js.map +1 -1
  165. package/dist/src/core/background/types.d.ts +9 -1
  166. package/dist/src/core/background/types.d.ts.map +1 -1
  167. package/dist/src/core/background/types.js +8 -1
  168. package/dist/src/core/background/types.js.map +1 -1
  169. package/dist/src/core/brownfield/importer.js +1 -1
  170. package/dist/src/core/brownfield/importer.js.map +1 -1
  171. package/dist/src/core/config/config-manager.d.ts +7 -1
  172. package/dist/src/core/config/config-manager.d.ts.map +1 -1
  173. package/dist/src/core/config/config-manager.js +24 -2
  174. package/dist/src/core/config/config-manager.js.map +1 -1
  175. package/dist/src/core/config/single-project-migrator.d.ts +110 -0
  176. package/dist/src/core/config/single-project-migrator.d.ts.map +1 -0
  177. package/dist/src/core/config/single-project-migrator.js +179 -0
  178. package/dist/src/core/config/single-project-migrator.js.map +1 -0
  179. package/dist/src/core/config/types.d.ts +3 -3
  180. package/dist/src/core/credentials/credentials-manager.d.ts +25 -4
  181. package/dist/src/core/credentials/credentials-manager.d.ts.map +1 -1
  182. package/dist/src/core/credentials/credentials-manager.js +54 -15
  183. package/dist/src/core/credentials/credentials-manager.js.map +1 -1
  184. package/dist/src/core/deduplication/command-deduplicator.d.ts +4 -4
  185. package/dist/src/core/deduplication/command-deduplicator.d.ts.map +1 -1
  186. package/dist/src/core/deduplication/command-deduplicator.js +3 -3
  187. package/dist/src/core/external-tools/external-items-counter.d.ts +4 -4
  188. package/dist/src/core/external-tools/external-items-counter.js +4 -4
  189. package/dist/src/core/external-tools/external-items-display.js +4 -4
  190. package/dist/src/core/external-tools/external-items-display.js.map +1 -1
  191. package/dist/src/core/increment/completion-validator.js +3 -3
  192. package/dist/src/core/increment/completion-validator.js.map +1 -1
  193. package/dist/src/core/increment/conflict-resolver.js +2 -2
  194. package/dist/src/core/increment/conflict-resolver.js.map +1 -1
  195. package/dist/src/core/increment/desync-detector.d.ts +1 -1
  196. package/dist/src/core/increment/desync-detector.js +3 -3
  197. package/dist/src/core/increment/desync-detector.js.map +1 -1
  198. package/dist/src/core/increment/discipline-checker.js +2 -2
  199. package/dist/src/core/increment/discipline-checker.js.map +1 -1
  200. package/dist/src/core/increment/increment-archiver.js +4 -4
  201. package/dist/src/core/increment/increment-archiver.js.map +1 -1
  202. package/dist/src/core/increment/increment-utils.d.ts +53 -2
  203. package/dist/src/core/increment/increment-utils.d.ts.map +1 -1
  204. package/dist/src/core/increment/increment-utils.js +78 -7
  205. package/dist/src/core/increment/increment-utils.js.map +1 -1
  206. package/dist/src/core/increment/metadata-manager.js +6 -6
  207. package/dist/src/core/increment/metadata-manager.js.map +1 -1
  208. package/dist/src/core/increment/metadata-validator.js +1 -1
  209. package/dist/src/core/increment/metadata-validator.js.map +1 -1
  210. package/dist/src/core/increment/recent-work-scanner.js +2 -2
  211. package/dist/src/core/increment/recent-work-scanner.js.map +1 -1
  212. package/dist/src/core/increment/spec-sync-manager.js +1 -1
  213. package/dist/src/core/increment/spec-sync-manager.js.map +1 -1
  214. package/dist/src/core/increment/status-auto-transition.d.ts +68 -1
  215. package/dist/src/core/increment/status-auto-transition.d.ts.map +1 -1
  216. package/dist/src/core/increment/status-auto-transition.js +141 -1
  217. package/dist/src/core/increment/status-auto-transition.js.map +1 -1
  218. package/dist/src/core/increment/status-change-sync-trigger.d.ts +1 -1
  219. package/dist/src/core/increment/status-change-sync-trigger.js +3 -3
  220. package/dist/src/core/increment/status-change-sync-trigger.js.map +1 -1
  221. package/dist/src/core/living-docs/cross-project-sync.d.ts +12 -0
  222. package/dist/src/core/living-docs/cross-project-sync.d.ts.map +1 -1
  223. package/dist/src/core/living-docs/cross-project-sync.js +33 -0
  224. package/dist/src/core/living-docs/cross-project-sync.js.map +1 -1
  225. package/dist/src/core/living-docs/feature-archiver.d.ts +3 -3
  226. package/dist/src/core/living-docs/feature-archiver.js +3 -3
  227. package/dist/src/core/living-docs/feature-consistency-validator.js +1 -1
  228. package/dist/src/core/living-docs/feature-consistency-validator.js.map +1 -1
  229. package/dist/src/core/living-docs/feature-id-manager.d.ts +5 -0
  230. package/dist/src/core/living-docs/feature-id-manager.d.ts.map +1 -1
  231. package/dist/src/core/living-docs/feature-id-manager.js +19 -1
  232. package/dist/src/core/living-docs/feature-id-manager.js.map +1 -1
  233. package/dist/src/core/living-docs/governance/standards-generator.js +1 -1
  234. package/dist/src/core/living-docs/governance/standards-generator.js.map +1 -1
  235. package/dist/src/core/living-docs/hierarchy-mapper.d.ts +5 -0
  236. package/dist/src/core/living-docs/hierarchy-mapper.d.ts.map +1 -1
  237. package/dist/src/core/living-docs/hierarchy-mapper.js +22 -2
  238. package/dist/src/core/living-docs/hierarchy-mapper.js.map +1 -1
  239. package/dist/src/core/living-docs/living-docs-sync.d.ts +1 -0
  240. package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
  241. package/dist/src/core/living-docs/living-docs-sync.js +77 -8
  242. package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
  243. package/dist/src/core/living-docs/project-detector.d.ts +9 -0
  244. package/dist/src/core/living-docs/project-detector.d.ts.map +1 -1
  245. package/dist/src/core/living-docs/project-detector.js +38 -3
  246. package/dist/src/core/living-docs/project-detector.js.map +1 -1
  247. package/dist/src/core/living-docs/suggestions-generator.js +1 -1
  248. package/dist/src/core/living-docs/suggestions-generator.js.map +1 -1
  249. package/dist/src/core/notifications/command-integration.js +1 -1
  250. package/dist/src/core/notifications/command-integration.js.map +1 -1
  251. package/dist/src/core/project/adapters/ado-project-adapter.d.ts +73 -0
  252. package/dist/src/core/project/adapters/ado-project-adapter.d.ts.map +1 -0
  253. package/dist/src/core/project/adapters/ado-project-adapter.js +304 -0
  254. package/dist/src/core/project/adapters/ado-project-adapter.js.map +1 -0
  255. package/dist/src/core/project/adapters/github-project-adapter.d.ts +76 -0
  256. package/dist/src/core/project/adapters/github-project-adapter.d.ts.map +1 -0
  257. package/dist/src/core/project/adapters/github-project-adapter.js +315 -0
  258. package/dist/src/core/project/adapters/github-project-adapter.js.map +1 -0
  259. package/dist/src/core/project/adapters/jira-project-adapter.d.ts +69 -0
  260. package/dist/src/core/project/adapters/jira-project-adapter.d.ts.map +1 -0
  261. package/dist/src/core/project/adapters/jira-project-adapter.js +241 -0
  262. package/dist/src/core/project/adapters/jira-project-adapter.js.map +1 -0
  263. package/dist/src/core/project/project-event-bus.d.ts +72 -0
  264. package/dist/src/core/project/project-event-bus.d.ts.map +1 -0
  265. package/dist/src/core/project/project-event-bus.js +150 -0
  266. package/dist/src/core/project/project-event-bus.js.map +1 -0
  267. package/dist/src/core/project/project-manager.d.ts +0 -22
  268. package/dist/src/core/project/project-manager.d.ts.map +1 -1
  269. package/dist/src/core/project/project-manager.js +5 -275
  270. package/dist/src/core/project/project-manager.js.map +1 -1
  271. package/dist/src/core/project/project-registry.d.ts +93 -0
  272. package/dist/src/core/project/project-registry.d.ts.map +1 -0
  273. package/dist/src/core/project/project-registry.js +448 -0
  274. package/dist/src/core/project/project-registry.js.map +1 -0
  275. package/dist/src/core/project/project-resolution.d.ts +229 -0
  276. package/dist/src/core/project/project-resolution.d.ts.map +1 -0
  277. package/dist/src/core/project/project-resolution.js +633 -0
  278. package/dist/src/core/project/project-resolution.js.map +1 -0
  279. package/dist/src/core/project/types/project-types.d.ts +214 -0
  280. package/dist/src/core/project/types/project-types.d.ts.map +1 -0
  281. package/dist/src/core/project/types/project-types.js +9 -0
  282. package/dist/src/core/project/types/project-types.js.map +1 -0
  283. package/dist/src/core/repo-structure/setup-summary.js +2 -2
  284. package/dist/src/core/repo-structure/setup-summary.js.map +1 -1
  285. package/dist/src/core/specs/spec-identifier-detector.d.ts.map +1 -1
  286. package/dist/src/core/specs/spec-identifier-detector.js +8 -5
  287. package/dist/src/core/specs/spec-identifier-detector.js.map +1 -1
  288. package/dist/src/core/status-line/status-line-updater.js +1 -1
  289. package/dist/src/core/status-line/status-line-updater.js.map +1 -1
  290. package/dist/src/core/types/increment-metadata.d.ts +3 -3
  291. package/dist/src/core/types/increment-metadata.js +3 -3
  292. package/dist/src/core/types/increment-metadata.js.map +1 -1
  293. package/dist/src/core/types/sync-profile.d.ts +1 -0
  294. package/dist/src/core/types/sync-profile.d.ts.map +1 -1
  295. package/dist/src/core/types/sync-profile.js.map +1 -1
  296. package/dist/src/core/validators/ac-presence-validator.d.ts +4 -4
  297. package/dist/src/core/validators/ac-presence-validator.js +3 -3
  298. package/dist/src/core/validators/ac-presence-validator.js.map +1 -1
  299. package/dist/src/core/workflow/backlog-scanner.d.ts +5 -0
  300. package/dist/src/core/workflow/backlog-scanner.d.ts.map +1 -1
  301. package/dist/src/core/workflow/backlog-scanner.js +14 -2
  302. package/dist/src/core/workflow/backlog-scanner.js.map +1 -1
  303. package/dist/src/core/workflow/phase-detector.js +17 -17
  304. package/dist/src/core/workflow/phase-detector.js.map +1 -1
  305. package/dist/src/core/workflow/types.d.ts +1 -1
  306. package/dist/src/core/workflow/types.d.ts.map +1 -1
  307. package/dist/src/core/workflow/workflow-orchestrator.d.ts +1 -1
  308. package/dist/src/core/workflow/workflow-orchestrator.js +9 -9
  309. package/dist/src/core/workflow/workflow-orchestrator.js.map +1 -1
  310. package/dist/src/hooks/scheduler-startup.js +1 -1
  311. package/dist/src/hooks/scheduler-startup.js.map +1 -1
  312. package/dist/src/importers/external-importer.d.ts +26 -5
  313. package/dist/src/importers/external-importer.d.ts.map +1 -1
  314. package/dist/src/importers/item-converter.d.ts.map +1 -1
  315. package/dist/src/importers/item-converter.js +19 -2
  316. package/dist/src/importers/item-converter.js.map +1 -1
  317. package/dist/src/importers/jira-importer.d.ts.map +1 -1
  318. package/dist/src/importers/jira-importer.js +15 -1
  319. package/dist/src/importers/jira-importer.js.map +1 -1
  320. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +17 -1
  321. package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +1 -1
  322. package/dist/src/integrations/jira/jira-incremental-mapper.js +20 -12
  323. package/dist/src/integrations/jira/jira-incremental-mapper.js.map +1 -1
  324. package/dist/src/integrations/jira/jira-mapper.d.ts +17 -1
  325. package/dist/src/integrations/jira/jira-mapper.d.ts.map +1 -1
  326. package/dist/src/integrations/jira/jira-mapper.js +13 -5
  327. package/dist/src/integrations/jira/jira-mapper.js.map +1 -1
  328. package/dist/src/living-docs/enterprise-analyzer.js +1 -1
  329. package/dist/src/living-docs/enterprise-analyzer.js.map +1 -1
  330. package/dist/src/living-docs/smart-doc-organizer.js +1 -1
  331. package/dist/src/living-docs/smart-doc-organizer.js.map +1 -1
  332. package/dist/src/sync/ado-reconciler.d.ts +5 -0
  333. package/dist/src/sync/ado-reconciler.d.ts.map +1 -1
  334. package/dist/src/sync/ado-reconciler.js +16 -4
  335. package/dist/src/sync/ado-reconciler.js.map +1 -1
  336. package/dist/src/sync/jira-reconciler.d.ts +3 -0
  337. package/dist/src/sync/jira-reconciler.d.ts.map +1 -1
  338. package/dist/src/sync/jira-reconciler.js +12 -5
  339. package/dist/src/sync/jira-reconciler.js.map +1 -1
  340. package/dist/src/types/dashboard-cache.d.ts +4 -2
  341. package/dist/src/types/dashboard-cache.d.ts.map +1 -1
  342. package/dist/src/types/dashboard-cache.js +1 -1
  343. package/dist/src/types/dashboard-cache.js.map +1 -1
  344. package/dist/src/utils/ac-embedder.d.ts +1 -1
  345. package/dist/src/utils/docs-preview/config-generator.d.ts.map +1 -1
  346. package/dist/src/utils/docs-preview/config-generator.js +4 -0
  347. package/dist/src/utils/docs-preview/config-generator.js.map +1 -1
  348. package/dist/src/utils/docs-preview/docusaurus-setup.js +2 -2
  349. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +1 -1
  350. package/dist/src/utils/docs-preview/sidebar-builder.js +1 -1
  351. package/dist/src/utils/env-multi-project-parser.d.ts +17 -0
  352. package/dist/src/utils/env-multi-project-parser.d.ts.map +1 -1
  353. package/dist/src/utils/env-multi-project-parser.js +26 -1
  354. package/dist/src/utils/env-multi-project-parser.js.map +1 -1
  355. package/dist/src/utils/external-tool-drift-detector.d.ts +2 -2
  356. package/dist/src/utils/external-tool-drift-detector.js +6 -6
  357. package/dist/src/utils/external-tool-drift-detector.js.map +1 -1
  358. package/dist/src/utils/notification-constants.d.ts +8 -6
  359. package/dist/src/utils/notification-constants.d.ts.map +1 -1
  360. package/dist/src/utils/notification-constants.js +10 -8
  361. package/dist/src/utils/notification-constants.js.map +1 -1
  362. package/dist/src/utils/notification-manager.d.ts +36 -3
  363. package/dist/src/utils/notification-manager.d.ts.map +1 -1
  364. package/dist/src/utils/notification-manager.js +80 -49
  365. package/dist/src/utils/notification-manager.js.map +1 -1
  366. package/dist/src/utils/platform-utils.d.ts +12 -3
  367. package/dist/src/utils/platform-utils.d.ts.map +1 -1
  368. package/dist/src/utils/platform-utils.js +35 -16
  369. package/dist/src/utils/platform-utils.js.map +1 -1
  370. package/dist/src/utils/plugin-validator.js +11 -11
  371. package/dist/src/utils/plugin-validator.js.map +1 -1
  372. package/dist/src/validators/ac-coverage-validator.d.ts +1 -1
  373. package/dist/src/validators/ac-coverage-validator.js +1 -1
  374. package/package.json +3 -1
  375. package/plugins/PLUGINS-INDEX.md +1 -2
  376. package/plugins/specweave/.claude-plugin/plugin.json +1 -1
  377. package/plugins/specweave/COMMANDS.md +49 -49
  378. package/plugins/specweave/agents/pm/AGENT.md +18 -18
  379. package/plugins/specweave/agents/test-aware-planner/AGENT.md +7 -7
  380. package/plugins/specweave/agents/translator/AGENT.md +2 -2
  381. package/plugins/specweave/commands/{specweave-abandon.md → abandon.md} +20 -20
  382. package/plugins/specweave/commands/{specweave-analyze-standards.sh → analyze-standards.sh} +4 -4
  383. package/plugins/specweave/commands/{specweave-archive-features.md → archive-features.md} +7 -7
  384. package/plugins/specweave/commands/{specweave-archive.md → archive.md} +36 -36
  385. package/plugins/specweave/commands/{specweave-backlog.md → backlog.md} +24 -24
  386. package/plugins/specweave/commands/{specweave-check-hooks.md → check-hooks.md} +10 -10
  387. package/plugins/specweave/commands/{specweave-check-tests.md → check-tests.md} +14 -14
  388. package/plugins/specweave/commands/{specweave-costs.md → costs.md} +8 -8
  389. package/plugins/specweave/commands/{specweave-discrepancies.md → discrepancies.md} +15 -15
  390. package/plugins/specweave/commands/{specweave-discrepancy-to-increment.md → discrepancy-to-increment.md} +10 -10
  391. package/plugins/specweave/commands/{specweave-do.md → do.md} +37 -39
  392. package/plugins/specweave/commands/{specweave-done.md → done.md} +23 -23
  393. package/plugins/specweave/commands/{specweave-embed-acs.md → embed-acs.md} +21 -21
  394. package/plugins/specweave/commands/{specweave-external.md → external.md} +11 -11
  395. package/plugins/specweave/commands/{specweave-fix-duplicates.md → fix-duplicates.md} +16 -16
  396. package/plugins/specweave/commands/{specweave-import-docs.md → import-docs.md} +7 -7
  397. package/plugins/specweave/commands/{specweave-import-external.md → import-external.md} +9 -9
  398. package/plugins/specweave/commands/{specweave-increment.md → increment.md} +17 -17
  399. package/plugins/specweave/commands/{specweave-jobs.md → jobs.md} +28 -28
  400. package/plugins/specweave/commands/judge-llm.md +296 -0
  401. package/plugins/specweave/commands/{specweave-living-docs.md → living-docs.md} +72 -29
  402. package/plugins/specweave/commands/migrate-config.md +2 -2
  403. package/plugins/specweave/commands/{specweave-next.md → next.md} +20 -20
  404. package/plugins/specweave/commands/{specweave-notifications.md → notifications.md} +11 -11
  405. package/plugins/specweave/commands/{specweave-organize-docs.md → organize-docs.md} +9 -9
  406. package/plugins/specweave/commands/{specweave-pause.md → pause.md} +19 -19
  407. package/plugins/specweave/commands/{specweave-plan.md → plan.md} +19 -19
  408. package/plugins/specweave/commands/{specweave-progress.md → progress.md} +6 -6
  409. package/plugins/specweave/commands/{specweave-qa.md → qa.md} +15 -15
  410. package/plugins/specweave/commands/{specweave-reopen.md → reopen.md} +41 -41
  411. package/plugins/specweave/commands/{specweave-restore-feature.md → restore-feature.md} +6 -6
  412. package/plugins/specweave/commands/{specweave-restore.md → restore.md} +26 -26
  413. package/plugins/specweave/commands/{specweave-resume.md → resume.md} +33 -33
  414. package/plugins/specweave/commands/revert-wip-limit.md +4 -4
  415. package/plugins/specweave/commands/{specweave-save.md → save.md} +34 -34
  416. package/plugins/specweave/commands/{specweave-status.md → status.md} +29 -29
  417. package/plugins/specweave/commands/{specweave.md → sw.md} +28 -28
  418. package/plugins/specweave/commands/{specweave-sync-acs.md → sync-acs.md} +12 -12
  419. package/plugins/specweave/commands/sync-diagnostics.md +5 -5
  420. package/plugins/specweave/commands/{specweave-sync-docs.md → sync-docs.md} +7 -7
  421. package/plugins/specweave/commands/{specweave-sync-logs.md → sync-logs.md} +14 -14
  422. package/plugins/specweave/commands/{specweave-sync-monitor.md → sync-monitor.md} +5 -5
  423. package/plugins/specweave/commands/{specweave-sync-progress.md → sync-progress.md} +38 -38
  424. package/plugins/specweave/commands/{specweave-sync-specs.md → sync-specs.md} +17 -17
  425. package/plugins/specweave/commands/{specweave-sync-status.md → sync-status.md} +16 -16
  426. package/plugins/specweave/commands/{specweave-sync-tasks.md → sync-tasks.md} +13 -13
  427. package/plugins/specweave/commands/{specweave-tdd-cycle.md → tdd-cycle.md} +1 -1
  428. package/plugins/specweave/commands/{specweave-tdd-green.md → tdd-green.md} +1 -1
  429. package/plugins/specweave/commands/{specweave-tdd-red.md → tdd-red.md} +1 -1
  430. package/plugins/specweave/commands/{specweave-tdd-refactor.md → tdd-refactor.md} +1 -1
  431. package/plugins/specweave/commands/{specweave-translate.md → translate.md} +17 -17
  432. package/plugins/specweave/commands/{specweave-update-scope.md → update-scope.md} +8 -8
  433. package/plugins/specweave/commands/{specweave-update-status.md → update-status.md} +6 -6
  434. package/plugins/specweave/commands/{specweave-validate-features.md → validate-features.md} +8 -8
  435. package/plugins/specweave/commands/{specweave-validate.md → validate.md} +20 -20
  436. package/plugins/specweave/commands/{specweave-workflow.md → workflow.md} +40 -40
  437. package/plugins/specweave/hooks/README.md +5 -5
  438. package/plugins/specweave/hooks/config-env-separator.sh +99 -0
  439. package/plugins/specweave/hooks/github-metadata-guard.sh +73 -0
  440. package/plugins/specweave/hooks/hooks.json +41 -1
  441. package/plugins/specweave/hooks/post-first-increment.sh +2 -2
  442. package/plugins/specweave/hooks/post-increment-completion.sh +7 -7
  443. package/plugins/specweave/hooks/post-increment-planning.sh +11 -11
  444. package/plugins/specweave/hooks/post-increment-status-change.sh +1 -1
  445. package/plugins/specweave/hooks/post-metadata-change.sh +1 -1
  446. package/plugins/specweave/hooks/post-spec-update.sh +2 -2
  447. package/plugins/specweave/hooks/post-task-completion.sh +2 -2
  448. package/plugins/specweave/hooks/pre-increment-start.sh +7 -7
  449. package/plugins/specweave/hooks/project-folder-guard.sh +272 -0
  450. package/plugins/specweave/hooks/spec-project-validator.sh +68 -47
  451. package/plugins/specweave/hooks/user-prompt-submit.sh +27 -27
  452. package/plugins/specweave/hooks/v2/guards/completion-guard.sh +2 -2
  453. package/plugins/specweave/hooks/v2/guards/metadata-json-guard.sh +87 -0
  454. package/plugins/specweave/hooks/v2/guards/metadata-json-guard.test.sh +302 -0
  455. package/plugins/specweave/hooks/v2/guards/per-us-project-validator.sh +72 -18
  456. package/plugins/specweave/hooks/v2/guards/per-us-project-validator.test.sh +406 -0
  457. package/plugins/specweave/hooks/v2/handlers/github-sync-handler.sh +1 -1
  458. package/plugins/specweave/lib/hooks/consolidated-sync.js +35 -5
  459. package/plugins/specweave/lib/hooks/invoke-translator-skill.js +2 -2
  460. package/plugins/specweave/lib/hooks/invoke-translator-skill.ts +2 -2
  461. package/plugins/specweave/lib/hooks/prepare-reflection-context.js +1 -1
  462. package/plugins/specweave/lib/hooks/prepare-reflection-context.ts +1 -1
  463. package/plugins/specweave/lib/hooks/sync-living-docs.js +5 -5
  464. package/plugins/specweave/lib/hooks/translate-file.d.ts +1 -1
  465. package/plugins/specweave/lib/hooks/translate-file.js +2 -2
  466. package/plugins/specweave/lib/hooks/translate-file.ts +3 -3
  467. package/plugins/specweave/lib/hooks/us-completion-orchestrator.js +1 -1
  468. package/plugins/specweave/lib/hooks/us-completion-orchestrator.ts +2 -2
  469. package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js +6 -6
  470. package/plugins/specweave/lib/vendor/core/increment/metadata-manager.js.map +1 -1
  471. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.d.ts +113 -0
  472. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js +318 -0
  473. package/plugins/specweave/lib/vendor/core/increment/status-auto-transition.js.map +1 -0
  474. package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +3 -3
  475. package/plugins/specweave/lib/vendor/core/types/increment-metadata.js +3 -3
  476. package/plugins/specweave/lib/vendor/core/types/increment-metadata.js.map +1 -1
  477. package/plugins/specweave/scripts/README.md +9 -9
  478. package/plugins/specweave/scripts/cleanup-state.sh +1 -1
  479. package/plugins/specweave/scripts/jobs.js +2 -2
  480. package/plugins/specweave/scripts/progress.js +6 -6
  481. package/plugins/specweave/scripts/read-costs.sh +3 -3
  482. package/plugins/specweave/scripts/read-jobs.sh +8 -8
  483. package/plugins/specweave/scripts/read-progress.sh +17 -10
  484. package/plugins/specweave/scripts/read-status.sh +7 -7
  485. package/plugins/specweave/scripts/read-workflow.sh +18 -18
  486. package/plugins/specweave/scripts/rebuild-dashboard-cache.sh +6 -5
  487. package/plugins/specweave/scripts/session-watchdog.sh +14 -8
  488. package/plugins/specweave/scripts/status.js +7 -7
  489. package/plugins/specweave/scripts/update-dashboard-cache.sh +28 -10
  490. package/plugins/specweave/skills/SKILLS-INDEX.md +4 -4
  491. package/plugins/specweave/skills/archive-increments/SKILL.md +15 -15
  492. package/plugins/specweave/skills/brownfield-analyzer/SKILL.md +5 -5
  493. package/plugins/specweave/skills/code-standards-analyzer/SKILL.md +4 -4
  494. package/plugins/specweave/skills/context-loader/SKILL.md +1 -1
  495. package/plugins/specweave/skills/{specweave-detector → detector}/SKILL.md +5 -5
  496. package/plugins/specweave/skills/discrepancy-viewer.md +4 -4
  497. package/plugins/specweave/skills/external-sync-wizard/SKILL.md +24 -24
  498. package/plugins/specweave/skills/{specweave-framework → framework}/SKILL.md +33 -33
  499. package/plugins/specweave/skills/increment-planner/SKILL.md +25 -24
  500. package/plugins/specweave/skills/increment-planner/templates/spec-multi-project.md +6 -16
  501. package/plugins/specweave/skills/increment-planner/templates/spec-single-project.md +6 -12
  502. package/plugins/specweave/skills/increment-quality-judge-v2/SKILL.md +6 -6
  503. package/plugins/specweave/skills/increment-work-router/SKILL.md +23 -23
  504. package/plugins/specweave/skills/instant-status/SKILL.md +7 -7
  505. package/plugins/specweave/skills/plugin-validator/SKILL.md +9 -9
  506. package/plugins/specweave/skills/pm-closure-validation/SKILL.md +4 -4
  507. package/plugins/specweave/skills/progress-sync/SKILL.md +51 -51
  508. package/plugins/specweave/skills/project-kickstarter/SKILL.md +11 -11
  509. package/plugins/specweave/skills/role-orchestrator/README.md +1 -1
  510. package/plugins/specweave/skills/role-orchestrator/SKILL.md +4 -4
  511. package/plugins/specweave/skills/smart-reopen-detector/SKILL.md +17 -17
  512. package/plugins/specweave/skills/spec-generator/SKILL.md +6 -6
  513. package/plugins/specweave/skills/tdd-workflow/SKILL.md +21 -21
  514. package/plugins/specweave/skills/translator/SKILL.md +4 -4
  515. package/plugins/specweave/skills/umbrella-repo-detector/SKILL.md +5 -5
  516. package/plugins/specweave-ado/.claude-plugin/plugin.json +1 -1
  517. package/plugins/specweave-ado/agents/ado-manager/AGENT.md +4 -4
  518. package/plugins/specweave-ado/agents/ado-sync-judge/AGENT.md +4 -4
  519. package/plugins/specweave-ado/commands/cleanup-duplicates.md +9 -9
  520. package/plugins/specweave-ado/commands/clone.md +17 -17
  521. package/plugins/specweave-ado/commands/close.md +10 -10
  522. package/plugins/specweave-ado/commands/create.md +8 -8
  523. package/plugins/specweave-ado/commands/import-areas.md +15 -15
  524. package/plugins/specweave-ado/commands/import-projects.md +12 -12
  525. package/plugins/specweave-ado/commands/pull.md +25 -25
  526. package/plugins/specweave-ado/commands/push.md +20 -20
  527. package/plugins/specweave-ado/commands/reconcile.md +7 -7
  528. package/plugins/specweave-ado/commands/status.md +7 -7
  529. package/plugins/specweave-ado/commands/sync.md +17 -17
  530. package/plugins/specweave-ado/hooks/post-living-docs-update.sh +2 -2
  531. package/plugins/specweave-ado/lib/ado-project-detector.js +1 -1
  532. package/plugins/specweave-ado/lib/ado-project-detector.ts +1 -1
  533. package/plugins/specweave-ado/skills/{specweave-ado-mapper → ado-mapper}/SKILL.md +2 -2
  534. package/plugins/specweave-ado/skills/ado-multi-project/SKILL.md +6 -6
  535. package/plugins/specweave-ado/skills/ado-resource-validator/SKILL.md +5 -5
  536. package/plugins/specweave-ado/skills/ado-sync/SKILL.md +19 -19
  537. package/plugins/specweave-alternatives/.claude-plugin/plugin.json +1 -1
  538. package/plugins/specweave-alternatives/commands/alternatives-analyze.md +14 -14
  539. package/plugins/specweave-backend/.claude-plugin/plugin.json +1 -1
  540. package/plugins/specweave-confluent/.claude-plugin/plugin.json +1 -1
  541. package/plugins/specweave-cost-optimizer/.claude-plugin/plugin.json +1 -1
  542. package/plugins/specweave-cost-optimizer/commands/cost-analyze.md +1 -1
  543. package/plugins/specweave-cost-optimizer/commands/cost-optimize.md +1 -1
  544. package/plugins/specweave-diagrams/.claude-plugin/plugin.json +1 -1
  545. package/plugins/specweave-diagrams/commands/diagrams-generate.md +1 -1
  546. package/plugins/specweave-docs/.claude-plugin/plugin.json +1 -1
  547. package/plugins/specweave-docs/commands/build.md +9 -9
  548. package/plugins/specweave-docs/commands/generate.md +22 -22
  549. package/plugins/specweave-docs/commands/health.md +10 -10
  550. package/plugins/specweave-docs/commands/init.md +9 -9
  551. package/plugins/specweave-docs/commands/organize.md +10 -10
  552. package/plugins/specweave-docs/commands/validate.md +9 -9
  553. package/plugins/specweave-docs/commands/view.md +391 -0
  554. package/plugins/specweave-docs/skills/preview/SKILL.md +60 -21
  555. package/plugins/specweave-figma/.claude-plugin/plugin.json +1 -1
  556. package/plugins/specweave-figma/commands/figma-import.md +1 -1
  557. package/plugins/specweave-figma/commands/figma-to-react.md +1 -1
  558. package/plugins/specweave-figma/commands/figma-tokens.md +1 -1
  559. package/plugins/specweave-frontend/.claude-plugin/plugin.json +1 -1
  560. package/plugins/specweave-frontend/agents/frontend-architect/README.md +5 -5
  561. package/plugins/specweave-frontend/commands/component-generate.md +1 -1
  562. package/plugins/specweave-frontend/commands/design-system-init.md +1 -1
  563. package/plugins/specweave-frontend/commands/frontend-scaffold.md +1 -1
  564. package/plugins/specweave-frontend/commands/nextjs-setup.md +1 -1
  565. package/plugins/specweave-github/.claude-plugin/plugin.json +1 -1
  566. package/plugins/specweave-github/MULTI-PROJECT-SYNC-ARCHITECTURE.md +4 -4
  567. package/plugins/specweave-github/SYNC-ARCHITECTURE-FIX-SUMMARY.md +18 -18
  568. package/plugins/specweave-github/agents/github-manager/AGENT.md +8 -8
  569. package/plugins/specweave-github/commands/cleanup-duplicates.md +8 -8
  570. package/plugins/specweave-github/commands/close.md +25 -25
  571. package/plugins/specweave-github/commands/create.md +17 -17
  572. package/plugins/specweave-github/commands/pull.md +12 -12
  573. package/plugins/specweave-github/commands/push.md +12 -12
  574. package/plugins/specweave-github/commands/reconcile.md +7 -7
  575. package/plugins/specweave-github/commands/status.md +24 -24
  576. package/plugins/specweave-github/commands/sync.md +34 -34
  577. package/plugins/specweave-github/commands/update-user-story.md +6 -6
  578. package/plugins/specweave-github/hooks/README.md +8 -8
  579. package/plugins/specweave-github/hooks/post-task-completion.sh +2 -2
  580. package/plugins/specweave-github/lib/ThreeLayerSyncManager.js +12 -4
  581. package/plugins/specweave-github/lib/ThreeLayerSyncManager.ts +16 -4
  582. package/plugins/specweave-github/lib/completion-calculator.js +3 -1
  583. package/plugins/specweave-github/lib/completion-calculator.ts +6 -0
  584. package/plugins/specweave-github/lib/duplicate-detector.js +12 -6
  585. package/plugins/specweave-github/lib/duplicate-detector.ts +22 -6
  586. package/plugins/specweave-github/lib/github-board-resolver.js +7 -2
  587. package/plugins/specweave-github/lib/github-board-resolver.ts +13 -2
  588. package/plugins/specweave-github/lib/github-client-v2.js +29 -18
  589. package/plugins/specweave-github/lib/github-client-v2.ts +33 -18
  590. package/plugins/specweave-github/lib/github-feature-sync.js +41 -11
  591. package/plugins/specweave-github/lib/github-feature-sync.ts +52 -11
  592. package/plugins/specweave-github/lib/github-hierarchical-sync.js +6 -1
  593. package/plugins/specweave-github/lib/github-hierarchical-sync.ts +12 -1
  594. package/plugins/specweave-github/lib/github-increment-sync-cli.js +35 -17
  595. package/plugins/specweave-github/lib/github-increment-sync-cli.ts +44 -16
  596. package/plugins/specweave-github/lib/github-issue-updater.js +8 -3
  597. package/plugins/specweave-github/lib/github-issue-updater.ts +16 -3
  598. package/plugins/specweave-github/lib/github-spec-sync.js +14 -4
  599. package/plugins/specweave-github/lib/github-spec-sync.ts +19 -4
  600. package/plugins/specweave-github/lib/github-sync-bidirectional.js +8 -3
  601. package/plugins/specweave-github/lib/github-sync-bidirectional.ts +14 -3
  602. package/plugins/specweave-github/lib/github-sync-increment-changes.js +9 -4
  603. package/plugins/specweave-github/lib/github-sync-increment-changes.ts +15 -4
  604. package/plugins/specweave-github/lib/increment-issue-builder.js +23 -10
  605. package/plugins/specweave-github/lib/increment-issue-builder.ts +29 -11
  606. package/plugins/specweave-github/lib/user-story-content-builder.js +19 -16
  607. package/plugins/specweave-github/lib/user-story-content-builder.ts +24 -19
  608. package/plugins/specweave-github/lib/user-story-issue-builder.js +10 -13
  609. package/plugins/specweave-github/lib/user-story-issue-builder.ts +20 -19
  610. package/plugins/specweave-github/reference/github-specweave-mapping.md +1 -1
  611. package/plugins/specweave-github/skills/github-issue-standard/SKILL.md +3 -3
  612. package/plugins/specweave-github/skills/github-issue-tracker/SKILL.md +8 -8
  613. package/plugins/specweave-github/skills/github-sync/SKILL.md +14 -14
  614. package/plugins/specweave-infrastructure/.claude-plugin/plugin.json +1 -1
  615. package/plugins/specweave-infrastructure/commands/{specweave-infrastructure-monitor-setup.md → monitor-setup.md} +1 -1
  616. package/plugins/specweave-infrastructure/commands/{specweave-infrastructure-slo-implement.md → slo-implement.md} +1 -1
  617. package/plugins/specweave-jira/.claude-plugin/plugin.json +1 -1
  618. package/plugins/specweave-jira/agents/jira-sync-judge/AGENT.md +3 -3
  619. package/plugins/specweave-jira/commands/cleanup-duplicates.md +9 -9
  620. package/plugins/specweave-jira/commands/close.md +13 -13
  621. package/plugins/specweave-jira/commands/create.md +8 -8
  622. package/plugins/specweave-jira/commands/import-boards.md +15 -15
  623. package/plugins/specweave-jira/commands/import-projects-full.md +15 -15
  624. package/plugins/specweave-jira/commands/import-projects.md +10 -10
  625. package/plugins/specweave-jira/commands/pull.md +10 -10
  626. package/plugins/specweave-jira/commands/push.md +11 -11
  627. package/plugins/specweave-jira/commands/reconcile.md +7 -7
  628. package/plugins/specweave-jira/commands/status.md +16 -16
  629. package/plugins/specweave-jira/commands/sync.md +27 -27
  630. package/plugins/specweave-jira/skills/{specweave-jira-mapper → jira-mapper}/SKILL.md +2 -2
  631. package/plugins/specweave-jira/skills/jira-resource-validator/SKILL.md +4 -4
  632. package/plugins/specweave-jira/skills/jira-sync/SKILL.md +5 -5
  633. package/plugins/specweave-kafka/.claude-plugin/plugin.json +1 -1
  634. package/plugins/specweave-kafka/IMPLEMENTATION-COMPLETE.md +10 -10
  635. package/plugins/specweave-kafka/README.md +12 -12
  636. package/plugins/specweave-kafka/commands/deploy.md +5 -5
  637. package/plugins/specweave-kafka/commands/dev-env.md +2 -2
  638. package/plugins/specweave-kafka/commands/mcp-configure.md +3 -3
  639. package/plugins/specweave-kafka/commands/monitor-setup.md +3 -3
  640. package/plugins/specweave-kafka/skills/kafka-architecture/SKILL.md +4 -4
  641. package/plugins/specweave-kafka/skills/kafka-cli-tools/SKILL.md +5 -5
  642. package/plugins/specweave-kafka/skills/kafka-mcp-integration/SKILL.md +6 -6
  643. package/plugins/specweave-kafka-streams/.claude-plugin/plugin.json +1 -1
  644. package/plugins/specweave-kafka-streams/commands/topology.md +4 -4
  645. package/plugins/specweave-kubernetes/.claude-plugin/plugin.json +1 -1
  646. package/plugins/specweave-ml/.claude-plugin/plugin.json +1 -1
  647. package/plugins/specweave-ml/README.md +9 -9
  648. package/plugins/specweave-ml/commands/{specweave-ml-deploy.md → deploy.md} +1 -1
  649. package/plugins/specweave-ml/commands/{specweave-ml-evaluate.md → evaluate.md} +1 -1
  650. package/plugins/specweave-ml/commands/{specweave-ml-explain.md → explain.md} +1 -1
  651. package/plugins/specweave-ml/commands/{specweave-ml-pipeline.md → pipeline.md} +1 -1
  652. package/plugins/specweave-ml/skills/automl-optimizer/SKILL.md +1 -1
  653. package/plugins/specweave-ml/skills/data-visualizer/SKILL.md +1 -1
  654. package/plugins/specweave-ml/skills/experiment-tracker/SKILL.md +4 -4
  655. package/plugins/specweave-ml/skills/feature-engineer/SKILL.md +1 -1
  656. package/plugins/specweave-ml/skills/ml-deployment-helper/SKILL.md +2 -2
  657. package/plugins/specweave-ml/skills/ml-pipeline-orchestrator/SKILL.md +10 -10
  658. package/plugins/specweave-ml/skills/model-registry/SKILL.md +1 -1
  659. package/plugins/specweave-ml/skills/time-series-forecaster/SKILL.md +1 -1
  660. package/plugins/specweave-mobile/.claude-plugin/plugin.json +1 -1
  661. package/plugins/specweave-mobile/README.md +2 -2
  662. package/plugins/specweave-mobile/agents/mobile-architect/AGENT.md +2 -2
  663. package/plugins/specweave-mobile/skills/react-native-setup/SKILL.md +1 -1
  664. package/plugins/specweave-n8n/.claude-plugin/plugin.json +1 -1
  665. package/plugins/specweave-n8n/commands/workflow-template.md +4 -4
  666. package/plugins/specweave-payments/.claude-plugin/plugin.json +1 -1
  667. package/plugins/specweave-payments/commands/stripe-setup.md +1 -1
  668. package/plugins/specweave-payments/commands/subscription-flow.md +1 -1
  669. package/plugins/specweave-plugin-dev/.claude-plugin/plugin.json +1 -1
  670. package/plugins/specweave-plugin-dev/commands/plugin-create.md +1 -1
  671. package/plugins/specweave-plugin-dev/commands/plugin-publish.md +1 -1
  672. package/plugins/specweave-plugin-dev/commands/plugin-test.md +1 -1
  673. package/plugins/specweave-release/.claude-plugin/plugin.json +1 -1
  674. package/plugins/specweave-release/IMPLEMENTATION.md +14 -14
  675. package/plugins/specweave-release/README.md +33 -33
  676. package/plugins/specweave-release/agents/release-manager/AGENT.md +18 -18
  677. package/plugins/specweave-release/commands/{specweave-release-align.md → align.md} +19 -19
  678. package/plugins/specweave-release/commands/{specweave-release-init.md → init.md} +19 -19
  679. package/plugins/specweave-release/commands/{specweave-release-npm.md → npm.md} +14 -14
  680. package/plugins/specweave-release/commands/{specweave-release-platform.md → platform.md} +17 -17
  681. package/plugins/specweave-release/commands/{specweave-release-rc.md → rc.md} +37 -37
  682. package/plugins/specweave-release/hooks/post-task-completion.sh +1 -1
  683. package/plugins/specweave-release/skills/rc-manager/SKILL.md +12 -12
  684. package/plugins/specweave-release/skills/release-coordinator/SKILL.md +11 -11
  685. package/plugins/specweave-release/skills/release-strategy-advisor/SKILL.md +4 -4
  686. package/plugins/specweave-release/skills/version-aligner/SKILL.md +7 -7
  687. package/plugins/specweave-testing/.claude-plugin/plugin.json +1 -1
  688. package/plugins/specweave-testing/agents/qa-engineer/README.md +5 -5
  689. package/plugins/specweave-testing/commands/e2e-setup.md +1 -1
  690. package/plugins/specweave-testing/commands/test-coverage.md +1 -1
  691. package/plugins/specweave-testing/commands/test-generate.md +1 -1
  692. package/plugins/specweave-testing/commands/test-init.md +1 -1
  693. package/plugins/specweave-tooling/.claude-plugin/plugin.json +1 -1
  694. package/plugins/specweave-tooling/commands/{specweave-tooling-skill-create.md → skill-create.md} +1 -1
  695. package/plugins/specweave-tooling/commands/{specweave-tooling-skill-package.md → skill-package.md} +1 -1
  696. package/plugins/specweave-tooling/commands/{specweave-tooling-skill-validate.md → skill-validate.md} +1 -1
  697. package/plugins/specweave-ui/.claude-plugin/plugin.json +1 -1
  698. package/plugins/specweave-ui/commands/ui-automate.md +9 -9
  699. package/plugins/specweave-ui/commands/ui-inspect.md +6 -6
  700. package/src/templates/AGENTS.md.template +73 -77
  701. package/src/templates/CLAUDE.md.template +23 -19
  702. package/dist/src/cli/commands/switch-project.d.ts +0 -13
  703. package/dist/src/cli/commands/switch-project.d.ts.map +0 -1
  704. package/dist/src/cli/commands/switch-project.js +0 -78
  705. package/dist/src/cli/commands/switch-project.js.map +0 -1
  706. package/plugins/specweave/commands/specweave-init-multiproject.md +0 -146
  707. package/plugins/specweave/commands/specweave-judge.md +0 -276
  708. package/plugins/specweave-core/.claude-plugin/plugin.json +0 -21
  709. package/plugins/specweave-core/commands/architecture-review.md +0 -288
  710. package/plugins/specweave-core/commands/code-review.md +0 -213
  711. package/plugins/specweave-core/commands/refactor-plan.md +0 -249
  712. package/plugins/specweave-core/skills/code-quality/SKILL.md +0 -158
  713. package/plugins/specweave-core/skills/design-patterns/SKILL.md +0 -245
  714. package/plugins/specweave-core/skills/software-architecture/SKILL.md +0 -84
  715. package/plugins/specweave-docs/commands/preview.md +0 -274
  716. /package/plugins/specweave/skills/{specweave-framework → framework}/test-cases/test-1-increment-naming.yaml +0 -0
  717. /package/plugins/specweave/skills/{specweave-framework → framework}/test-cases/test-2-source-of-truth.yaml +0 -0
  718. /package/plugins/specweave/skills/{specweave-framework → framework}/test-cases/test-3-increment-discipline.yaml +0 -0
  719. /package/plugins/specweave/skills/{specweave-framework → framework}/test-cases/test-4-file-placement.yaml +0 -0
@@ -6,15 +6,15 @@ These scripts provide instant (<100ms) output for status queries that don't requ
6
6
 
7
7
  ## Why These Exist
8
8
 
9
- Status commands (`/specweave:status`, `/specweave:progress`, `/specweave:jobs`) were taking 3+ minutes because they expanded as prompts requiring LLM processing. These commands need NO reasoning - they just read JSON and format output.
9
+ Status commands (`/sw:status`, `/sw:progress`, `/sw:jobs`) were taking 3+ minutes because they expanded as prompts requiring LLM processing. These commands need NO reasoning - they just read JSON and format output.
10
10
 
11
11
  **Performance comparison:**
12
12
 
13
13
  | Command | Before | After |
14
14
  |---------|--------|-------|
15
- | `/specweave:status` | 3+ min | <100ms |
16
- | `/specweave:progress` | 2+ min | <100ms |
17
- | `/specweave:jobs` | 3+ min | <100ms |
15
+ | `/sw:status` | 3+ min | <100ms |
16
+ | `/sw:progress` | 2+ min | <100ms |
17
+ | `/sw:jobs` | 3+ min | <100ms |
18
18
 
19
19
  ## Scripts
20
20
 
@@ -59,7 +59,7 @@ These scripts work across all contexts through a layered architecture:
59
59
 
60
60
  | Layer | Context | Speed | How It Works |
61
61
  |-------|---------|-------|--------------|
62
- | **Hook** | Claude Code | <100ms | `UserPromptSubmit` intercepts `/specweave:*`, runs script, blocks prompt |
62
+ | **Hook** | Claude Code | <100ms | `UserPromptSubmit` intercepts `/sw:*`, runs script, blocks prompt |
63
63
  | **Skill** | Any LLM | ~2s | Skill instructs LLM to run script via Bash |
64
64
  | **CLI** | Terminal | ~500ms | `specweave status` / direct `node scripts/*.js` |
65
65
 
@@ -68,7 +68,7 @@ These scripts work across all contexts through a layered architecture:
68
68
  In Claude Code, the `UserPromptSubmit` hook automatically intercepts status commands:
69
69
 
70
70
  ```
71
- User types: /specweave:status
71
+ User types: /sw:status
72
72
  Hook runs: bash plugins/specweave/scripts/read-status.sh
73
73
  Output appears instantly (<10ms)
74
74
  LLM never processes the prompt
@@ -79,7 +79,7 @@ LLM never processes the prompt
79
79
  In Cursor, Windsurf, Copilot, or API usage, the `instant-status` skill provides instructions:
80
80
 
81
81
  ```
82
- User types: /specweave:status
82
+ User types: /sw:status
83
83
  Skill activates and instructs LLM to run the script
84
84
  LLM executes: bash plugins/specweave/scripts/read-status.sh
85
85
  Output appears (~2s)
@@ -103,7 +103,7 @@ bash plugins/specweave/scripts/read-progress.sh 0045
103
103
 
104
104
  | Situation | Recommended Path |
105
105
  |-----------|------------------|
106
- | Quick status check in Claude Code | Just type `/specweave:status` |
106
+ | Quick status check in Claude Code | Just type `/sw:status` |
107
107
  | Using Cursor/Windsurf/Copilot | Let skill guide execution |
108
108
  | Terminal/scripting | `specweave status` or `node scripts/*.js` |
109
109
  | CI/CD pipelines | Direct `node scripts/*.js` |
@@ -145,7 +145,7 @@ DESCRIPTION
145
145
  What this command does...
146
146
 
147
147
  EXECUTION PATHS
148
- 1. Claude Code: /specweave:newcmd (hook intercepts)
148
+ 1. Claude Code: /sw:newcmd (hook intercepts)
149
149
  2. Any LLM: Skill instructs to run this script
150
150
  3. Terminal: specweave newcmd
151
151
  `);
@@ -134,7 +134,7 @@ echo "✅ Cleanup complete!"
134
134
  echo ""
135
135
  echo "Next steps:"
136
136
  echo " 1. Restart Claude Code"
137
- echo " 2. Run /specweave:progress to check status"
137
+ echo " 2. Run /sw:progress to check status"
138
138
  echo ""
139
139
  echo "If MCP issues persist:"
140
140
  echo " • Update Claude Code VS Code extension"
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Instant Background Jobs Status
4
4
  *
5
- * Executed by UserPromptSubmit hook for /specweave:jobs
5
+ * Executed by UserPromptSubmit hook for /sw:jobs
6
6
  * Bypasses LLM entirely - output shown directly to user
7
7
  *
8
8
  * Usage: node jobs.js [--all] [--id <jobId>] [--help]
@@ -30,7 +30,7 @@ DESCRIPTION
30
30
  This script bypasses LLM processing for instant results (<100ms).
31
31
 
32
32
  EXECUTION PATHS
33
- 1. Claude Code: /specweave:jobs (hook intercepts, <100ms)
33
+ 1. Claude Code: /sw:jobs (hook intercepts, <100ms)
34
34
  2. Any LLM: Skill instructs to run this script (~2s)
35
35
  3. Terminal: specweave jobs (~500ms)
36
36
 
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Instant Increment Progress
4
4
  *
5
- * Executed by UserPromptSubmit hook for /specweave:progress
5
+ * Executed by UserPromptSubmit hook for /sw:progress
6
6
  * Bypasses LLM entirely - output shown directly to user
7
7
  *
8
8
  * Usage: node progress.js [incrementId] [--help]
@@ -29,7 +29,7 @@ DESCRIPTION
29
29
  This script bypasses LLM processing for instant results (<100ms).
30
30
 
31
31
  EXECUTION PATHS
32
- 1. Claude Code: /specweave:progress (hook intercepts, <100ms)
32
+ 1. Claude Code: /sw:progress (hook intercepts, <100ms)
33
33
  2. Any LLM: Skill instructs to run this script (~2s)
34
34
  3. Terminal: specweave status --verbose (~500ms)
35
35
 
@@ -131,7 +131,7 @@ if (readyForReview.length > 0) {
131
131
  const bar = createProgressBar(inc.percentage, 15);
132
132
  console.log(` ${inc.id}`);
133
133
  console.log(` ${bar} ${inc.completedTasks}/${inc.totalTasks} (${inc.percentage}%)`);
134
- console.log(` → /specweave:done ${inc.id}`);
134
+ console.log(` → /sw:done ${inc.id}`);
135
135
  }
136
136
  console.log('');
137
137
  }
@@ -165,9 +165,9 @@ if (readyForReview.length > 0 || active.length > 0 || paused.length > 0) {
165
165
  console.log('');
166
166
 
167
167
  if (readyForReview.length > 0) {
168
- console.log('💡 Run /specweave:done <id> to close reviewed increments');
168
+ console.log('💡 Run /sw:done <id> to close reviewed increments');
169
169
  } else {
170
- console.log('💡 For details: /specweave:progress <incrementId>');
170
+ console.log('💡 For details: /sw:progress <incrementId>');
171
171
  }
172
172
  } else {
173
173
  console.log('No active increments.');
@@ -176,7 +176,7 @@ if (readyForReview.length > 0 || active.length > 0 || paused.length > 0) {
176
176
  console.log(`${completed.length} completed increment(s).`);
177
177
  }
178
178
  console.log('');
179
- console.log('💡 Run /specweave:increment to start new work');
179
+ console.log('💡 Run /sw:increment to start new work');
180
180
  }
181
181
 
182
182
  // Helpers
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # read-costs.sh - Pure bash reader for /specweave:costs
2
+ # read-costs.sh - Pure bash reader for /sw:costs
3
3
  #
4
4
  # Shows cost/token tracking dashboard.
5
5
  # Reads from pre-computed dashboard cache for <10ms response time.
@@ -128,5 +128,5 @@ jq -r '.costs.byIncrement | to_entries | sort_by(-.value.cost) | .[0:5][] |
128
128
  echo ""
129
129
 
130
130
  echo "💡 Commands:"
131
- echo " /specweave:costs <id> View increment costs"
132
- echo " /specweave:progress View task progress"
131
+ echo " /sw:costs <id> View increment costs"
132
+ echo " /sw:progress View task progress"
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # read-jobs.sh - Pure bash reader for /specweave:jobs
2
+ # read-jobs.sh - Pure bash reader for /sw:jobs
3
3
  #
4
4
  # Shows current work status (increments) + background jobs + helpful context.
5
5
  # Reads from pre-computed dashboard cache for <10ms response time.
@@ -185,7 +185,7 @@ if [[ -f "$CACHE_FILE" ]] && jq -e '.' "$CACHE_FILE" >/dev/null 2>&1; then
185
185
  else
186
186
  echo ""
187
187
  echo " No increment data available (cache not found)."
188
- echo " Run /specweave:status to rebuild cache."
188
+ echo " Run /sw:status to rebuild cache."
189
189
  fi
190
190
 
191
191
  echo ""
@@ -215,7 +215,7 @@ if [[ "$HAS_JOBS" == "false" ]]; then
215
215
  echo " • Brownfield analysis (documentation gap detection)"
216
216
  echo ""
217
217
  echo " Start jobs with:"
218
- echo " • /specweave:import-external - Import from external tools"
218
+ echo " • /sw:import-external - Import from external tools"
219
219
  echo " • specweave init - May spawn background jobs"
220
220
  else
221
221
  echo ""
@@ -316,9 +316,9 @@ echo ""
316
316
  echo "────────────────────────────────────────"
317
317
  echo ""
318
318
  echo "💡 Commands:"
319
- echo " /specweave:do Execute current tasks"
320
- echo " /specweave:progress Show task progress details"
321
- echo " /specweave:done <id> Close increment"
322
- echo " /specweave:jobs --id <id> View background job details"
323
- echo " /specweave:jobs --all Show completed jobs"
319
+ echo " /sw:do Execute current tasks"
320
+ echo " /sw:progress Show task progress details"
321
+ echo " /sw:done <id> Close increment"
322
+ echo " /sw:jobs --id <id> View background job details"
323
+ echo " /sw:jobs --all Show completed jobs"
324
324
  echo ""
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # read-progress.sh - Pure bash reader for /specweave:progress
2
+ # read-progress.sh - Pure bash reader for /sw:progress
3
3
  #
4
4
  # Reads from pre-computed dashboard cache for <10ms response time.
5
5
  # Falls back to Node.js script if jq is not available.
@@ -73,7 +73,7 @@ progress_bar() {
73
73
  format_status() {
74
74
  case "$1" in
75
75
  active) echo "🔄 active" ;;
76
- planning) echo "📝 planning" ;;
76
+ planning|planned) echo "📝 planning" ;;
77
77
  paused) echo "⏸️ paused" ;;
78
78
  completed) echo "✅ completed" ;;
79
79
  abandoned) echo "❌ abandoned" ;;
@@ -147,22 +147,23 @@ if [[ -n "$READY_FOR_REVIEW" ]]; then
147
147
  bar=$(progress_bar "$pct" 15)
148
148
  echo " $id"
149
149
  echo " $bar $completed/$total ($pct%)"
150
- echo " → /specweave:done $id"
150
+ echo " → /sw:done $id"
151
151
  done <<< "$READY_FOR_REVIEW"
152
152
  echo ""
153
153
  fi
154
154
 
155
155
  # Get active increments (excluding ready_for_review)
156
+ # Note: "planned" is a legacy typo for "planning" - support both for backwards compatibility
156
157
  ACTIVE=$(jq -r '
157
158
  .increments | to_entries[] |
158
- select(.value.status == "active" or .value.status == "planning" or .value.status == "backlog") |
159
- "\(.key)|\(.value.tasks.completed)|\(.value.tasks.total)"
159
+ select(.value.status == "active" or .value.status == "planning" or .value.status == "planned" or .value.status == "backlog") |
160
+ "\(.key)|\(.value.tasks.completed)|\(.value.tasks.total)|\(.value.status)"
160
161
  ' "$CACHE_FILE" 2>/dev/null)
161
162
 
162
163
  ACTIVE_COUNT=0
163
164
  if [[ -n "$ACTIVE" ]]; then
164
165
  echo "🔄 Active:"
165
- while IFS='|' read -r id completed total; do
166
+ while IFS='|' read -r id completed total inc_status; do
166
167
  [[ -z "$id" ]] && continue
167
168
  ACTIVE_COUNT=$((ACTIVE_COUNT + 1))
168
169
  if [[ "$total" -gt 0 ]]; then
@@ -171,7 +172,13 @@ if [[ -n "$ACTIVE" ]]; then
171
172
  pct=0
172
173
  fi
173
174
  bar=$(progress_bar "$pct" 15)
174
- echo " $id"
175
+ # Show status indicator if not "active"
176
+ status_indicator=""
177
+ case "$inc_status" in
178
+ planning|planned) status_indicator=" (📝 planning)" ;;
179
+ backlog) status_indicator=" (📋 backlog)" ;;
180
+ esac
181
+ echo " $id$status_indicator"
175
182
  echo " $bar $completed/$total ($pct%)"
176
183
  done <<< "$ACTIVE"
177
184
  echo ""
@@ -222,9 +229,9 @@ fi
222
229
 
223
230
  echo ""
224
231
  if [[ "$REVIEW_COUNT" -gt 0 ]]; then
225
- echo "💡 Run /specweave:done <id> to close reviewed increments"
232
+ echo "💡 Run /sw:done <id> to close reviewed increments"
226
233
  elif [[ "$ACTIVE_COUNT" -eq 0 ]]; then
227
- echo "💡 Run /specweave:increment to start new work"
234
+ echo "💡 Run /sw:increment to start new work"
228
235
  else
229
- echo "💡 For details: /specweave:progress <incrementId>"
236
+ echo "💡 For details: /sw:progress <incrementId>"
230
237
  fi
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # read-status.sh - Pure bash reader for /specweave:status
2
+ # read-status.sh - Pure bash reader for /sw:status
3
3
  #
4
4
  # Reads from pre-computed dashboard cache for <10ms response time.
5
5
  # Falls back to Node.js script if jq is not available.
@@ -58,14 +58,14 @@ echo "📋 SpecWeave Status Overview"
58
58
  echo ""
59
59
 
60
60
  # Status display order and icons
61
+ # Note: "planned" is a legacy typo for "planning" - both are handled
61
62
  declare -a STATUS_ORDER
62
- STATUS_ORDER=("active" "planning" "in-progress" "ready_for_review" "paused" "backlog" "completed" "abandoned")
63
+ STATUS_ORDER=("active" "planning" "planned" "ready_for_review" "paused" "backlog" "completed" "abandoned")
63
64
 
64
65
  status_icon() {
65
66
  case "$1" in
66
67
  active) echo "🔄" ;;
67
- planning) echo "📝" ;;
68
- in-progress) echo "⚙️" ;;
68
+ planning|planned) echo "📝" ;;
69
69
  ready_for_review) echo "👀" ;;
70
70
  paused) echo "⏸️" ;;
71
71
  backlog) echo "📋" ;;
@@ -141,6 +141,6 @@ fi
141
141
 
142
142
  echo ""
143
143
  echo "💡 Commands:"
144
- echo " /specweave:progress Show task progress"
145
- echo " /specweave:do Execute current tasks"
146
- echo " /specweave:done <id> Close increment"
144
+ echo " /sw:progress Show task progress"
145
+ echo " /sw:do Execute current tasks"
146
+ echo " /sw:done <id> Close increment"
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # read-workflow.sh - Pure bash reader for /specweave:workflow
2
+ # read-workflow.sh - Pure bash reader for /sw:workflow
3
3
  #
4
4
  # Shows current phase, suggests next actions based on increment state.
5
5
  # Reads from pre-computed dashboard cache for <10ms response time.
@@ -79,13 +79,13 @@ if [[ -z "$ACTIVE_ID" ]]; then
79
79
  BACKLOG_COUNT=$(jq '.summary.backlog // 0' "$CACHE_FILE")
80
80
  if [[ "$BACKLOG_COUNT" -gt 0 ]]; then
81
81
  echo "📋 Backlog: $BACKLOG_COUNT item(s) waiting"
82
- echo " Resume with: /specweave:resume <id>"
82
+ echo " Resume with: /sw:resume <id>"
83
83
  echo ""
84
84
  fi
85
85
 
86
86
  echo "💡 Suggestions:"
87
- echo " • /specweave:increment \"feature name\" - Plan new work"
88
- echo " • /specweave:status - View all increments"
87
+ echo " • /sw:increment \"feature name\" - Plan new work"
88
+ echo " • /sw:status - View all increments"
89
89
  exit 0
90
90
  fi
91
91
 
@@ -117,37 +117,37 @@ SUGGESTIONS=""
117
117
 
118
118
  if [[ "$STATUS" == "backlog" ]] || [[ "$STATUS" == "planned" ]]; then
119
119
  PHASE="📝 Planning"
120
- SUGGESTIONS="• /specweave:do - Start implementation
121
- • /specweave:plan - Generate plan.md and tasks.md"
120
+ SUGGESTIONS="• /sw:do - Start implementation
121
+ • /sw:plan - Generate plan.md and tasks.md"
122
122
 
123
123
  elif [[ "$TASKS_COMPLETED" -eq 0 ]]; then
124
124
  PHASE="🚀 Starting"
125
- SUGGESTIONS="• /specweave:do - Execute first task
126
- • /specweave:pause - Pause if not ready"
125
+ SUGGESTIONS="• /sw:do - Execute first task
126
+ • /sw:pause - Pause if not ready"
127
127
 
128
128
  elif [[ "$TASK_PCT" -lt 50 ]]; then
129
129
  PHASE="🔨 In Progress (Early)"
130
- SUGGESTIONS="• /specweave:do - Continue implementation
131
- • /specweave:progress - Check task details"
130
+ SUGGESTIONS="• /sw:do - Continue implementation
131
+ • /sw:progress - Check task details"
132
132
 
133
133
  elif [[ "$TASK_PCT" -lt 100 ]]; then
134
134
  PHASE="⚙️ In Progress (Late)"
135
- SUGGESTIONS="• /specweave:do - Complete remaining tasks
136
- • /specweave:validate - Early quality check"
135
+ SUGGESTIONS="• /sw:do - Complete remaining tasks
136
+ • /sw:validate - Early quality check"
137
137
 
138
138
  elif [[ "$STATUS" == "ready_for_review" ]]; then
139
139
  PHASE="👀 Review"
140
- SUGGESTIONS="• /specweave:validate - Full validation
141
- • /specweave:done - Close increment (PM approval)"
140
+ SUGGESTIONS="• /sw:validate - Full validation
141
+ • /sw:done - Close increment (PM approval)"
142
142
 
143
143
  elif [[ "$TASKS_COMPLETED" -eq "$TASKS_TOTAL" ]]; then
144
144
  PHASE="✅ Tasks Complete"
145
- SUGGESTIONS="• /specweave:validate - Run quality checks
146
- • /specweave:done - Close increment"
145
+ SUGGESTIONS="• /sw:validate - Run quality checks
146
+ • /sw:done - Close increment"
147
147
 
148
148
  else
149
149
  PHASE="❓ Unknown"
150
- SUGGESTIONS="• /specweave:status - Check status"
150
+ SUGGESTIONS="• /sw:status - Check status"
151
151
  fi
152
152
 
153
153
  # Display
@@ -168,6 +168,6 @@ echo ""
168
168
  # Additional context
169
169
  PAUSED_COUNT=$(jq '.summary.paused // 0' "$CACHE_FILE")
170
170
  if [[ "$PAUSED_COUNT" -gt 0 ]]; then
171
- echo "ℹ️ $PAUSED_COUNT paused increment(s) - /specweave:resume to continue"
171
+ echo "ℹ️ $PAUSED_COUNT paused increment(s) - /sw:resume to continue"
172
172
  echo ""
173
173
  fi
@@ -47,7 +47,7 @@ log "🔄 Rebuilding dashboard cache..."
47
47
 
48
48
  # Initialize counters using simple variables (bash 3.x compatible)
49
49
  status_backlog=0
50
- status_planned=0
50
+ status_planning=0
51
51
  status_active=0
52
52
  status_paused=0
53
53
  status_ready_for_review=0
@@ -197,9 +197,10 @@ for increment_dir in "$INCREMENTS_DIR"/[0-9]*/; do
197
197
  '.[$id] = { metadata: $meta, tasks: $tasks, spec: $spec }')
198
198
 
199
199
  # Update status counters (bash 3.x compatible)
200
+ # Note: "planned" is a legacy typo for "planning" - both map to planning counter
200
201
  case "$status" in
201
202
  backlog) status_backlog=$((status_backlog + 1)) ;;
202
- planned) status_planned=$((status_planned + 1)) ;;
203
+ planning|planned) status_planning=$((status_planning + 1)) ;;
203
204
  active) status_active=$((status_active + 1)) ;;
204
205
  paused) status_paused=$((status_paused + 1)) ;;
205
206
  ready_for_review) status_ready_for_review=$((status_ready_for_review + 1)) ;;
@@ -266,7 +267,7 @@ cache_json=$(jq -n \
266
267
  --argjson active "$status_active" \
267
268
  --argjson paused "$status_paused" \
268
269
  --argjson backlog "$status_backlog" \
269
- --argjson planned "$status_planned" \
270
+ --argjson planning "$status_planning" \
270
271
  --argjson ready_for_review "$status_ready_for_review" \
271
272
  --argjson completed "$status_completed" \
272
273
  --argjson abandoned "$status_abandoned" \
@@ -293,7 +294,7 @@ cache_json=$(jq -n \
293
294
  active: $active,
294
295
  paused: $paused,
295
296
  backlog: $backlog,
296
- planned: $planned,
297
+ planning: $planning,
297
298
  ready_for_review: $ready_for_review,
298
299
  completed: $completed,
299
300
  abandoned: $abandoned,
@@ -323,5 +324,5 @@ echo "$cache_json" > "$TEMP_FILE"
323
324
  mv "$TEMP_FILE" "$CACHE_FILE"
324
325
 
325
326
  log "✅ Dashboard cache rebuilt"
326
- log " 📊 $total_count increments | $status_active active | $status_completed completed"
327
+ log " 📊 $total_count increments | $status_active active | $status_planning planning | $status_completed completed"
327
328
  log " 📁 Cache: $CACHE_FILE"
@@ -6,7 +6,7 @@
6
6
  # - ELIMINATED FALSE POSITIVES: No longer triggers on stale files alone
7
7
  # - SMART DETECTION: Verifies actual stuck processes, not just file ages
8
8
  # - SEVERITY LEVELS: Only CRITICAL issues trigger notifications
9
- # - DIAGNOSTICS: Writes detailed logs for /specweave:jobs to display
9
+ # - DIAGNOSTICS: Writes detailed logs for /sw:jobs to display
10
10
  #
11
11
  # Usage: bash session-watchdog.sh [--daemon] [--interval=60] [--threshold=300]
12
12
 
@@ -77,15 +77,21 @@ send_notification() {
77
77
  return
78
78
  fi
79
79
 
80
- # macOS notification
80
+ # macOS notification - use "Submarine" for warnings (not alarming like "Basso")
81
+ # Per CLAUDE.md section 11: Basso = ONLY critical errors requiring IMMEDIATE action
82
+ # Zombie detection is recoverable - user can run cleanup script when convenient
81
83
  if command -v osascript &> /dev/null; then
82
- osascript -e "display notification \"$message\" with title \"$title\" sound name \"Basso\""
84
+ osascript -e "display notification \"$message\" with title \"$title\" sound name \"Submarine\""
83
85
  fi
84
86
 
85
- # Linux notification (if available)
87
+ # Linux notification (if available) - use "normal" urgency (not "critical")
88
+ # Critical urgency can bypass Do Not Disturb, which is too aggressive
86
89
  if command -v notify-send &> /dev/null; then
87
- notify-send "$title" "$message" --urgency=critical
90
+ notify-send "$title" "$message" --urgency=normal
88
91
  fi
92
+
93
+ # Windows: notifications sent via PowerShell toast don't have urgency levels
94
+ # They're always non-alarming by design
89
95
  }
90
96
 
91
97
  get_file_age_seconds() {
@@ -251,7 +257,7 @@ check_orphaned_jobs() {
251
257
  fi
252
258
 
253
259
  if [[ "$orphaned_count" -gt 0 ]]; then
254
- result_message="$orphaned_count orphaned job(s) found (run /specweave:jobs to see details)"
260
+ result_message="$orphaned_count orphaned job(s) found (run /sw:jobs to see details)"
255
261
  fi
256
262
 
257
263
  echo "orphaned_jobs=$orphaned_count" >> "$DIAGNOSTICS_FILE.tmp"
@@ -260,7 +266,7 @@ check_orphaned_jobs() {
260
266
  return $result_severity
261
267
  }
262
268
 
263
- # Write diagnostics file for /specweave:jobs to read
269
+ # Write diagnostics file for /sw:jobs to read
264
270
  write_diagnostics() {
265
271
  local overall_severity="$1"
266
272
  local overall_status="$2"
@@ -345,7 +351,7 @@ check_session_health() {
345
351
  CONSECUTIVE_WARNINGS=0 # Reset on healthy check
346
352
  fi
347
353
 
348
- # Write diagnostics for /specweave:jobs
354
+ # Write diagnostics for /sw:jobs
349
355
  write_diagnostics "$max_severity" "$overall_status"
350
356
 
351
357
  # Only alert if CRITICAL and seen multiple consecutive times
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * Instant Increment Status Overview
4
4
  *
5
- * Executed by UserPromptSubmit hook for /specweave:status
5
+ * Executed by UserPromptSubmit hook for /sw:status
6
6
  * Bypasses LLM entirely - output shown directly to user
7
7
  *
8
8
  * Usage: node status.js [--help]
@@ -28,7 +28,7 @@ DESCRIPTION
28
28
  This script bypasses LLM processing for instant results (<100ms).
29
29
 
30
30
  EXECUTION PATHS
31
- 1. Claude Code: /specweave:status (hook intercepts, <100ms)
31
+ 1. Claude Code: /sw:status (hook intercepts, <100ms)
32
32
  2. Any LLM: Skill instructs to run this script (~2s)
33
33
  3. Terminal: specweave status (~500ms)
34
34
 
@@ -113,7 +113,7 @@ for (const status of statusOrder) {
113
113
  console.log(` ${item}`);
114
114
  // Add action hint for ready_for_review
115
115
  if (status === 'ready_for_review') {
116
- console.log(` → /specweave:done ${item}`);
116
+ console.log(` → /sw:done ${item}`);
117
117
  }
118
118
  }
119
119
  if (items.length > 5) {
@@ -161,11 +161,11 @@ console.log('');
161
161
 
162
162
  // Context-aware command hints
163
163
  if (reviewCount > 0) {
164
- console.log('💡 Next step: /specweave:done <id> to close reviewed increment(s)');
164
+ console.log('💡 Next step: /sw:done <id> to close reviewed increment(s)');
165
165
  } else if (activeCount > 0) {
166
166
  console.log('💡 Commands:');
167
- console.log(' /specweave:progress Show task progress');
168
- console.log(' /specweave:do Execute current tasks');
167
+ console.log(' /sw:progress Show task progress');
168
+ console.log(' /sw:do Execute current tasks');
169
169
  } else {
170
- console.log('💡 Run /specweave:increment to start new work');
170
+ console.log('💡 Run /sw:increment to start new work');
171
171
  }
@@ -83,6 +83,15 @@ for dir in "$INCREMENTS_DIR"/*"$INCREMENT_ID"*/; do
83
83
  fi
84
84
  done
85
85
 
86
+ # Helper to normalize status for counter keys (planned → planning)
87
+ # Defined early so it can be used in removal section
88
+ normalize_status_key() {
89
+ case "$1" in
90
+ planned) echo "planning" ;; # Legacy typo - map to planning counter
91
+ *) echo "$1" ;;
92
+ esac
93
+ }
94
+
86
95
  if [[ -z "$INCREMENT_DIR" ]] || [[ ! -d "$INCREMENT_DIR" ]]; then
87
96
  # Increment might have been archived or deleted
88
97
  # Remove from cache if it exists
@@ -90,18 +99,19 @@ if [[ -z "$INCREMENT_DIR" ]] || [[ ! -d "$INCREMENT_DIR" ]]; then
90
99
  if jq -e --arg id "$INCREMENT_ID" '.increments[$id]' "$CACHE_FILE" >/dev/null 2>&1; then
91
100
  # Get old status for counter updates
92
101
  old_status=$(jq -r --arg id "$INCREMENT_ID" '.increments[$id].status // "backlog"' "$CACHE_FILE")
102
+ old_status_key=$(normalize_status_key "$old_status")
93
103
  old_type=$(jq -r --arg id "$INCREMENT_ID" '.increments[$id].type // "feature"' "$CACHE_FILE")
94
104
  old_priority=$(jq -r --arg id "$INCREMENT_ID" '.increments[$id].priority // "P1"' "$CACHE_FILE")
95
105
 
96
- # Remove increment and update counters
106
+ # Remove increment and update counters (use normalized status key)
97
107
  jq --arg id "$INCREMENT_ID" \
98
- --arg old_status "$old_status" \
108
+ --arg old_status_key "$old_status_key" \
99
109
  --arg old_type "$old_type" \
100
110
  --arg old_priority "$old_priority" '
101
111
  del(.increments[$id]) |
102
112
  del(.mtimes[$id]) |
103
113
  .summary.total -= 1 |
104
- .summary[$old_status] -= 1 |
114
+ .summary[$old_status_key] -= 1 |
105
115
  .summary.byType[$old_type] -= 1 |
106
116
  .summary.byPriority[$old_priority] -= 1 |
107
117
  .updatedAt = (now | strftime("%Y-%m-%dT%H:%M:%SZ"))
@@ -122,6 +132,10 @@ fi
122
132
 
123
133
  # Read current values
124
134
  status=$(jq -r '.status // "backlog"' "$metadata_file" 2>/dev/null)
135
+ # Normalize status for counter keys (planned → planning for backwards compatibility)
136
+ # The raw status is preserved in increment data, but counters use normalized key
137
+ status_key=$(normalize_status_key "$status")
138
+
125
139
  type=$(jq -r '.type // "feature"' "$metadata_file" 2>/dev/null)
126
140
  priority=$(jq -r '.priority // "P1"' "$metadata_file" 2>/dev/null)
127
141
  title=$(jq -r '.title // ""' "$metadata_file" 2>/dev/null)
@@ -232,36 +246,40 @@ mtime_json=$(jq -n \
232
246
  # Apply incremental update
233
247
  if [[ "$is_new" == "true" ]]; then
234
248
  # New increment - add to cache and increment counters
249
+ # Note: Use status_key for counter updates (normalizes planned → planning)
235
250
  jq --arg id "$INCREMENT_ID" \
236
251
  --argjson inc "$increment_json" \
237
252
  --argjson mtime "$mtime_json" \
238
- --arg status "$status" \
253
+ --arg status_key "$status_key" \
239
254
  --arg type "$type" \
240
255
  --arg priority "$priority" '
241
256
  .increments[$id] = $inc |
242
257
  .mtimes[$id] = $mtime |
243
258
  .summary.total += 1 |
244
- .summary[$status] += 1 |
259
+ .summary[$status_key] += 1 |
245
260
  .summary.byType[$type] += 1 |
246
261
  .summary.byPriority[$priority] += 1 |
247
262
  .updatedAt = (now | strftime("%Y-%m-%dT%H:%M:%SZ"))
248
263
  ' "$CACHE_FILE" > "$TEMP_FILE"
249
264
  else
250
265
  # Existing increment - update and adjust counters if status/type/priority changed
266
+ # Normalize old_status for counter lookup (planned → planning)
267
+ old_status_key=$(normalize_status_key "$old_status")
268
+
251
269
  jq --arg id "$INCREMENT_ID" \
252
270
  --argjson inc "$increment_json" \
253
271
  --argjson mtime "$mtime_json" \
254
- --arg old_status "$old_status" \
255
- --arg new_status "$status" \
272
+ --arg old_status_key "$old_status_key" \
273
+ --arg new_status_key "$status_key" \
256
274
  --arg old_type "$old_type" \
257
275
  --arg new_type "$type" \
258
276
  --arg old_priority "$old_priority" \
259
277
  --arg new_priority "$priority" '
260
278
  .increments[$id] = $inc |
261
279
  .mtimes[$id] = $mtime |
262
- (if $old_status != $new_status then
263
- .summary[$old_status] -= 1 |
264
- .summary[$new_status] += 1
280
+ (if $old_status_key != $new_status_key then
281
+ .summary[$old_status_key] -= 1 |
282
+ .summary[$new_status_key] += 1
265
283
  else . end) |
266
284
  (if $old_type != $new_type then
267
285
  .summary.byType[$old_type] -= 1 |