specweave 1.0.271 → 1.0.273

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 (138) hide show
  1. package/CLAUDE.md +28 -28
  2. package/bin/specweave.js +13 -0
  3. package/dist/dashboard/assets/index-BKdLA_6x.js +11 -0
  4. package/dist/dashboard/assets/index-Cs3Zq6E2.css +1 -0
  5. package/dist/dashboard/index.html +2 -2
  6. package/dist/src/cli/commands/detect-intent.js +1 -1
  7. package/dist/src/cli/commands/detect-intent.js.map +1 -1
  8. package/dist/src/cli/commands/judge-skill.d.ts.map +1 -1
  9. package/dist/src/cli/commands/judge-skill.js +11 -0
  10. package/dist/src/cli/commands/judge-skill.js.map +1 -1
  11. package/dist/src/cli/commands/migrate-to-umbrella.d.ts.map +1 -1
  12. package/dist/src/cli/commands/migrate-to-umbrella.js +97 -2
  13. package/dist/src/cli/commands/migrate-to-umbrella.js.map +1 -1
  14. package/dist/src/cli/commands/migrate-to-vskill.d.ts +43 -0
  15. package/dist/src/cli/commands/migrate-to-vskill.d.ts.map +1 -0
  16. package/dist/src/cli/commands/migrate-to-vskill.js +144 -0
  17. package/dist/src/cli/commands/migrate-to-vskill.js.map +1 -0
  18. package/dist/src/cli/commands/refresh-marketplace.d.ts +4 -23
  19. package/dist/src/cli/commands/refresh-marketplace.d.ts.map +1 -1
  20. package/dist/src/cli/commands/refresh-marketplace.js +15 -1061
  21. package/dist/src/cli/commands/refresh-marketplace.js.map +1 -1
  22. package/dist/src/cli/commands/refresh-plugins.d.ts +28 -0
  23. package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -0
  24. package/dist/src/cli/commands/refresh-plugins.js +272 -0
  25. package/dist/src/cli/commands/refresh-plugins.js.map +1 -0
  26. package/dist/src/cli/commands/uninstall.d.ts +11 -0
  27. package/dist/src/cli/commands/uninstall.d.ts.map +1 -0
  28. package/dist/src/cli/commands/uninstall.js +164 -0
  29. package/dist/src/cli/commands/uninstall.js.map +1 -0
  30. package/dist/src/cli/helpers/init/claude-plugin-enabler.d.ts +6 -2
  31. package/dist/src/cli/helpers/init/claude-plugin-enabler.d.ts.map +1 -1
  32. package/dist/src/cli/helpers/init/claude-plugin-enabler.js +6 -2
  33. package/dist/src/cli/helpers/init/claude-plugin-enabler.js.map +1 -1
  34. package/dist/src/cli/helpers/init/instruction-file-merger.d.ts +5 -0
  35. package/dist/src/cli/helpers/init/instruction-file-merger.d.ts.map +1 -1
  36. package/dist/src/cli/helpers/init/instruction-file-merger.js +18 -0
  37. package/dist/src/cli/helpers/init/instruction-file-merger.js.map +1 -1
  38. package/dist/src/cli/helpers/init/plugin-installer.d.ts +1 -1
  39. package/dist/src/cli/helpers/init/plugin-installer.d.ts.map +1 -1
  40. package/dist/src/cli/helpers/init/plugin-installer.js +98 -364
  41. package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
  42. package/dist/src/cli/workers/marketplace-scanner-worker.d.ts +73 -0
  43. package/dist/src/cli/workers/marketplace-scanner-worker.d.ts.map +1 -0
  44. package/dist/src/cli/workers/marketplace-scanner-worker.js +405 -0
  45. package/dist/src/cli/workers/marketplace-scanner-worker.js.map +1 -0
  46. package/dist/src/config/types.d.ts +2 -2
  47. package/dist/src/core/background/job-launcher.d.ts +24 -0
  48. package/dist/src/core/background/job-launcher.d.ts.map +1 -1
  49. package/dist/src/core/background/job-launcher.js +80 -0
  50. package/dist/src/core/background/job-launcher.js.map +1 -1
  51. package/dist/src/core/background/types.d.ts +20 -2
  52. package/dist/src/core/background/types.d.ts.map +1 -1
  53. package/dist/src/core/fabric/registry-schema.d.ts +117 -0
  54. package/dist/src/core/fabric/registry-schema.d.ts.map +1 -1
  55. package/dist/src/core/fabric/registry-schema.js +37 -1
  56. package/dist/src/core/fabric/registry-schema.js.map +1 -1
  57. package/dist/src/core/fabric/security-judge.d.ts.map +1 -1
  58. package/dist/src/core/fabric/security-judge.js +38 -17
  59. package/dist/src/core/fabric/security-judge.js.map +1 -1
  60. package/dist/src/core/fabric/submission-queue-types.d.ts +83 -0
  61. package/dist/src/core/fabric/submission-queue-types.d.ts.map +1 -0
  62. package/dist/src/core/fabric/submission-queue-types.js +8 -0
  63. package/dist/src/core/fabric/submission-queue-types.js.map +1 -0
  64. package/dist/src/core/fabric/submission-queue.d.ts +65 -0
  65. package/dist/src/core/fabric/submission-queue.d.ts.map +1 -0
  66. package/dist/src/core/fabric/submission-queue.js +267 -0
  67. package/dist/src/core/fabric/submission-queue.js.map +1 -0
  68. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts +5 -3
  69. package/dist/src/core/lazy-loading/llm-plugin-detector.d.ts.map +1 -1
  70. package/dist/src/core/lazy-loading/llm-plugin-detector.js +66 -13
  71. package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
  72. package/dist/src/core/migration/umbrella-migrator.d.ts +9 -0
  73. package/dist/src/core/migration/umbrella-migrator.d.ts.map +1 -1
  74. package/dist/src/core/migration/umbrella-migrator.js +38 -4
  75. package/dist/src/core/migration/umbrella-migrator.js.map +1 -1
  76. package/dist/src/core/session/plugin-install-detector.d.ts.map +1 -1
  77. package/dist/src/core/session/plugin-install-detector.js +3 -2
  78. package/dist/src/core/session/plugin-install-detector.js.map +1 -1
  79. package/dist/src/dashboard/server/dashboard-server.d.ts.map +1 -1
  80. package/dist/src/dashboard/server/dashboard-server.js +115 -3
  81. package/dist/src/dashboard/server/dashboard-server.js.map +1 -1
  82. package/dist/src/dashboard/server/data/cost-aggregator.d.ts +0 -1
  83. package/dist/src/dashboard/server/data/cost-aggregator.d.ts.map +1 -1
  84. package/dist/src/dashboard/server/data/cost-aggregator.js +0 -1
  85. package/dist/src/dashboard/server/data/cost-aggregator.js.map +1 -1
  86. package/dist/src/dashboard/server/data/marketplace-aggregator.d.ts +27 -0
  87. package/dist/src/dashboard/server/data/marketplace-aggregator.d.ts.map +1 -0
  88. package/dist/src/dashboard/server/data/marketplace-aggregator.js +61 -0
  89. package/dist/src/dashboard/server/data/marketplace-aggregator.js.map +1 -0
  90. package/dist/src/dashboard/server/file-watcher.d.ts.map +1 -1
  91. package/dist/src/dashboard/server/file-watcher.js +1 -0
  92. package/dist/src/dashboard/server/file-watcher.js.map +1 -1
  93. package/dist/src/dashboard/types.d.ts +1 -1
  94. package/dist/src/dashboard/types.d.ts.map +1 -1
  95. package/dist/src/init/research/types.d.ts +1 -1
  96. package/dist/src/utils/cleanup-stale-plugins.d.ts +1 -1
  97. package/dist/src/utils/cleanup-stale-plugins.js +1 -1
  98. package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +1 -1
  99. package/dist/src/utils/docs-preview/docusaurus-setup.js +9 -6
  100. package/dist/src/utils/docs-preview/docusaurus-setup.js.map +1 -1
  101. package/dist/src/utils/vskill-resolver.d.ts +24 -0
  102. package/dist/src/utils/vskill-resolver.d.ts.map +1 -0
  103. package/dist/src/utils/vskill-resolver.js +98 -0
  104. package/dist/src/utils/vskill-resolver.js.map +1 -0
  105. package/package.json +3 -1
  106. package/plugins/specweave/PLUGIN.md +1 -1
  107. package/plugins/specweave/hooks/user-prompt-submit.sh +147 -55
  108. package/plugins/specweave/hooks/v2/dispatchers/session-start.sh +1 -1
  109. package/plugins/specweave/skills/npm/SKILL.md +6 -6
  110. package/plugins/specweave/skills/update-instructions/SKILL.md +1 -1
  111. package/plugins/specweave-ado/PLUGIN.md +1 -1
  112. package/plugins/specweave-backend/PLUGIN.md +1 -1
  113. package/plugins/specweave-blockchain/PLUGIN.md +1 -1
  114. package/plugins/specweave-confluent/PLUGIN.md +1 -1
  115. package/plugins/specweave-cost-optimizer/PLUGIN.md +1 -1
  116. package/plugins/specweave-desktop/PLUGIN.md +1 -1
  117. package/plugins/specweave-diagrams/PLUGIN.md +1 -1
  118. package/plugins/specweave-docs/PLUGIN.md +1 -1
  119. package/plugins/specweave-figma/PLUGIN.md +1 -1
  120. package/plugins/specweave-frontend/PLUGIN.md +1 -1
  121. package/plugins/specweave-github/PLUGIN.md +1 -1
  122. package/plugins/specweave-infrastructure/PLUGIN.md +1 -1
  123. package/plugins/specweave-jira/PLUGIN.md +1 -1
  124. package/plugins/specweave-kafka/PLUGIN.md +1 -1
  125. package/plugins/specweave-kafka-streams/PLUGIN.md +1 -1
  126. package/plugins/specweave-kubernetes/PLUGIN.md +1 -1
  127. package/plugins/specweave-ml/PLUGIN.md +1 -1
  128. package/plugins/specweave-mobile/PLUGIN.md +1 -1
  129. package/plugins/specweave-mobile/README.md +2 -2
  130. package/plugins/specweave-n8n/PLUGIN.md +1 -1
  131. package/plugins/specweave-payments/PLUGIN.md +1 -1
  132. package/plugins/specweave-release/PLUGIN.md +1 -1
  133. package/plugins/specweave-release/commands/npm.md +6 -6
  134. package/plugins/specweave-testing/PLUGIN.md +1 -1
  135. package/scripts/preuninstall.cjs +34 -0
  136. package/src/templates/CLAUDE.md.template +3 -3
  137. package/dist/dashboard/assets/index-DNnisM2Y.css +0 -1
  138. package/dist/dashboard/assets/index-ldLuSpfZ.js +0 -11
@@ -1 +1 @@
1
- {"version":3,"file":"docusaurus-setup.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docusaurus-setup.js","sourceRoot":"","sources":["../../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EACL,qBAAqB,EAAE,gBAAgB,EAAE,cAAc,EACvD,cAAc,EAAE,mBAAmB,EACnC,eAAe,EAAE,kBAAkB,EACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAA2D,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEnI,8DAA8D;AAC9D,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,2DAA2D;AAC3D,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAqB;IACzD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAE5E,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAE/D,gCAAgC;IAChC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC7C,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,gCAAgC,WAAW,CAAC,OAAO,KAAK;YACtD,2CAA2C,CAC9C,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,qBAAqB,WAAW,CAAC,OAAO,IAAI,CAAC,CAAC;IAE1D,uEAAuE;IACvE,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAEjE,IAAI,CAAC,KAAK,IAAI,iBAAiB,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,kCAAkC;QAClC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAE7C,gCAAgC;QAChC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAEhD,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,MAAM,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACnD,CAAC;IAED,qEAAqE;IACrE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACrD,MAAM,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IAEnD,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC;QACjC,QAAQ;QACR,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC;QAC/E,QAAQ,EAAE,CAAC;KACZ,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,QAAQ,iBAAiB,QAAQ,eAAe,CAAC,CAAC;IAEjF,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACxD,MAAM,oBAAoB,GAAG;;gBAEf,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;CAevC,CAAC;IACA,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,yEAAyE;IACzE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,EAAE,UAAU,IAAI,EAAE,CAAC;IAC5D,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;aACtC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACZ,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAEhF,2DAA2D;YAC3D,6EAA6E;YAC7E,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;mBAC9D,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,KAAK,qCAAqC,GAAG,CAAC,EAAE,cAAc,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,WAAW,IAAI,EAAE,IAAI,CAAC;gBAChJ,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAC3E,CAAC;YACD,aAAa,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,aAAa,yBAAyB,CAAC,CAAC;IAE3E,+BAA+B;IAC/B,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,MAAM,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACxG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAEhD,6BAA6B;IAC7B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,MAAM,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,mDAAmD;IACnD,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAEjC,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC;IACxC,IAAI,QAAQ,EAAE,CAAC;QACb,iEAAiE;QACjE,IAAI,QAAQ,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChE,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAClE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,kEAAkE;IAClE,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAC5E,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAE1E,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC1C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAElF,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAClE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1D,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC5B,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC3D,WAAW,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,oBAAoB,WAAW,sBAAsB,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,WAAmB,EAAE,QAAkB,UAAU;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAErF,sBAAsB;IACtB,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,KAAK,KAAK,QAAQ;YAChB,CAAC,CAAC,kCAAkC;gBAClC,+CAA+C;YACjD,CAAC,CAAC,2BAA2B;gBAC3B,4DAA4D;gBAC5D,gCAAgC,CACrC,CAAC;IACJ,CAAC;IAED,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9D,MAAM,MAAM,GAAqB;QAC/B,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,iBAAiB,WAAW,EAAE;QACrD,OAAO,EAAE,QAAQ,CAAC,WAAW;QAC7B,GAAG,EAAE,kBAAkB;QACvB,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,WAAW,cAAc,CAAC,KAAK,CAAC,EAAE;QAC5C,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;QACxB,KAAK,EAAE,SAAS;QAChB,cAAc,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC;QACtD,eAAe,EAAE,QAAQ;QACzB,KAAK;KACN,CAAC;IAEF,MAAM,eAAe,CAAC;QACpB,WAAW;QACX,SAAS;QACT,QAAQ;QACR,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB,EACnB,UAAuF,EAAE;IAEzF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAEvC,sBAAsB;IACtB,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CACb,KAAK,KAAK,QAAQ;YAChB,CAAC,CAAC,kCAAkC;gBAClC,+CAA+C;YACjD,CAAC,CAAC,2BAA2B;gBAC3B,4DAA4D;gBAC5D,gCAAgC,CACrC,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,MAAM,MAAM,GAAqB;QAC/B,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,iBAAiB,WAAW,EAAE;QACrD,OAAO,EAAE,QAAQ,CAAC,WAAW;QAC7B,GAAG,EAAE,kBAAkB;QACvB,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,WAAW,cAAc,CAAC,KAAK,CAAC,EAAE;QAC5C,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,SAAS;QAChB,cAAc,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC;QACtD,eAAe,EAAE,QAAQ;QACzB,KAAK;KACN,CAAC;IAEF,MAAM,eAAe,CAAC;QACpB,WAAW;QACX,SAAS;QACT,QAAQ;QACR,MAAM;QACN,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;IAEH,sBAAsB;IACtB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,KAAK,CAAC,CAAC;IAElD,mBAAmB;IACnB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE;QAC7C,IAAI;QACJ,WAAW,EAAE,OAAO,CAAC,WAAW,KAAK,KAAK;KAC3C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,2CAA2C,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAE3D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB,EAAE,QAAkB,UAAU;IACrF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/E,qBAAqB;IACrB,IAAI,CAAC,MAAM,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,6BAA6B;YAC3B,8CAA8C,CACjD,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IAEjE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAEhD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;YAClD,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,SAAS,IAAI,CAAC,CAAC;gBAChD,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAAmB,EAAE,QAAkB,UAAU;IACnF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,CAAC,MAAM,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,QAAkB,UAAU;IAC/E,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,WAAmB,EAAE,QAAkB,UAAU;IAC3E,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Shared vskill path resolution utilities
3
+ *
4
+ * Resolves paths to the vskill CLI and specweave source directory.
5
+ * Used by plugin-installer.ts and llm-plugin-detector.ts.
6
+ */
7
+ /**
8
+ * Resolve the path to vskill CLI entry point.
9
+ * vskill is a sibling repo at repositories/anton-abyzov/vskill/
10
+ *
11
+ * Resolution order:
12
+ * 1. From callerDir (e.g. __dirname) up to specweave root, then sibling vskill
13
+ * 2. From process.cwd() up to monorepo root
14
+ */
15
+ export declare function resolveVskillPath(callerDir?: string): string;
16
+ /**
17
+ * Resolve the specweave source directory (contains .claude-plugin/marketplace.json).
18
+ *
19
+ * Resolution order:
20
+ * 1. From callerDir up to specweave root
21
+ * 2. From process.cwd() up to monorepo root
22
+ */
23
+ export declare function resolveSpecweaveDir(callerDir?: string): string;
24
+ //# sourceMappingURL=vskill-resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vskill-resolver.d.ts","sourceRoot":"","sources":["../../../src/utils/vskill-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CA2B5D;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAsB9D"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Shared vskill path resolution utilities
3
+ *
4
+ * Resolves paths to the vskill CLI and specweave source directory.
5
+ * Used by plugin-installer.ts and llm-plugin-detector.ts.
6
+ */
7
+ import { existsSync, readFileSync } from 'node:fs';
8
+ import * as path from 'path';
9
+ /**
10
+ * Resolve the path to vskill CLI entry point.
11
+ * vskill is a sibling repo at repositories/anton-abyzov/vskill/
12
+ *
13
+ * Resolution order:
14
+ * 1. From callerDir (e.g. __dirname) up to specweave root, then sibling vskill
15
+ * 2. From process.cwd() up to monorepo root
16
+ */
17
+ export function resolveVskillPath(callerDir) {
18
+ // Strategy 1: from caller directory (e.g. __dirname of importing module)
19
+ if (callerDir) {
20
+ const specweaveRoot = findSpecweaveRoot(callerDir);
21
+ if (specweaveRoot) {
22
+ const vskillPath = path.join(specweaveRoot, '..', 'vskill', 'dist', 'cli.js');
23
+ if (existsSync(vskillPath)) {
24
+ return vskillPath;
25
+ }
26
+ }
27
+ }
28
+ // Strategy 2: from cwd
29
+ const cwdRelative = path.resolve(process.cwd(), '../../repositories/anton-abyzov/vskill/dist/cli.js');
30
+ if (existsSync(cwdRelative)) {
31
+ return cwdRelative;
32
+ }
33
+ // Fallback: best guess from callerDir
34
+ if (callerDir) {
35
+ const specweaveRoot = findSpecweaveRoot(callerDir);
36
+ if (specweaveRoot) {
37
+ return path.join(specweaveRoot, '..', 'vskill', 'dist', 'cli.js');
38
+ }
39
+ }
40
+ return cwdRelative;
41
+ }
42
+ /**
43
+ * Resolve the specweave source directory (contains .claude-plugin/marketplace.json).
44
+ *
45
+ * Resolution order:
46
+ * 1. From callerDir up to specweave root
47
+ * 2. From process.cwd() up to monorepo root
48
+ */
49
+ export function resolveSpecweaveDir(callerDir) {
50
+ // Strategy 1: from caller directory
51
+ if (callerDir) {
52
+ const root = findSpecweaveRoot(callerDir);
53
+ if (root && existsSync(root)) {
54
+ return root;
55
+ }
56
+ }
57
+ // Strategy 2: from cwd
58
+ const cwdRelative = path.resolve(process.cwd(), '../../repositories/anton-abyzov/specweave');
59
+ if (existsSync(cwdRelative)) {
60
+ return cwdRelative;
61
+ }
62
+ // Fallback
63
+ if (callerDir) {
64
+ const root = findSpecweaveRoot(callerDir);
65
+ if (root)
66
+ return root;
67
+ }
68
+ return cwdRelative;
69
+ }
70
+ /**
71
+ * Walk up from a directory to find the specweave repo root.
72
+ * Looks for .specweave/ or package.json with specweave name.
73
+ */
74
+ function findSpecweaveRoot(startDir) {
75
+ let dir = path.resolve(startDir);
76
+ const root = path.parse(dir).root;
77
+ // Walk up max 6 levels (typical: src/core/lazy-loading/ = 3-4 levels)
78
+ for (let i = 0; i < 6; i++) {
79
+ const pkgPath = path.join(dir, 'package.json');
80
+ if (existsSync(pkgPath)) {
81
+ try {
82
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
83
+ if (pkg.name === 'specweave' || pkg.name === '@specweave/core') {
84
+ return dir;
85
+ }
86
+ }
87
+ catch {
88
+ // Not valid JSON, keep looking
89
+ }
90
+ }
91
+ const parent = path.dirname(dir);
92
+ if (parent === dir || parent === root)
93
+ break;
94
+ dir = parent;
95
+ }
96
+ return null;
97
+ }
98
+ //# sourceMappingURL=vskill-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vskill-resolver.js","sourceRoot":"","sources":["../../../src/utils/vskill-resolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specweave",
3
- "version": "1.0.271",
3
+ "version": "1.0.273",
4
4
  "description": "Spec-driven development framework for AI coding agents. First-class support for Claude Code — compatible with any LLM-powered coding tool. Living documentation, autonomous execution, quality gates, and multilingual support (9 languages).",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -9,6 +9,7 @@
9
9
  },
10
10
  "scripts": {
11
11
  "preinstall": "node scripts/check-node-version.js || exit 0",
12
+ "preuninstall": "node scripts/preuninstall.cjs",
12
13
  "version": "node scripts/build/auto-changelog.js && git add CHANGELOG.md",
13
14
  "postversion": "echo '✅ Version bumped with CHANGELOG entry'",
14
15
  "clean": "rm -rf dist/",
@@ -80,6 +81,7 @@
80
81
  "dist",
81
82
  "bin",
82
83
  "scripts/check-node-version.js",
84
+ "scripts/preuninstall.cjs",
83
85
  ".claude-plugin",
84
86
  "plugins",
85
87
  "src/templates",
@@ -98,7 +98,7 @@ SpecWeave framework core plugin. Provides increment planning (PM, Architect, Tec
98
98
  ## Installation
99
99
 
100
100
  ```bash
101
- claude plugin install sw@specweave
101
+ vskill add specweave --plugin sw
102
102
  ```
103
103
 
104
104
  ## Requirements
@@ -1,10 +1,14 @@
1
1
  #!/bin/bash
2
2
 
3
- # SpecWeave UserPromptSubmit Hook (v1.0.235 - Project-Scope Initialization Guard)
3
+ # SpecWeave UserPromptSubmit Hook (v1.0.272 - vskill Plugin Installation)
4
4
  # Fires BEFORE user's command executes (prompt-based hook)
5
5
  # Purpose: Auto-load plugins, discipline validation, context injection, instant command execution
6
6
  #
7
7
  # FEATURES:
8
+ # - v1.0.272: VSKILL PLUGIN INSTALL - sw-* plugins now installed via vskill instead of
9
+ # `claude plugin install`. Includes security scanning (tier1 PASS/CONCERNS/FAIL) and
10
+ # vskill.lock fast-path for already-installed plugins. Non-specweave plugins (LSP, etc.)
11
+ # still use `claude plugin install`.
8
12
  # - v1.0.201: LSP CLI FALLBACK INSTRUCTIONS - When LSP requested, instruct Claude to use
9
13
  # `specweave lsp` commands instead of Grep. These use TsServerClient for REAL semantic
10
14
  # analysis. Key fix: "find references" now gets semantic refs, not text matches!
@@ -261,11 +265,22 @@ if [[ "$SCOPE_GUARD_RUN" == "true" ]] && command -v jq >/dev/null 2>&1 && comman
261
265
  if [[ -n "$POLLUTED_PLUGINS" ]]; then
262
266
  MIGRATED=""
263
267
  for plugin_key in $POLLUTED_PLUGINS; do
264
- # Uninstall from user scope, reinstall at project scope
268
+ # Uninstall from user scope
265
269
  if timeout 5 claude plugin uninstall "$plugin_key" >/dev/null 2>&1; then
266
- if timeout 10 claude plugin install "$plugin_key" --scope project >/dev/null 2>&1; then
267
- [[ -n "$MIGRATED" ]] && MIGRATED="$MIGRATED, "
268
- MIGRATED="${MIGRATED}${plugin_key}"
270
+ # v1.0.272: sw-* plugins reinstall via vskill, LSP plugins via claude CLI
271
+ if [[ "$plugin_key" == sw-*@specweave ]]; then
272
+ # Extract plugin name from "sw-name@specweave" format
273
+ _sw_name="${plugin_key%%@*}"
274
+ if install_plugin_via_vskill "$_sw_name"; then
275
+ [[ -n "$MIGRATED" ]] && MIGRATED="$MIGRATED, "
276
+ MIGRATED="${MIGRATED}${plugin_key}"
277
+ fi
278
+ else
279
+ # LSP and other plugins: reinstall via claude CLI at project scope
280
+ if timeout 10 claude plugin install "$plugin_key" --scope project >/dev/null 2>&1; then
281
+ [[ -n "$MIGRATED" ]] && MIGRATED="$MIGRATED, "
282
+ MIGRATED="${MIGRATED}${plugin_key}"
283
+ fi
269
284
  fi
270
285
  fi
271
286
  done
@@ -409,6 +424,76 @@ output_approve_with_context() {
409
424
  # was eliminated to save ~800 chars of context budget per turn. The skill reads
410
425
  # the user's prompt from conversation context (it's already there).
411
426
 
427
+ # Helper: Check if sw-* plugin is in vskill.lock (fast-path skip) (v1.0.272)
428
+ # vskill.lock is the SOURCE OF TRUTH for vskill-installed plugins.
429
+ # Args: $1=plugin name (e.g., "sw-frontend")
430
+ # Returns: 0 if in lockfile, 1 if not
431
+ check_plugin_in_vskill_lock() {
432
+ local plugin="$1"
433
+ local lockfile="vskill.lock"
434
+
435
+ # Check project-local lockfile first
436
+ [[ ! -f "$lockfile" ]] && return 1
437
+
438
+ # Must have jq for reliable JSON parsing
439
+ if ! command -v jq >/dev/null 2>&1; then
440
+ # Fallback: grep for plugin name in lockfile
441
+ grep -q "\"${plugin}\"" "$lockfile" 2>/dev/null && return 0
442
+ return 1
443
+ fi
444
+
445
+ # Check if plugin exists in lockfile skills
446
+ local has_skill
447
+ has_skill=$(jq -r --arg key "$plugin" '.skills[$key] // null' "$lockfile" 2>/dev/null)
448
+
449
+ if [[ "$has_skill" != "null" ]] && [[ -n "$has_skill" ]]; then
450
+ return 0 # Already installed via vskill
451
+ else
452
+ return 1 # Not in lockfile
453
+ fi
454
+ }
455
+
456
+ # Helper: Install sw-* plugin via vskill (v1.0.272)
457
+ # Uses npx vskill add with --plugin and --plugin-dir flags.
458
+ # Args: $1=plugin name (e.g., "sw-frontend")
459
+ # Returns: 0 if installed successfully, 1 if failed
460
+ # Sets VSKILL_INSTALL_OUTPUT with stdout/stderr for scan result display
461
+ install_plugin_via_vskill() {
462
+ local plugin="$1"
463
+ local plugin_dir="${HOME}/.claude/plugins/marketplaces/specweave"
464
+
465
+ # Verify marketplace directory exists
466
+ if [[ ! -d "$plugin_dir" ]] || [[ ! -f "$plugin_dir/.claude-plugin/marketplace.json" ]]; then
467
+ VSKILL_INSTALL_OUTPUT="marketplace directory not found at $plugin_dir"
468
+ return 1
469
+ fi
470
+
471
+ VSKILL_INSTALL_OUTPUT=""
472
+ if command -v npx >/dev/null 2>&1; then
473
+ if command -v timeout >/dev/null 2>&1; then
474
+ VSKILL_INSTALL_OUTPUT=$(timeout 15 npx vskill add "$plugin_dir" --plugin "$plugin" --plugin-dir "$plugin_dir" --force 2>&1) || true
475
+ else
476
+ VSKILL_INSTALL_OUTPUT=$(npx vskill add "$plugin_dir" --plugin "$plugin" --plugin-dir "$plugin_dir" --force 2>&1) || true
477
+ fi
478
+ else
479
+ # Fallback: try node with direct path
480
+ local vskill_js="${HOME}/.claude/plugins/marketplaces/specweave/node_modules/.bin/vskill"
481
+ if [[ -f "$vskill_js" ]]; then
482
+ VSKILL_INSTALL_OUTPUT=$(timeout 15 "$vskill_js" add "$plugin_dir" --plugin "$plugin" --plugin-dir "$plugin_dir" --force 2>&1) || true
483
+ else
484
+ VSKILL_INSTALL_OUTPUT="vskill not available (npx not found)"
485
+ return 1
486
+ fi
487
+ fi
488
+
489
+ # Check if install succeeded
490
+ if echo "$VSKILL_INSTALL_OUTPUT" | grep -qiE "(installed|Installed)"; then
491
+ return 0
492
+ else
493
+ return 1
494
+ fi
495
+ }
496
+
412
497
  # Helper: Check if plugin is installed by reading installed_plugins.json (v1.0.175)
413
498
  # This is the SOURCE OF TRUTH - more reliable than `claude plugin list` which can have timing issues.
414
499
  # Args: $1=plugin name (e.g., "sw-frontend"), $2=marketplace (e.g., "specweave")
@@ -1090,7 +1175,7 @@ if [[ "${SPECWEAVE_DISABLE_AUTO_LOAD:-0}" != "1" ]] && [[ "${SPECWEAVE_DISABLE_H
1090
1175
  if [[ "$PLUGIN_SUGGEST_ONLY" == "true" ]]; then
1091
1176
  PLUGIN_LIST=$(echo "$DETECTED_PLUGINS" | tr ' ' ', ' | sed 's/,$//')
1092
1177
  AUTOLOAD_PLUGINS_MSG="💡 **Suggested plugins**: ${PLUGIN_LIST}\\n"
1093
- AUTOLOAD_PLUGINS_MSG="${AUTOLOAD_PLUGINS_MSG}To install: \`claude plugin install <plugin>@specweave\`\\n"
1178
+ AUTOLOAD_PLUGINS_MSG="${AUTOLOAD_PLUGINS_MSG}To install: \`npx vskill add ~/.claude/plugins/marketplaces/specweave --plugin <plugin> --plugin-dir ~/.claude/plugins/marketplaces/specweave --force\`\\n"
1094
1179
  AUTOLOAD_PLUGINS_MSG="${AUTOLOAD_PLUGINS_MSG}After installing, restart Claude Code session to use new plugins.\\n"
1095
1180
  LLM_REASON=$(echo "$JSON_OUTPUT" | jq -r '.reasoning // empty' 2>/dev/null)
1096
1181
  [[ -n "$LLM_REASON" ]] && AUTOLOAD_PLUGINS_MSG="${AUTOLOAD_PLUGINS_MSG}*${LLM_REASON}*\\n\\n---\\n"
@@ -1115,66 +1200,73 @@ if [[ "${SPECWEAVE_DISABLE_AUTO_LOAD:-0}" != "1" ]] && [[ "${SPECWEAVE_DISABLE_H
1115
1200
  [[ -z "$plugin" ]] && continue
1116
1201
 
1117
1202
  # v1.0.159: Determine marketplace based on plugin name
1118
- # sw-* plugins → @specweave, others → @claude-plugins-official
1203
+ # sw-* plugins → @specweave (via vskill), others → @claude-plugins-official (via claude CLI)
1119
1204
  # v1.0.240 (0198): context7/playwright removed from auto-install
1205
+ # v1.0.272 (0232): sw-* plugins now installed via vskill instead of claude plugin install
1120
1206
  if [[ "$plugin" == sw-* ]] || [[ "$plugin" == "sw" ]]; then
1121
- MARKETPLACE="specweave"
1122
- PLUGIN_SCOPE="$SPECWEAVE_PLUGIN_SCOPE"
1207
+ # ---- SW-* PLUGINS: Install via vskill (v1.0.272) ----
1208
+ # Fast-path: check vskill.lock first (no CLI invocation needed)
1209
+ if check_plugin_in_vskill_lock "$plugin"; then
1210
+ [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1211
+ PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1212
+ elif check_plugin_installed_from_json "$plugin" "specweave"; then
1213
+ # Fallback: check installed_plugins.json (legacy installations)
1214
+ [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1215
+ PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1216
+ else
1217
+ # Not installed - install via vskill add
1218
+ if install_plugin_via_vskill "$plugin"; then
1219
+ [[ -n "$PLUGINS_INSTALLED" ]] && PLUGINS_INSTALLED="$PLUGINS_INSTALLED, "
1220
+ PLUGINS_INSTALLED="${PLUGINS_INSTALLED}${plugin}"
1221
+
1222
+ # Display scan result if available
1223
+ if [[ -n "$VSKILL_INSTALL_OUTPUT" ]]; then
1224
+ SCAN_RESULT=$(echo "$VSKILL_INSTALL_OUTPUT" | grep -oE "Score:[[:space:]]*[0-9]+/100[[:space:]]*Verdict:[[:space:]]*[A-Z]+" || true)
1225
+ [[ -n "$SCAN_RESULT" ]] && echo "[$(date -Iseconds)] vskill | ${plugin} | ${SCAN_RESULT}" >> "$LAZY_LOAD_LOG"
1226
+ fi
1227
+ else
1228
+ echo "[$(date -Iseconds)] vskill | ${plugin} | FAILED: ${VSKILL_INSTALL_OUTPUT:-unknown}" >> "$LAZY_LOAD_LOG"
1229
+ fi
1230
+ fi
1123
1231
  else
1232
+ # ---- NON-SW PLUGINS: Install via claude CLI (unchanged) ----
1124
1233
  MARKETPLACE="claude-plugins-official"
1125
1234
  PLUGIN_SCOPE="$DEFAULT_PLUGIN_SCOPE"
1126
- fi
1235
+ FULL_PLUGIN_NAME="${plugin}@${MARKETPLACE}"
1236
+ ALREADY_INSTALLED=false
1127
1237
 
1128
- # v1.0.175: Check if plugin is ALREADY installed (SOURCE OF TRUTH)
1129
- # Primary: Check installed_plugins.json (reliable, fast, no timing issues)
1130
- # Fallback: Check `claude plugin list` if jq not available
1131
- FULL_PLUGIN_NAME="${plugin}@${MARKETPLACE}"
1132
- ALREADY_INSTALLED=false
1133
-
1134
- # Try JSON registry first (most reliable)
1135
- if check_plugin_installed_from_json "$plugin" "$MARKETPLACE"; then
1136
- ALREADY_INSTALLED=true
1137
- else
1138
- # Fallback to CLI check (if jq not available or registry file missing)
1139
- # Give it a longer timeout (10s) to reduce timing issues
1140
- CURRENT_PLUGINS=""
1141
- if command -v timeout >/dev/null 2>&1; then
1142
- CURRENT_PLUGINS=$(timeout 10 claude plugin list 2>/dev/null | grep -E "^ ❯ " | sed 's/^ ❯ //' || true)
1143
- else
1144
- CURRENT_PLUGINS=$(claude plugin list 2>/dev/null | grep -E "^ ❯ " | sed 's/^ ❯ //' || true)
1145
- fi
1146
-
1147
- if echo "$CURRENT_PLUGINS" | grep -q "^${FULL_PLUGIN_NAME}$"; then
1238
+ if check_plugin_installed_from_json "$plugin" "$MARKETPLACE"; then
1148
1239
  ALREADY_INSTALLED=true
1149
- fi
1150
- fi
1151
-
1152
- if [[ "$ALREADY_INSTALLED" == "true" ]]; then
1153
- # Plugin already installed - no need to call install, just track it
1154
- [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1155
- PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1156
- else
1157
- # Plugin not installed - install it with appropriate scope
1158
- # v1.0.198: Apply scope based on plugin type
1159
- # Use longer timeout (10s) to ensure installation completes
1160
- if command -v timeout >/dev/null 2>&1; then
1161
- OUT=$(timeout 10 claude plugin install "${FULL_PLUGIN_NAME}" --scope "$PLUGIN_SCOPE" 2>&1) || true
1162
1240
  else
1163
- OUT=$(claude plugin install "${FULL_PLUGIN_NAME}" --scope "$PLUGIN_SCOPE" 2>&1) || true
1241
+ CURRENT_PLUGINS=""
1242
+ if command -v timeout >/dev/null 2>&1; then
1243
+ CURRENT_PLUGINS=$(timeout 10 claude plugin list 2>/dev/null | grep -E "^ ❯ " | sed 's/^ ❯ //' || true)
1244
+ else
1245
+ CURRENT_PLUGINS=$(claude plugin list 2>/dev/null | grep -E "^ ❯ " | sed 's/^ ❯ //' || true)
1246
+ fi
1247
+ if echo "$CURRENT_PLUGINS" | grep -q "^${FULL_PLUGIN_NAME}$"; then
1248
+ ALREADY_INSTALLED=true
1249
+ fi
1164
1250
  fi
1165
1251
 
1166
- # Only mark as installed if we see "success" or "installed" in output
1167
- if echo "$OUT" | grep -qiE "(success|installed)"; then
1168
- # Double-check: verify it actually got installed
1169
- # Re-check the registry to confirm (guard against false positives)
1170
- sleep 0.5 # Brief delay for registry to update
1171
- if check_plugin_installed_from_json "$plugin" "$MARKETPLACE"; then
1172
- [[ -n "$PLUGINS_INSTALLED" ]] && PLUGINS_INSTALLED="$PLUGINS_INSTALLED, "
1173
- PLUGINS_INSTALLED="${PLUGINS_INSTALLED}${plugin}"
1252
+ if [[ "$ALREADY_INSTALLED" == "true" ]]; then
1253
+ [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1254
+ PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1255
+ else
1256
+ if command -v timeout >/dev/null 2>&1; then
1257
+ OUT=$(timeout 10 claude plugin install "${FULL_PLUGIN_NAME}" --scope "$PLUGIN_SCOPE" 2>&1) || true
1174
1258
  else
1175
- # Install claimed success but plugin not in registry - treat as already installed
1176
- [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1177
- PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1259
+ OUT=$(claude plugin install "${FULL_PLUGIN_NAME}" --scope "$PLUGIN_SCOPE" 2>&1) || true
1260
+ fi
1261
+ if echo "$OUT" | grep -qiE "(success|installed)"; then
1262
+ sleep 0.5
1263
+ if check_plugin_installed_from_json "$plugin" "$MARKETPLACE"; then
1264
+ [[ -n "$PLUGINS_INSTALLED" ]] && PLUGINS_INSTALLED="$PLUGINS_INSTALLED, "
1265
+ PLUGINS_INSTALLED="${PLUGINS_INSTALLED}${plugin}"
1266
+ else
1267
+ [[ -n "$PLUGINS_ALREADY" ]] && PLUGINS_ALREADY="$PLUGINS_ALREADY, "
1268
+ PLUGINS_ALREADY="${PLUGINS_ALREADY}${plugin}"
1269
+ fi
1178
1270
  fi
1179
1271
  fi
1180
1272
  fi
@@ -202,7 +202,7 @@ fi
202
202
  # When user submits a prompt like "Build React dashboard", the LLM analyzes
203
203
  # the request and installs relevant plugins (sw-frontend, etc.)
204
204
  #
205
- # To install plugins manually: claude plugin install sw-frontend@specweave
205
+ # To install plugins manually: vskill install sw-frontend@specweave
206
206
 
207
207
  # === LEGACY STATE CLEANUP (v1.0.148) ===
208
208
  # Clean up old processor state files on session start
@@ -224,19 +224,19 @@ The release is incomplete without a GitHub Release on the repository's Releases
224
224
  # Get the new version
225
225
  NEW_VERSION=$(node -p "require('./package.json').version")
226
226
 
227
- # Extract release notes from CHANGELOG.md (if available)
228
- if [ -f CHANGELOG.md ] && grep -q "## \[$NEW_VERSION\]" CHANGELOG.md; then
227
+ # Extract release notes from CHANGELOG.md (if available and not a placeholder)
228
+ if [ -f CHANGELOG.md ] && grep -q "## \[$NEW_VERSION\]" CHANGELOG.md && ! grep -A5 "## \[$NEW_VERSION\]" CHANGELOG.md | grep -q "TODO: Describe your changes here"; then
229
229
  # Extract notes between current version header and next version header
230
230
  awk "/## \[$NEW_VERSION\]/{flag=1; next} /^## \[/{flag=0} flag" CHANGELOG.md > /tmp/release-notes.md
231
231
  else
232
- # Generate minimal release notes from recent commits
233
- echo "## What's Changed" > /tmp/release-notes.md
232
+ # Generate release notes from recent commits (CHANGELOG missing or has TODO placeholder)
233
+ echo "### Changes" > /tmp/release-notes.md
234
234
  echo "" >> /tmp/release-notes.md
235
235
  LAST_TAG=$(git describe --tags --abbrev=0 HEAD^ 2>/dev/null || echo "")
236
236
  if [ -n "$LAST_TAG" ]; then
237
- git log --oneline "$LAST_TAG"..HEAD~1 --no-merges | head -10 | sed 's/^[a-f0-9]* /- /' >> /tmp/release-notes.md
237
+ git log --oneline "$LAST_TAG"..HEAD~1 --no-merges | head -15 | sed 's/^[a-f0-9]* /- /' >> /tmp/release-notes.md
238
238
  else
239
- git log --oneline -10 --no-merges | sed 's/^[a-f0-9]* /- /' >> /tmp/release-notes.md
239
+ git log --oneline -15 --no-merges | sed 's/^[a-f0-9]* /- /' >> /tmp/release-notes.md
240
240
  fi
241
241
  fi
242
242
 
@@ -17,7 +17,7 @@ Smart merge for CLAUDE.md and AGENTS.md instruction files.
17
17
 
18
18
  ## When to Use
19
19
 
20
- - After running `specweave refresh-marketplace`
20
+ - After running `specweave refresh-plugins`
21
21
  - After upgrading SpecWeave version (`npm update -g specweave`)
22
22
  - When CLAUDE.md or AGENTS.md seem outdated
23
23
  - To sync instruction files with latest framework features
@@ -29,7 +29,7 @@ Seamless integration between SpecWeave increments and Azure DevOps work items. E
29
29
  ## Installation
30
30
 
31
31
  ```bash
32
- claude plugin install sw-ado@specweave
32
+ vskill add specweave --plugin sw-ado
33
33
  ```
34
34
 
35
35
  ## Requirements
@@ -24,7 +24,7 @@ Full-stack backend development across 7 languages and frameworks: Node.js, .NET,
24
24
  ## Installation
25
25
 
26
26
  ```bash
27
- claude plugin install sw-backend@specweave
27
+ vskill add specweave --plugin sw-backend
28
28
  ```
29
29
 
30
30
  ## Requirements
@@ -17,7 +17,7 @@ Blockchain and Web3 development expertise covering smart contracts, DeFi, NFTs,
17
17
  ## Installation
18
18
 
19
19
  ```bash
20
- claude plugin install sw-blockchain@specweave
20
+ vskill add specweave --plugin sw-blockchain
21
21
  ```
22
22
 
23
23
  ## Requirements
@@ -25,7 +25,7 @@ Expert knowledge and guidance for Confluent Kafka ecosystem including Kafka Conn
25
25
  ## Installation
26
26
 
27
27
  ```bash
28
- claude plugin install sw-confluent@specweave
28
+ vskill add specweave --plugin sw-confluent
29
29
  ```
30
30
 
31
31
  ## Requirements
@@ -25,7 +25,7 @@ FinOps expertise for optimizing cloud costs across AWS, Azure, and GCP. Provides
25
25
  ## Installation
26
26
 
27
27
  ```bash
28
- claude plugin install sw-cost-optimizer@specweave
28
+ vskill add specweave --plugin sw-cost-optimizer
29
29
  ```
30
30
 
31
31
  ## Requirements
@@ -17,7 +17,7 @@ Desktop application development with Electron and Tauri. Build cross-platform de
17
17
  ## Installation
18
18
 
19
19
  ```bash
20
- claude plugin install sw-desktop@specweave
20
+ vskill add specweave --plugin sw-desktop
21
21
  ```
22
22
 
23
23
  ## Requirements
@@ -24,7 +24,7 @@ Create and manage architecture diagrams following C4 Model conventions and SpecW
24
24
  ## Installation
25
25
 
26
26
  ```bash
27
- claude plugin install sw-diagrams@specweave
27
+ vskill add specweave --plugin sw-diagrams
28
28
  ```
29
29
 
30
30
  ## Requirements
@@ -21,7 +21,7 @@ Complete documentation ecosystem for technical writers, product teams, and devel
21
21
  ## Installation
22
22
 
23
23
  ```bash
24
- claude plugin install sw-docs@specweave
24
+ vskill add specweave --plugin sw-docs
25
25
  ```
26
26
 
27
27
  ## Requirements
@@ -23,7 +23,7 @@ No skills (commands-only plugin)
23
23
  ## Installation
24
24
 
25
25
  ```bash
26
- claude plugin install sw-figma@specweave
26
+ vskill add specweave --plugin sw-figma
27
27
  ```
28
28
 
29
29
  ## Requirements
@@ -22,7 +22,7 @@ Complete frontend development ecosystem for React, Next.js, Vue, and Angular. Pr
22
22
  ## Installation
23
23
 
24
24
  ```bash
25
- claude plugin install sw-frontend@specweave
25
+ vskill add specweave --plugin sw-frontend
26
26
  ```
27
27
 
28
28
  ## Requirements
@@ -20,7 +20,7 @@ GitHub integration plugin for issue standardization, task tracking, multi-reposi
20
20
  ## Installation
21
21
 
22
22
  ```bash
23
- claude plugin install sw-github@specweave
23
+ vskill add specweave --plugin sw-github
24
24
  ```
25
25
 
26
26
  ## Requirements