opkg 0.9.2 → 0.9.4

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 (404) hide show
  1. package/.claude/agents/code-reviewer.md +171 -0
  2. package/.claude/commands/commit-push-pr.md +20 -0
  3. package/.claude/commands/{specs/read.md → read-specs.md} +1 -1
  4. package/.claude/commands/{specs/update.md → update-specs.md} +4 -0
  5. package/.claude/skills/code-review-excellence/SKILL.md +538 -0
  6. package/README.md +2 -2
  7. package/package.json +3 -1
  8. package/packages/cli/dist/add-IJAPFHIX.js +624 -0
  9. package/packages/cli/dist/add-IJAPFHIX.js.map +7 -0
  10. package/packages/cli/dist/add-LLUNFLJI.js +624 -0
  11. package/packages/cli/dist/add-LLUNFLJI.js.map +7 -0
  12. package/packages/cli/dist/add-U44SL3OR.js +624 -0
  13. package/packages/cli/dist/add-U44SL3OR.js.map +7 -0
  14. package/packages/cli/dist/chunk-23VBP5L6.js +371 -0
  15. package/packages/cli/dist/chunk-23VBP5L6.js.map +7 -0
  16. package/packages/cli/dist/chunk-2SVHLF5C.js +1419 -0
  17. package/packages/cli/dist/chunk-2SVHLF5C.js.map +7 -0
  18. package/packages/cli/dist/chunk-37256POU.js +99 -0
  19. package/packages/cli/dist/chunk-37256POU.js.map +7 -0
  20. package/packages/cli/dist/chunk-3PZRVA6O.js +196 -0
  21. package/packages/cli/dist/chunk-3PZRVA6O.js.map +7 -0
  22. package/packages/cli/dist/chunk-427DCURL.js +155 -0
  23. package/packages/cli/dist/chunk-427DCURL.js.map +7 -0
  24. package/packages/cli/dist/chunk-4B5HJLP2.js +48 -0
  25. package/packages/cli/dist/chunk-4B5HJLP2.js.map +7 -0
  26. package/packages/cli/dist/chunk-4OWT3YEG.js +413 -0
  27. package/packages/cli/dist/chunk-4OWT3YEG.js.map +7 -0
  28. package/packages/cli/dist/chunk-4RIBTBXI.js +568 -0
  29. package/packages/cli/dist/chunk-4RIBTBXI.js.map +7 -0
  30. package/packages/cli/dist/chunk-4X2EJHJN.js +63 -0
  31. package/packages/cli/dist/chunk-4X2EJHJN.js.map +7 -0
  32. package/packages/cli/dist/chunk-6CYW66HD.js +1136 -0
  33. package/packages/cli/dist/chunk-6CYW66HD.js.map +7 -0
  34. package/packages/cli/dist/chunk-6DITYAFA.js +172 -0
  35. package/packages/cli/dist/chunk-6DITYAFA.js.map +7 -0
  36. package/packages/cli/dist/chunk-7KEAKEVZ.js +568 -0
  37. package/packages/cli/dist/chunk-7KEAKEVZ.js.map +7 -0
  38. package/packages/cli/dist/chunk-ABFUD25D.js +61 -0
  39. package/packages/cli/dist/chunk-ABFUD25D.js.map +7 -0
  40. package/packages/cli/dist/chunk-AR7GJCG6.js +274 -0
  41. package/packages/cli/dist/chunk-AR7GJCG6.js.map +7 -0
  42. package/packages/cli/dist/chunk-AYTGQCXH.js +86 -0
  43. package/packages/cli/dist/chunk-AYTGQCXH.js.map +7 -0
  44. package/packages/cli/dist/chunk-BROJ6OUT.js +631 -0
  45. package/packages/cli/dist/chunk-BROJ6OUT.js.map +7 -0
  46. package/packages/cli/dist/chunk-BVVSU7QD.js +23 -0
  47. package/packages/cli/dist/chunk-BVVSU7QD.js.map +7 -0
  48. package/packages/cli/dist/chunk-C6FY55UP.js +108 -0
  49. package/packages/cli/dist/chunk-C6FY55UP.js.map +7 -0
  50. package/packages/cli/dist/chunk-CVA64SXK.js +1136 -0
  51. package/packages/cli/dist/chunk-CVA64SXK.js.map +7 -0
  52. package/packages/cli/dist/chunk-D3O7LY2Q.js +1151 -0
  53. package/packages/cli/dist/chunk-D3O7LY2Q.js.map +7 -0
  54. package/packages/cli/dist/chunk-D6LEPODL.js +413 -0
  55. package/packages/cli/dist/chunk-D6LEPODL.js.map +7 -0
  56. package/packages/cli/dist/chunk-DEC24S7E.js +186 -0
  57. package/packages/cli/dist/chunk-DEC24S7E.js.map +7 -0
  58. package/packages/cli/dist/chunk-FMVVJH5M.js +371 -0
  59. package/packages/cli/dist/chunk-FMVVJH5M.js.map +7 -0
  60. package/packages/cli/dist/chunk-GDVFS3YP.js +130 -0
  61. package/packages/cli/dist/chunk-GDVFS3YP.js.map +7 -0
  62. package/packages/cli/dist/chunk-GEP2G5HF.js +31 -0
  63. package/packages/cli/dist/chunk-GEP2G5HF.js.map +7 -0
  64. package/packages/cli/dist/chunk-GSWHZBT2.js +62 -0
  65. package/packages/cli/dist/chunk-GSWHZBT2.js.map +7 -0
  66. package/packages/cli/dist/chunk-HTYHJA3B.js +61 -0
  67. package/packages/cli/dist/chunk-HTYHJA3B.js.map +7 -0
  68. package/packages/cli/dist/chunk-HYKYECAE.js +222 -0
  69. package/packages/cli/dist/chunk-HYKYECAE.js.map +7 -0
  70. package/packages/cli/dist/chunk-I7FEAHB4.js +100 -0
  71. package/packages/cli/dist/chunk-I7FEAHB4.js.map +7 -0
  72. package/packages/cli/dist/chunk-IHVZ5AUJ.js +107 -0
  73. package/packages/cli/dist/chunk-IHVZ5AUJ.js.map +7 -0
  74. package/packages/cli/dist/chunk-KI7FDU3H.js +99 -0
  75. package/packages/cli/dist/chunk-KI7FDU3H.js.map +7 -0
  76. package/packages/cli/dist/chunk-L5GRJQBS.js +32 -0
  77. package/packages/cli/dist/chunk-L5GRJQBS.js.map +7 -0
  78. package/packages/cli/dist/chunk-LHEAUDJL.js +302 -0
  79. package/packages/cli/dist/chunk-LHEAUDJL.js.map +7 -0
  80. package/packages/cli/dist/chunk-MIURCESJ.js +48 -0
  81. package/packages/cli/dist/chunk-MIURCESJ.js.map +7 -0
  82. package/packages/cli/dist/chunk-N43IXOND.js +732 -0
  83. package/packages/cli/dist/chunk-N43IXOND.js.map +7 -0
  84. package/packages/cli/dist/chunk-OUZRMGPV.js +274 -0
  85. package/packages/cli/dist/chunk-OUZRMGPV.js.map +7 -0
  86. package/packages/cli/dist/chunk-PSQXKAL4.js +371 -0
  87. package/packages/cli/dist/chunk-PSQXKAL4.js.map +7 -0
  88. package/packages/cli/dist/chunk-PUDRKDVZ.js +1419 -0
  89. package/packages/cli/dist/chunk-PUDRKDVZ.js.map +7 -0
  90. package/packages/cli/dist/chunk-RAKMX654.js +631 -0
  91. package/packages/cli/dist/chunk-RAKMX654.js.map +7 -0
  92. package/packages/cli/dist/chunk-RSFLK2TP.js +195 -0
  93. package/packages/cli/dist/chunk-RSFLK2TP.js.map +7 -0
  94. package/packages/cli/dist/chunk-S26PR2BS.js +99 -0
  95. package/packages/cli/dist/chunk-S26PR2BS.js.map +7 -0
  96. package/packages/cli/dist/chunk-U7FW7SXX.js +568 -0
  97. package/packages/cli/dist/chunk-U7FW7SXX.js.map +7 -0
  98. package/packages/cli/dist/chunk-VKM6K5TN.js +413 -0
  99. package/packages/cli/dist/chunk-VKM6K5TN.js.map +7 -0
  100. package/packages/cli/dist/chunk-VKNJG4JN.js +253 -0
  101. package/packages/cli/dist/chunk-VKNJG4JN.js.map +7 -0
  102. package/packages/cli/dist/chunk-VQ2KY6CK.js +113 -0
  103. package/packages/cli/dist/chunk-VQ2KY6CK.js.map +7 -0
  104. package/packages/cli/dist/chunk-VQDTXLOX.js +1312 -0
  105. package/packages/cli/dist/chunk-VQDTXLOX.js.map +7 -0
  106. package/packages/cli/dist/chunk-VXNS3X5O.js +60 -0
  107. package/packages/cli/dist/chunk-VXNS3X5O.js.map +7 -0
  108. package/packages/cli/dist/chunk-WF7H2YDU.js +376 -0
  109. package/packages/cli/dist/chunk-WF7H2YDU.js.map +7 -0
  110. package/packages/cli/dist/chunk-WNRXZLWW.js +266 -0
  111. package/packages/cli/dist/chunk-WNRXZLWW.js.map +7 -0
  112. package/packages/cli/dist/chunk-WT4VVCXM.js +1121 -0
  113. package/packages/cli/dist/chunk-WT4VVCXM.js.map +7 -0
  114. package/packages/cli/dist/configure-3AZUMDJZ.js +107 -0
  115. package/packages/cli/dist/configure-3AZUMDJZ.js.map +7 -0
  116. package/packages/cli/dist/configure-D722JQOD.js +107 -0
  117. package/packages/cli/dist/configure-D722JQOD.js.map +7 -0
  118. package/packages/cli/dist/configure-IU5H7XD6.js +107 -0
  119. package/packages/cli/dist/configure-IU5H7XD6.js.map +7 -0
  120. package/packages/cli/dist/file-format-detector-PXCIAKTK.js +22 -0
  121. package/packages/cli/dist/file-format-detector-PXCIAKTK.js.map +7 -0
  122. package/packages/cli/dist/index.js +17 -17
  123. package/packages/cli/dist/install-EZNWMLJR.js +7581 -0
  124. package/packages/cli/dist/install-EZNWMLJR.js.map +7 -0
  125. package/packages/cli/dist/install-F5ANFUBX.js +7577 -0
  126. package/packages/cli/dist/install-F5ANFUBX.js.map +7 -0
  127. package/packages/cli/dist/install-JSXEPPC2.js +7104 -0
  128. package/packages/cli/dist/install-JSXEPPC2.js.map +7 -0
  129. package/packages/cli/dist/install-QHEBX7JH.js +7101 -0
  130. package/packages/cli/dist/install-QHEBX7JH.js.map +7 -0
  131. package/packages/cli/dist/list-DMOUATYI.js +327 -0
  132. package/packages/cli/dist/list-DMOUATYI.js.map +7 -0
  133. package/packages/cli/dist/list-UESSCB7Y.js +327 -0
  134. package/packages/cli/dist/list-UESSCB7Y.js.map +7 -0
  135. package/packages/cli/dist/list-XR7RSJFS.js +327 -0
  136. package/packages/cli/dist/list-XR7RSJFS.js.map +7 -0
  137. package/packages/cli/dist/login-EYZ2SOYZ.js +150 -0
  138. package/packages/cli/dist/login-EYZ2SOYZ.js.map +7 -0
  139. package/packages/cli/dist/login-JWCSTAEU.js +150 -0
  140. package/packages/cli/dist/login-JWCSTAEU.js.map +7 -0
  141. package/packages/cli/dist/login-NRKHXZKM.js +150 -0
  142. package/packages/cli/dist/login-NRKHXZKM.js.map +7 -0
  143. package/packages/cli/dist/logout-HDMYRXIE.js +40 -0
  144. package/packages/cli/dist/logout-HDMYRXIE.js.map +7 -0
  145. package/packages/cli/dist/logout-SYHXCVCQ.js +40 -0
  146. package/packages/cli/dist/logout-SYHXCVCQ.js.map +7 -0
  147. package/packages/cli/dist/logout-X3XUUOH5.js +40 -0
  148. package/packages/cli/dist/logout-X3XUUOH5.js.map +7 -0
  149. package/packages/cli/dist/new-3LTFKDTQ.js +277 -0
  150. package/packages/cli/dist/new-3LTFKDTQ.js.map +7 -0
  151. package/packages/cli/dist/new-F46OSD72.js +277 -0
  152. package/packages/cli/dist/new-F46OSD72.js.map +7 -0
  153. package/packages/cli/dist/new-OPCCLNL2.js +277 -0
  154. package/packages/cli/dist/new-OPCCLNL2.js.map +7 -0
  155. package/packages/cli/dist/package-marker-detector-T5O5YD2E.js +80 -0
  156. package/packages/cli/dist/package-marker-detector-T5O5YD2E.js.map +7 -0
  157. package/packages/cli/dist/package-yml-QWZIJDYU.js +16 -0
  158. package/packages/cli/dist/package-yml-QWZIJDYU.js.map +7 -0
  159. package/packages/cli/dist/plugin-naming-YP2I4NPA.js +29 -0
  160. package/packages/cli/dist/plugin-naming-YP2I4NPA.js.map +7 -0
  161. package/packages/cli/dist/publish-4H43PCSG.js +619 -0
  162. package/packages/cli/dist/publish-4H43PCSG.js.map +7 -0
  163. package/packages/cli/dist/publish-RULKLNUX.js +619 -0
  164. package/packages/cli/dist/publish-RULKLNUX.js.map +7 -0
  165. package/packages/cli/dist/publish-URWY2P3E.js +619 -0
  166. package/packages/cli/dist/publish-URWY2P3E.js.map +7 -0
  167. package/packages/cli/dist/remove-BD52BHR2.js +542 -0
  168. package/packages/cli/dist/remove-BD52BHR2.js.map +7 -0
  169. package/packages/cli/dist/remove-G5NRC7LD.js +542 -0
  170. package/packages/cli/dist/remove-G5NRC7LD.js.map +7 -0
  171. package/packages/cli/dist/remove-TC3FQUYQ.js +542 -0
  172. package/packages/cli/dist/remove-TC3FQUYQ.js.map +7 -0
  173. package/packages/cli/dist/resource-discoverer-4X4RY43E.js +17 -0
  174. package/packages/cli/dist/resource-discoverer-4X4RY43E.js.map +7 -0
  175. package/packages/cli/dist/save-24TESYKI.js +1728 -0
  176. package/packages/cli/dist/save-24TESYKI.js.map +7 -0
  177. package/packages/cli/dist/save-N3QWF2WN.js +1728 -0
  178. package/packages/cli/dist/save-N3QWF2WN.js.map +7 -0
  179. package/packages/cli/dist/save-P2U67DTV.js +1728 -0
  180. package/packages/cli/dist/save-P2U67DTV.js.map +7 -0
  181. package/packages/cli/dist/search-ABROK3UO.js +157 -0
  182. package/packages/cli/dist/search-ABROK3UO.js.map +7 -0
  183. package/packages/cli/dist/search-WVFXFNAV.js +157 -0
  184. package/packages/cli/dist/search-WVFXFNAV.js.map +7 -0
  185. package/packages/cli/dist/search-YQN2Q2SO.js +157 -0
  186. package/packages/cli/dist/search-YQN2Q2SO.js.map +7 -0
  187. package/packages/cli/dist/set-DCWF73F6.js +251 -0
  188. package/packages/cli/dist/set-DCWF73F6.js.map +7 -0
  189. package/packages/cli/dist/set-GJEG2F6Y.js +251 -0
  190. package/packages/cli/dist/set-GJEG2F6Y.js.map +7 -0
  191. package/packages/cli/dist/set-NGM2FIKF.js +251 -0
  192. package/packages/cli/dist/set-NGM2FIKF.js.map +7 -0
  193. package/packages/cli/dist/uninstall-3CJQMTYH.js +539 -0
  194. package/packages/cli/dist/uninstall-3CJQMTYH.js.map +7 -0
  195. package/packages/cli/dist/uninstall-Q3CP4UN5.js +539 -0
  196. package/packages/cli/dist/uninstall-Q3CP4UN5.js.map +7 -0
  197. package/packages/cli/dist/uninstall-QU5OMEEC.js +539 -0
  198. package/packages/cli/dist/uninstall-QU5OMEEC.js.map +7 -0
  199. package/packages/cli/dist/unpublish-GHJQYC4S.js +245 -0
  200. package/packages/cli/dist/unpublish-GHJQYC4S.js.map +7 -0
  201. package/packages/cli/dist/unpublish-L2CYMK4B.js +245 -0
  202. package/packages/cli/dist/unpublish-L2CYMK4B.js.map +7 -0
  203. package/packages/cli/dist/unpublish-VBTNTMS5.js +245 -0
  204. package/packages/cli/dist/unpublish-VBTNTMS5.js.map +7 -0
  205. package/packages/cli/dist/view-MXRBMXOG.js +488 -0
  206. package/packages/cli/dist/view-MXRBMXOG.js.map +7 -0
  207. package/packages/cli/dist/view-NMND7SAW.js +488 -0
  208. package/packages/cli/dist/view-NMND7SAW.js.map +7 -0
  209. package/packages/cli/dist/view-RPQRDSYB.js +488 -0
  210. package/packages/cli/dist/view-RPQRDSYB.js.map +7 -0
  211. package/packages/cli/package.json +2 -0
  212. package/packages/core/dist/constants/index.d.ts +9 -0
  213. package/packages/core/dist/constants/index.d.ts.map +1 -1
  214. package/packages/core/dist/constants/index.js +12 -0
  215. package/packages/core/dist/constants/index.js.map +1 -1
  216. package/packages/core/dist/core/dependency-resolver/index.d.ts +2 -10
  217. package/packages/core/dist/core/dependency-resolver/index.d.ts.map +1 -1
  218. package/packages/core/dist/core/dependency-resolver/index.js +3 -14
  219. package/packages/core/dist/core/dependency-resolver/index.js.map +1 -1
  220. package/packages/core/dist/core/install/base-detector.d.ts +2 -1
  221. package/packages/core/dist/core/install/base-detector.d.ts.map +1 -1
  222. package/packages/core/dist/core/install/base-detector.js +54 -1
  223. package/packages/core/dist/core/install/base-detector.js.map +1 -1
  224. package/packages/core/dist/core/install/conflicts/file-conflict-resolver.d.ts +7 -5
  225. package/packages/core/dist/core/install/conflicts/file-conflict-resolver.d.ts.map +1 -1
  226. package/packages/core/dist/core/install/conflicts/file-conflict-resolver.js +25 -9
  227. package/packages/core/dist/core/install/conflicts/file-conflict-resolver.js.map +1 -1
  228. package/packages/core/dist/core/install/flow-index-installer.d.ts +2 -1
  229. package/packages/core/dist/core/install/flow-index-installer.d.ts.map +1 -1
  230. package/packages/core/dist/core/install/flow-index-installer.js +19 -4
  231. package/packages/core/dist/core/install/flow-index-installer.js.map +1 -1
  232. package/packages/core/dist/core/install/input-classifier-base.js +3 -3
  233. package/packages/core/dist/core/install/input-classifier-base.js.map +1 -1
  234. package/packages/core/dist/core/install/install-reporting.d.ts.map +1 -1
  235. package/packages/core/dist/core/install/install-reporting.js +7 -9
  236. package/packages/core/dist/core/install/install-reporting.js.map +1 -1
  237. package/packages/core/dist/core/install/list-handler.d.ts.map +1 -1
  238. package/packages/core/dist/core/install/list-handler.js +3 -0
  239. package/packages/core/dist/core/install/list-handler.js.map +1 -1
  240. package/packages/core/dist/core/install/marketplace-handler.d.ts.map +1 -1
  241. package/packages/core/dist/core/install/marketplace-handler.js.map +1 -1
  242. package/packages/core/dist/core/install/operations/conflict-handler.d.ts +2 -1
  243. package/packages/core/dist/core/install/operations/conflict-handler.d.ts.map +1 -1
  244. package/packages/core/dist/core/install/operations/conflict-handler.js +2 -2
  245. package/packages/core/dist/core/install/operations/conflict-handler.js.map +1 -1
  246. package/packages/core/dist/core/install/operations/installation-executor.d.ts +3 -0
  247. package/packages/core/dist/core/install/operations/installation-executor.d.ts.map +1 -1
  248. package/packages/core/dist/core/install/operations/installation-executor.js +39 -22
  249. package/packages/core/dist/core/install/operations/installation-executor.js.map +1 -1
  250. package/packages/core/dist/core/install/orchestrator/orchestrator.d.ts +7 -3
  251. package/packages/core/dist/core/install/orchestrator/orchestrator.d.ts.map +1 -1
  252. package/packages/core/dist/core/install/orchestrator/orchestrator.js +193 -93
  253. package/packages/core/dist/core/install/orchestrator/orchestrator.js.map +1 -1
  254. package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.d.ts +1 -0
  255. package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.d.ts.map +1 -1
  256. package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.js +11 -24
  257. package/packages/core/dist/core/install/orchestrator/strategies/git-strategy.js.map +1 -1
  258. package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.d.ts +2 -0
  259. package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.d.ts.map +1 -1
  260. package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.js +14 -14
  261. package/packages/core/dist/core/install/orchestrator/strategies/path-strategy.js.map +1 -1
  262. package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.d.ts +7 -0
  263. package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.d.ts.map +1 -1
  264. package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.js +28 -0
  265. package/packages/core/dist/core/install/orchestrator/strategies/registry-strategy.js.map +1 -1
  266. package/packages/core/dist/core/install/orchestrator/types.d.ts +2 -0
  267. package/packages/core/dist/core/install/orchestrator/types.d.ts.map +1 -1
  268. package/packages/core/dist/core/install/path-package-loader.d.ts.map +1 -1
  269. package/packages/core/dist/core/install/path-package-loader.js +20 -1
  270. package/packages/core/dist/core/install/path-package-loader.js.map +1 -1
  271. package/packages/core/dist/core/install/platform-resolution.d.ts +3 -0
  272. package/packages/core/dist/core/install/platform-resolution.d.ts.map +1 -1
  273. package/packages/core/dist/core/install/platform-resolution.js +5 -2
  274. package/packages/core/dist/core/install/platform-resolution.js.map +1 -1
  275. package/packages/core/dist/core/install/preprocessing/context-population.d.ts +18 -0
  276. package/packages/core/dist/core/install/preprocessing/context-population.d.ts.map +1 -0
  277. package/packages/core/dist/core/install/preprocessing/context-population.js +36 -0
  278. package/packages/core/dist/core/install/preprocessing/context-population.js.map +1 -0
  279. package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.d.ts +23 -0
  280. package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.d.ts.map +1 -1
  281. package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.js +44 -0
  282. package/packages/core/dist/core/install/preprocessing/convenience-preprocessor.js.map +1 -1
  283. package/packages/core/dist/core/install/sources/git-source.d.ts.map +1 -1
  284. package/packages/core/dist/core/install/sources/git-source.js +67 -4
  285. package/packages/core/dist/core/install/sources/git-source.js.map +1 -1
  286. package/packages/core/dist/core/install/sources/path-source.d.ts.map +1 -1
  287. package/packages/core/dist/core/install/sources/path-source.js +8 -0
  288. package/packages/core/dist/core/install/sources/path-source.js.map +1 -1
  289. package/packages/core/dist/core/install/strategies/flow-based-strategy.d.ts.map +1 -1
  290. package/packages/core/dist/core/install/strategies/flow-based-strategy.js +12 -5
  291. package/packages/core/dist/core/install/strategies/flow-based-strategy.js.map +1 -1
  292. package/packages/core/dist/core/install/strategies/types.d.ts +11 -1
  293. package/packages/core/dist/core/install/strategies/types.d.ts.map +1 -1
  294. package/packages/core/dist/core/install/unified/context-builders.d.ts +5 -0
  295. package/packages/core/dist/core/install/unified/context-builders.d.ts.map +1 -1
  296. package/packages/core/dist/core/install/unified/context-builders.js +12 -0
  297. package/packages/core/dist/core/install/unified/context-builders.js.map +1 -1
  298. package/packages/core/dist/core/install/unified/context-helpers.d.ts +0 -4
  299. package/packages/core/dist/core/install/unified/context-helpers.d.ts.map +1 -1
  300. package/packages/core/dist/core/install/unified/context-helpers.js +0 -24
  301. package/packages/core/dist/core/install/unified/context-helpers.js.map +1 -1
  302. package/packages/core/dist/core/install/unified/index.d.ts +1 -1
  303. package/packages/core/dist/core/install/unified/index.d.ts.map +1 -1
  304. package/packages/core/dist/core/install/unified/index.js +1 -1
  305. package/packages/core/dist/core/install/unified/index.js.map +1 -1
  306. package/packages/core/dist/core/install/unified/multi-context-pipeline.d.ts +6 -0
  307. package/packages/core/dist/core/install/unified/multi-context-pipeline.d.ts.map +1 -1
  308. package/packages/core/dist/core/install/unified/multi-context-pipeline.js +11 -4
  309. package/packages/core/dist/core/install/unified/multi-context-pipeline.js.map +1 -1
  310. package/packages/core/dist/core/install/unified/phases/conflicts.d.ts.map +1 -1
  311. package/packages/core/dist/core/install/unified/phases/conflicts.js +1 -1
  312. package/packages/core/dist/core/install/unified/phases/conflicts.js.map +1 -1
  313. package/packages/core/dist/core/install/unified/phases/execute.d.ts.map +1 -1
  314. package/packages/core/dist/core/install/unified/phases/execute.js +5 -5
  315. package/packages/core/dist/core/install/unified/phases/execute.js.map +1 -1
  316. package/packages/core/dist/core/install/unified/phases/load-package.js +3 -3
  317. package/packages/core/dist/core/install/unified/phases/load-package.js.map +1 -1
  318. package/packages/core/dist/core/install/unified/phases/report.js +1 -1
  319. package/packages/core/dist/core/install/unified/phases/report.js.map +1 -1
  320. package/packages/core/dist/core/install/unified/pipeline.d.ts.map +1 -1
  321. package/packages/core/dist/core/install/unified/pipeline.js +7 -10
  322. package/packages/core/dist/core/install/unified/pipeline.js.map +1 -1
  323. package/packages/core/dist/core/install/wave-resolver/content-root-cache.d.ts +24 -0
  324. package/packages/core/dist/core/install/wave-resolver/content-root-cache.d.ts.map +1 -0
  325. package/packages/core/dist/core/install/wave-resolver/content-root-cache.js +71 -0
  326. package/packages/core/dist/core/install/wave-resolver/content-root-cache.js.map +1 -0
  327. package/packages/core/dist/core/install/wave-resolver/context-builder.d.ts +39 -0
  328. package/packages/core/dist/core/install/wave-resolver/context-builder.d.ts.map +1 -0
  329. package/packages/core/dist/core/install/wave-resolver/context-builder.js +148 -0
  330. package/packages/core/dist/core/install/wave-resolver/context-builder.js.map +1 -0
  331. package/packages/core/dist/core/install/wave-resolver/fetcher.d.ts +49 -0
  332. package/packages/core/dist/core/install/wave-resolver/fetcher.d.ts.map +1 -0
  333. package/packages/core/dist/core/install/wave-resolver/fetcher.js +221 -0
  334. package/packages/core/dist/core/install/wave-resolver/fetcher.js.map +1 -0
  335. package/packages/core/dist/core/install/wave-resolver/index-updater.d.ts +23 -0
  336. package/packages/core/dist/core/install/wave-resolver/index-updater.d.ts.map +1 -0
  337. package/packages/core/dist/core/install/wave-resolver/index-updater.js +87 -0
  338. package/packages/core/dist/core/install/wave-resolver/index-updater.js.map +1 -0
  339. package/packages/core/dist/core/install/wave-resolver/index-write-collector.d.ts +101 -0
  340. package/packages/core/dist/core/install/wave-resolver/index-write-collector.d.ts.map +1 -0
  341. package/packages/core/dist/core/install/wave-resolver/index-write-collector.js +194 -0
  342. package/packages/core/dist/core/install/wave-resolver/index-write-collector.js.map +1 -0
  343. package/packages/core/dist/core/install/wave-resolver/index.d.ts +17 -0
  344. package/packages/core/dist/core/install/wave-resolver/index.d.ts.map +1 -0
  345. package/packages/core/dist/core/install/wave-resolver/index.js +16 -0
  346. package/packages/core/dist/core/install/wave-resolver/index.js.map +1 -0
  347. package/packages/core/dist/core/install/wave-resolver/manifest-reader.d.ts +34 -0
  348. package/packages/core/dist/core/install/wave-resolver/manifest-reader.d.ts.map +1 -0
  349. package/packages/core/dist/core/install/wave-resolver/manifest-reader.js +112 -0
  350. package/packages/core/dist/core/install/wave-resolver/manifest-reader.js.map +1 -0
  351. package/packages/core/dist/core/install/wave-resolver/types.d.ts +210 -0
  352. package/packages/core/dist/core/install/wave-resolver/types.d.ts.map +1 -0
  353. package/packages/core/dist/core/install/wave-resolver/types.js +6 -0
  354. package/packages/core/dist/core/install/wave-resolver/types.js.map +1 -0
  355. package/packages/core/dist/core/install/wave-resolver/version-solver.d.ts +65 -0
  356. package/packages/core/dist/core/install/wave-resolver/version-solver.d.ts.map +1 -0
  357. package/packages/core/dist/core/install/wave-resolver/version-solver.js +166 -0
  358. package/packages/core/dist/core/install/wave-resolver/version-solver.js.map +1 -0
  359. package/packages/core/dist/core/install/wave-resolver/wave-engine.d.ts +16 -0
  360. package/packages/core/dist/core/install/wave-resolver/wave-engine.d.ts.map +1 -0
  361. package/packages/core/dist/core/install/wave-resolver/wave-engine.js +337 -0
  362. package/packages/core/dist/core/install/wave-resolver/wave-engine.js.map +1 -0
  363. package/packages/core/dist/core/install/wave-resolver/wave-installer.d.ts +50 -0
  364. package/packages/core/dist/core/install/wave-resolver/wave-installer.d.ts.map +1 -0
  365. package/packages/core/dist/core/install/wave-resolver/wave-installer.js +246 -0
  366. package/packages/core/dist/core/install/wave-resolver/wave-installer.js.map +1 -0
  367. package/packages/core/dist/core/ports/buffered-output.d.ts +36 -0
  368. package/packages/core/dist/core/ports/buffered-output.d.ts.map +1 -0
  369. package/packages/core/dist/core/ports/buffered-output.js +89 -0
  370. package/packages/core/dist/core/ports/buffered-output.js.map +1 -0
  371. package/packages/core/dist/core/ports/resolve.d.ts +0 -13
  372. package/packages/core/dist/core/ports/resolve.d.ts.map +1 -1
  373. package/packages/core/dist/core/ports/resolve.js +0 -28
  374. package/packages/core/dist/core/ports/resolve.js.map +1 -1
  375. package/packages/core/dist/core/remove/removal-confirmation.d.ts +4 -1
  376. package/packages/core/dist/core/remove/removal-confirmation.d.ts.map +1 -1
  377. package/packages/core/dist/core/remove/removal-confirmation.js +5 -4
  378. package/packages/core/dist/core/remove/removal-confirmation.js.map +1 -1
  379. package/packages/core/dist/core/remove/remove-from-source-pipeline.d.ts.map +1 -1
  380. package/packages/core/dist/core/remove/remove-from-source-pipeline.js +1 -10
  381. package/packages/core/dist/core/remove/remove-from-source-pipeline.js.map +1 -1
  382. package/packages/core/dist/core/uninstall/uninstall-executor.js +1 -1
  383. package/packages/core/dist/core/uninstall/uninstall-executor.js.map +1 -1
  384. package/packages/core/dist/core/uninstall/uninstall-reporter.d.ts +2 -2
  385. package/packages/core/dist/core/uninstall/uninstall-reporter.d.ts.map +1 -1
  386. package/packages/core/dist/core/uninstall/uninstall-reporter.js +4 -4
  387. package/packages/core/dist/core/uninstall/uninstall-reporter.js.map +1 -1
  388. package/packages/core/dist/index.d.ts +1 -1
  389. package/packages/core/dist/index.d.ts.map +1 -1
  390. package/packages/core/dist/types/execution-context.d.ts +40 -10
  391. package/packages/core/dist/types/execution-context.d.ts.map +1 -1
  392. package/packages/core/dist/utils/concurrency-pool.d.ts +34 -0
  393. package/packages/core/dist/utils/concurrency-pool.d.ts.map +1 -0
  394. package/packages/core/dist/utils/concurrency-pool.js +58 -0
  395. package/packages/core/dist/utils/concurrency-pool.js.map +1 -0
  396. package/packages/core/dist/utils/plugin-naming.d.ts +11 -3
  397. package/packages/core/dist/utils/plugin-naming.d.ts.map +1 -1
  398. package/packages/core/dist/utils/plugin-naming.js +27 -7
  399. package/packages/core/dist/utils/plugin-naming.js.map +1 -1
  400. package/plans/wave-resolver.md +254 -0
  401. package/.claude/agents/essentials/code-simplifier.md +0 -52
  402. package/.claude/commands/essentials/cleanup.md +0 -1
  403. package/.claude/commands/essentials/review.md +0 -8
  404. package/.claude/commands/git/commit.md +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"git-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/git-strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/git-strategy.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * It preloads the source once and populates the root resolved package so the unified
5
5
  * pipeline can skip re-loading.
6
+ * When convenience filters (--agents, --skills, etc.) are specified, routes to
7
+ * multi-resource install like git/registry strategies.
6
8
  */
7
9
  import type { InstallationContext } from '../../unified/context.js';
8
10
  import type { ExecutionContext } from '../../../../types/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"path-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/path-strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,0BAA0B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIhD,qBAAa,mBAAoB,SAAQ,mBAAmB;IAC1D,QAAQ,CAAC,IAAI,UAAU;IAEvB,SAAS,CAAC,cAAc,EAAE,mBAAmB,GAAG,OAAO;IAIjD,YAAY,CAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAyBzB,UAAU,CACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;CA8B7B"}
1
+ {"version":3,"file":"path-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/path-strategy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,0BAA0B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAMhD,qBAAa,mBAAoB,SAAQ,mBAAmB;IAC1D,QAAQ,CAAC,IAAI,UAAU;IAEvB,SAAS,CAAC,cAAc,EAAE,mBAAmB,GAAG,OAAO;IAIjD,YAAY,CAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAyBzB,UAAU,CACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;CA4B7B"}
@@ -1,5 +1,7 @@
1
1
  import { BaseInstallStrategy } from './base.js';
2
2
  import { getLoaderForSource } from '../../sources/loader-factory.js';
3
+ import { createResolvedPackageFromLoaded } from '../../preprocessing/context-population.js';
4
+ import { runConvenienceFilterInstall } from '../../preprocessing/convenience-preprocessor.js';
3
5
  import { normalizePlatforms } from '../../../platform/platform-mapper.js';
4
6
  export class PathInstallStrategy extends BaseInstallStrategy {
5
7
  constructor() {
@@ -38,23 +40,21 @@ export class PathInstallStrategy extends BaseInstallStrategy {
38
40
  context.source.version = loaded.version;
39
41
  context.source.contentRoot = loaded.contentRoot;
40
42
  context.source.pluginMetadata = loaded.pluginMetadata;
41
- context.resolvedPackages = [
42
- {
43
- name: context.source.packageName,
44
- version: context.source.version || loaded.version,
45
- pkg: {
46
- metadata: loaded.metadata,
47
- files: [],
48
- _format: loaded.metadata?._format || context.source.pluginMetadata?.format
49
- },
50
- isRoot: true,
51
- source: 'path',
52
- contentRoot: context.source.contentRoot || loaded.contentRoot
53
- }
54
- ];
43
+ context.resolvedPackages = [createResolvedPackageFromLoaded(loaded, context)];
55
44
  if (loaded.pluginMetadata?.pluginType === 'marketplace') {
56
45
  return this.createMarketplaceResult(context);
57
46
  }
47
+ // Apply convenience filters (--agents, --skills, etc.) - same as git/registry strategies
48
+ if (options.agents?.length || options.skills?.length || options.rules?.length || options.commands?.length) {
49
+ const convenienceOptions = {
50
+ agents: options.agents,
51
+ skills: options.skills,
52
+ rules: options.rules,
53
+ commands: options.commands
54
+ };
55
+ const resourceContexts = await runConvenienceFilterInstall(context, loaded, convenienceOptions);
56
+ return this.createMultiResourceResult(context, resourceContexts);
57
+ }
58
58
  return this.createNormalResult(context);
59
59
  }
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"path-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/path-strategy.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,OAAO,mBAAoB,SAAQ,mBAAmB;IAA5D;;QACW,SAAI,GAAG,MAAM,CAAC;IAqEzB,CAAC;IAnEC,SAAS,CAAC,cAAmC;QAC3C,OAAO,cAAc,CAAC,IAAI,KAAK,MAAM,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,cAAmC,EACnC,OAAiC,EACjC,WAA6B;QAE7B,IAAI,cAAc,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAkB;YAC5B,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,cAAc,CAAC,SAAS;YACnC,UAAU,EAAE,WAAW,CAAC,4BAA4B;SACrD,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,MAAM;YACN,IAAI,EAAE,SAAS;YACf,OAAO;YACP,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;YACtD,gBAAgB,EAAE,EAAE;YACpB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAA4B,EAC5B,OAAiC,EACjC,WAA6B;QAE7B,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAEvE,OAAO,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAChD,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAChD,OAAO,CAAC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAEtD,OAAO,CAAC,gBAAgB,GAAG;YACzB;gBACE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;gBAChC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO;gBACjD,GAAG,EAAE;oBACH,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,KAAK,EAAE,EAAE;oBACT,OAAO,EAAG,MAAM,CAAC,QAAgB,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM;iBACpF;gBACD,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW;aACvD;SACT,CAAC;QAEF,IAAI,MAAM,CAAC,cAAc,EAAE,UAAU,KAAK,aAAa,EAAE,CAAC;YACxD,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"path-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/path-strategy.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@
3
3
  *
4
4
  * Registry sources are loaded by the unified pipeline (load phase), since their metadata
5
5
  * and resolution behavior is centralized there.
6
+ * When convenience filters (--agents, --skills, etc.) are specified, we load during
7
+ * preprocess and route to multi-resource install, matching git/path strategy behavior.
6
8
  */
7
9
  import type { InstallationContext } from '../../unified/context.js';
8
10
  import type { ExecutionContext } from '../../../../types/index.js';
@@ -13,5 +15,10 @@ export declare class RegistryInstallStrategy extends BaseInstallStrategy {
13
15
  canHandle(classification: InputClassification): boolean;
14
16
  buildContext(classification: InputClassification, options: NormalizedInstallOptions, execContext: ExecutionContext): Promise<InstallationContext>;
15
17
  preprocess(context: InstallationContext, options: NormalizedInstallOptions, execContext: ExecutionContext): Promise<PreprocessResult>;
18
+ /**
19
+ * Handle convenience filter options for registry packages.
20
+ * Load package, resolve filtered resources, and return multi-resource result.
21
+ */
22
+ private handleConvenienceFilters;
16
23
  }
17
24
  //# sourceMappingURL=registry-strategy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/registry-strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,0BAA0B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGhD,qBAAa,uBAAwB,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,IAAI,cAAc;IAE3B,SAAS,CAAC,cAAc,EAAE,mBAAmB,GAAG,OAAO;IAIjD,YAAY,CAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAyBzB,UAAU,CACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;CAI7B"}
1
+ {"version":3,"file":"registry-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/registry-strategy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,0BAA0B,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAMhD,qBAAa,uBAAwB,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,IAAI,cAAc;IAE3B,SAAS,CAAC,cAAc,EAAE,mBAAmB,GAAG,OAAO;IAIjD,YAAY,CAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAyBzB,UAAU,CACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAU5B;;;OAGG;YACW,wBAAwB;CAwBvC"}
@@ -1,5 +1,8 @@
1
1
  import { BaseInstallStrategy } from './base.js';
2
2
  import { normalizePlatforms } from '../../../platform/platform-mapper.js';
3
+ import { getLoaderForSource } from '../../sources/loader-factory.js';
4
+ import { createResolvedPackageFromLoaded } from '../../preprocessing/context-population.js';
5
+ import { runConvenienceFilterInstall } from '../../preprocessing/convenience-preprocessor.js';
3
6
  export class RegistryInstallStrategy extends BaseInstallStrategy {
4
7
  constructor() {
5
8
  super(...arguments);
@@ -31,8 +34,33 @@ export class RegistryInstallStrategy extends BaseInstallStrategy {
31
34
  };
32
35
  }
33
36
  async preprocess(context, options, execContext) {
37
+ // Apply convenience filters (--agents, --skills, etc.) - same as git/path strategies
38
+ if (options.agents?.length || options.skills?.length || options.rules?.length || options.commands?.length) {
39
+ return this.handleConvenienceFilters(context, options, execContext);
40
+ }
34
41
  // Registry sources are handled by the pipeline's load phase
35
42
  return this.createNormalResult(context);
36
43
  }
44
+ /**
45
+ * Handle convenience filter options for registry packages.
46
+ * Load package, resolve filtered resources, and return multi-resource result.
47
+ */
48
+ async handleConvenienceFilters(context, options, _execContext) {
49
+ const loader = getLoaderForSource(context.source);
50
+ const loaded = await loader.load(context.source, options, _execContext);
51
+ context.source.packageName = loaded.packageName;
52
+ context.source.version = loaded.version;
53
+ context.source.contentRoot = loaded.contentRoot;
54
+ context.source.pluginMetadata = loaded.pluginMetadata;
55
+ context.resolvedPackages = [createResolvedPackageFromLoaded(loaded, context, { source: 'local' })];
56
+ const convenienceOptions = {
57
+ agents: options.agents,
58
+ skills: options.skills,
59
+ rules: options.rules,
60
+ commands: options.commands
61
+ };
62
+ const resourceContexts = await runConvenienceFilterInstall(context, loaded, convenienceOptions);
63
+ return this.createMultiResourceResult(context, resourceContexts);
64
+ }
37
65
  }
38
66
  //# sourceMappingURL=registry-strategy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/registry-strategy.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,MAAM,OAAO,uBAAwB,SAAQ,mBAAmB;IAAhE;;QACW,SAAI,GAAG,UAAU,CAAC;IA2C7B,CAAC;IAzCC,SAAS,CAAC,cAAmC;QAC3C,OAAO,cAAc,CAAC,IAAI,KAAK,UAAU,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,cAAmC,EACnC,OAAiC,EACjC,WAA6B;QAE7B,IAAI,cAAc,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,MAAM,GAAkB;YAC5B,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,OAAO,EAAE,cAAc,CAAC,OAAO;YAC/B,YAAY,EAAE,cAAc,CAAC,YAAY;SAC1C,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,MAAM;YACN,IAAI,EAAE,SAAS;YACf,OAAO;YACP,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;YACtD,gBAAgB,EAAE,EAAE;YACpB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAA4B,EAC5B,OAAiC,EACjC,WAA6B;QAE7B,4DAA4D;QAC5D,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"registry-strategy.js","sourceRoot":"","sources":["../../../../../src/core/install/orchestrator/strategies/registry-strategy.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,8 @@ export interface NormalizedInstallOptions extends InstallOptions {
15
15
  rules?: string[];
16
16
  commands?: string[];
17
17
  interactive?: boolean;
18
+ /** Internal: skip recursive dependency installation (set by wave resolver loop to prevent re-entry) */
19
+ _skipDependencyInstall?: boolean;
18
20
  }
19
21
  /**
20
22
  * Result of preprocessing a context before pipeline execution.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/install/orchestrator/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/install/orchestrator/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC9D,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAChC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9B,gBAAgB,EAAE,WAAW,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClE,cAAc,EAAE,qBAAqB,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uGAAuG;IACvG,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8CAA8C;IAC9C,OAAO,EAAE,mBAAmB,CAAC;IAE7B,gCAAgC;IAChC,eAAe,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,gBAAgB,CAAC;IAEjE,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,GAAG,CAAC;IAE1B,8DAA8D;IAC9D,gBAAgB,CAAC,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEhF,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAEzC,8FAA8F;IAC9F,gBAAgB,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,iEAAiE;IACjE,SAAS,CAAC,cAAc,EAAE,mBAAmB,GAAG,OAAO,CAAC;IAExD,gDAAgD;IAChD,YAAY,CACV,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEhC,0DAA0D;IAC1D,UAAU,CACR,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mEAAmE;IACnE,eAAe,EAAE,OAAO,CAAC;IACzB,oFAAoF;IACpF,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,IAAI,EAAE,KAAK,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAChE,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAC3B,kBAAkB,GAClB,iBAAiB,GACjB,kBAAkB,GAClB,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"path-package-loader.d.ts","sourceRoot":"","sources":["../../../src/core/install/path-package-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAA2B,MAAM,sBAAsB,CAAC;AAUxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIvE,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,SAAS,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAE5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAgHlB;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAsClF;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAQlB"}
1
+ {"version":3,"file":"path-package-loader.d.ts","sourceRoot":"","sources":["../../../src/core/install/path-package-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAA2B,MAAM,sBAAsB,CAAC;AAUxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAIvE,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,SAAS,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAE5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAmIlB;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAsClF;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC,CAQlB"}
@@ -34,8 +34,27 @@ export async function loadPackageFromDirectory(dirPath, context) {
34
34
  const { package: pkg } = await transformPluginToPackage(dirPath, context);
35
35
  return pkg;
36
36
  }
37
- // If it's a marketplace, we need to handle plugin selection (done upstream in install command)
37
+ // If it's a marketplace, we need to handle plugin selection (done upstream in install command).
38
+ // However, when a resourcePath is set, the user explicitly requested a specific resource within
39
+ // the marketplace — treat it as a marketplace-defined plugin rather than blocking with an error.
40
+ // This provides defense-in-depth in case upstream content root resolution has an edge case.
38
41
  if (pluginDetection.isPlugin && pluginDetection.type === 'marketplace') {
42
+ if (context?.resourcePath) {
43
+ logger.info('Marketplace directory loaded with explicit resourcePath, treating as marketplace-defined plugin', {
44
+ dirPath,
45
+ resourcePath: context.resourcePath
46
+ });
47
+ const syntheticEntry = {
48
+ strict: false,
49
+ name: context?.packageName ?? basename(dirPath),
50
+ source: '.'
51
+ };
52
+ const { package: pkg } = await transformPluginToPackage(dirPath, {
53
+ ...context,
54
+ marketplaceEntry: syntheticEntry
55
+ });
56
+ return pkg;
57
+ }
39
58
  throw new ValidationError(`Directory '${dirPath}' is a Claude Code plugin marketplace. ` +
40
59
  `Marketplace installation requires plugin selection and should be handled by the install command.`);
41
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"path-package-loader.js","sourceRoot":"","sources":["../../../src/core/install/path-package-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-package-loader.js","sourceRoot":"","sources":["../../../src/core/install/path-package-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC7F,OAAO,EAAoB,2BAA2B,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAgBhC;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;AACvH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAe,EACf,OAA4B;IAE5B,gFAAgF;IAChF,MAAM,eAAe,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAE9F,IAAI,eAAe,CAAC,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,YAAY,IAAI,eAAe,CAAC,IAAI,KAAK,qBAAqB,CAAC,EAAE,CAAC;QAC1H,MAAM,CAAC,IAAI,CAAC,gCAAgC,eAAe,CAAC,IAAI,uCAAuC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACtH,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1E,OAAO,GAAG,CAAC;IACb,CAAC;IAED,gGAAgG;IAChG,gGAAgG;IAChG,iGAAiG;IACjG,4FAA4F;IAC5F,IAAI,eAAe,CAAC,QAAQ,IAAI,eAAe,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACvE,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,iGAAiG,EAAE;gBAC7G,OAAO;gBACP,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC,CAAC,CAAC;YACH,MAAM,cAAc,GAA2B;gBAC7C,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,OAAO,EAAE,WAAW,IAAI,QAAQ,CAAC,OAAO,CAAC;gBAC/C,MAAM,EAAE,GAAG;aACZ,CAAC;YACF,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,wBAAwB,CAAC,OAAO,EAAE;gBAC/D,GAAG,OAAO;gBACV,gBAAgB,EAAE,cAAc;aACjC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,IAAI,eAAe,CACvB,cAAc,OAAO,yCAAyC;YAC9D,kGAAkG,CACnG,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,IAAI,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,sGAAsG;QACtG,0EAA0E;QAC1E,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,cAAc,GAA2B;gBAC7C,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,OAAO,EAAE,WAAW,IAAI,QAAQ,CAAC,OAAO,CAAC;gBAC/C,MAAM,EAAE,GAAG,CAAC,2EAA2E;aACxF,CAAC;YACF,MAAM,kBAAkB,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACtF,IAAI,kBAAkB,CAAC,QAAQ,IAAI,kBAAkB,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACrF,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,wBAAwB,CAAC,OAAO,EAAE;oBAC/D,GAAG,OAAO;oBACV,gBAAgB,EAAE,cAAc;iBACjC,CAAC,CAAC;gBACH,OAAO,GAAG,CAAC;YACb,CAAC;QACH,CAAC;QACD,0FAA0F;QAC1F,qFAAqF;QACrF,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;YAC3B,MAAM,IAAI,eAAe,CACvB,cAAc,OAAO,gEAAgE;gBACrF,WAAW,aAAa,CAAC,eAAe,OAAO,mBAAmB,CAAC,eAAe,EAAE,CACrF,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAG,OAAO,EAAE,MAAM;YAClC,CAAC,CAAC,yBAAyB,CAAC;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,WAAW,EAAE,gBAAgB;gBAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC;YACJ,CAAC,CAAC,gBAAgB,CAAC;QAErB,MAAM,GAAG;YACP,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,OAAO;SACI,CAAC;IACzB,CAAC;IAED,wDAAwD;IACxD,4EAA4E;IAC5E,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;QACjC,MAAM,UAAU,GAAG,yBAAyB,CAAC;YAC3C,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,WAAW,EAAE,YAAY,EAAG,4CAA4C;YACxE,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,6DAA6D;QAC7D,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,MAAM,KAAK,GAAkB,EAAE,CAAC;IAEhC,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEjD,wBAAwB;YACxB,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;gBACnC,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;YAE7C,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,YAAY;gBAClB,OAAO;gBACP,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,KAAK;SACN,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,0CAA0C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,MAAM,IAAI,eAAe,CAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,WAAmB;IAC9D,oBAAoB;IACpB,IAAI,aAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,aAAa,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,eAAe,CAAC,gCAAgC,WAAW,MAAM,KAAK,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,kBAAkB;IAClB,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAEjE,0CAA0C;IAC1C,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CACzC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,iBAAiB,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAChF,CAAC;IAEF,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,eAAe,CACvB,YAAY,WAAW,8BAA8B,aAAa,CAAC,eAAe,OAAO,CAC1F,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAe,CAAC;IAE/D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,eAAe,CACvB,YAAY,WAAW,sBAAsB,aAAa,CAAC,eAAe,sBAAsB,CACjG,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,kBAAkB,WAAW,EAAE,CAAC,CAAC;IAE7F,OAAO;QACL,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,SAAS,CAAC,KAAK;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAY,EACZ,OAA4B;IAE5B,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,MAAM,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
@@ -6,6 +6,9 @@ import type { PromptPort } from '../ports/prompt.js';
6
6
  * - Uses specified platforms if provided (validated against known platforms)
7
7
  * - Otherwise auto-detects
8
8
  * - If none detected and interactive=true, prompts user to select
9
+ *
10
+ * The `interactive` flag is typically derived from
11
+ * `InteractionPolicy.canPrompt(PromptTier.Required)` at the call site.
9
12
  */
10
13
  export declare function resolvePlatforms(cwd: string, specified: string[] | undefined, options?: {
11
14
  interactive?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"platform-resolution.d.ts","sourceRoot":"","sources":["../../../src/core/install/platform-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GAChF,OAAO,CAAC,QAAQ,EAAE,CAAC,CAuBrB"}
1
+ {"version":3,"file":"platform-resolution.d.ts","sourceRoot":"","sources":["../../../src/core/install/platform-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,UAAU,CAAA;CAAO,GAChF,OAAO,CAAC,QAAQ,EAAE,CAAC,CAuBrB"}
@@ -6,9 +6,12 @@ import { detectPlatforms, promptForPlatformSelection } from './package-installat
6
6
  * - Uses specified platforms if provided (validated against known platforms)
7
7
  * - Otherwise auto-detects
8
8
  * - If none detected and interactive=true, prompts user to select
9
+ *
10
+ * The `interactive` flag is typically derived from
11
+ * `InteractionPolicy.canPrompt(PromptTier.Required)` at the call site.
9
12
  */
10
13
  export async function resolvePlatforms(cwd, specified, options = {}) {
11
- const interactive = options.interactive === true;
14
+ const canPrompt = options.interactive === true;
12
15
  const normalized = normalizePlatforms(specified);
13
16
  if (normalized && normalized.length > 0) {
14
17
  const resolved = normalized.map(name => resolvePlatformName(name));
@@ -21,7 +24,7 @@ export async function resolvePlatforms(cwd, specified, options = {}) {
21
24
  const auto = await detectPlatforms(cwd);
22
25
  if (auto.length > 0)
23
26
  return auto;
24
- if (interactive) {
27
+ if (canPrompt) {
25
28
  const selected = await promptForPlatformSelection(options.output, options.prompt);
26
29
  return selected;
27
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platform-resolution.js","sourceRoot":"","sources":["../../../src/core/install/platform-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAiB,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAIxF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,SAA+B,EAC/B,UAA+E,EAAE;IAEjF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC;IAEjD,MAAM,UAAU,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,QAAsB,CAAC;IAChC,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAClF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qGAAqG;IACrG,OAAO,CAAC,QAAQ,CAAe,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"platform-resolution.js","sourceRoot":"","sources":["../../../src/core/install/platform-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAiB,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAIxF;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,SAA+B,EAC/B,UAA+E,EAAE;IAEjF,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC;IAE/C,MAAM,UAAU,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,QAAsB,CAAC;IAChC,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAClF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qGAAqG;IACrG,OAAO,CAAC,QAAQ,CAAe,CAAC;AAClC,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Shared helpers for populating installation context from loaded package data.
3
+ * Used by install strategies, list-handler, and load phase.
4
+ */
5
+ import type { LoadedPackage } from '../sources/base.js';
6
+ import type { PackageSource } from '../unified/context.js';
7
+ import type { ResolvedPackage } from '../../dependency-resolver/types.js';
8
+ /**
9
+ * Create a root ResolvedPackage entry from loaded package data.
10
+ * Used when strategies or handlers pre-populate context so the pipeline skips re-loading.
11
+ */
12
+ export declare function createResolvedPackageFromLoaded(loaded: LoadedPackage, context: {
13
+ source: PackageSource;
14
+ }, overrides?: {
15
+ source?: ResolvedPackage['source'];
16
+ contentRoot?: string;
17
+ }): ResolvedPackage;
18
+ //# sourceMappingURL=context-population.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-population.d.ts","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/context-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAuB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAW1E;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,EAClC,SAAS,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACvE,eAAe,CAiBjB"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Shared helpers for populating installation context from loaded package data.
3
+ * Used by install strategies, list-handler, and load phase.
4
+ */
5
+ /**
6
+ * Map PackageSource type to ResolvedPackage source format.
7
+ */
8
+ function toResolvedPackageSource(sourceType) {
9
+ if (sourceType === 'registry' || sourceType === 'workspace')
10
+ return 'local';
11
+ if (sourceType === 'path' || sourceType === 'git')
12
+ return sourceType;
13
+ return 'local';
14
+ }
15
+ /**
16
+ * Create a root ResolvedPackage entry from loaded package data.
17
+ * Used when strategies or handlers pre-populate context so the pipeline skips re-loading.
18
+ */
19
+ export function createResolvedPackageFromLoaded(loaded, context, overrides) {
20
+ const resolvedSource = overrides?.source ?? toResolvedPackageSource(context.source.type);
21
+ const contentRoot = overrides?.contentRoot ?? context.source.contentRoot ?? loaded.contentRoot;
22
+ const version = context.source.version || loaded.version;
23
+ return {
24
+ name: context.source.packageName || loaded.packageName,
25
+ version,
26
+ pkg: {
27
+ metadata: loaded.metadata,
28
+ files: [],
29
+ _format: loaded.metadata?._format || context.source.pluginMetadata?.format
30
+ },
31
+ isRoot: true,
32
+ source: resolvedSource,
33
+ contentRoot
34
+ };
35
+ }
36
+ //# sourceMappingURL=context-population.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-population.js","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/context-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,SAAS,uBAAuB,CAAC,UAAiC;IAChE,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,WAAW;QAAE,OAAO,OAAO,CAAC;IAC5E,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,KAAK;QAAE,OAAO,UAAU,CAAC;IACrE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAAqB,EACrB,OAAkC,EAClC,SAAwE;IAExE,MAAM,cAAc,GAAG,SAAS,EAAE,MAAM,IAAI,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzF,MAAM,WAAW,GAAG,SAAS,EAAE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC;IAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;IAEzD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW;QACtD,OAAO;QACP,GAAG,EAAE;YACH,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,EAAE;YACT,OAAO,EAAG,MAAM,CAAC,QAAgB,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM;SAC7E;QACR,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,cAAc;QACtB,WAAW;KACO,CAAC;AACvB,CAAC"}
@@ -1,4 +1,11 @@
1
1
  import type { ConvenienceFilterOptions, ResourceInstallationSpec } from '../convenience-matchers.js';
2
+ import type { InstallationContext } from '../unified/context.js';
3
+ import type { LoadedPackage } from '../sources/base.js';
4
+ /**
5
+ * Find the base path where agents/skills/rules/commands subdirs live.
6
+ * Registry packages may have these at contentRoot or under platform dirs (.opencode, .cursor, etc.).
7
+ */
8
+ export declare function findBaseForConvenienceFilters(contentRoot: string, options: ConvenienceFilterOptions): Promise<string>;
2
9
  /**
3
10
  * Resolve convenience resources (agents/skills) to install.
4
11
  *
@@ -8,4 +15,20 @@ import type { ConvenienceFilterOptions, ResourceInstallationSpec } from '../conv
8
15
  * @throws Error if none of the requested resources can be found.
9
16
  */
10
17
  export declare function resolveConvenienceResources(basePath: string, repoRoot: string, options: ConvenienceFilterOptions): Promise<ResourceInstallationSpec[]>;
18
+ /** Options for base path resolution */
19
+ export interface ConvenienceFilterInstallOpts {
20
+ /** Use context.detectedBase as base (e.g. when loader already ran base detection). Otherwise uses findBaseForConvenienceFilters. */
21
+ useDetectedBase?: boolean;
22
+ }
23
+ /**
24
+ * Run the full convenience filter flow: resolve resources, build contexts, prepare for pipeline.
25
+ * Shared by registry, path, and git strategies.
26
+ *
27
+ * @param context - Installation context (must have source populated)
28
+ * @param loaded - Loaded package from loader
29
+ * @param options - Convenience filter options (agents, skills, rules, commands)
30
+ * @param opts - Base path resolution: useDetectedBase=true for git (has base detection)
31
+ * @returns Resource contexts ready for createMultiResourceResult
32
+ */
33
+ export declare function runConvenienceFilterInstall(context: InstallationContext, loaded: LoadedPackage, options: ConvenienceFilterOptions, opts?: ConvenienceFilterInstallOpts): Promise<InstallationContext[]>;
11
34
  //# sourceMappingURL=convenience-preprocessor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"convenience-preprocessor.d.ts","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/convenience-preprocessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAIrG;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAcrC"}
1
+ {"version":3,"file":"convenience-preprocessor.d.ts","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/convenience-preprocessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAIrG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAcrC;AAED,uCAAuC;AACvC,MAAM,WAAW,4BAA4B;IAC3C,oIAAoI;IACpI,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,wBAAwB,EACjC,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAWhC"}
@@ -1,5 +1,29 @@
1
+ import { join } from 'path';
2
+ import { exists } from '../../../utils/fs.js';
1
3
  import { applyConvenienceFilters, displayFilterErrors } from '../convenience-matchers.js';
4
+ import { buildResourceInstallContexts, prepareResourceContextsForMultiInstall } from '../unified/context-builders.js';
2
5
  import { logger } from '../../../utils/logger.js';
6
+ /**
7
+ * Find the base path where agents/skills/rules/commands subdirs live.
8
+ * Registry packages may have these at contentRoot or under platform dirs (.opencode, .cursor, etc.).
9
+ */
10
+ export async function findBaseForConvenienceFilters(contentRoot, options) {
11
+ const candidates = [contentRoot];
12
+ for (const sub of ['.opencode', '.cursor', '.claude', '.claude-plugin']) {
13
+ candidates.push(join(contentRoot, sub));
14
+ }
15
+ for (const base of candidates) {
16
+ if (options.agents?.length && (await exists(join(base, 'agents'))))
17
+ return base;
18
+ if (options.skills?.length && (await exists(join(base, 'skills'))))
19
+ return base;
20
+ if (options.rules?.length && (await exists(join(base, 'rules'))))
21
+ return base;
22
+ if (options.commands?.length && (await exists(join(base, 'commands'))))
23
+ return base;
24
+ }
25
+ return contentRoot;
26
+ }
3
27
  /**
4
28
  * Resolve convenience resources (agents/skills) to install.
5
29
  *
@@ -19,4 +43,24 @@ export async function resolveConvenienceResources(basePath, repoRoot, options) {
19
43
  }
20
44
  return filterResult.resources;
21
45
  }
46
+ /**
47
+ * Run the full convenience filter flow: resolve resources, build contexts, prepare for pipeline.
48
+ * Shared by registry, path, and git strategies.
49
+ *
50
+ * @param context - Installation context (must have source populated)
51
+ * @param loaded - Loaded package from loader
52
+ * @param options - Convenience filter options (agents, skills, rules, commands)
53
+ * @param opts - Base path resolution: useDetectedBase=true for git (has base detection)
54
+ * @returns Resource contexts ready for createMultiResourceResult
55
+ */
56
+ export async function runConvenienceFilterInstall(context, loaded, options, opts) {
57
+ const contentRoot = loaded.contentRoot;
58
+ const repoRoot = loaded.sourceMetadata?.repoPath ?? contentRoot;
59
+ const basePath = opts?.useDetectedBase && context.detectedBase
60
+ ? context.detectedBase
61
+ : await findBaseForConvenienceFilters(contentRoot, options);
62
+ const resources = await resolveConvenienceResources(basePath, repoRoot, options);
63
+ const resourceContexts = buildResourceInstallContexts(context, resources, repoRoot);
64
+ return prepareResourceContextsForMultiInstall(resourceContexts, repoRoot);
65
+ }
22
66
  //# sourceMappingURL=convenience-preprocessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"convenience-preprocessor.js","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/convenience-preprocessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,QAAgB,EAChB,QAAgB,EAChB,OAAiC;IAEjC,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEhF,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAEzC,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,mBAAmB,YAAY,CAAC,SAAS,CAAC,MAAM,cAAc,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"convenience-preprocessor.js","sourceRoot":"","sources":["../../../../src/core/install/preprocessing/convenience-preprocessor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"git-source.d.ts","sourceRoot":"","sources":["../../../../src/core/install/sources/git-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAUhF;;GAEG;AACH,qBAAa,eAAgB,YAAW,mBAAmB;IACzD,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;IAInC,IAAI,CACR,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,aAAa,CAAC;CA0I1B"}
1
+ {"version":3,"file":"git-source.d.ts","sourceRoot":"","sources":["../../../../src/core/install/sources/git-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAWhF;;GAEG;AACH,qBAAa,eAAgB,YAAW,mBAAmB;IACzD,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO;IAInC,IAAI,CACR,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,aAAa,CAAC;CA0M1B"}
@@ -5,7 +5,8 @@ import { detectPluginType } from '../plugin-detector.js';
5
5
  import { detectBase } from '../base-detector.js';
6
6
  import { getPlatformsState } from '../../../core/platforms.js';
7
7
  import { logger } from '../../../utils/logger.js';
8
- import { resolve } from 'path';
8
+ import { stat } from 'fs/promises';
9
+ import { resolve, dirname } from 'path';
9
10
  /**
10
11
  * Loads packages from git repositories
11
12
  */
@@ -84,8 +85,65 @@ export class GitSourceLoader {
84
85
  }
85
86
  };
86
87
  }
87
- // Use detected base as content root if available
88
- const contentRoot = detectedBaseInfo?.base || result.sourcePath;
88
+ // Determine content root.
89
+ // When resourcePath is specified, it is authoritative — the user explicitly requested
90
+ // this specific resource. The detected base serves as validation/metadata, not resolution.
91
+ //
92
+ // Use detectedBase when it has a meaningful containment relationship with resourceRoot:
93
+ // - detectedBase is at or within resourceRoot (base detection found something more
94
+ // specific, e.g. a nested plugin.json)
95
+ // - resourceRoot is within detectedBase AND detectedBase is NOT the repo root
96
+ // (base detection found the plugin/package root that contains the resource file,
97
+ // e.g. plugin.json at plugins/codebase-cleanup while resource is
98
+ // plugins/codebase-cleanup/agents/code-reviewer.md)
99
+ //
100
+ // The repo root is explicitly excluded from the ancestor check because every
101
+ // resourceRoot trivially starts with repoPath + '/'. When detectedBase collapses
102
+ // to the repo root (e.g. marketplace or top-level pattern match), it does not
103
+ // represent a meaningful package base for the specific resource.
104
+ //
105
+ // Fall back to resourceRoot when detectedBase is unrelated, absent, or the repo root.
106
+ // If resourceRoot is a file, use its parent directory since a content root must be
107
+ // a directory.
108
+ let contentRoot;
109
+ if (source.resourcePath) {
110
+ const resourceRoot = resolve(result.repoPath, source.resourcePath);
111
+ const detectedBase = detectedBaseInfo?.base;
112
+ if (detectedBase && (detectedBase.startsWith(resourceRoot) || // detectedBase at or within resourceRoot
113
+ ( // resourceRoot within detectedBase (file-in-plugin)
114
+ detectedBase !== result.repoPath && // but NOT the repo root (trivially matches everything)
115
+ resourceRoot.startsWith(detectedBase + '/')))) {
116
+ // Detected base has a meaningful containment relationship — use it (always a directory).
117
+ contentRoot = detectedBase;
118
+ }
119
+ else if (detectedBase && detectedBase !== result.repoPath) {
120
+ // Detected base is a meaningful directory that isn't the repo root.
121
+ // This handles cases where base detection found a valid package root
122
+ // that doesn't strictly contain resourceRoot but is still relevant.
123
+ contentRoot = detectedBase;
124
+ }
125
+ else {
126
+ // Detected base is absent, is the repo root (marketplace/pattern collapsed),
127
+ // or has no relationship. Fall back to resourceRoot, using dirname if it's a file.
128
+ try {
129
+ const s = await stat(resourceRoot);
130
+ contentRoot = s.isDirectory() ? resourceRoot : dirname(resourceRoot);
131
+ }
132
+ catch {
133
+ // If stat fails (path doesn't exist), use dirname as safe default
134
+ contentRoot = dirname(resourceRoot);
135
+ }
136
+ }
137
+ logger.info('Content root resolved via resourcePath', {
138
+ resourcePath: source.resourcePath,
139
+ detectedBase,
140
+ contentRoot
141
+ });
142
+ }
143
+ else {
144
+ // No resourcePath: use detected base or sourcePath as before.
145
+ contentRoot = detectedBaseInfo?.base || result.sourcePath;
146
+ }
89
147
  // Load individual package/plugin
90
148
  let sourcePackage = await loadPackageFromPath(contentRoot, {
91
149
  gitUrl: source.gitUrl,
@@ -96,6 +154,11 @@ export class GitSourceLoader {
96
154
  });
97
155
  // Detect plugin type at content root
98
156
  const pluginDetection = await detectPluginType(contentRoot);
157
+ // When resourcePath is set, the user explicitly requested a specific resource.
158
+ // Never propagate pluginType 'marketplace' in this case — it would trigger the
159
+ // marketplace selection prompt in applyBaseDetection, which is wrong because we
160
+ // already have enough information to install directly.
161
+ const suppressMarketplace = source.resourcePath && pluginDetection.type === 'marketplace';
99
162
  const packageName = sourcePackage.metadata.name;
100
163
  const version = sourcePackage.metadata.version || '0.0.0';
101
164
  // Note: Plugin transformation is handled by the main flow, not here
@@ -105,7 +168,7 @@ export class GitSourceLoader {
105
168
  version,
106
169
  contentRoot,
107
170
  source: 'git',
108
- pluginMetadata: pluginDetection.isPlugin ? {
171
+ pluginMetadata: (pluginDetection.isPlugin && !suppressMarketplace) ? {
109
172
  isPlugin: true,
110
173
  pluginType: pluginDetection.type, // Can be 'individual', 'marketplace', or 'marketplace-defined'
111
174
  manifestPath: pluginDetection.manifestPath