@skillsmith/cli 0.7.2 → 0.7.3

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 (560) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli.js +44039 -0
  4. package/package.json +21 -11
  5. package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts +0 -20
  6. package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts.map +0 -1
  7. package/dist/src/commands/__meta__/telemetry-coverage.test.js +0 -118
  8. package/dist/src/commands/__meta__/telemetry-coverage.test.js.map +0 -1
  9. package/dist/src/commands/ab-test.d.ts +0 -29
  10. package/dist/src/commands/ab-test.d.ts.map +0 -1
  11. package/dist/src/commands/ab-test.js +0 -226
  12. package/dist/src/commands/ab-test.js.map +0 -1
  13. package/dist/src/commands/ab-test.test.d.ts +0 -7
  14. package/dist/src/commands/ab-test.test.d.ts.map +0 -1
  15. package/dist/src/commands/ab-test.test.js +0 -255
  16. package/dist/src/commands/ab-test.test.js.map +0 -1
  17. package/dist/src/commands/analyze.d.ts +0 -14
  18. package/dist/src/commands/analyze.d.ts.map +0 -1
  19. package/dist/src/commands/analyze.js +0 -191
  20. package/dist/src/commands/analyze.js.map +0 -1
  21. package/dist/src/commands/audit-collisions.d.ts +0 -68
  22. package/dist/src/commands/audit-collisions.d.ts.map +0 -1
  23. package/dist/src/commands/audit-collisions.js +0 -309
  24. package/dist/src/commands/audit-collisions.js.map +0 -1
  25. package/dist/src/commands/audit-sources.action.d.ts +0 -37
  26. package/dist/src/commands/audit-sources.action.d.ts.map +0 -1
  27. package/dist/src/commands/audit-sources.action.js +0 -321
  28. package/dist/src/commands/audit-sources.action.js.map +0 -1
  29. package/dist/src/commands/audit-sources.d.ts +0 -37
  30. package/dist/src/commands/audit-sources.d.ts.map +0 -1
  31. package/dist/src/commands/audit-sources.js +0 -55
  32. package/dist/src/commands/audit-sources.js.map +0 -1
  33. package/dist/src/commands/audit-sources.test.d.ts +0 -9
  34. package/dist/src/commands/audit-sources.test.d.ts.map +0 -1
  35. package/dist/src/commands/audit-sources.test.js +0 -228
  36. package/dist/src/commands/audit-sources.test.js.map +0 -1
  37. package/dist/src/commands/audit.d.ts +0 -40
  38. package/dist/src/commands/audit.d.ts.map +0 -1
  39. package/dist/src/commands/audit.js +0 -223
  40. package/dist/src/commands/audit.js.map +0 -1
  41. package/dist/src/commands/audit.test.d.ts +0 -8
  42. package/dist/src/commands/audit.test.d.ts.map +0 -1
  43. package/dist/src/commands/audit.test.js +0 -97
  44. package/dist/src/commands/audit.test.js.map +0 -1
  45. package/dist/src/commands/author/index.d.ts +0 -17
  46. package/dist/src/commands/author/index.d.ts.map +0 -1
  47. package/dist/src/commands/author/index.js +0 -21
  48. package/dist/src/commands/author/index.js.map +0 -1
  49. package/dist/src/commands/author/init.action.d.ts +0 -29
  50. package/dist/src/commands/author/init.action.d.ts.map +0 -1
  51. package/dist/src/commands/author/init.action.js +0 -131
  52. package/dist/src/commands/author/init.action.js.map +0 -1
  53. package/dist/src/commands/author/init.d.ts +0 -36
  54. package/dist/src/commands/author/init.d.ts.map +0 -1
  55. package/dist/src/commands/author/init.helpers.d.ts +0 -80
  56. package/dist/src/commands/author/init.helpers.d.ts.map +0 -1
  57. package/dist/src/commands/author/init.helpers.js +0 -107
  58. package/dist/src/commands/author/init.helpers.js.map +0 -1
  59. package/dist/src/commands/author/init.js +0 -320
  60. package/dist/src/commands/author/init.js.map +0 -1
  61. package/dist/src/commands/author/mcp-init.d.ts +0 -21
  62. package/dist/src/commands/author/mcp-init.d.ts.map +0 -1
  63. package/dist/src/commands/author/mcp-init.js +0 -202
  64. package/dist/src/commands/author/mcp-init.js.map +0 -1
  65. package/dist/src/commands/author/subagent.d.ts +0 -23
  66. package/dist/src/commands/author/subagent.d.ts.map +0 -1
  67. package/dist/src/commands/author/subagent.js +0 -174
  68. package/dist/src/commands/author/subagent.js.map +0 -1
  69. package/dist/src/commands/author/transform.d.ts +0 -23
  70. package/dist/src/commands/author/transform.d.ts.map +0 -1
  71. package/dist/src/commands/author/transform.js +0 -149
  72. package/dist/src/commands/author/transform.js.map +0 -1
  73. package/dist/src/commands/author/utils.d.ts +0 -27
  74. package/dist/src/commands/author/utils.d.ts.map +0 -1
  75. package/dist/src/commands/author/utils.js +0 -118
  76. package/dist/src/commands/author/utils.js.map +0 -1
  77. package/dist/src/commands/config.d.ts +0 -57
  78. package/dist/src/commands/config.d.ts.map +0 -1
  79. package/dist/src/commands/config.js +0 -226
  80. package/dist/src/commands/config.js.map +0 -1
  81. package/dist/src/commands/create.d.ts +0 -43
  82. package/dist/src/commands/create.d.ts.map +0 -1
  83. package/dist/src/commands/create.js +0 -336
  84. package/dist/src/commands/create.js.map +0 -1
  85. package/dist/src/commands/diff.d.ts +0 -21
  86. package/dist/src/commands/diff.d.ts.map +0 -1
  87. package/dist/src/commands/diff.js +0 -227
  88. package/dist/src/commands/diff.js.map +0 -1
  89. package/dist/src/commands/diff.test.d.ts +0 -6
  90. package/dist/src/commands/diff.test.d.ts.map +0 -1
  91. package/dist/src/commands/diff.test.js +0 -327
  92. package/dist/src/commands/diff.test.js.map +0 -1
  93. package/dist/src/commands/import-local.d.ts +0 -28
  94. package/dist/src/commands/import-local.d.ts.map +0 -1
  95. package/dist/src/commands/import-local.helpers.d.ts +0 -28
  96. package/dist/src/commands/import-local.helpers.d.ts.map +0 -1
  97. package/dist/src/commands/import-local.helpers.js +0 -166
  98. package/dist/src/commands/import-local.helpers.js.map +0 -1
  99. package/dist/src/commands/import-local.js +0 -273
  100. package/dist/src/commands/import-local.js.map +0 -1
  101. package/dist/src/commands/import-local.types.d.ts +0 -59
  102. package/dist/src/commands/import-local.types.d.ts.map +0 -1
  103. package/dist/src/commands/import-local.types.js +0 -2
  104. package/dist/src/commands/import-local.types.js.map +0 -1
  105. package/dist/src/commands/import.d.ts +0 -47
  106. package/dist/src/commands/import.d.ts.map +0 -1
  107. package/dist/src/commands/import.js +0 -314
  108. package/dist/src/commands/import.js.map +0 -1
  109. package/dist/src/commands/index.d.ts +0 -28
  110. package/dist/src/commands/index.d.ts.map +0 -1
  111. package/dist/src/commands/index.js +0 -50
  112. package/dist/src/commands/index.js.map +0 -1
  113. package/dist/src/commands/info.d.ts +0 -19
  114. package/dist/src/commands/info.d.ts.map +0 -1
  115. package/dist/src/commands/info.js +0 -110
  116. package/dist/src/commands/info.js.map +0 -1
  117. package/dist/src/commands/install-skill.d.ts +0 -16
  118. package/dist/src/commands/install-skill.d.ts.map +0 -1
  119. package/dist/src/commands/install-skill.js +0 -155
  120. package/dist/src/commands/install-skill.js.map +0 -1
  121. package/dist/src/commands/install.d.ts +0 -34
  122. package/dist/src/commands/install.d.ts.map +0 -1
  123. package/dist/src/commands/install.js +0 -311
  124. package/dist/src/commands/install.js.map +0 -1
  125. package/dist/src/commands/inventory.action.d.ts +0 -55
  126. package/dist/src/commands/inventory.action.d.ts.map +0 -1
  127. package/dist/src/commands/inventory.action.js +0 -179
  128. package/dist/src/commands/inventory.action.js.map +0 -1
  129. package/dist/src/commands/inventory.action.test.d.ts +0 -19
  130. package/dist/src/commands/inventory.action.test.d.ts.map +0 -1
  131. package/dist/src/commands/inventory.action.test.js +0 -371
  132. package/dist/src/commands/inventory.action.test.js.map +0 -1
  133. package/dist/src/commands/inventory.d.ts +0 -21
  134. package/dist/src/commands/inventory.d.ts.map +0 -1
  135. package/dist/src/commands/inventory.js +0 -42
  136. package/dist/src/commands/inventory.js.map +0 -1
  137. package/dist/src/commands/login.d.ts +0 -7
  138. package/dist/src/commands/login.d.ts.map +0 -1
  139. package/dist/src/commands/login.js +0 -323
  140. package/dist/src/commands/login.js.map +0 -1
  141. package/dist/src/commands/login.test-helpers.d.ts +0 -7
  142. package/dist/src/commands/login.test-helpers.d.ts.map +0 -1
  143. package/dist/src/commands/login.test-helpers.js +0 -44
  144. package/dist/src/commands/login.test-helpers.js.map +0 -1
  145. package/dist/src/commands/login.test.d.ts +0 -2
  146. package/dist/src/commands/login.test.d.ts.map +0 -1
  147. package/dist/src/commands/login.test.js +0 -387
  148. package/dist/src/commands/login.test.js.map +0 -1
  149. package/dist/src/commands/logout.d.ts +0 -15
  150. package/dist/src/commands/logout.d.ts.map +0 -1
  151. package/dist/src/commands/logout.js +0 -54
  152. package/dist/src/commands/logout.js.map +0 -1
  153. package/dist/src/commands/logout.test.d.ts +0 -8
  154. package/dist/src/commands/logout.test.d.ts.map +0 -1
  155. package/dist/src/commands/logout.test.js +0 -137
  156. package/dist/src/commands/logout.test.js.map +0 -1
  157. package/dist/src/commands/manage.d.ts +0 -19
  158. package/dist/src/commands/manage.d.ts.map +0 -1
  159. package/dist/src/commands/manage.js +0 -346
  160. package/dist/src/commands/manage.js.map +0 -1
  161. package/dist/src/commands/merge.d.ts +0 -24
  162. package/dist/src/commands/merge.d.ts.map +0 -1
  163. package/dist/src/commands/merge.js +0 -168
  164. package/dist/src/commands/merge.js.map +0 -1
  165. package/dist/src/commands/pin.d.ts +0 -26
  166. package/dist/src/commands/pin.d.ts.map +0 -1
  167. package/dist/src/commands/pin.js +0 -138
  168. package/dist/src/commands/pin.js.map +0 -1
  169. package/dist/src/commands/pin.test.d.ts +0 -6
  170. package/dist/src/commands/pin.test.d.ts.map +0 -1
  171. package/dist/src/commands/pin.test.js +0 -206
  172. package/dist/src/commands/pin.test.js.map +0 -1
  173. package/dist/src/commands/recommend-scoring.d.ts +0 -29
  174. package/dist/src/commands/recommend-scoring.d.ts.map +0 -1
  175. package/dist/src/commands/recommend-scoring.js +0 -141
  176. package/dist/src/commands/recommend-scoring.js.map +0 -1
  177. package/dist/src/commands/recommend.d.ts +0 -15
  178. package/dist/src/commands/recommend.d.ts.map +0 -1
  179. package/dist/src/commands/recommend.helpers.d.ts +0 -44
  180. package/dist/src/commands/recommend.helpers.d.ts.map +0 -1
  181. package/dist/src/commands/recommend.helpers.js +0 -303
  182. package/dist/src/commands/recommend.helpers.js.map +0 -1
  183. package/dist/src/commands/recommend.js +0 -198
  184. package/dist/src/commands/recommend.js.map +0 -1
  185. package/dist/src/commands/recommend.types.d.ts +0 -66
  186. package/dist/src/commands/recommend.types.d.ts.map +0 -1
  187. package/dist/src/commands/recommend.types.js +0 -14
  188. package/dist/src/commands/recommend.types.js.map +0 -1
  189. package/dist/src/commands/run-registry-sync.d.ts +0 -31
  190. package/dist/src/commands/run-registry-sync.d.ts.map +0 -1
  191. package/dist/src/commands/run-registry-sync.js +0 -45
  192. package/dist/src/commands/run-registry-sync.js.map +0 -1
  193. package/dist/src/commands/search-formatters.d.ts +0 -36
  194. package/dist/src/commands/search-formatters.d.ts.map +0 -1
  195. package/dist/src/commands/search-formatters.js +0 -132
  196. package/dist/src/commands/search-formatters.js.map +0 -1
  197. package/dist/src/commands/search-types.d.ts +0 -46
  198. package/dist/src/commands/search-types.d.ts.map +0 -1
  199. package/dist/src/commands/search-types.js +0 -12
  200. package/dist/src/commands/search-types.js.map +0 -1
  201. package/dist/src/commands/search.action.d.ts +0 -16
  202. package/dist/src/commands/search.action.d.ts.map +0 -1
  203. package/dist/src/commands/search.action.js +0 -384
  204. package/dist/src/commands/search.action.js.map +0 -1
  205. package/dist/src/commands/search.d.ts +0 -18
  206. package/dist/src/commands/search.d.ts.map +0 -1
  207. package/dist/src/commands/search.helpers.d.ts +0 -52
  208. package/dist/src/commands/search.helpers.d.ts.map +0 -1
  209. package/dist/src/commands/search.helpers.js +0 -95
  210. package/dist/src/commands/search.helpers.js.map +0 -1
  211. package/dist/src/commands/search.js +0 -48
  212. package/dist/src/commands/search.js.map +0 -1
  213. package/dist/src/commands/search.test.d.ts +0 -10
  214. package/dist/src/commands/search.test.d.ts.map +0 -1
  215. package/dist/src/commands/search.test.js +0 -179
  216. package/dist/src/commands/search.test.js.map +0 -1
  217. package/dist/src/commands/sync.action.d.ts +0 -39
  218. package/dist/src/commands/sync.action.d.ts.map +0 -1
  219. package/dist/src/commands/sync.action.js +0 -353
  220. package/dist/src/commands/sync.action.js.map +0 -1
  221. package/dist/src/commands/sync.d.ts +0 -24
  222. package/dist/src/commands/sync.d.ts.map +0 -1
  223. package/dist/src/commands/sync.helpers.d.ts +0 -55
  224. package/dist/src/commands/sync.helpers.d.ts.map +0 -1
  225. package/dist/src/commands/sync.helpers.js +0 -90
  226. package/dist/src/commands/sync.helpers.js.map +0 -1
  227. package/dist/src/commands/sync.js +0 -101
  228. package/dist/src/commands/sync.js.map +0 -1
  229. package/dist/src/commands/telemetry.action.d.ts +0 -38
  230. package/dist/src/commands/telemetry.action.d.ts.map +0 -1
  231. package/dist/src/commands/telemetry.action.js +0 -350
  232. package/dist/src/commands/telemetry.action.js.map +0 -1
  233. package/dist/src/commands/telemetry.d.ts +0 -30
  234. package/dist/src/commands/telemetry.d.ts.map +0 -1
  235. package/dist/src/commands/telemetry.helpers.d.ts +0 -58
  236. package/dist/src/commands/telemetry.helpers.d.ts.map +0 -1
  237. package/dist/src/commands/telemetry.helpers.js +0 -173
  238. package/dist/src/commands/telemetry.helpers.js.map +0 -1
  239. package/dist/src/commands/telemetry.helpers.test.d.ts +0 -15
  240. package/dist/src/commands/telemetry.helpers.test.d.ts.map +0 -1
  241. package/dist/src/commands/telemetry.helpers.test.js +0 -240
  242. package/dist/src/commands/telemetry.helpers.test.js.map +0 -1
  243. package/dist/src/commands/telemetry.js +0 -65
  244. package/dist/src/commands/telemetry.js.map +0 -1
  245. package/dist/src/commands/telemetry.test.d.ts +0 -18
  246. package/dist/src/commands/telemetry.test.d.ts.map +0 -1
  247. package/dist/src/commands/telemetry.test.js +0 -401
  248. package/dist/src/commands/telemetry.test.js.map +0 -1
  249. package/dist/src/commands/whoami.d.ts +0 -15
  250. package/dist/src/commands/whoami.d.ts.map +0 -1
  251. package/dist/src/commands/whoami.js +0 -55
  252. package/dist/src/commands/whoami.js.map +0 -1
  253. package/dist/src/commands/whoami.test.d.ts +0 -8
  254. package/dist/src/commands/whoami.test.d.ts.map +0 -1
  255. package/dist/src/commands/whoami.test.js +0 -133
  256. package/dist/src/commands/whoami.test.js.map +0 -1
  257. package/dist/src/config.d.ts +0 -29
  258. package/dist/src/config.d.ts.map +0 -1
  259. package/dist/src/config.js +0 -34
  260. package/dist/src/config.js.map +0 -1
  261. package/dist/src/index.d.ts +0 -22
  262. package/dist/src/index.d.ts.map +0 -1
  263. package/dist/src/index.js +0 -117
  264. package/dist/src/index.js.map +0 -1
  265. package/dist/src/templates/changelog.md.template.d.ts +0 -8
  266. package/dist/src/templates/changelog.md.template.d.ts.map +0 -1
  267. package/dist/src/templates/changelog.md.template.js +0 -19
  268. package/dist/src/templates/changelog.md.template.js.map +0 -1
  269. package/dist/src/templates/index.d.ts +0 -11
  270. package/dist/src/templates/index.d.ts.map +0 -1
  271. package/dist/src/templates/index.js +0 -11
  272. package/dist/src/templates/index.js.map +0 -1
  273. package/dist/src/templates/mcp-server.template.d.ts +0 -82
  274. package/dist/src/templates/mcp-server.template.d.ts.map +0 -1
  275. package/dist/src/templates/mcp-server.template.js +0 -430
  276. package/dist/src/templates/mcp-server.template.js.map +0 -1
  277. package/dist/src/templates/mcp-server.template.snippets.d.ts +0 -51
  278. package/dist/src/templates/mcp-server.template.snippets.d.ts.map +0 -1
  279. package/dist/src/templates/mcp-server.template.snippets.js +0 -162
  280. package/dist/src/templates/mcp-server.template.snippets.js.map +0 -1
  281. package/dist/src/templates/mcp-template-handlers.d.ts +0 -33
  282. package/dist/src/templates/mcp-template-handlers.d.ts.map +0 -1
  283. package/dist/src/templates/mcp-template-handlers.js +0 -106
  284. package/dist/src/templates/mcp-template-handlers.js.map +0 -1
  285. package/dist/src/templates/mcp-template-types.d.ts +0 -48
  286. package/dist/src/templates/mcp-template-types.d.ts.map +0 -1
  287. package/dist/src/templates/mcp-template-types.js +0 -18
  288. package/dist/src/templates/mcp-template-types.js.map +0 -1
  289. package/dist/src/templates/readme.md.template.d.ts +0 -8
  290. package/dist/src/templates/readme.md.template.d.ts.map +0 -1
  291. package/dist/src/templates/readme.md.template.js +0 -86
  292. package/dist/src/templates/readme.md.template.js.map +0 -1
  293. package/dist/src/templates/skill.md.template.d.ts +0 -8
  294. package/dist/src/templates/skill.md.template.d.ts.map +0 -1
  295. package/dist/src/templates/skill.md.template.js +0 -97
  296. package/dist/src/templates/skill.md.template.js.map +0 -1
  297. package/dist/src/templates/subagent.md.template.d.ts +0 -38
  298. package/dist/src/templates/subagent.md.template.d.ts.map +0 -1
  299. package/dist/src/templates/subagent.md.template.js +0 -128
  300. package/dist/src/templates/subagent.md.template.js.map +0 -1
  301. package/dist/src/utils/errors.d.ts +0 -52
  302. package/dist/src/utils/errors.d.ts.map +0 -1
  303. package/dist/src/utils/errors.js +0 -58
  304. package/dist/src/utils/errors.js.map +0 -1
  305. package/dist/src/utils/formatters.d.ts +0 -39
  306. package/dist/src/utils/formatters.d.ts.map +0 -1
  307. package/dist/src/utils/formatters.js +0 -69
  308. package/dist/src/utils/formatters.js.map +0 -1
  309. package/dist/src/utils/license-types.d.ts +0 -88
  310. package/dist/src/utils/license-types.d.ts.map +0 -1
  311. package/dist/src/utils/license-types.js +0 -60
  312. package/dist/src/utils/license-types.js.map +0 -1
  313. package/dist/src/utils/license-validation.d.ts +0 -61
  314. package/dist/src/utils/license-validation.d.ts.map +0 -1
  315. package/dist/src/utils/license-validation.js +0 -198
  316. package/dist/src/utils/license-validation.js.map +0 -1
  317. package/dist/src/utils/license.d.ts +0 -56
  318. package/dist/src/utils/license.d.ts.map +0 -1
  319. package/dist/src/utils/license.js +0 -163
  320. package/dist/src/utils/license.js.map +0 -1
  321. package/dist/src/utils/license.test.d.ts +0 -7
  322. package/dist/src/utils/license.test.d.ts.map +0 -1
  323. package/dist/src/utils/license.test.js +0 -308
  324. package/dist/src/utils/license.test.js.map +0 -1
  325. package/dist/src/utils/manifest.d.ts +0 -121
  326. package/dist/src/utils/manifest.d.ts.map +0 -1
  327. package/dist/src/utils/manifest.js +0 -133
  328. package/dist/src/utils/manifest.js.map +0 -1
  329. package/dist/src/utils/manifest.test.d.ts +0 -20
  330. package/dist/src/utils/manifest.test.d.ts.map +0 -1
  331. package/dist/src/utils/manifest.test.js +0 -344
  332. package/dist/src/utils/manifest.test.js.map +0 -1
  333. package/dist/src/utils/node-version.d.ts +0 -41
  334. package/dist/src/utils/node-version.d.ts.map +0 -1
  335. package/dist/src/utils/node-version.js +0 -123
  336. package/dist/src/utils/node-version.js.map +0 -1
  337. package/dist/src/utils/open-database.d.ts +0 -35
  338. package/dist/src/utils/open-database.d.ts.map +0 -1
  339. package/dist/src/utils/open-database.js +0 -73
  340. package/dist/src/utils/open-database.js.map +0 -1
  341. package/dist/src/utils/require-tier.d.ts +0 -38
  342. package/dist/src/utils/require-tier.d.ts.map +0 -1
  343. package/dist/src/utils/require-tier.js +0 -74
  344. package/dist/src/utils/require-tier.js.map +0 -1
  345. package/dist/src/utils/sanitize.d.ts +0 -30
  346. package/dist/src/utils/sanitize.d.ts.map +0 -1
  347. package/dist/src/utils/sanitize.js +0 -45
  348. package/dist/src/utils/sanitize.js.map +0 -1
  349. package/dist/src/utils/skill-name.d.ts +0 -19
  350. package/dist/src/utils/skill-name.d.ts.map +0 -1
  351. package/dist/src/utils/skill-name.js +0 -26
  352. package/dist/src/utils/skill-name.js.map +0 -1
  353. package/dist/src/utils/skills-directory.d.ts +0 -95
  354. package/dist/src/utils/skills-directory.d.ts.map +0 -1
  355. package/dist/src/utils/skills-directory.js +0 -285
  356. package/dist/src/utils/skills-directory.js.map +0 -1
  357. package/dist/src/utils/startup-header-gate.d.ts +0 -29
  358. package/dist/src/utils/startup-header-gate.d.ts.map +0 -1
  359. package/dist/src/utils/startup-header-gate.js +0 -44
  360. package/dist/src/utils/startup-header-gate.js.map +0 -1
  361. package/dist/src/utils/startup-header-gate.test.d.ts +0 -2
  362. package/dist/src/utils/startup-header-gate.test.d.ts.map +0 -1
  363. package/dist/src/utils/startup-header-gate.test.js +0 -46
  364. package/dist/src/utils/startup-header-gate.test.js.map +0 -1
  365. package/dist/src/utils/tool-analyzer.d.ts +0 -54
  366. package/dist/src/utils/tool-analyzer.d.ts.map +0 -1
  367. package/dist/src/utils/tool-analyzer.js +0 -156
  368. package/dist/src/utils/tool-analyzer.js.map +0 -1
  369. package/dist/src/version.d.ts +0 -2
  370. package/dist/src/version.d.ts.map +0 -1
  371. package/dist/src/version.js +0 -24
  372. package/dist/src/version.js.map +0 -1
  373. package/dist/tests/audit-collisions.test.d.ts +0 -42
  374. package/dist/tests/audit-collisions.test.d.ts.map +0 -1
  375. package/dist/tests/audit-collisions.test.js +0 -370
  376. package/dist/tests/audit-collisions.test.js.map +0 -1
  377. package/dist/tests/audit-restructure.test.d.ts +0 -15
  378. package/dist/tests/audit-restructure.test.d.ts.map +0 -1
  379. package/dist/tests/audit-restructure.test.js +0 -151
  380. package/dist/tests/audit-restructure.test.js.map +0 -1
  381. package/dist/tests/author.test.d.ts +0 -5
  382. package/dist/tests/author.test.d.ts.map +0 -1
  383. package/dist/tests/author.test.js +0 -653
  384. package/dist/tests/author.test.js.map +0 -1
  385. package/dist/tests/config.test.d.ts +0 -33
  386. package/dist/tests/config.test.d.ts.map +0 -1
  387. package/dist/tests/config.test.js +0 -240
  388. package/dist/tests/config.test.js.map +0 -1
  389. package/dist/tests/create.test.d.ts +0 -5
  390. package/dist/tests/create.test.d.ts.map +0 -1
  391. package/dist/tests/create.test.js +0 -449
  392. package/dist/tests/create.test.js.map +0 -1
  393. package/dist/tests/e2e/audit-sources-affix.test.d.ts +0 -11
  394. package/dist/tests/e2e/audit-sources-affix.test.d.ts.map +0 -1
  395. package/dist/tests/e2e/audit-sources-affix.test.js +0 -121
  396. package/dist/tests/e2e/audit-sources-affix.test.js.map +0 -1
  397. package/dist/tests/e2e/audit-sources-apply.test.d.ts +0 -13
  398. package/dist/tests/e2e/audit-sources-apply.test.d.ts.map +0 -1
  399. package/dist/tests/e2e/audit-sources-apply.test.js +0 -166
  400. package/dist/tests/e2e/audit-sources-apply.test.js.map +0 -1
  401. package/dist/tests/e2e/audit-sources-recovery.test.d.ts +0 -15
  402. package/dist/tests/e2e/audit-sources-recovery.test.d.ts.map +0 -1
  403. package/dist/tests/e2e/audit-sources-recovery.test.js +0 -179
  404. package/dist/tests/e2e/audit-sources-recovery.test.js.map +0 -1
  405. package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts +0 -23
  406. package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts.map +0 -1
  407. package/dist/tests/e2e/audit-sources-roundtrip.test.js +0 -139
  408. package/dist/tests/e2e/audit-sources-roundtrip.test.js.map +0 -1
  409. package/dist/tests/e2e/author.e2e.test.d.ts +0 -9
  410. package/dist/tests/e2e/author.e2e.test.d.ts.map +0 -1
  411. package/dist/tests/e2e/author.e2e.test.js +0 -666
  412. package/dist/tests/e2e/author.e2e.test.js.map +0 -1
  413. package/dist/tests/e2e/import.e2e.test.d.ts +0 -10
  414. package/dist/tests/e2e/import.e2e.test.d.ts.map +0 -1
  415. package/dist/tests/e2e/import.e2e.test.js +0 -213
  416. package/dist/tests/e2e/import.e2e.test.js.map +0 -1
  417. package/dist/tests/e2e/manage.e2e.test.d.ts +0 -9
  418. package/dist/tests/e2e/manage.e2e.test.d.ts.map +0 -1
  419. package/dist/tests/e2e/manage.e2e.test.js +0 -277
  420. package/dist/tests/e2e/manage.e2e.test.js.map +0 -1
  421. package/dist/tests/e2e/search.e2e.test.d.ts +0 -10
  422. package/dist/tests/e2e/search.e2e.test.d.ts.map +0 -1
  423. package/dist/tests/e2e/search.e2e.test.js +0 -324
  424. package/dist/tests/e2e/search.e2e.test.js.map +0 -1
  425. package/dist/tests/e2e/test-config.d.ts +0 -39
  426. package/dist/tests/e2e/test-config.d.ts.map +0 -1
  427. package/dist/tests/e2e/test-config.js +0 -44
  428. package/dist/tests/e2e/test-config.js.map +0 -1
  429. package/dist/tests/e2e/utils/baseline-collector.d.ts +0 -107
  430. package/dist/tests/e2e/utils/baseline-collector.d.ts.map +0 -1
  431. package/dist/tests/e2e/utils/baseline-collector.js +0 -211
  432. package/dist/tests/e2e/utils/baseline-collector.js.map +0 -1
  433. package/dist/tests/e2e/utils/hardcoded-detector.d.ts +0 -46
  434. package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +0 -1
  435. package/dist/tests/e2e/utils/hardcoded-detector.js +0 -238
  436. package/dist/tests/e2e/utils/hardcoded-detector.js.map +0 -1
  437. package/dist/tests/e2e/utils/index.d.ts +0 -12
  438. package/dist/tests/e2e/utils/index.d.ts.map +0 -1
  439. package/dist/tests/e2e/utils/index.js +0 -12
  440. package/dist/tests/e2e/utils/index.js.map +0 -1
  441. package/dist/tests/e2e/utils/linear-reporter.d.ts +0 -60
  442. package/dist/tests/e2e/utils/linear-reporter.d.ts.map +0 -1
  443. package/dist/tests/e2e/utils/linear-reporter.js +0 -223
  444. package/dist/tests/e2e/utils/linear-reporter.js.map +0 -1
  445. package/dist/tests/e2e/utils/mock-github.d.ts +0 -23
  446. package/dist/tests/e2e/utils/mock-github.d.ts.map +0 -1
  447. package/dist/tests/e2e/utils/mock-github.js +0 -60
  448. package/dist/tests/e2e/utils/mock-github.js.map +0 -1
  449. package/dist/tests/e2e/utils/mock-prompts.d.ts +0 -19
  450. package/dist/tests/e2e/utils/mock-prompts.d.ts.map +0 -1
  451. package/dist/tests/e2e/utils/mock-prompts.js +0 -48
  452. package/dist/tests/e2e/utils/mock-prompts.js.map +0 -1
  453. package/dist/tests/e2e/utils/source-recovery-fixture.d.ts +0 -49
  454. package/dist/tests/e2e/utils/source-recovery-fixture.d.ts.map +0 -1
  455. package/dist/tests/e2e/utils/source-recovery-fixture.js +0 -106
  456. package/dist/tests/e2e/utils/source-recovery-fixture.js.map +0 -1
  457. package/dist/tests/embedding-probe-stdio.test.d.ts +0 -11
  458. package/dist/tests/embedding-probe-stdio.test.d.ts.map +0 -1
  459. package/dist/tests/embedding-probe-stdio.test.js +0 -58
  460. package/dist/tests/embedding-probe-stdio.test.js.map +0 -1
  461. package/dist/tests/import.test.d.ts +0 -5
  462. package/dist/tests/import.test.d.ts.map +0 -1
  463. package/dist/tests/import.test.js +0 -11
  464. package/dist/tests/import.test.js.map +0 -1
  465. package/dist/tests/init.test.d.ts +0 -30
  466. package/dist/tests/init.test.d.ts.map +0 -1
  467. package/dist/tests/init.test.js +0 -357
  468. package/dist/tests/init.test.js.map +0 -1
  469. package/dist/tests/install-multi-client.test.d.ts +0 -2
  470. package/dist/tests/install-multi-client.test.d.ts.map +0 -1
  471. package/dist/tests/install-multi-client.test.js +0 -202
  472. package/dist/tests/install-multi-client.test.js.map +0 -1
  473. package/dist/tests/install-quarantine.test.d.ts +0 -10
  474. package/dist/tests/install-quarantine.test.d.ts.map +0 -1
  475. package/dist/tests/install-quarantine.test.js +0 -86
  476. package/dist/tests/install-quarantine.test.js.map +0 -1
  477. package/dist/tests/install-skill.test.d.ts +0 -8
  478. package/dist/tests/install-skill.test.d.ts.map +0 -1
  479. package/dist/tests/install-skill.test.js +0 -414
  480. package/dist/tests/install-skill.test.js.map +0 -1
  481. package/dist/tests/integration/import-local.test.d.ts +0 -2
  482. package/dist/tests/integration/import-local.test.d.ts.map +0 -1
  483. package/dist/tests/integration/import-local.test.js +0 -158
  484. package/dist/tests/integration/import-local.test.js.map +0 -1
  485. package/dist/tests/license-validation.test.d.ts +0 -8
  486. package/dist/tests/license-validation.test.d.ts.map +0 -1
  487. package/dist/tests/license-validation.test.js +0 -186
  488. package/dist/tests/license-validation.test.js.map +0 -1
  489. package/dist/tests/manage.test.d.ts +0 -5
  490. package/dist/tests/manage.test.d.ts.map +0 -1
  491. package/dist/tests/manage.test.js +0 -495
  492. package/dist/tests/manage.test.js.map +0 -1
  493. package/dist/tests/mcp-server-template.test.d.ts +0 -7
  494. package/dist/tests/mcp-server-template.test.d.ts.map +0 -1
  495. package/dist/tests/mcp-server-template.test.js +0 -372
  496. package/dist/tests/mcp-server-template.test.js.map +0 -1
  497. package/dist/tests/node-version.test.d.ts +0 -8
  498. package/dist/tests/node-version.test.d.ts.map +0 -1
  499. package/dist/tests/node-version.test.js +0 -200
  500. package/dist/tests/node-version.test.js.map +0 -1
  501. package/dist/tests/open-database.test.d.ts +0 -2
  502. package/dist/tests/open-database.test.d.ts.map +0 -1
  503. package/dist/tests/open-database.test.js +0 -77
  504. package/dist/tests/open-database.test.js.map +0 -1
  505. package/dist/tests/recommend-helpers.test.d.ts +0 -9
  506. package/dist/tests/recommend-helpers.test.d.ts.map +0 -1
  507. package/dist/tests/recommend-helpers.test.js +0 -308
  508. package/dist/tests/recommend-helpers.test.js.map +0 -1
  509. package/dist/tests/recommend-scoring.test.d.ts +0 -8
  510. package/dist/tests/recommend-scoring.test.d.ts.map +0 -1
  511. package/dist/tests/recommend-scoring.test.js +0 -184
  512. package/dist/tests/recommend-scoring.test.js.map +0 -1
  513. package/dist/tests/recommend.errors.test.d.ts +0 -8
  514. package/dist/tests/recommend.errors.test.d.ts.map +0 -1
  515. package/dist/tests/recommend.errors.test.js +0 -232
  516. package/dist/tests/recommend.errors.test.js.map +0 -1
  517. package/dist/tests/recommend.filters.test.d.ts +0 -9
  518. package/dist/tests/recommend.filters.test.d.ts.map +0 -1
  519. package/dist/tests/recommend.filters.test.js +0 -235
  520. package/dist/tests/recommend.filters.test.js.map +0 -1
  521. package/dist/tests/recommend.test-helpers.d.ts +0 -66
  522. package/dist/tests/recommend.test-helpers.d.ts.map +0 -1
  523. package/dist/tests/recommend.test-helpers.js +0 -79
  524. package/dist/tests/recommend.test-helpers.js.map +0 -1
  525. package/dist/tests/recommend.test.d.ts +0 -11
  526. package/dist/tests/recommend.test.d.ts.map +0 -1
  527. package/dist/tests/recommend.test.js +0 -320
  528. package/dist/tests/recommend.test.js.map +0 -1
  529. package/dist/tests/search-helpers.test.d.ts +0 -2
  530. package/dist/tests/search-helpers.test.d.ts.map +0 -1
  531. package/dist/tests/search-helpers.test.js +0 -110
  532. package/dist/tests/search-helpers.test.js.map +0 -1
  533. package/dist/tests/search.test.d.ts +0 -5
  534. package/dist/tests/search.test.d.ts.map +0 -1
  535. package/dist/tests/search.test.js +0 -91
  536. package/dist/tests/search.test.js.map +0 -1
  537. package/dist/tests/skills-directory-per-harness.test.d.ts +0 -2
  538. package/dist/tests/skills-directory-per-harness.test.d.ts.map +0 -1
  539. package/dist/tests/skills-directory-per-harness.test.js +0 -116
  540. package/dist/tests/skills-directory-per-harness.test.js.map +0 -1
  541. package/dist/tests/skills-directory.test.d.ts +0 -2
  542. package/dist/tests/skills-directory.test.d.ts.map +0 -1
  543. package/dist/tests/skills-directory.test.js +0 -108
  544. package/dist/tests/skills-directory.test.js.map +0 -1
  545. package/dist/tests/sync.auth-ux.test.d.ts +0 -14
  546. package/dist/tests/sync.auth-ux.test.d.ts.map +0 -1
  547. package/dist/tests/sync.auth-ux.test.js +0 -148
  548. package/dist/tests/sync.auth-ux.test.js.map +0 -1
  549. package/dist/tests/tool-analyzer.test.d.ts +0 -8
  550. package/dist/tests/tool-analyzer.test.d.ts.map +0 -1
  551. package/dist/tests/tool-analyzer.test.js +0 -149
  552. package/dist/tests/tool-analyzer.test.js.map +0 -1
  553. package/dist/tests/unit/commands/install.test.d.ts +0 -7
  554. package/dist/tests/unit/commands/install.test.d.ts.map +0 -1
  555. package/dist/tests/unit/commands/install.test.js +0 -482
  556. package/dist/tests/unit/commands/install.test.js.map +0 -1
  557. package/dist/tests/unit/import-local.helpers.test.d.ts +0 -2
  558. package/dist/tests/unit/import-local.helpers.test.d.ts.map +0 -1
  559. package/dist/tests/unit/import-local.helpers.test.js +0 -96
  560. package/dist/tests/unit/import-local.helpers.test.js.map +0 -1
package/package.json CHANGED
@@ -1,37 +1,47 @@
1
1
  {
2
2
  "name": "@skillsmith/cli",
3
- "version": "0.7.2",
3
+ "version": "0.7.3",
4
4
  "description": "CLI tools for Skillsmith skill discovery and authentication",
5
5
  "type": "module",
6
6
  "bin": {
7
- "skillsmith": "dist/src/index.js",
8
- "sklx": "dist/src/index.js"
7
+ "skillsmith": "dist/cli.js",
8
+ "sklx": "dist/cli.js"
9
9
  },
10
10
  "scripts": {
11
11
  "prepublishOnly": "node ../../scripts/lib/forbid-local-publish.mjs && npm run build && npm run test",
12
- "build": "tsc",
12
+ "build": "tsc --noEmit && esbuild src/index.ts --bundle --platform=node --format=esm --outfile=dist/cli.js \"--banner:js=#!/usr/bin/env node\" --legal-comments=linked --external:fts5-sql-bundle --external:web-tree-sitter --external:tree-sitter-wasms --external:typescript --external:@opentelemetry/api --external:@opentelemetry/instrumentation-http --external:@opentelemetry/instrumentation-runtime-node --external:@opentelemetry/instrumentation-undici --external:@opentelemetry/resources --external:@opentelemetry/sdk-node --external:@opentelemetry/sdk-trace-base --external:@opentelemetry/semantic-conventions --external:posthog-node --external:better-sqlite3 --external:@huggingface/transformers --external:hnswlib-node --external:onnxruntime-node --external:@inquirer/prompts --external:ora --external:commander --external:gray-matter --external:chokidar --external:cli-table3",
13
13
  "dev": "tsc --watch",
14
- "import": "node dist/import.js",
15
14
  "test": "vitest run",
16
15
  "test:coverage": "vitest run --coverage"
17
16
  },
18
17
  "dependencies": {
19
18
  "@inquirer/prompts": "7.10.1",
20
- "@skillsmith/core": "^0.9.0",
21
- "@skillsmith/mcp-server": "^0.6.0",
19
+ "@opentelemetry/api": "1.9.1",
20
+ "@opentelemetry/instrumentation-http": "0.219.0",
21
+ "@opentelemetry/instrumentation-runtime-node": "0.32.0",
22
+ "@opentelemetry/instrumentation-undici": "0.29.0",
23
+ "@opentelemetry/resources": "2.8.0",
24
+ "@opentelemetry/sdk-node": "0.219.0",
25
+ "@opentelemetry/sdk-trace-base": "2.8.0",
26
+ "@opentelemetry/semantic-conventions": "1.41.1",
22
27
  "chalk": "5.6.2",
23
28
  "chokidar": "4.0.3",
24
29
  "cli-table3": "0.6.5",
25
30
  "commander": "14.0.3",
31
+ "fts5-sql-bundle": "1.0.2",
26
32
  "gray-matter": "4.0.3",
27
33
  "open": "11.0.0",
28
- "ora": "9.3.0"
29
- },
30
- "optionalDependencies": {
31
- "@isaacs/keytar": "7.9.0"
34
+ "ora": "9.3.0",
35
+ "posthog-node": "5.29.2",
36
+ "tree-sitter-wasms": "0.1.13",
37
+ "typescript": "5.9.3",
38
+ "web-tree-sitter": "0.25.10"
32
39
  },
33
40
  "devDependencies": {
41
+ "@skillsmith/core": "^0.9.0",
42
+ "@skillsmith/mcp-server": "^0.6.0",
34
43
  "@types/node": "^25.9.3",
44
+ "esbuild": "0.28.1",
35
45
  "vitest": "4.1.6"
36
46
  },
37
47
  "peerDependencies": {
@@ -1,20 +0,0 @@
1
- /**
2
- * SMI-5040 — CLI-tree telemetry coverage snapshot test.
3
- *
4
- * Scope: `packages/cli/src/commands/` (v1 partial).
5
- * Mirrors SMI-5018's MCP coverage test (packages/mcp-server/src/tools/__meta__/
6
- * telemetry-coverage.test.ts) but iterates the CLI command dispatchers.
7
- *
8
- * Why a sibling test rather than extending SMI-5018: import-path scope. The
9
- * MCP test uses `import.meta.url`-relative paths under `tools/`; reusing it
10
- * would couple the two trees and force the MCP test to know about CLI files.
11
- * Per-tree snapshots are loosely coupled and each can grow on its own
12
- * cadence as coverage extends.
13
- *
14
- * v1 partial: this allowlist is intentionally smaller than the universe of
15
- * CLI commands. Remaining files (~18) are tracked under SMI-5040 follow-up
16
- * sub-issues. The drift sentinel in the bottom test ensures the listed
17
- * dispatchers stay wrapped; new wraps must be added to CLI_DISPATCHER_MAP.
18
- */
19
- export {};
20
- //# sourceMappingURL=telemetry-coverage.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry-coverage.test.d.ts","sourceRoot":"","sources":["../../../../src/commands/__meta__/telemetry-coverage.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG"}
@@ -1,118 +0,0 @@
1
- /**
2
- * SMI-5040 — CLI-tree telemetry coverage snapshot test.
3
- *
4
- * Scope: `packages/cli/src/commands/` (v1 partial).
5
- * Mirrors SMI-5018's MCP coverage test (packages/mcp-server/src/tools/__meta__/
6
- * telemetry-coverage.test.ts) but iterates the CLI command dispatchers.
7
- *
8
- * Why a sibling test rather than extending SMI-5018: import-path scope. The
9
- * MCP test uses `import.meta.url`-relative paths under `tools/`; reusing it
10
- * would couple the two trees and force the MCP test to know about CLI files.
11
- * Per-tree snapshots are loosely coupled and each can grow on its own
12
- * cadence as coverage extends.
13
- *
14
- * v1 partial: this allowlist is intentionally smaller than the universe of
15
- * CLI commands. Remaining files (~18) are tracked under SMI-5040 follow-up
16
- * sub-issues. The drift sentinel in the bottom test ensures the listed
17
- * dispatchers stay wrapped; new wraps must be added to CLI_DISPATCHER_MAP.
18
- */
19
- import { describe, it, expect } from 'vitest';
20
- import { isTelemetered } from '@skillsmith/core/telemetry';
21
- /**
22
- * Maps source-file base name (no extension) under `packages/cli/src/commands/`
23
- * to the list of wrapped-action export names that live in that file.
24
- *
25
- * ADDING A NEW WRAPPED ACTION:
26
- * 1. Wrap the command's action handler with `withTelemetry` in its source
27
- * file (extract impl → const action = withTelemetry(impl, opts)).
28
- * 2. Add its export name to the correct inner array below.
29
- * 3. Pass the wrapped action to `.action(...)` in the createXCommand factory.
30
- */
31
- const CLI_DISPATCHER_MAP = {
32
- info: ['infoAction'],
33
- recommend: ['recommendAction'],
34
- whoami: ['whoamiAction'],
35
- 'install-skill': ['setupAction'],
36
- // SMI-5127: sibling-split pilot — action impls live in *.action.ts files
37
- 'sync.action': ['syncAction', 'syncStatusAction', 'syncHistoryAction', 'syncConfigAction'],
38
- 'search.action': ['searchAction'],
39
- // SMI-5128 batch A
40
- logout: ['logoutAction'],
41
- merge: ['mergeAction'],
42
- analyze: ['analyzeAction'],
43
- diff: ['diffAction'],
44
- // SMI-5128 batch B
45
- 'ab-test': ['abTestAction'],
46
- 'import-local': ['importLocalAction'],
47
- pin: ['pinAction', 'unpinAction'],
48
- config: ['configGetAction', 'configSetAction'],
49
- // SMI-5128 batch C
50
- install: ['installAction'],
51
- login: ['loginAction'],
52
- import: ['importAction'],
53
- create: ['createAction'],
54
- // SMI-5128 batch D
55
- 'audit-collisions': ['collisionsAction'],
56
- audit: ['advisoriesAction', 'auditAction'],
57
- manage: ['listAction', 'updateAction', 'removeAction'],
58
- // telemetry uses the .action.ts sibling-split (6 subcommands)
59
- 'telemetry.action': [
60
- 'telemetryEnableAction',
61
- 'telemetryDisableAction',
62
- 'telemetryStatusAction',
63
- 'telemetryInstallHookAction',
64
- 'telemetryUninstallHookAction',
65
- 'telemetryResetIdAction',
66
- ],
67
- // SMI-5129: author/ subcommands (init split to init.action.ts)
68
- 'author/init.action': ['initAction', 'validateAction', 'publishAction'],
69
- 'author/mcp-init': ['mcpInitAction'],
70
- 'author/subagent': ['subagentAction'],
71
- 'author/transform': ['transformAction'],
72
- };
73
- const EXPECTED_TOTAL = Object.values(CLI_DISPATCHER_MAP).reduce((n, arr) => n + arr.length, 0);
74
- const COMMANDS_DIR = new URL('../', import.meta.url).pathname;
75
- describe('SMI-5040: CLI command telemetry coverage (v1 partial)', () => {
76
- it('EXPECTED_TOTAL matches sum of CLI_DISPATCHER_MAP entries', () => {
77
- const actualSum = Object.values(CLI_DISPATCHER_MAP).reduce((n, arr) => n + arr.length, 0);
78
- expect(actualSum).toBe(EXPECTED_TOTAL);
79
- });
80
- it('every listed CLI dispatcher export is telemetry-wrapped', async () => {
81
- const failures = [];
82
- for (const [fileBase, exportNames] of Object.entries(CLI_DISPATCHER_MAP)) {
83
- const modulePath = `${COMMANDS_DIR}${fileBase}.ts`;
84
- let mod;
85
- try {
86
- mod = (await import(modulePath));
87
- }
88
- catch (err) {
89
- failures.push(`[IMPORT ERROR] ${fileBase}.ts — ${err instanceof Error ? err.message : String(err)}`);
90
- continue;
91
- }
92
- for (const exportName of exportNames) {
93
- const exported = mod[exportName];
94
- if (typeof exported !== 'function') {
95
- failures.push(`${fileBase}.ts :: ${exportName} — not a function (got ${typeof exported})`);
96
- continue;
97
- }
98
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
99
- if (!isTelemetered(exported)) {
100
- failures.push(`${fileBase}.ts :: ${exportName} — function exists but isTelemetered() returned false`);
101
- }
102
- }
103
- }
104
- if (failures.length > 0) {
105
- throw new Error(`CLI telemetry coverage failures (${failures.length}):\n` +
106
- failures.map((f) => ` • ${f}`).join('\n') +
107
- '\n\nTo fix: wrap the dispatcher with withTelemetry(...) and add it to CLI_DISPATCHER_MAP.');
108
- }
109
- });
110
- it('reports CLI dispatcher coverage to CI output', () => {
111
- const fileCount = Object.keys(CLI_DISPATCHER_MAP).length;
112
- const dispatcherCount = EXPECTED_TOTAL;
113
- console.info(`[SMI-5040] CLI telemetry coverage: ${dispatcherCount} dispatchers across ${fileCount} files (v1 partial).`);
114
- console.info('[SMI-5040] Remaining CLI files + VS Code: tracked under SMI-5040 follow-up.');
115
- expect(dispatcherCount).toBeGreaterThanOrEqual(4);
116
- });
117
- });
118
- //# sourceMappingURL=telemetry-coverage.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"telemetry-coverage.test.js","sourceRoot":"","sources":["../../../../src/commands/__meta__/telemetry-coverage.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,kBAAkB,GAA6B;IACnD,IAAI,EAAE,CAAC,YAAY,CAAC;IACpB,SAAS,EAAE,CAAC,iBAAiB,CAAC;IAC9B,MAAM,EAAE,CAAC,cAAc,CAAC;IACxB,eAAe,EAAE,CAAC,aAAa,CAAC;IAChC,yEAAyE;IACzE,aAAa,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;IAC1F,eAAe,EAAE,CAAC,cAAc,CAAC;IACjC,mBAAmB;IACnB,MAAM,EAAE,CAAC,cAAc,CAAC;IACxB,KAAK,EAAE,CAAC,aAAa,CAAC;IACtB,OAAO,EAAE,CAAC,eAAe,CAAC;IAC1B,IAAI,EAAE,CAAC,YAAY,CAAC;IACpB,mBAAmB;IACnB,SAAS,EAAE,CAAC,cAAc,CAAC;IAC3B,cAAc,EAAE,CAAC,mBAAmB,CAAC;IACrC,GAAG,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;IACjC,MAAM,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,mBAAmB;IACnB,OAAO,EAAE,CAAC,eAAe,CAAC;IAC1B,KAAK,EAAE,CAAC,aAAa,CAAC;IACtB,MAAM,EAAE,CAAC,cAAc,CAAC;IACxB,MAAM,EAAE,CAAC,cAAc,CAAC;IACxB,mBAAmB;IACnB,kBAAkB,EAAE,CAAC,kBAAkB,CAAC;IACxC,KAAK,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC;IAC1C,MAAM,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC;IACtD,8DAA8D;IAC9D,kBAAkB,EAAE;QAClB,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,4BAA4B;QAC5B,8BAA8B;QAC9B,wBAAwB;KACzB;IACD,+DAA+D;IAC/D,oBAAoB,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC;IACvE,iBAAiB,EAAE,CAAC,eAAe,CAAC;IACpC,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;IACrC,kBAAkB,EAAE,CAAC,iBAAiB,CAAC;CACxC,CAAA;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAE9F,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;AAE7D,QAAQ,CAAC,uDAAuD,EAAE,GAAG,EAAE;IACrE,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACzF,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,QAAQ,GAAa,EAAE,CAAA;QAE7B,KAAK,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACzE,MAAM,UAAU,GAAG,GAAG,YAAY,GAAG,QAAQ,KAAK,CAAA;YAElD,IAAI,GAA4B,CAAA;YAChC,IAAI,CAAC;gBACH,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAA4B,CAAA;YAC7D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CACX,kBAAkB,QAAQ,SAAS,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACtF,CAAA;gBACD,SAAQ;YACV,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,CAAA;gBAEhC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;oBACnC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,UAAU,UAAU,0BAA0B,OAAO,QAAQ,GAAG,CAAC,CAAA;oBAC1F,SAAQ;gBACV,CAAC;gBAED,8DAA8D;gBAC9D,IAAI,CAAC,aAAa,CAAC,QAAmC,CAAC,EAAE,CAAC;oBACxD,QAAQ,CAAC,IAAI,CACX,GAAG,QAAQ,UAAU,UAAU,uDAAuD,CACvF,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,CAAC,MAAM,MAAM;gBACvD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,2FAA2F,CAC9F,CAAA;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAA;QACxD,MAAM,eAAe,GAAG,cAAc,CAAA;QACtC,OAAO,CAAC,IAAI,CACV,sCAAsC,eAAe,uBAAuB,SAAS,sBAAsB,CAC5G,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAA;QAC3F,MAAM,CAAC,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;IACnD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,29 +0,0 @@
1
- /**
2
- * SMI-1916: A/B Testing Command (Team+ tier feature)
3
- *
4
- * Runs controlled A/B tests comparing original vs optimized skills.
5
- * This feature is gated to Team and Enterprise tier users.
6
- */
7
- import { Command } from 'commander';
8
- /**
9
- * Options for the ab-test command
10
- */
11
- export interface AbTestOptions {
12
- skill: string | undefined;
13
- iterations: number | undefined;
14
- output: string | undefined;
15
- json: boolean | undefined;
16
- }
17
- /**
18
- * Run the A/B test experiment
19
- *
20
- * @param options - Test options
21
- */
22
- export declare function runAbTest(options: AbTestOptions): Promise<void>;
23
- export declare const abTestAction: (opts: Record<string, string | boolean | undefined>) => Promise<void>;
24
- /**
25
- * Create the ab-test command
26
- */
27
- export declare function createAbTestCommand(): Command;
28
- export default createAbTestCommand;
29
- //# sourceMappingURL=ab-test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ab-test.d.ts","sourceRoot":"","sources":["../../../src/commands/ab-test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOnC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IACzB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B;AAyGD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA2FrE;AAaD,eAAO,MAAM,YAAY,uEAIvB,CAAA;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAsB7C;AAED,eAAe,mBAAmB,CAAA"}
@@ -1,226 +0,0 @@
1
- /**
2
- * SMI-1916: A/B Testing Command (Team+ tier feature)
3
- *
4
- * Runs controlled A/B tests comparing original vs optimized skills.
5
- * This feature is gated to Team and Enterprise tier users.
6
- */
7
- import { Command } from 'commander';
8
- import chalk from 'chalk';
9
- import { withTelemetry } from '@skillsmith/core/telemetry';
10
- import { tryLoadEnterpriseValidator } from '../utils/license-validation.js';
11
- import { sanitizeError } from '../utils/sanitize.js';
12
- /**
13
- * Check if the current user has access to the A/B testing feature
14
- *
15
- * @returns Access result with tier information
16
- */
17
- async function checkAbTestingAccess() {
18
- const validator = await tryLoadEnterpriseValidator();
19
- if (!validator) {
20
- // Enterprise package not available = community tier
21
- return { allowed: false, tier: 'community' };
22
- }
23
- const licenseKey = process.env['SKILLSMITH_LICENSE_KEY'];
24
- if (!licenseKey) {
25
- return { allowed: false, tier: 'community' };
26
- }
27
- try {
28
- const result = await validator.validate(licenseKey);
29
- if (!result.valid || !result.license) {
30
- return { allowed: false, tier: 'community' };
31
- }
32
- const tier = result.license.tier;
33
- // ab_testing is available for team and enterprise tiers
34
- const allowed = tier === 'team' || tier === 'enterprise';
35
- return { allowed, tier };
36
- }
37
- catch {
38
- return { allowed: false, tier: 'community' };
39
- }
40
- }
41
- /**
42
- * Display upgrade prompt for users without A/B testing access
43
- *
44
- * @param currentTier - The user's current tier
45
- */
46
- function showUpgradePrompt(currentTier) {
47
- console.log();
48
- console.log(chalk.yellow('\u2501'.repeat(60)));
49
- console.log(chalk.yellow.bold(' A/B Testing requires Team tier or higher'));
50
- console.log(chalk.yellow('\u2501'.repeat(60)));
51
- console.log();
52
- console.log(chalk.dim(` Current tier: ${currentTier}`));
53
- console.log();
54
- console.log(' ' + chalk.cyan('Team tier') + chalk.dim(' ($25/user/mo)'));
55
- console.log(' \u2022 A/B testing for skill optimization');
56
- console.log(' \u2022 Team workspaces & private skills');
57
- console.log(' \u2022 Usage analytics & priority support');
58
- console.log();
59
- console.log(' ' + chalk.magenta('Enterprise tier') + chalk.dim(' ($55/user/mo)'));
60
- console.log(' \u2022 Everything in Team, plus:');
61
- console.log(' \u2022 SSO/SAML, RBAC, audit logging');
62
- console.log(' \u2022 Private registry & custom integrations');
63
- console.log();
64
- console.log(chalk.bold(' Upgrade: ') + chalk.underline('https://skillsmith.app/pricing'));
65
- console.log();
66
- }
67
- /**
68
- * Display upgrade prompt as JSON for programmatic consumption
69
- *
70
- * @param currentTier - The user's current tier
71
- */
72
- function showUpgradePromptJson(currentTier) {
73
- const response = {
74
- error: 'upgrade_required',
75
- message: 'A/B Testing requires Team tier or higher',
76
- currentTier,
77
- requiredTier: 'team',
78
- feature: 'ab_testing',
79
- upgradeUrl: 'https://skillsmith.app/pricing',
80
- tiers: {
81
- team: {
82
- price: '$25/user/mo',
83
- features: [
84
- 'A/B testing for skill optimization',
85
- 'Team workspaces & private skills',
86
- 'Usage analytics & priority support',
87
- ],
88
- },
89
- enterprise: {
90
- price: '$55/user/mo',
91
- features: [
92
- 'Everything in Team',
93
- 'SSO/SAML, RBAC, audit logging',
94
- 'Private registry & custom integrations',
95
- ],
96
- },
97
- },
98
- };
99
- console.log(JSON.stringify(response, null, 2));
100
- }
101
- /**
102
- * Run the A/B test experiment
103
- *
104
- * @param options - Test options
105
- */
106
- export async function runAbTest(options) {
107
- const isJson = options.json ?? false;
108
- // Feature gate check
109
- const { allowed, tier } = await checkAbTestingAccess();
110
- if (!allowed) {
111
- if (isJson) {
112
- showUpgradePromptJson(tier);
113
- }
114
- else {
115
- showUpgradePrompt(tier);
116
- }
117
- process.exit(1);
118
- }
119
- // Team/Enterprise: Proceed with A/B testing
120
- if (!isJson) {
121
- console.log();
122
- console.log(chalk.blue.bold('\u2501'.repeat(50)));
123
- console.log(chalk.blue.bold(' Skillsmith A/B Testing'));
124
- console.log(chalk.blue.bold('\u2501'.repeat(50)));
125
- console.log();
126
- }
127
- // Validate required options
128
- if (!options.skill) {
129
- if (isJson) {
130
- console.log(JSON.stringify({ error: 'Skill name is required. Use --skill <name>' }));
131
- }
132
- else {
133
- console.error(chalk.red('Error: Skill name is required. Use --skill <name>'));
134
- }
135
- process.exit(1);
136
- }
137
- const iterations = options.iterations ?? 10;
138
- const outputDir = options.output ?? 'docs/research/ab-test';
139
- if (!isJson) {
140
- console.log(chalk.dim(` Tier: ${tier}`));
141
- console.log(chalk.dim(` Skill: ${options.skill}`));
142
- console.log(chalk.dim(` Iterations: ${iterations}`));
143
- console.log(chalk.dim(` Output: ${outputDir}`));
144
- console.log();
145
- }
146
- try {
147
- // A/B test runner implementation placeholder
148
- // The actual experiment runner will be implemented in a separate module
149
- // For now, provide guidance on manual execution
150
- if (isJson) {
151
- console.log(JSON.stringify({
152
- status: 'ready',
153
- message: 'A/B test infrastructure ready. Use scripts/run-large-skill-experiments.ts for experiments.',
154
- skill: options.skill,
155
- iterations,
156
- outputDir,
157
- manualCommand: `docker exec skillsmith-dev-1 npx tsx scripts/run-large-skill-experiments.ts --skill ${options.skill} --iterations ${iterations}`,
158
- }));
159
- }
160
- else {
161
- console.log(chalk.green('A/B testing infrastructure is ready.'));
162
- console.log();
163
- console.log(chalk.dim('The A/B testing experiment will:'));
164
- console.log(chalk.dim(' 1. Download original skill from the registry'));
165
- console.log(chalk.dim(' 2. Apply Skillsmith transformations'));
166
- console.log(chalk.dim(' 3. Run comparative benchmarks'));
167
- console.log(chalk.dim(' 4. Generate detailed analysis report'));
168
- console.log();
169
- console.log(chalk.cyan('For manual execution, run:'));
170
- console.log(chalk.white(` docker exec skillsmith-dev-1 npx tsx scripts/run-large-skill-experiments.ts --skill ${options.skill} --iterations ${iterations}`));
171
- }
172
- if (!isJson) {
173
- console.log();
174
- console.log(chalk.dim('─'.repeat(50)));
175
- console.log(chalk.dim('Note: Full A/B test runner coming soon.'));
176
- }
177
- }
178
- catch (error) {
179
- if (isJson) {
180
- console.error(JSON.stringify({ error: sanitizeError(error) }));
181
- }
182
- else {
183
- console.error(chalk.red('A/B test failed:'), sanitizeError(error));
184
- }
185
- process.exit(1);
186
- }
187
- }
188
- // SMI-5128 batch B: extracted from inline .action() closure so withTelemetry
189
- // can wrap it at the export boundary (SMI-5018 coverage gate).
190
- async function abTestActionImpl(opts) {
191
- await runAbTest({
192
- skill: opts['skill'],
193
- iterations: opts['iterations'] ? parseInt(opts['iterations'], 10) : 10,
194
- output: opts['output'],
195
- json: opts['json'] === true,
196
- });
197
- }
198
- export const abTestAction = withTelemetry(abTestActionImpl, {
199
- source: 'cli',
200
- extractSkillId: () => 'ab-test',
201
- extractFramework: () => 'cli',
202
- });
203
- /**
204
- * Create the ab-test command
205
- */
206
- export function createAbTestCommand() {
207
- const cmd = new Command('ab-test')
208
- .description('Run A/B testing experiments comparing original vs optimized skills (Team+ tier)')
209
- .option('-s, --skill <name>', 'Name of the skill to test')
210
- .option('-i, --iterations <number>', 'Number of test iterations', '10')
211
- .option('-o, --output <directory>', 'Output directory for results', 'docs/research/ab-test')
212
- .option('-j, --json', 'Output results as JSON')
213
- .addHelpText('after', `
214
- Examples:
215
- $ skillsmith ab-test --skill governance
216
- $ skillsmith ab-test --skill commit --iterations 20
217
- $ skillsmith ab-test --skill react-best-practices --json
218
-
219
- Note: This feature requires Team tier ($25/user/mo) or higher.
220
- Visit https://skillsmith.app/pricing to upgrade.
221
- `)
222
- .action(abTestAction);
223
- return cmd;
224
- }
225
- export default createAbTestCommand;
226
- //# sourceMappingURL=ab-test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ab-test.js","sourceRoot":"","sources":["../../../src/commands/ab-test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * SMI-1916: A/B Testing Command Tests
3
- *
4
- * Tests for the ab-test CLI command with tier-based feature gating.
5
- */
6
- export {};
7
- //# sourceMappingURL=ab-test.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ab-test.test.d.ts","sourceRoot":"","sources":["../../../src/commands/ab-test.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}