@axm.sh/cli 0.0.6 → 0.0.8

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 (445) hide show
  1. package/dist/src/agents/claude-code/descriptor.d.ts.map +1 -1
  2. package/dist/src/agents/claude-code/descriptor.js +0 -2
  3. package/dist/src/agents/claude-code/descriptor.js.map +1 -1
  4. package/dist/src/agents/claude-code/index.d.ts +0 -2
  5. package/dist/src/agents/claude-code/index.d.ts.map +1 -1
  6. package/dist/src/agents/claude-code/index.js +0 -2
  7. package/dist/src/agents/claude-code/index.js.map +1 -1
  8. package/dist/src/agents/codex/descriptor.d.ts.map +1 -1
  9. package/dist/src/agents/codex/descriptor.js +0 -2
  10. package/dist/src/agents/codex/descriptor.js.map +1 -1
  11. package/dist/src/agents/codex/index.d.ts +0 -2
  12. package/dist/src/agents/codex/index.d.ts.map +1 -1
  13. package/dist/src/agents/codex/index.js +0 -2
  14. package/dist/src/agents/codex/index.js.map +1 -1
  15. package/dist/src/agents/continue/descriptor.d.ts.map +1 -1
  16. package/dist/src/agents/continue/descriptor.js +0 -2
  17. package/dist/src/agents/continue/descriptor.js.map +1 -1
  18. package/dist/src/agents/continue/index.d.ts +0 -1
  19. package/dist/src/agents/continue/index.d.ts.map +1 -1
  20. package/dist/src/agents/continue/index.js +0 -1
  21. package/dist/src/agents/continue/index.js.map +1 -1
  22. package/dist/src/agents/cursor/descriptor.d.ts.map +1 -1
  23. package/dist/src/agents/cursor/descriptor.js +0 -2
  24. package/dist/src/agents/cursor/descriptor.js.map +1 -1
  25. package/dist/src/agents/cursor/index.d.ts +0 -1
  26. package/dist/src/agents/cursor/index.d.ts.map +1 -1
  27. package/dist/src/agents/cursor/index.js +0 -1
  28. package/dist/src/agents/cursor/index.js.map +1 -1
  29. package/dist/src/agents/detection.d.ts +13 -55
  30. package/dist/src/agents/detection.d.ts.map +1 -1
  31. package/dist/src/agents/detection.js +27 -84
  32. package/dist/src/agents/detection.js.map +1 -1
  33. package/dist/src/agents/index.d.ts +1 -3
  34. package/dist/src/agents/index.d.ts.map +1 -1
  35. package/dist/src/agents/index.js +1 -4
  36. package/dist/src/agents/index.js.map +1 -1
  37. package/dist/src/agents/opencode/descriptor.d.ts.map +1 -1
  38. package/dist/src/agents/opencode/descriptor.js +0 -2
  39. package/dist/src/agents/opencode/descriptor.js.map +1 -1
  40. package/dist/src/agents/opencode/index.d.ts +0 -1
  41. package/dist/src/agents/opencode/index.d.ts.map +1 -1
  42. package/dist/src/agents/opencode/index.js +0 -1
  43. package/dist/src/agents/opencode/index.js.map +1 -1
  44. package/dist/src/agents/types.d.ts +1 -16
  45. package/dist/src/agents/types.d.ts.map +1 -1
  46. package/dist/src/agents/windsurf/descriptor.d.ts.map +1 -1
  47. package/dist/src/agents/windsurf/descriptor.js +0 -2
  48. package/dist/src/agents/windsurf/descriptor.js.map +1 -1
  49. package/dist/src/agents/windsurf/index.d.ts +0 -1
  50. package/dist/src/agents/windsurf/index.d.ts.map +1 -1
  51. package/dist/src/agents/windsurf/index.js +0 -1
  52. package/dist/src/agents/windsurf/index.js.map +1 -1
  53. package/dist/src/cli-commands/init/handler.d.ts +1 -1
  54. package/dist/src/cli-commands/init/handler.d.ts.map +1 -1
  55. package/dist/src/cli-commands/init/handler.js +1 -1
  56. package/dist/src/cli-commands/init/handler.js.map +1 -1
  57. package/dist/src/cli-commands/skills/command.d.ts.map +1 -1
  58. package/dist/src/cli-commands/skills/command.js +6 -0
  59. package/dist/src/cli-commands/skills/command.js.map +1 -1
  60. package/dist/src/cli-commands/skills/constants.d.ts +9 -0
  61. package/dist/src/cli-commands/skills/constants.d.ts.map +1 -0
  62. package/dist/src/cli-commands/skills/constants.js +9 -0
  63. package/dist/src/cli-commands/skills/constants.js.map +1 -0
  64. package/dist/src/cli-commands/skills/copy-skill.d.ts +1 -1
  65. package/dist/src/cli-commands/skills/copy-skill.d.ts.map +1 -1
  66. package/dist/src/cli-commands/skills/copy-skill.js +11 -24
  67. package/dist/src/cli-commands/skills/copy-skill.js.map +1 -1
  68. package/dist/src/cli-commands/skills/disable/command.d.ts +15 -0
  69. package/dist/src/cli-commands/skills/disable/command.d.ts.map +1 -0
  70. package/dist/src/cli-commands/skills/disable/command.js +56 -0
  71. package/dist/src/cli-commands/skills/disable/command.js.map +1 -0
  72. package/dist/src/cli-commands/skills/disable/disable-skill.d.ts +25 -0
  73. package/dist/src/cli-commands/skills/disable/disable-skill.d.ts.map +1 -0
  74. package/dist/src/cli-commands/skills/disable/disable-skill.js +101 -0
  75. package/dist/src/cli-commands/skills/disable/disable-skill.js.map +1 -0
  76. package/dist/src/cli-commands/skills/disable/handler.d.ts +18 -0
  77. package/dist/src/cli-commands/skills/disable/handler.d.ts.map +1 -0
  78. package/dist/src/cli-commands/skills/disable/handler.js +72 -0
  79. package/dist/src/cli-commands/skills/disable/handler.js.map +1 -0
  80. package/dist/src/cli-commands/skills/enable/command.d.ts +15 -0
  81. package/dist/src/cli-commands/skills/enable/command.d.ts.map +1 -0
  82. package/dist/src/cli-commands/skills/enable/command.js +56 -0
  83. package/dist/src/cli-commands/skills/enable/command.js.map +1 -0
  84. package/dist/src/cli-commands/skills/enable/enable-skill.d.ts +26 -0
  85. package/dist/src/cli-commands/skills/enable/enable-skill.d.ts.map +1 -0
  86. package/dist/src/cli-commands/skills/enable/enable-skill.js +138 -0
  87. package/dist/src/cli-commands/skills/enable/enable-skill.js.map +1 -0
  88. package/dist/src/cli-commands/skills/enable/handler.d.ts +18 -0
  89. package/dist/src/cli-commands/skills/enable/handler.d.ts.map +1 -0
  90. package/dist/src/cli-commands/skills/enable/handler.js +72 -0
  91. package/dist/src/cli-commands/skills/enable/handler.js.map +1 -0
  92. package/dist/src/cli-commands/skills/fork/handler.d.ts +4 -13
  93. package/dist/src/cli-commands/skills/fork/handler.d.ts.map +1 -1
  94. package/dist/src/cli-commands/skills/fork/handler.js +37 -29
  95. package/dist/src/cli-commands/skills/fork/handler.js.map +1 -1
  96. package/dist/src/cli-commands/skills/fs-helpers.d.ts +12 -0
  97. package/dist/src/cli-commands/skills/fs-helpers.d.ts.map +1 -0
  98. package/dist/src/cli-commands/skills/fs-helpers.js +12 -0
  99. package/dist/src/cli-commands/skills/fs-helpers.js.map +1 -0
  100. package/dist/src/cli-commands/skills/install/discover-skills.d.ts +3 -18
  101. package/dist/src/cli-commands/skills/install/discover-skills.d.ts.map +1 -1
  102. package/dist/src/cli-commands/skills/install/discover-skills.js +7 -20
  103. package/dist/src/cli-commands/skills/install/discover-skills.js.map +1 -1
  104. package/dist/src/cli-commands/skills/install/handler.d.ts +1 -16
  105. package/dist/src/cli-commands/skills/install/handler.d.ts.map +1 -1
  106. package/dist/src/cli-commands/skills/install/handler.js +20 -27
  107. package/dist/src/cli-commands/skills/install/handler.js.map +1 -1
  108. package/dist/src/cli-commands/skills/install/install-skill.d.ts +1 -1
  109. package/dist/src/cli-commands/skills/install/install-skill.d.ts.map +1 -1
  110. package/dist/src/cli-commands/skills/install/install-skill.js +12 -18
  111. package/dist/src/cli-commands/skills/install/install-skill.js.map +1 -1
  112. package/dist/src/cli-commands/skills/install/select-skills.d.ts +4 -5
  113. package/dist/src/cli-commands/skills/install/select-skills.d.ts.map +1 -1
  114. package/dist/src/cli-commands/skills/install/select-skills.js +13 -13
  115. package/dist/src/cli-commands/skills/install/select-skills.js.map +1 -1
  116. package/dist/src/cli-commands/skills/install/skill-utils.d.ts +1 -6
  117. package/dist/src/cli-commands/skills/install/skill-utils.d.ts.map +1 -1
  118. package/dist/src/cli-commands/skills/install/skill-utils.js +8 -4
  119. package/dist/src/cli-commands/skills/install/skill-utils.js.map +1 -1
  120. package/dist/src/cli-commands/skills/list/handler.d.ts +1 -1
  121. package/dist/src/cli-commands/skills/list/handler.d.ts.map +1 -1
  122. package/dist/src/cli-commands/skills/list/handler.js +1 -1
  123. package/dist/src/cli-commands/skills/list/handler.js.map +1 -1
  124. package/dist/src/cli-commands/skills/naming.d.ts +17 -0
  125. package/dist/src/cli-commands/skills/naming.d.ts.map +1 -0
  126. package/dist/src/cli-commands/skills/naming.js +20 -0
  127. package/dist/src/cli-commands/skills/naming.js.map +1 -0
  128. package/dist/src/cli-commands/skills/operations.d.ts +25 -1
  129. package/dist/src/cli-commands/skills/operations.d.ts.map +1 -1
  130. package/dist/src/cli-commands/skills/publish/handler.d.ts +1 -10
  131. package/dist/src/cli-commands/skills/publish/handler.d.ts.map +1 -1
  132. package/dist/src/cli-commands/skills/publish/handler.js +31 -47
  133. package/dist/src/cli-commands/skills/publish/handler.js.map +1 -1
  134. package/dist/src/cli-commands/skills/publish-skill.d.ts +1 -1
  135. package/dist/src/cli-commands/skills/publish-skill.d.ts.map +1 -1
  136. package/dist/src/cli-commands/skills/publish-skill.js +37 -52
  137. package/dist/src/cli-commands/skills/publish-skill.js.map +1 -1
  138. package/dist/src/cli-commands/skills/rename/command.d.ts +16 -0
  139. package/dist/src/cli-commands/skills/rename/command.d.ts.map +1 -0
  140. package/dist/src/cli-commands/skills/rename/command.js +62 -0
  141. package/dist/src/cli-commands/skills/rename/command.js.map +1 -0
  142. package/dist/src/cli-commands/skills/rename/handler.d.ts +20 -0
  143. package/dist/src/cli-commands/skills/rename/handler.d.ts.map +1 -0
  144. package/dist/src/cli-commands/skills/rename/handler.js +77 -0
  145. package/dist/src/cli-commands/skills/rename/handler.js.map +1 -0
  146. package/dist/src/cli-commands/skills/rename/rename-skill.d.ts +25 -0
  147. package/dist/src/cli-commands/skills/rename/rename-skill.d.ts.map +1 -0
  148. package/dist/src/cli-commands/skills/rename/rename-skill.js +110 -0
  149. package/dist/src/cli-commands/skills/rename/rename-skill.js.map +1 -0
  150. package/dist/src/cli-commands/skills/uninstall/handler.d.ts +1 -1
  151. package/dist/src/cli-commands/skills/uninstall/handler.d.ts.map +1 -1
  152. package/dist/src/cli-commands/skills/uninstall/handler.js +12 -1
  153. package/dist/src/cli-commands/skills/uninstall/handler.js.map +1 -1
  154. package/dist/src/cli-commands/skills/uninstall/uninstall-skill.d.ts +1 -1
  155. package/dist/src/cli-commands/skills/uninstall/uninstall-skill.d.ts.map +1 -1
  156. package/dist/src/cli-commands/skills/uninstall/uninstall-skill.js +14 -23
  157. package/dist/src/cli-commands/skills/uninstall/uninstall-skill.js.map +1 -1
  158. package/dist/src/cli-commands/skills/update/build-plan.d.ts +7 -2
  159. package/dist/src/cli-commands/skills/update/build-plan.d.ts.map +1 -1
  160. package/dist/src/cli-commands/skills/update/build-plan.js +28 -20
  161. package/dist/src/cli-commands/skills/update/build-plan.js.map +1 -1
  162. package/dist/src/cli-commands/skills/update/handler.d.ts +11 -20
  163. package/dist/src/cli-commands/skills/update/handler.d.ts.map +1 -1
  164. package/dist/src/cli-commands/skills/update/handler.js +161 -90
  165. package/dist/src/cli-commands/skills/update/handler.js.map +1 -1
  166. package/dist/src/cli-commands/skills/utils.d.ts +2 -16
  167. package/dist/src/cli-commands/skills/utils.d.ts.map +1 -1
  168. package/dist/src/cli-commands/skills/utils.js +36 -20
  169. package/dist/src/cli-commands/skills/utils.js.map +1 -1
  170. package/dist/src/cli-error/cli-error.d.ts +21 -0
  171. package/dist/src/cli-error/cli-error.d.ts.map +1 -0
  172. package/dist/src/cli-error/cli-error.js +12 -0
  173. package/dist/src/cli-error/cli-error.js.map +1 -0
  174. package/dist/src/cli-error/index.d.ts +3 -0
  175. package/dist/src/cli-error/index.d.ts.map +1 -0
  176. package/dist/src/cli-error/index.js +3 -0
  177. package/dist/src/cli-error/index.js.map +1 -0
  178. package/dist/src/cli-error/render.d.ts +4 -0
  179. package/dist/src/cli-error/render.d.ts.map +1 -0
  180. package/dist/src/cli-error/render.js +25 -0
  181. package/dist/src/cli-error/render.js.map +1 -0
  182. package/dist/src/extensions/skills/index.d.ts +0 -5
  183. package/dist/src/extensions/skills/index.d.ts.map +1 -1
  184. package/dist/src/extensions/skills/index.js +1 -4
  185. package/dist/src/extensions/skills/index.js.map +1 -1
  186. package/dist/src/extensions/skills/state/index.d.ts +2 -2
  187. package/dist/src/extensions/skills/state/index.d.ts.map +1 -1
  188. package/dist/src/extensions/skills/state/index.js +1 -1
  189. package/dist/src/extensions/skills/state/index.js.map +1 -1
  190. package/dist/src/extensions/skills/state/pure-functions.d.ts +4 -29
  191. package/dist/src/extensions/skills/state/pure-functions.d.ts.map +1 -1
  192. package/dist/src/extensions/skills/state/pure-functions.js +4 -37
  193. package/dist/src/extensions/skills/state/pure-functions.js.map +1 -1
  194. package/dist/src/extensions/skills/state/types.d.ts +0 -1
  195. package/dist/src/extensions/skills/state/types.d.ts.map +1 -1
  196. package/dist/src/extensions/skills/state/types.js.map +1 -1
  197. package/dist/src/extensions/skills/types.d.ts +0 -40
  198. package/dist/src/extensions/skills/types.d.ts.map +1 -1
  199. package/dist/src/extensions/skills/types.js +0 -1
  200. package/dist/src/extensions/skills/types.js.map +1 -1
  201. package/dist/src/git/errors.d.ts +1 -2
  202. package/dist/src/git/errors.d.ts.map +1 -1
  203. package/dist/src/git/errors.js +0 -1
  204. package/dist/src/git/errors.js.map +1 -1
  205. package/dist/src/git/index.d.ts +0 -1
  206. package/dist/src/git/index.d.ts.map +1 -1
  207. package/dist/src/git/index.js +0 -1
  208. package/dist/src/git/index.js.map +1 -1
  209. package/dist/src/git/operations.d.ts +7 -7
  210. package/dist/src/git/operations.d.ts.map +1 -1
  211. package/dist/src/git/operations.js +22 -19
  212. package/dist/src/git/operations.js.map +1 -1
  213. package/dist/src/lockfile/index.d.ts +1 -2
  214. package/dist/src/lockfile/index.d.ts.map +1 -1
  215. package/dist/src/lockfile/index.js +2 -1
  216. package/dist/src/lockfile/index.js.map +1 -1
  217. package/dist/src/lockfile/lockfile.d.ts +77 -51
  218. package/dist/src/lockfile/lockfile.d.ts.map +1 -1
  219. package/dist/src/lockfile/lockfile.js +27 -51
  220. package/dist/src/lockfile/lockfile.js.map +1 -1
  221. package/dist/src/resolution/index.d.ts +0 -1
  222. package/dist/src/resolution/index.d.ts.map +1 -1
  223. package/dist/src/resolution/index.js +0 -2
  224. package/dist/src/resolution/index.js.map +1 -1
  225. package/dist/src/resolution/resolver.d.ts +2 -2
  226. package/dist/src/resolution/resolver.d.ts.map +1 -1
  227. package/dist/src/resolution/resolver.js +1 -1
  228. package/dist/src/resolution/resolver.js.map +1 -1
  229. package/dist/src/resolution/resolvers/ambiguous.js +1 -1
  230. package/dist/src/resolution/resolvers/ambiguous.js.map +1 -1
  231. package/dist/src/resolution/resolvers/axm-name.d.ts.map +1 -1
  232. package/dist/src/resolution/resolvers/axm-name.js +1 -1
  233. package/dist/src/resolution/resolvers/axm-name.js.map +1 -1
  234. package/dist/src/resolution/resolvers/bare-name.js +1 -1
  235. package/dist/src/resolution/resolvers/bare-name.js.map +1 -1
  236. package/dist/src/resolution/resolvers/explicit-source.d.ts.map +1 -1
  237. package/dist/src/resolution/resolvers/explicit-source.js +1 -1
  238. package/dist/src/resolution/resolvers/explicit-source.js.map +1 -1
  239. package/dist/src/resolution/resolvers/local-path.d.ts.map +1 -1
  240. package/dist/src/resolution/resolvers/local-path.js +1 -1
  241. package/dist/src/resolution/resolvers/local-path.js.map +1 -1
  242. package/dist/src/resolution/resolvers/url.d.ts.map +1 -1
  243. package/dist/src/resolution/resolvers/url.js +1 -1
  244. package/dist/src/resolution/resolvers/url.js.map +1 -1
  245. package/dist/src/runtime/error-handling.d.ts +10 -0
  246. package/dist/src/runtime/error-handling.d.ts.map +1 -0
  247. package/dist/src/runtime/error-handling.js +10 -0
  248. package/dist/src/runtime/error-handling.js.map +1 -0
  249. package/dist/src/runtime/index.d.ts +5 -4
  250. package/dist/src/runtime/index.d.ts.map +1 -1
  251. package/dist/src/runtime/index.js +11 -4
  252. package/dist/src/runtime/index.js.map +1 -1
  253. package/dist/src/settings/format-preserving-json.d.ts +1 -2
  254. package/dist/src/settings/format-preserving-json.d.ts.map +1 -1
  255. package/dist/src/settings/format-preserving-json.js +7 -7
  256. package/dist/src/settings/format-preserving-json.js.map +1 -1
  257. package/dist/src/settings/index.d.ts +5 -4
  258. package/dist/src/settings/index.d.ts.map +1 -1
  259. package/dist/src/settings/index.js +4 -2
  260. package/dist/src/settings/index.js.map +1 -1
  261. package/dist/src/settings/schema.d.ts +48 -8
  262. package/dist/src/settings/schema.d.ts.map +1 -1
  263. package/dist/src/settings/schema.js +26 -7
  264. package/dist/src/settings/schema.js.map +1 -1
  265. package/dist/src/settings/settings.d.ts +10 -52
  266. package/dist/src/settings/settings.d.ts.map +1 -1
  267. package/dist/src/settings/settings.js +22 -48
  268. package/dist/src/settings/settings.js.map +1 -1
  269. package/dist/src/settings/skill-entry.d.ts +44 -0
  270. package/dist/src/settings/skill-entry.d.ts.map +1 -0
  271. package/dist/src/settings/skill-entry.js +58 -0
  272. package/dist/src/settings/skill-entry.js.map +1 -0
  273. package/dist/src/sources/azurerepos/repo-exists.d.ts +2 -2
  274. package/dist/src/sources/azurerepos/repo-exists.d.ts.map +1 -1
  275. package/dist/src/sources/azurerepos/repo-exists.js +9 -7
  276. package/dist/src/sources/azurerepos/repo-exists.js.map +1 -1
  277. package/dist/src/sources/azurerepos/scp.d.ts +1 -2
  278. package/dist/src/sources/azurerepos/scp.d.ts.map +1 -1
  279. package/dist/src/sources/azurerepos/scp.js +6 -2
  280. package/dist/src/sources/azurerepos/scp.js.map +1 -1
  281. package/dist/src/sources/azurerepos/url.d.ts +1 -2
  282. package/dist/src/sources/azurerepos/url.d.ts.map +1 -1
  283. package/dist/src/sources/azurerepos/url.js +11 -3
  284. package/dist/src/sources/azurerepos/url.js.map +1 -1
  285. package/dist/src/sources/bitbucket/resolve-repo.d.ts +2 -2
  286. package/dist/src/sources/bitbucket/resolve-repo.d.ts.map +1 -1
  287. package/dist/src/sources/bitbucket/resolve-repo.js +5 -4
  288. package/dist/src/sources/bitbucket/resolve-repo.js.map +1 -1
  289. package/dist/src/sources/bitbucket/scp.d.ts +1 -2
  290. package/dist/src/sources/bitbucket/scp.d.ts.map +1 -1
  291. package/dist/src/sources/bitbucket/scp.js +6 -2
  292. package/dist/src/sources/bitbucket/scp.js.map +1 -1
  293. package/dist/src/sources/bitbucket/shorthand.d.ts +1 -1
  294. package/dist/src/sources/bitbucket/shorthand.d.ts.map +1 -1
  295. package/dist/src/sources/bitbucket/url.d.ts +1 -2
  296. package/dist/src/sources/bitbucket/url.d.ts.map +1 -1
  297. package/dist/src/sources/bitbucket/url.js +11 -3
  298. package/dist/src/sources/bitbucket/url.js.map +1 -1
  299. package/dist/src/sources/clone-url.d.ts +3 -4
  300. package/dist/src/sources/clone-url.d.ts.map +1 -1
  301. package/dist/src/sources/clone-url.js +6 -6
  302. package/dist/src/sources/clone-url.js.map +1 -1
  303. package/dist/src/sources/github/api.d.ts +3 -21
  304. package/dist/src/sources/github/api.d.ts.map +1 -1
  305. package/dist/src/sources/github/api.js +16 -28
  306. package/dist/src/sources/github/api.js.map +1 -1
  307. package/dist/src/sources/github/index.d.ts +1 -1
  308. package/dist/src/sources/github/index.d.ts.map +1 -1
  309. package/dist/src/sources/github/index.js +1 -1
  310. package/dist/src/sources/github/index.js.map +1 -1
  311. package/dist/src/sources/github/resolve-repo.d.ts +2 -2
  312. package/dist/src/sources/github/resolve-repo.d.ts.map +1 -1
  313. package/dist/src/sources/github/resolve-repo.js +5 -4
  314. package/dist/src/sources/github/resolve-repo.js.map +1 -1
  315. package/dist/src/sources/github/scp.d.ts +1 -2
  316. package/dist/src/sources/github/scp.d.ts.map +1 -1
  317. package/dist/src/sources/github/scp.js +6 -2
  318. package/dist/src/sources/github/scp.js.map +1 -1
  319. package/dist/src/sources/github/shorthand.d.ts +1 -1
  320. package/dist/src/sources/github/shorthand.d.ts.map +1 -1
  321. package/dist/src/sources/github/url.d.ts +1 -2
  322. package/dist/src/sources/github/url.d.ts.map +1 -1
  323. package/dist/src/sources/github/url.js +11 -3
  324. package/dist/src/sources/github/url.js.map +1 -1
  325. package/dist/src/sources/gitlab/resolve-repo.d.ts +2 -2
  326. package/dist/src/sources/gitlab/resolve-repo.d.ts.map +1 -1
  327. package/dist/src/sources/gitlab/resolve-repo.js +5 -4
  328. package/dist/src/sources/gitlab/resolve-repo.js.map +1 -1
  329. package/dist/src/sources/gitlab/scp.d.ts +1 -2
  330. package/dist/src/sources/gitlab/scp.d.ts.map +1 -1
  331. package/dist/src/sources/gitlab/scp.js +6 -2
  332. package/dist/src/sources/gitlab/scp.js.map +1 -1
  333. package/dist/src/sources/gitlab/shorthand.d.ts +1 -1
  334. package/dist/src/sources/gitlab/shorthand.d.ts.map +1 -1
  335. package/dist/src/sources/gitlab/url.d.ts +1 -2
  336. package/dist/src/sources/gitlab/url.d.ts.map +1 -1
  337. package/dist/src/sources/gitlab/url.js +11 -3
  338. package/dist/src/sources/gitlab/url.js.map +1 -1
  339. package/dist/src/sources/index.d.ts +0 -4
  340. package/dist/src/sources/index.d.ts.map +1 -1
  341. package/dist/src/sources/index.js +2 -3
  342. package/dist/src/sources/index.js.map +1 -1
  343. package/dist/src/sources/local/parser.d.ts +2 -2
  344. package/dist/src/sources/local/parser.d.ts.map +1 -1
  345. package/dist/src/sources/local/parser.js.map +1 -1
  346. package/dist/src/sources/parse-provider-shorthand.d.ts +2 -3
  347. package/dist/src/sources/parse-provider-shorthand.d.ts.map +1 -1
  348. package/dist/src/sources/parse-provider-shorthand.js +7 -3
  349. package/dist/src/sources/parse-provider-shorthand.js.map +1 -1
  350. package/dist/src/sources/provider.d.ts +5 -44
  351. package/dist/src/sources/provider.d.ts.map +1 -1
  352. package/dist/src/sources/provider.js +12 -26
  353. package/dist/src/sources/provider.js.map +1 -1
  354. package/dist/src/sources/providers/azurerepos.js +7 -7
  355. package/dist/src/sources/providers/azurerepos.js.map +1 -1
  356. package/dist/src/sources/providers/git-hosting.d.ts +3 -3
  357. package/dist/src/sources/providers/git-hosting.d.ts.map +1 -1
  358. package/dist/src/sources/providers/git-hosting.js +14 -33
  359. package/dist/src/sources/providers/git-hosting.js.map +1 -1
  360. package/dist/src/sources/providers/git.js +7 -7
  361. package/dist/src/sources/providers/git.js.map +1 -1
  362. package/dist/src/sources/providers/local.d.ts.map +1 -1
  363. package/dist/src/sources/providers/local.js +7 -18
  364. package/dist/src/sources/providers/local.js.map +1 -1
  365. package/dist/src/sources/providers/registry.d.ts +5 -5
  366. package/dist/src/sources/providers/registry.d.ts.map +1 -1
  367. package/dist/src/sources/providers/registry.js +136 -92
  368. package/dist/src/sources/providers/registry.js.map +1 -1
  369. package/dist/src/sources/registry-guard.d.ts +2 -3
  370. package/dist/src/sources/registry-guard.d.ts.map +1 -1
  371. package/dist/src/sources/registry-guard.js +8 -6
  372. package/dist/src/sources/registry-guard.js.map +1 -1
  373. package/dist/src/sources/resolve-source.d.ts +3 -3
  374. package/dist/src/sources/resolve-source.d.ts.map +1 -1
  375. package/dist/src/sources/resolve-source.js +83 -49
  376. package/dist/src/sources/resolve-source.js.map +1 -1
  377. package/dist/src/sources/service.d.ts +3 -4
  378. package/dist/src/sources/service.d.ts.map +1 -1
  379. package/dist/src/sources/service.js +8 -5
  380. package/dist/src/sources/service.js.map +1 -1
  381. package/dist/src/tui/confirm/service.d.ts +2 -2
  382. package/dist/src/tui/confirm/service.d.ts.map +1 -1
  383. package/dist/src/tui/confirm/service.js.map +1 -1
  384. package/dist/src/tui/errors.d.ts +0 -9
  385. package/dist/src/tui/errors.d.ts.map +1 -1
  386. package/dist/src/tui/errors.js +0 -2
  387. package/dist/src/tui/errors.js.map +1 -1
  388. package/dist/src/tui/index.d.ts +1 -1
  389. package/dist/src/tui/index.d.ts.map +1 -1
  390. package/dist/src/tui/index.js +1 -1
  391. package/dist/src/tui/index.js.map +1 -1
  392. package/dist/src/tui/multiselect/service.d.ts +3 -2
  393. package/dist/src/tui/multiselect/service.d.ts.map +1 -1
  394. package/dist/src/tui/multiselect/service.js +7 -5
  395. package/dist/src/tui/multiselect/service.js.map +1 -1
  396. package/dist/src/tui/password-input/service.d.ts +3 -2
  397. package/dist/src/tui/password-input/service.d.ts.map +1 -1
  398. package/dist/src/tui/password-input/service.js +7 -5
  399. package/dist/src/tui/password-input/service.js.map +1 -1
  400. package/dist/src/tui/select/service.d.ts +3 -2
  401. package/dist/src/tui/select/service.d.ts.map +1 -1
  402. package/dist/src/tui/select/service.js +5 -5
  403. package/dist/src/tui/select/service.js.map +1 -1
  404. package/dist/src/tui/spinner/index.d.ts +1 -1
  405. package/dist/src/tui/spinner/index.d.ts.map +1 -1
  406. package/dist/src/tui/spinner/service.d.ts +1 -5
  407. package/dist/src/tui/spinner/service.d.ts.map +1 -1
  408. package/dist/src/tui/spinner/service.js +25 -12
  409. package/dist/src/tui/spinner/service.js.map +1 -1
  410. package/dist/src/tui/spinner/test.d.ts +3 -0
  411. package/dist/src/tui/spinner/test.d.ts.map +1 -1
  412. package/dist/src/tui/spinner/test.js +9 -0
  413. package/dist/src/tui/spinner/test.js.map +1 -1
  414. package/dist/src/tui/spinner/types.d.ts +5 -0
  415. package/dist/src/tui/spinner/types.d.ts.map +1 -1
  416. package/dist/src/tui/text-input/service.d.ts +2 -2
  417. package/dist/src/tui/text-input/service.d.ts.map +1 -1
  418. package/dist/src/tui/text-input/service.js.map +1 -1
  419. package/dist/src/utils/create-symlink.d.ts +1 -14
  420. package/dist/src/utils/create-symlink.d.ts.map +1 -1
  421. package/dist/src/utils/create-symlink.js +17 -15
  422. package/dist/src/utils/create-symlink.js.map +1 -1
  423. package/dist/src/utils/index.d.ts +1 -2
  424. package/dist/src/utils/index.d.ts.map +1 -1
  425. package/dist/src/utils/index.js +1 -2
  426. package/dist/src/utils/index.js.map +1 -1
  427. package/dist/src/workspace/apply-plan.d.ts +5 -17
  428. package/dist/src/workspace/apply-plan.d.ts.map +1 -1
  429. package/dist/src/workspace/apply-plan.js +3 -12
  430. package/dist/src/workspace/apply-plan.js.map +1 -1
  431. package/dist/src/workspace/ensure-agents.d.ts +2 -15
  432. package/dist/src/workspace/ensure-agents.d.ts.map +1 -1
  433. package/dist/src/workspace/ensure-agents.js +7 -15
  434. package/dist/src/workspace/ensure-agents.js.map +1 -1
  435. package/dist/src/workspace/errors.d.ts +1 -1
  436. package/dist/src/workspace/errors.d.ts.map +1 -1
  437. package/dist/src/workspace/index.d.ts +1 -2
  438. package/dist/src/workspace/index.d.ts.map +1 -1
  439. package/dist/src/workspace/index.js +1 -2
  440. package/dist/src/workspace/index.js.map +1 -1
  441. package/dist/src/workspace/service.d.ts +31 -24
  442. package/dist/src/workspace/service.d.ts.map +1 -1
  443. package/dist/src/workspace/service.js +110 -81
  444. package/dist/src/workspace/service.js.map +1 -1
  445. package/package.json +1 -1
@@ -8,25 +8,15 @@
8
8
  */
9
9
  import { resolveSource, SourceProviders, printSourceInput, } from "../../../sources/index.js";
10
10
  import * as Array from "effect/Array";
11
- import * as Data from "effect/Data";
12
11
  import * as Effect from "effect/Effect";
13
12
  import * as Option from "effect/Option";
13
+ import { makeCliError } from "../../../cli-error/index.js";
14
14
  import { expandGlobs } from "../../../skills/index.js";
15
15
  import { Log, Spinner } from "../../../tui/index.js";
16
- import { formatError } from "../../../utils/errors.js";
17
16
  import { Workspace } from "../../../workspace/index.js";
18
17
  import { buildUpdatePlan } from "./build-plan.js";
19
18
  import { installSkill } from "../install/install-skill.js";
20
- // -----------------------------------------------------------------------------
21
- // Errors
22
- // -----------------------------------------------------------------------------
23
- /**
24
- * Error that occurs during skill update.
25
- *
26
- * @experimental This API is unstable and may change without notice.
27
- */
28
- export class UpdateError extends Data.TaggedError("UpdateError") {
29
- }
19
+ import { uninstallSkill } from "../uninstall/uninstall-skill.js";
30
20
  // -----------------------------------------------------------------------------
31
21
  // Main Handler
32
22
  // -----------------------------------------------------------------------------
@@ -34,15 +24,16 @@ export class UpdateError extends Data.TaggedError("UpdateError") {
34
24
  * Handles the `axm skills update` command.
35
25
  *
36
26
  * Flow:
37
- * 1. Load installed skills from settings and locked skills from lockfile
38
- * 2. If no skills installed, log info and return
27
+ * 1. Load configured skills and filter to managed + enabled
28
+ * 2. If no eligible skills, log info and return
39
29
  * 3. Filter by source argument if provided
40
30
  * 4. Filter by --skill glob patterns
41
31
  * 5. Re-resolve each source string and discover skills
42
32
  * 6. Handle re-resolution failures (warn individual, error if all fail)
43
- * 7. Build InstallSkillOperations with force flag
44
- * 8. Build update plan
45
- * 9. Resolve plan via workspace
33
+ * 7. Detect renames (skill name not found in source)
34
+ * 8. Build operations with force flag
35
+ * 9. Build update plan
36
+ * 10. Resolve plan via workspace
46
37
  *
47
38
  * @experimental This API is unstable and may change without notice.
48
39
  */
@@ -54,87 +45,136 @@ export const handleUpdate = (args) => {
54
45
  const log = yield* Log;
55
46
  const spinnerSvc = yield* Spinner;
56
47
  yield* log.info(`axm skills update (${scopeLabel})`);
57
- // Step 1: Load installed skills (settings) and locked skills (lockfile)
58
- const installedSkills = yield* ws.getInstalledSkills();
48
+ // Step 1: Load all configured skills and filter to managed + enabled
49
+ const allSkills = yield* ws.getConfiguredSkills();
59
50
  const lockedSkills = yield* ws.getLockedSkills();
60
- const skillEntries = Object.entries(installedSkills);
51
+ const skillEntries = [];
52
+ for (const [name, entry] of Object.entries(allSkills)) {
53
+ if (!entry.managed) {
54
+ yield* log.info(`Skipping ${name} (unmanaged)`);
55
+ continue;
56
+ }
57
+ if (!entry.enabled) {
58
+ yield* log.info(`Skipping ${name} (disabled)`);
59
+ continue;
60
+ }
61
+ // Managed + enabled entries always have Some source
62
+ const source = Option.getOrThrow(entry.source);
63
+ skillEntries.push([name, source]);
64
+ }
61
65
  if (skillEntries.length === 0) {
62
66
  yield* log.info("No skills installed. Nothing to update.");
63
67
  return;
64
68
  }
65
69
  // Step 2: Filter by source argument if provided
66
- let filteredEntries = skillEntries;
67
- if (Option.isSome(args.source)) {
68
- const sourceArg = yield* resolveSource(args.source.value).pipe(Effect.mapError((error) => new UpdateError({
69
- message: formatError(`Invalid source: ${error.message}`, [
70
- `Provided: ${args.source.pipe(Option.getOrElse(() => "(empty)"))}`,
71
- ]),
72
- cause: error,
73
- })));
74
- filteredEntries = yield* Effect.forEach(filteredEntries, ([name, sourceStr]) => resolveSource(sourceStr).pipe(Effect.map((resolved) => {
75
- // Compare by type + identity fields (ignoring ref/version)
76
- if (resolved.type !== sourceArg.type)
77
- return Option.none();
78
- switch (resolved.type) {
79
- case "github":
80
- case "gitlab":
81
- case "bitbucket":
82
- if (sourceArg.type === resolved.type &&
83
- "owner" in sourceArg &&
84
- "repo" in sourceArg) {
85
- return resolved.owner === sourceArg.owner && resolved.repo === sourceArg.repo
70
+ const sourceValue = Option.getOrUndefined(args.source);
71
+ const sourceFilteredEntries = sourceValue !== undefined
72
+ ? yield* Effect.gen(function* () {
73
+ const sourceArg = yield* resolveSource(sourceValue).pipe(Effect.mapError((error) => makeCliError({
74
+ code: "INVALID_SOURCE",
75
+ what: `Invalid source: ${error.message}`,
76
+ details: [`Provided: ${sourceValue}`],
77
+ cause: error,
78
+ })));
79
+ return yield* Effect.forEach(skillEntries, ([name, sourceStr]) => resolveSource(sourceStr).pipe(Effect.map((resolved) => {
80
+ // Compare by type + identity fields (ignoring ref/version)
81
+ if (resolved.type !== sourceArg.type)
82
+ return Option.none();
83
+ switch (resolved.type) {
84
+ case "github":
85
+ case "gitlab":
86
+ case "bitbucket":
87
+ if (sourceArg.type === resolved.type &&
88
+ "owner" in sourceArg &&
89
+ "repo" in sourceArg) {
90
+ return resolved.owner === sourceArg.owner &&
91
+ resolved.repo === sourceArg.repo
92
+ ? Option.some([name, sourceStr])
93
+ : Option.none();
94
+ }
95
+ return Option.none();
96
+ case "local":
97
+ return sourceArg.type === "local" && resolved.path === sourceArg.path
86
98
  ? Option.some([name, sourceStr])
87
99
  : Option.none();
88
- }
89
- return Option.none();
90
- case "local":
91
- return sourceArg.type === "local" && resolved.path === sourceArg.path
92
- ? Option.some([name, sourceStr])
93
- : Option.none();
94
- case "registry":
95
- return sourceArg.type === "registry" &&
96
- resolved.scope === sourceArg.scope &&
97
- resolved.name === sourceArg.name
98
- ? Option.some([name, sourceStr])
99
- : Option.none();
100
- default:
101
- return Option.some([name, sourceStr]);
102
- }
103
- }), Effect.catchAll(() => Effect.succeed(Option.none()))), { concurrency: "unbounded" }).pipe(Effect.map(Array.getSomes));
104
- }
100
+ case "registry":
101
+ return sourceArg.type === "registry" &&
102
+ resolved.scope === sourceArg.scope &&
103
+ resolved.name === sourceArg.name
104
+ ? Option.some([name, sourceStr])
105
+ : Option.none();
106
+ default:
107
+ return Option.some([name, sourceStr]);
108
+ }
109
+ }), Effect.catchAll(() => Effect.succeed(Option.none()))), { concurrency: "unbounded" }).pipe(Effect.map(Array.getSomes));
110
+ })
111
+ : skillEntries;
105
112
  // Step 3: Filter by --skill glob patterns
106
- if (args.skills.length > 0) {
107
- const allNames = filteredEntries.map(([name]) => name);
113
+ const filteredEntries = (() => {
114
+ if (args.skills.length === 0)
115
+ return sourceFilteredEntries;
116
+ const allNames = sourceFilteredEntries.map(([name]) => name);
108
117
  const matchedNames = expandGlobs(args.skills, allNames);
109
118
  const matchedSet = new Set(matchedNames);
110
- filteredEntries = filteredEntries.filter(([name]) => matchedSet.has(name));
119
+ return sourceFilteredEntries.filter(([name]) => matchedSet.has(name));
120
+ })();
121
+ if (args.skills.length > 0) {
111
122
  if (filteredEntries.length === 0) {
112
123
  yield* log.warn("No installed skills match the --skill filter. Nothing to update.");
113
124
  return;
114
125
  }
115
126
  }
116
- // Step 4: Re-resolve each source and discover skills
117
127
  const resolveHandle = yield* spinnerSvc.start("Resolving sources...");
118
128
  const results = yield* Effect.forEach(filteredEntries, ([name, sourceStr]) => Effect.gen(function* () {
119
129
  const source = yield* resolveSource(sourceStr);
120
- const refs = yield* sources.resolveExtension(source, {
130
+ // First try with name filter (fast path)
131
+ const namedRefs = yield* sources.resolveExtension(source, {
121
132
  names: [name],
122
133
  agents: args.agents,
123
134
  type: "skill",
124
135
  });
125
- // Filter to skill refs only and find matching name
126
- const skillRefs = Array.filter(refs, (r) => r.type === "skill");
127
- const skillRef = skillRefs.find((r) => r.skill.name === name);
128
- if (!skillRef) {
129
- yield* log.warn(`Skill "${name}" not found in source ${printSourceInput(source)}`);
136
+ const namedSkillRefs = Array.filter(namedRefs, (r) => r.type === "skill");
137
+ const skillRef = namedSkillRefs.find((r) => r.skill.name === name);
138
+ if (skillRef) {
139
+ // For registry sources, fetch to temp
140
+ if (skillRef.source.type === "registry") {
141
+ const files = yield* sources.fetch(skillRef);
142
+ return Option.some({
143
+ type: "match",
144
+ ref: { ...skillRef, location: `file://${files.directory}` },
145
+ });
146
+ }
147
+ return Option.some({ type: "match", ref: skillRef });
148
+ }
149
+ // Skill not found by name — re-resolve without name filter for rename detection
150
+ const allRefs = yield* sources.resolveExtension(source, {
151
+ names: [],
152
+ agents: args.agents,
153
+ type: "skill",
154
+ });
155
+ const allSkillRefs = Array.filter(allRefs, (r) => r.type === "skill");
156
+ if (allSkillRefs.length === 1) {
157
+ // Single-skill source: treat as rename
158
+ const newRef = allSkillRefs[0];
159
+ const resolvedNewRef = newRef.source.type === "registry"
160
+ ? { ...newRef, location: `file://${(yield* sources.fetch(newRef)).directory}` }
161
+ : newRef;
162
+ return Option.some({
163
+ type: "rename",
164
+ oldName: name,
165
+ newRef: resolvedNewRef,
166
+ });
167
+ }
168
+ else if (allSkillRefs.length > 1) {
169
+ // Multi-skill source: ambiguous rename
170
+ const availableNames = allSkillRefs.map((r) => r.skill.name).join(", ");
171
+ yield* log.warn(`Skill "${name}" not found in source. Available skills: ${availableNames}. Use \`axm skills rename ${name} <new-name>\` to update.`);
130
172
  return Option.none();
131
173
  }
132
- // For registry sources, fetch to temp
133
- if (skillRef.source.type === "registry") {
134
- const files = yield* sources.fetch(skillRef);
135
- return Option.some({ ...skillRef, location: `file://${files.directory}` });
174
+ else {
175
+ yield* log.warn(`Skill "${name}" not found in source ${printSourceInput(source)}`);
176
+ return Option.none();
136
177
  }
137
- return Option.some(skillRef);
138
178
  }).pipe(Effect.catchAll((error) => {
139
179
  return log
140
180
  .warn(`Failed to resolve "${name}": ${String(error)}`)
@@ -144,31 +184,62 @@ export const handleUpdate = (args) => {
144
184
  // Step 5: Collect successful resolutions
145
185
  const resolved = Array.getSomes(results);
146
186
  if (resolved.length === 0) {
147
- return yield* new UpdateError({
148
- message: "All source re-resolutions failed. Nothing to update.",
149
- cause: undefined,
150
- });
187
+ return yield* Effect.fail(makeCliError({
188
+ code: "UPDATE_FAILED",
189
+ what: "All source re-resolutions failed. Nothing to update.",
190
+ howToFix: "Verify the original source paths are still accessible.",
191
+ }));
151
192
  }
152
193
  // Step 6: Build operations
153
194
  const agentIds = yield* ws.getConfiguredAgents();
154
- const ops = resolved.map((ref) => ({
155
- name: "install-skill",
156
- args: {
157
- agents: agentIds,
158
- force: args.force,
159
- source: ref.source,
160
- skill: ref.skill,
161
- location: ref.location,
162
- version: ref.version,
163
- gitTreeSha: ref.gitTreeSha,
164
- },
165
- }));
195
+ const ops = [];
196
+ for (const item of resolved) {
197
+ if (item.type === "match") {
198
+ ops.push({
199
+ name: "install-skill",
200
+ args: {
201
+ agents: agentIds,
202
+ force: args.force,
203
+ source: item.ref.source,
204
+ skill: item.ref.skill,
205
+ location: item.ref.location,
206
+ version: item.ref.version,
207
+ gitTreeSha: item.ref.gitTreeSha,
208
+ },
209
+ });
210
+ }
211
+ else {
212
+ // Rename: install new name + uninstall old name
213
+ ops.push({
214
+ name: "install-skill",
215
+ args: {
216
+ agents: agentIds,
217
+ force: args.force,
218
+ source: item.newRef.source,
219
+ skill: item.newRef.skill,
220
+ location: item.newRef.location,
221
+ version: item.newRef.version,
222
+ gitTreeSha: item.newRef.gitTreeSha,
223
+ },
224
+ });
225
+ ops.push({
226
+ name: "uninstall-skill",
227
+ args: {
228
+ skillName: item.oldName,
229
+ agents: [],
230
+ },
231
+ });
232
+ }
233
+ }
166
234
  // Step 7: Build plan
167
235
  const lockfile = { lockfileVersion: 1, skills: lockedSkills };
168
236
  const plan = buildUpdatePlan(ops, lockfile, "Update skill(s)", Option.some("Update installed skills"));
169
237
  // Step 8: Resolve plan
170
- yield* ws.resolvePlan(plan, { "install-skill": installSkill });
238
+ yield* ws.resolvePlan(plan, {
239
+ "install-skill": installSkill,
240
+ "uninstall-skill": uninstallSkill,
241
+ });
171
242
  yield* log.success("Done");
172
- });
243
+ }).pipe(Effect.withSpan("Update.handle"));
173
244
  };
174
245
  //# sourceMappingURL=handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,aAAa,EACb,eAAe,EACf,gBAAgB,GAEjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AA0BjE,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAuB,EAAE,EAAE;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtD,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC;QACvC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;QACvB,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;QAElC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,UAAU,GAAG,CAAC,CAAC;QAErD,qEAAqE;QACrE,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC;QAClD,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;QAEjD,MAAM,YAAY,GAA4B,EAAE,CAAC;QACjD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnB,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,cAAc,CAAC,CAAC;gBAChD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnB,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,aAAa,CAAC,CAAC;gBAC/C,SAAS;YACX,CAAC;YACD,oDAAoD;YACpD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/C,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,gDAAgD;QAChD,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,qBAAqB,GACzB,WAAW,KAAK,SAAS;YACvB,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,IAAI,CACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,YAAY,CAAC;oBACX,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,mBAAmB,KAAK,CAAC,OAAO,EAAE;oBACxC,OAAO,EAAE,CAAC,aAAa,WAAW,EAAE,CAAC;oBACrC,KAAK,EAAE,KAAK;iBACb,CAAC,CACH,CACF,CAAC;gBACF,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAC1B,YAAY,EACZ,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CACpB,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACtB,2DAA2D;oBAC3D,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;wBAAE,OAAO,MAAM,CAAC,IAAI,EAAoB,CAAC;oBAC7E,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;wBACtB,KAAK,QAAQ,CAAC;wBACd,KAAK,QAAQ,CAAC;wBACd,KAAK,WAAW;4BACd,IACE,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;gCAChC,OAAO,IAAI,SAAS;gCACpB,MAAM,IAAI,SAAS,EACnB,CAAC;gCACD,OAAO,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK;oCACvC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;oCAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAqB,CAAC;oCACpD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAoB,CAAC;4BACtC,CAAC;4BACD,OAAO,MAAM,CAAC,IAAI,EAAoB,CAAC;wBACzC,KAAK,OAAO;4BACV,OAAO,SAAS,CAAC,IAAI,KAAK,OAAO,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;gCACnE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAqB,CAAC;gCACpD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAoB,CAAC;wBACtC,KAAK,UAAU;4BACb,OAAO,SAAS,CAAC,IAAI,KAAK,UAAU;gCAClC,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK;gCAClC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;gCAChC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAqB,CAAC;gCACpD,CAAC,CAAC,MAAM,CAAC,IAAI,EAAoB,CAAC;wBACtC;4BACE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,CAAqB,CAAC,CAAC;oBAC9D,CAAC;gBACH,CAAC,CAAC,EACF,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAoB,CAAC,CAAC,CACvE,EACH,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC;YACJ,CAAC,CAAC,YAAY,CAAC;QAEnB,0CAA0C;QAC1C,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,qBAAqB,CAAC;YAC3D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACxD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;YACzC,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;gBACpF,OAAO;YACT,CAAC;QACH,CAAC;QAOD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnC,eAAe,EACf,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CACpB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YAE/C,yCAAyC;YACzC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE;gBACxD,KAAK,EAAE,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YACH,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACzF,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAEnE,IAAI,QAAQ,EAAE,CAAC;gBACb,sCAAsC;gBACtC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACxC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC7C,OAAO,MAAM,CAAC,IAAI,CAAgB;wBAChC,IAAI,EAAE,OAAO;wBACb,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,UAAU,KAAK,CAAC,SAAS,EAAE,EAAE;qBAC5D,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,MAAM,CAAC,IAAI,CAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtE,CAAC;YAED,gFAAgF;YAChF,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE;gBACtD,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAErF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,uCAAuC;gBACvC,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;gBAChC,MAAM,cAAc,GAClB,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU;oBAC/B,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC/E,CAAC,CAAC,MAAM,CAAC;gBACb,OAAO,MAAM,CAAC,IAAI,CAAgB;oBAChC,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,cAAc;iBACvB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,uCAAuC;gBACvC,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CACb,UAAU,IAAI,4CAA4C,cAAc,6BAA6B,IAAI,0BAA0B,CACpI,CAAC;gBACF,OAAO,MAAM,CAAC,IAAI,EAAiB,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,yBAAyB,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACnF,OAAO,MAAM,CAAC,IAAI,EAAiB,CAAC;YACtC,CAAC;QACH,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,GAAG;iBACP,IAAI,CAAC,sBAAsB,IAAI,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;iBACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAiB,CAAC,CAAC,CAAC;QAC1D,CAAC,CAAC,CACH,EACH,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC;QACF,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE9C,yCAAyC;QACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,YAAY,CAAC;gBACX,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,sDAAsD;gBAC5D,QAAQ,EAAE,wDAAwD;aACnE,CAAC,CACH,CAAC;QACJ,CAAC;QAED,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC;QACjD,MAAM,GAAG,GAA2D,EAAE,CAAC;QAEvE,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1B,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM;wBACvB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK;wBACrB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ;wBAC3B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO;wBACzB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU;qBAChC;iBAC8B,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE;wBACJ,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;wBAC1B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;wBACxB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;wBAC9B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;wBAC5B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;qBACnC;iBAC8B,CAAC,CAAC;gBACnC,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE;wBACJ,SAAS,EAAE,IAAI,CAAC,OAAO;wBACvB,MAAM,EAAE,EAAE;qBACX;iBACgC,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,MAAM,QAAQ,GAAG,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,eAAe,CAC1B,GAAG,EACH,QAAQ,EACR,iBAAiB,EACjB,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CACvC,CAAC;QAEF,uBAAuB;QACvB,KAAK,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE;YAC1B,eAAe,EAAE,YAAY;YAC7B,iBAAiB,EAAE,cAAc;SAClC,CAAC,CAAC;QAEH,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC"}
@@ -9,19 +9,6 @@
9
9
  import type { ExtensionRef } from "../../resolution/index.js";
10
10
  import * as Effect from "effect/Effect";
11
11
  import { Select } from "../../tui/index.js";
12
- declare const SkillsError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
13
- readonly _tag: "SkillsError";
14
- } & Readonly<A>;
15
- /**
16
- * Error that occurs during skills operations.
17
- *
18
- * @experimental This API is unstable and may change without notice.
19
- */
20
- export declare class SkillsError extends SkillsError_base<{
21
- readonly message: string;
22
- readonly retryable: boolean;
23
- }> {
24
- }
25
12
  /**
26
13
  * Selects a single extension reference from resolution results.
27
14
  *
@@ -33,10 +20,9 @@ export declare class SkillsError extends SkillsError_base<{
33
20
  * @param refs - Extension references from resolution
34
21
  * @param input - Original input string for error messages
35
22
  * @param canPrompt - Whether interactive prompts are available
36
- * @returns Effect that succeeds with selected ExtensionRef or fails with SkillsError
23
+ * @returns Effect that succeeds with selected ExtensionRef or fails with CliError
37
24
  *
38
25
  * @experimental This API is unstable and may change without notice.
39
26
  */
40
- export declare function selectExtensionRef(refs: readonly ExtensionRef[], input: string, canPrompt: boolean): Effect.Effect<ExtensionRef, SkillsError, Select>;
41
- export {};
27
+ export declare function selectExtensionRef(refs: readonly ExtensionRef[], input: string, canPrompt: boolean): Effect.Effect<ExtensionRef, import("../../tui/errors.js").PromptCancelled | import("../../cli-error/cli-error.js").CliError, Select>;
42
28
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/cli-commands/skills/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;;;;AAO5C;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B,CAAC;CAAG;AAML;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,SAAS,YAAY,EAAE,EAC7B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,oDA4DnB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/cli-commands/skills/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAqC5C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,SAAS,YAAY,EAAE,EAC7B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,wIA8DnB"}
@@ -7,20 +7,33 @@
7
7
  * @experimental This API is unstable and may change without notice.
8
8
  */
9
9
  import * as Array from "effect/Array";
10
- import * as Data from "effect/Data";
11
10
  import * as Effect from "effect/Effect";
12
11
  import * as Option from "effect/Option";
12
+ import { makeCliError } from "../../cli-error/index.js";
13
13
  import { Select } from "../../tui/index.js";
14
- import { formatEmptyResolutionError, formatError } from "../../utils/errors.js";
15
14
  // -----------------------------------------------------------------------------
16
- // Types
15
+ // Formatting Helpers
17
16
  // -----------------------------------------------------------------------------
18
- /**
19
- * Error that occurs during skills operations.
20
- *
21
- * @experimental This API is unstable and may change without notice.
22
- */
23
- export class SkillsError extends Data.TaggedError("SkillsError") {
17
+ function formatError(what, details, howToFix) {
18
+ const lines = [`\u2717 ${what}`];
19
+ if (details && details.length > 0) {
20
+ for (const detail of details) {
21
+ lines.push(` ${detail}`);
22
+ }
23
+ }
24
+ if (howToFix) {
25
+ lines.push(` ${howToFix}`);
26
+ }
27
+ return lines.join("\n");
28
+ }
29
+ function formatEmptyResolutionError(input) {
30
+ return formatError(`Could not resolve "${input}"`, ["No matching extensions found"], [
31
+ "Try one of these formats:",
32
+ " \u2022 Local path: ./path/to/skill or /absolute/path",
33
+ " \u2022 GitHub: github:owner/repo or owner/repo",
34
+ " \u2022 GitLab: gitlab:owner/repo",
35
+ " \u2022 AXM name: @scope/name (if installed)",
36
+ ].join("\n"));
24
37
  }
25
38
  // -----------------------------------------------------------------------------
26
39
  // Extension Reference Selection
@@ -36,7 +49,7 @@ export class SkillsError extends Data.TaggedError("SkillsError") {
36
49
  * @param refs - Extension references from resolution
37
50
  * @param input - Original input string for error messages
38
51
  * @param canPrompt - Whether interactive prompts are available
39
- * @returns Effect that succeeds with selected ExtensionRef or fails with SkillsError
52
+ * @returns Effect that succeeds with selected ExtensionRef or fails with CliError
40
53
  *
41
54
  * @experimental This API is unstable and may change without notice.
42
55
  */
@@ -44,9 +57,9 @@ export function selectExtensionRef(refs, input, canPrompt) {
44
57
  return Effect.gen(function* () {
45
58
  // Empty results - fail with suggestions
46
59
  if (refs.length === 0) {
47
- return yield* Effect.fail(new SkillsError({
48
- message: formatEmptyResolutionError(input),
49
- retryable: false,
60
+ return yield* Effect.fail(makeCliError({
61
+ code: "SKILLS_OPERATION_FAILED",
62
+ what: formatEmptyResolutionError(input),
50
63
  }));
51
64
  }
52
65
  // Single result - use it directly
@@ -58,9 +71,9 @@ export function selectExtensionRef(refs, input, canPrompt) {
58
71
  const sources = refs
59
72
  .map((r) => ` • ${Option.getOrElse(r.name, () => r.origin)} (${r.source})`)
60
73
  .join("\n");
61
- return yield* Effect.fail(new SkillsError({
62
- message: formatError(`Ambiguous input "${input}" matches multiple sources`, [`Found ${refs.length} matches:\n${sources}`], "Use --yes or --non-interactive with a more specific source identifier."),
63
- retryable: false,
74
+ return yield* Effect.fail(makeCliError({
75
+ code: "SKILLS_OPERATION_FAILED",
76
+ what: formatError(`Ambiguous input "${input}" matches multiple sources`, [`Found ${refs.length} matches:\n${sources}`], "Use --yes or --non-interactive with a more specific source identifier."),
64
77
  }));
65
78
  }
66
79
  // Interactive selection
@@ -74,10 +87,13 @@ export function selectExtensionRef(refs, input, canPrompt) {
74
87
  hint: Option.some(`${ref.source}${Option.match(ref.ref, { onNone: () => "", onSome: (r) => `@${r}` })}`),
75
88
  }),
76
89
  })
77
- .pipe(Effect.mapError((error) => new SkillsError({
78
- message: `Failed to prompt for extension selection: ${error.message}`,
79
- retryable: false,
80
- })));
90
+ .pipe(Effect.mapError((error) => error._tag === "PromptCancelled"
91
+ ? error
92
+ : makeCliError({
93
+ code: "SKILLS_OPERATION_FAILED",
94
+ what: `Failed to prompt for extension selection: ${error.message}`,
95
+ cause: error,
96
+ })));
81
97
  return selected;
82
98
  });
83
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/cli-commands/skills/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/cli-commands/skills/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import * as Option from "effect/Option";
2
+ declare const CliError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
3
+ readonly _tag: "CliError";
4
+ } & Readonly<A>;
5
+ export declare class CliError extends CliError_base<{
6
+ readonly code: string;
7
+ readonly what: string;
8
+ readonly details: ReadonlyArray<string>;
9
+ readonly howToFix: Option.Option<string>;
10
+ readonly cause: unknown;
11
+ }> {
12
+ }
13
+ export declare const makeCliError: (args: {
14
+ readonly code: string;
15
+ readonly what: string;
16
+ readonly details?: ReadonlyArray<string>;
17
+ readonly howToFix?: string;
18
+ readonly cause?: unknown;
19
+ }) => CliError;
20
+ export {};
21
+ //# sourceMappingURL=cli-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-error.d.ts","sourceRoot":"","sources":["../../../src/cli-error/cli-error.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;;;;AAExC,qBAAa,QAAS,SAAQ,cAA6B;IACzD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;CAAG;AAEL,eAAO,MAAM,YAAY,GAAI,MAAM;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,KAAG,QAOA,CAAC"}
@@ -0,0 +1,12 @@
1
+ import * as Data from "effect/Data";
2
+ import * as Option from "effect/Option";
3
+ export class CliError extends Data.TaggedError("CliError") {
4
+ }
5
+ export const makeCliError = (args) => new CliError({
6
+ code: args.code,
7
+ what: args.what,
8
+ details: args.details ?? [],
9
+ howToFix: Option.fromNullable(args.howToFix),
10
+ cause: args.cause,
11
+ });
12
+ //# sourceMappingURL=cli-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-error.js","sourceRoot":"","sources":["../../../src/cli-error/cli-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,MAAM,OAAO,QAAS,SAAQ,IAAI,CAAC,WAAW,CAAC,UAAU,CAMvD;CAAG;AAEL,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAM5B,EAAY,EAAE,CACb,IAAI,QAAQ,CAAC;IACX,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,IAAI,EAAE,IAAI,CAAC,IAAI;IACf,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;IAC3B,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5C,KAAK,EAAE,IAAI,CAAC,KAAK;CAClB,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { CliError, makeCliError } from "./cli-error.js";
2
+ export { renderCliError, renderDefect } from "./render.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli-error/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { CliError, makeCliError } from "./cli-error.js";
2
+ export { renderCliError, renderDefect } from "./render.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli-error/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { CliError } from "./cli-error.js";
2
+ export declare const renderCliError: (error: CliError) => string;
3
+ export declare const renderDefect: (error: unknown) => string;
4
+ //# sourceMappingURL=render.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/cli-error/render.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,eAAO,MAAM,cAAc,GAAI,OAAO,QAAQ,KAAG,MAchD,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAa7C,CAAC"}
@@ -0,0 +1,25 @@
1
+ import * as Option from "effect/Option";
2
+ export const renderCliError = (error) => {
3
+ const lines = [];
4
+ lines.push(`\u2717 ${error.what} (${error.code})`);
5
+ for (const detail of error.details) {
6
+ lines.push(` ${detail}`);
7
+ }
8
+ if (Option.isSome(error.howToFix)) {
9
+ lines.push(` ${error.howToFix.value}`);
10
+ }
11
+ return lines.join("\n");
12
+ };
13
+ export const renderDefect = (error) => {
14
+ const lines = [];
15
+ lines.push("\u2717 An unexpected error occurred");
16
+ lines.push(" This is a bug. Please report it at https://github.com/agentxm/axm/issues");
17
+ if (error instanceof Error) {
18
+ lines.push(` ${error.message}`);
19
+ }
20
+ else if (typeof error === "string") {
21
+ lines.push(` ${error}`);
22
+ }
23
+ return lines.join("\n");
24
+ };
25
+ //# sourceMappingURL=render.js.map