@skillsmith/cli 0.7.2 → 0.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (560) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli.js +44014 -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
@@ -1,179 +0,0 @@
1
- /**
2
- * @fileoverview Unit tests for `skillsmith search` empty-index hinting.
3
- * @see SMI-4926
4
- *
5
- * A 0-result search against an EMPTY local index (not yet synced) must surface
6
- * an actionable, sync-state-aware hint instead of the bare "no skills found
7
- * matching your criteria" message used for a genuine no-match.
8
- */
9
- import { describe, it, expect, beforeEach, afterEach } from 'vitest';
10
- import { SearchService, SkillRepository, SyncHistoryRepository } from '@skillsmith/core';
11
- import { createTestDatabase, closeDatabase } from '@skillsmith/core/testkit';
12
- import { displayResults } from './search-formatters.js';
13
- import { isLocalIndexEmpty, formatEmptyIndexHint, AUTO_SYNC_COOLDOWN_MS } from './search.helpers.js';
14
- // ============================================================================
15
- // Helpers
16
- // ============================================================================
17
- const NO_MATCH_SUBSTRING = 'matching your criteria';
18
- const HINT_MARKER = 'ℹ';
19
- /** Strip ANSI color codes so newline-padding assertions are color-agnostic. */
20
- const ANSI_RE = new RegExp(String.fromCharCode(27) + '\\[[0-9;]*m', 'g');
21
- function stripAnsi(s) {
22
- return s.replace(ANSI_RE, '');
23
- }
24
- /** Seed one skill so the local index is non-empty. */
25
- function seedSkill(db) {
26
- new SkillRepository(db).create({
27
- id: 'community/auth-helper',
28
- name: 'auth-helper',
29
- description: 'Authentication helper skill',
30
- author: 'community',
31
- trustTier: 'community',
32
- tags: ['authentication'],
33
- });
34
- }
35
- /**
36
- * Record a sync attempt and force its `started_at` to a given ISO timestamp,
37
- * since SyncHistoryRepository.startRun() always stamps "now".
38
- */
39
- function seedSyncAttempt(db, startedAt) {
40
- const id = new SyncHistoryRepository(db).startRun();
41
- db.prepare('UPDATE sync_history SET started_at = ? WHERE id = ?').run(startedAt, id);
42
- }
43
- /** Capture console.log output produced by `fn`. */
44
- function captureOutput(fn) {
45
- const lines = [];
46
- const original = console.log;
47
- console.log = (...args) => {
48
- lines.push(args.map((a) => String(a)).join(' '));
49
- };
50
- try {
51
- fn();
52
- }
53
- finally {
54
- console.log = original;
55
- }
56
- return lines.join('\n');
57
- }
58
- // ============================================================================
59
- // Tests — search output: empty vs no-match vs match
60
- // ============================================================================
61
- describe('search — empty-index hinting (SMI-4926)', () => {
62
- let db;
63
- beforeEach(async () => {
64
- db = await createTestDatabase();
65
- });
66
- afterEach(() => {
67
- closeDatabase(db);
68
- });
69
- it('empty index + query → shows the hint, not the bare no-match message', () => {
70
- const results = new SearchService(db).search({ query: 'anything', limit: 20 });
71
- expect(results.items).toHaveLength(0);
72
- expect(isLocalIndexEmpty(db)).toBe(true);
73
- const output = captureOutput(() => {
74
- if (results.items.length === 0 && isLocalIndexEmpty(db)) {
75
- console.log(formatEmptyIndexHint(db));
76
- }
77
- else {
78
- displayResults(results.items, results.total, 0, 20);
79
- }
80
- });
81
- expect(output).toContain(HINT_MARKER);
82
- expect(output).not.toContain(NO_MATCH_SUBSTRING);
83
- });
84
- it('populated index + no-match query → shows the bare no-match message, not the hint', () => {
85
- seedSkill(db);
86
- const results = new SearchService(db).search({ query: 'zzz-nonexistent-zzz', limit: 20 });
87
- expect(results.items).toHaveLength(0);
88
- expect(isLocalIndexEmpty(db)).toBe(false);
89
- const output = captureOutput(() => {
90
- if (results.items.length === 0 && isLocalIndexEmpty(db)) {
91
- console.log(formatEmptyIndexHint(db));
92
- }
93
- else {
94
- displayResults(results.items, results.total, 0, 20);
95
- }
96
- });
97
- expect(output).toContain(NO_MATCH_SUBSTRING);
98
- expect(output).not.toContain(HINT_MARKER);
99
- });
100
- it('populated index + matching query → renders results, no hint', () => {
101
- seedSkill(db);
102
- const results = new SearchService(db).search({ query: 'auth', limit: 20 });
103
- expect(results.items.length).toBeGreaterThan(0);
104
- const output = captureOutput(() => {
105
- if (results.items.length === 0 && isLocalIndexEmpty(db)) {
106
- console.log(formatEmptyIndexHint(db));
107
- }
108
- else {
109
- displayResults(results.items, results.total, 0, 20);
110
- }
111
- });
112
- expect(output).toContain('auth-helper');
113
- expect(output).not.toContain(HINT_MARKER);
114
- expect(output).not.toContain(NO_MATCH_SUBSTRING);
115
- });
116
- });
117
- // ============================================================================
118
- // Tests — isLocalIndexEmpty (pure given a db)
119
- // ============================================================================
120
- describe('isLocalIndexEmpty (SMI-4926)', () => {
121
- let db;
122
- beforeEach(async () => {
123
- db = await createTestDatabase();
124
- });
125
- afterEach(() => {
126
- closeDatabase(db);
127
- });
128
- it('returns true for a fresh DB with no skills', () => {
129
- expect(isLocalIndexEmpty(db)).toBe(true);
130
- });
131
- it('returns false once a skill is present', () => {
132
- seedSkill(db);
133
- expect(isLocalIndexEmpty(db)).toBe(false);
134
- });
135
- });
136
- // ============================================================================
137
- // Tests — formatEmptyIndexHint (sync-state aware)
138
- // ============================================================================
139
- describe('formatEmptyIndexHint (SMI-4926)', () => {
140
- let db;
141
- beforeEach(async () => {
142
- db = await createTestDatabase();
143
- });
144
- afterEach(() => {
145
- closeDatabase(db);
146
- });
147
- it('no recent sync attempt → "run `skillsmith sync`" wording with the ℹ prefix', () => {
148
- const hint = formatEmptyIndexHint(db);
149
- expect(hint).toContain(HINT_MARKER);
150
- expect(hint).toContain('skillsmith sync');
151
- expect(hint).not.toContain('in progress');
152
- });
153
- it('stale sync attempt (outside cooldown) → still "run `skillsmith sync`" wording', () => {
154
- const stale = new Date(Date.now() - AUTO_SYNC_COOLDOWN_MS - 60_000).toISOString();
155
- seedSyncAttempt(db, stale);
156
- const hint = formatEmptyIndexHint(db);
157
- expect(hint).toContain(HINT_MARKER);
158
- expect(hint).toContain('skillsmith sync');
159
- expect(hint).not.toContain('in progress');
160
- });
161
- it('recent sync attempt (within cooldown) → "in progress" wording with the ℹ prefix', () => {
162
- const recent = new Date(Date.now() - 60_000).toISOString();
163
- seedSyncAttempt(db, recent);
164
- const hint = formatEmptyIndexHint(db);
165
- expect(hint).toContain(HINT_MARKER);
166
- expect(hint).toContain('in progress');
167
- expect(hint).not.toContain('skillsmith sync');
168
- });
169
- it('both wordings carry leading and trailing newlines for displayResults padding', () => {
170
- const noAttempt = stripAnsi(formatEmptyIndexHint(db));
171
- expect(noAttempt.startsWith('\n')).toBe(true);
172
- expect(noAttempt.endsWith('\n')).toBe(true);
173
- seedSyncAttempt(db, new Date(Date.now() - 60_000).toISOString());
174
- const recent = stripAnsi(formatEmptyIndexHint(db));
175
- expect(recent.startsWith('\n')).toBe(true);
176
- expect(recent.endsWith('\n')).toBe(true);
177
- });
178
- });
179
- //# sourceMappingURL=search.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"search.test.js","sourceRoot":"","sources":["../../../src/commands/search.test.ts"],"names":[],"mappings":"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"}
@@ -1,39 +0,0 @@
1
- /**
2
- * SMI-5127: Sync command action implementations + telemetry wrappers.
3
- *
4
- * Sibling-split from sync.ts following the <command>.action.ts convention
5
- * established by SMI-5040. The four impl functions are extracted here and
6
- * wrapped with withTelemetry so the CLI_DISPATCHER_MAP coverage test can
7
- * assert 100% telemetry coverage without importing the full commander tree.
8
- *
9
- * Opts-adaptation choice: each *ActionImpl accepts the same typed options
10
- * struct that the sync.ts factory closures were building — the factory
11
- * closures remain in sync.ts, do the same Record<string,…> → typed cast they
12
- * always did, then call the wrapped action. This keeps sync.ts factories
13
- * identical to before (no signature churn) and keeps sync.action.ts free of
14
- * commander imports.
15
- */
16
- export declare const syncAction: (options: {
17
- dbPath: string;
18
- force: boolean;
19
- dryRun: boolean;
20
- json: boolean;
21
- }) => Promise<void>;
22
- export declare const syncStatusAction: (options: {
23
- dbPath: string;
24
- json: boolean;
25
- }) => Promise<void>;
26
- export declare const syncHistoryAction: (options: {
27
- dbPath: string;
28
- limit: number;
29
- json: boolean;
30
- }) => Promise<void>;
31
- export declare const syncConfigAction: (options: {
32
- dbPath: string;
33
- enable: boolean | undefined;
34
- disable: boolean | undefined;
35
- frequency: string | undefined;
36
- show: boolean | undefined;
37
- json: boolean;
38
- }) => Promise<void>;
39
- //# sourceMappingURL=sync.action.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.action.d.ts","sourceRoot":"","sources":["../../../src/commands/sync.action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkZH,eAAO,MAAM,UAAU;YAnXb,MAAM;WACP,OAAO;YACN,OAAO;UACT,OAAO;mBAoXb,CAAA;AAEF,eAAO,MAAM,gBAAgB;YA5Q0B,MAAM;UAAQ,OAAO;mBAgR1E,CAAA;AAEF,eAAO,MAAM,iBAAiB;YA1KpB,MAAM;WACP,MAAM;UACP,OAAO;mBA4Kb,CAAA;AAEF,eAAO,MAAM,gBAAgB;YAnGnB,MAAM;YACN,OAAO,GAAG,SAAS;aAClB,OAAO,GAAG,SAAS;eACjB,MAAM,GAAG,SAAS;UACvB,OAAO,GAAG,SAAS;UACnB,OAAO;mBAkGb,CAAA"}
@@ -1,353 +0,0 @@
1
- /**
2
- * SMI-5127: Sync command action implementations + telemetry wrappers.
3
- *
4
- * Sibling-split from sync.ts following the <command>.action.ts convention
5
- * established by SMI-5040. The four impl functions are extracted here and
6
- * wrapped with withTelemetry so the CLI_DISPATCHER_MAP coverage test can
7
- * assert 100% telemetry coverage without importing the full commander tree.
8
- *
9
- * Opts-adaptation choice: each *ActionImpl accepts the same typed options
10
- * struct that the sync.ts factory closures were building — the factory
11
- * closures remain in sync.ts, do the same Record<string,…> → typed cast they
12
- * always did, then call the wrapped action. This keeps sync.ts factories
13
- * identical to before (no signature churn) and keeps sync.action.ts free of
14
- * commander imports.
15
- */
16
- import chalk from 'chalk';
17
- import ora from 'ora';
18
- import Table from 'cli-table3';
19
- import { SyncConfigRepository, SyncHistoryRepository, } from '@skillsmith/core';
20
- import { withTelemetry } from '@skillsmith/core/telemetry';
21
- import { openCliDatabase } from '../utils/open-database.js';
22
- import { runRegistrySync } from './run-registry-sync.js';
23
- import { sanitizeError } from '../utils/sanitize.js';
24
- import { formatDuration, formatDate, formatTimeUntil } from '../utils/formatters.js';
25
- import { scanLocalSkillsForWarnings, formatAdapterWarnings, isAuthFailure, formatAuthGuidance, } from './sync.helpers.js';
26
- // ---------------------------------------------------------------------------
27
- // Impl functions
28
- // ---------------------------------------------------------------------------
29
- /**
30
- * Run sync operation
31
- */
32
- async function syncActionImpl(options) {
33
- const spinner = ora();
34
- try {
35
- spinner.start('Opening database...');
36
- // SMI-4917: openCliDatabase opens a connected, schema-initialized DB —
37
- // fresh installs would otherwise hit "no such table: skills".
38
- const db = await openCliDatabase(options.dbPath);
39
- try {
40
- spinner.text = options.force ? 'Starting full sync...' : 'Starting differential sync...';
41
- const result = await runRegistrySync(db, {
42
- force: options.force,
43
- dryRun: options.dryRun,
44
- onProgress: (progress) => {
45
- switch (progress.phase) {
46
- case 'connecting':
47
- spinner.text = 'Checking API health...';
48
- break;
49
- case 'fetching':
50
- spinner.text = `Fetching skills... (${progress.current} fetched)`;
51
- break;
52
- case 'comparing':
53
- spinner.text = `Comparing ${progress.total} skills with local database...`;
54
- break;
55
- case 'upserting':
56
- spinner.text = `Syncing skill ${progress.current}/${progress.total}...`;
57
- break;
58
- case 'complete':
59
- break;
60
- }
61
- },
62
- });
63
- if (options.json) {
64
- spinner.stop();
65
- console.log(JSON.stringify(result, null, 2));
66
- // SMI-4482: signal auth failure via exit code so `--json` scripts can
67
- // detect "needs login" without parsing the payload.
68
- if (isAuthFailure(result)) {
69
- process.exitCode = 1;
70
- }
71
- return;
72
- }
73
- // SMI-4482: When sync failed because no credentials were available
74
- // (anonymous IP-trial exhausted, or auth rejected), replace the bare
75
- // `Authentication required` error with actionable guidance and exit
76
- // non-zero — instead of printing `Σ Total: 0` with no next step.
77
- if (isAuthFailure(result)) {
78
- spinner.fail(chalk.yellow('Sync requires authentication'));
79
- console.log();
80
- for (const line of formatAuthGuidance()) {
81
- console.error(line);
82
- }
83
- // db.close() runs in the `finally` block below before process.exit.
84
- process.exitCode = 1;
85
- return;
86
- }
87
- if (result.success) {
88
- spinner.succeed(options.dryRun
89
- ? chalk.yellow('Dry run complete (no changes made)')
90
- : chalk.green('Sync completed successfully'));
91
- }
92
- else {
93
- spinner.warn(chalk.yellow('Sync completed with errors'));
94
- }
95
- // Display results
96
- console.log();
97
- console.log(chalk.bold('Results:'));
98
- console.log(` ${chalk.green('+')} Added: ${result.skillsAdded}`);
99
- console.log(` ${chalk.blue('~')} Updated: ${result.skillsUpdated}`);
100
- console.log(` ${chalk.dim('=')} Unchanged: ${result.skillsUnchanged}`);
101
- console.log(` ${chalk.cyan('Σ')} Total: ${result.totalProcessed}`);
102
- console.log(` ${chalk.dim('⏱')} Duration: ${formatDuration(result.durationMs)}`);
103
- if (result.errors.length > 0) {
104
- console.log();
105
- console.log(chalk.red('Errors:'));
106
- for (const error of result.errors) {
107
- console.log(` ${chalk.red('•')} ${error}`);
108
- }
109
- }
110
- if (options.dryRun) {
111
- console.log();
112
- console.log(chalk.dim('Run without --dry-run to apply these changes.'));
113
- }
114
- }
115
- finally {
116
- db.close();
117
- }
118
- }
119
- catch (error) {
120
- spinner.fail('Sync failed');
121
- console.error(chalk.red('Error:'), sanitizeError(error));
122
- process.exit(1);
123
- }
124
- }
125
- /**
126
- * Show sync status
127
- */
128
- async function syncStatusActionImpl(options) {
129
- try {
130
- const db = await openCliDatabase(options.dbPath);
131
- try {
132
- const syncConfigRepo = new SyncConfigRepository(db);
133
- const syncHistoryRepo = new SyncHistoryRepository(db);
134
- const config = syncConfigRepo.getConfig();
135
- const lastRun = syncHistoryRepo.getLastSuccessful();
136
- const isRunning = syncHistoryRepo.isRunning();
137
- const isDue = syncConfigRepo.isSyncDue();
138
- const stats = syncHistoryRepo.getStats();
139
- if (options.json) {
140
- console.log(JSON.stringify({
141
- config,
142
- lastRun,
143
- isRunning,
144
- isDue,
145
- stats,
146
- }, null, 2));
147
- return;
148
- }
149
- console.log(chalk.bold.blue('\n=== Sync Status ===\n'));
150
- // Configuration
151
- console.log(chalk.bold('Configuration:'));
152
- console.log(` Auto-sync: ${config.enabled ? chalk.green('Enabled') : chalk.red('Disabled')}`);
153
- console.log(` Frequency: ${chalk.cyan(config.frequency)}`);
154
- console.log();
155
- // Current state
156
- console.log(chalk.bold('Current State:'));
157
- console.log(` Last sync: ${formatDate(config.lastSyncAt)}`);
158
- console.log(` Next sync: ${formatDate(config.nextSyncAt)}`);
159
- console.log(` Time until: ${formatTimeUntil(config.nextSyncAt)}`);
160
- console.log(` Status: ${isRunning ? chalk.yellow('Running') : isDue ? chalk.green('Due') : chalk.dim('Waiting')}`);
161
- console.log();
162
- // Last run details
163
- if (lastRun) {
164
- console.log(chalk.bold('Last Successful Run:'));
165
- console.log(` Started: ${formatDate(lastRun.startedAt)}`);
166
- console.log(` Duration: ${lastRun.durationMs ? formatDuration(lastRun.durationMs) : 'N/A'}`);
167
- console.log(` Added: ${lastRun.skillsAdded}`);
168
- console.log(` Updated: ${lastRun.skillsUpdated}`);
169
- console.log(` Unchanged: ${lastRun.skillsUnchanged}`);
170
- console.log();
171
- }
172
- // Error info
173
- if (config.lastSyncError) {
174
- console.log(chalk.bold.red('Last Error:'));
175
- console.log(` ${config.lastSyncError}`);
176
- console.log();
177
- }
178
- // Statistics
179
- console.log(chalk.bold('Statistics:'));
180
- console.log(` Total runs: ${stats.totalRuns}`);
181
- console.log(` Successful: ${stats.successfulRuns}`);
182
- console.log(` Failed: ${stats.failedRuns}`);
183
- console.log(` Avg duration: ${stats.averageDurationMs ? formatDuration(stats.averageDurationMs) : 'N/A'}`);
184
- // Local-skills adapter warnings (SMI-4287, GitHub #600).
185
- // Surface symlink-escape / permission / loop errors so the user can
186
- // act on them (e.g. `chmod +r`, remove rogue symlink).
187
- const adapterWarnings = await scanLocalSkillsForWarnings();
188
- if (adapterWarnings.length > 0) {
189
- console.log();
190
- console.log(chalk.bold.yellow('Local skill warnings:'));
191
- for (const line of formatAdapterWarnings(adapterWarnings)) {
192
- console.error(line);
193
- }
194
- }
195
- }
196
- finally {
197
- db.close();
198
- }
199
- }
200
- catch (error) {
201
- console.error(chalk.red('Error:'), sanitizeError(error));
202
- process.exit(1);
203
- }
204
- }
205
- /**
206
- * Show sync history
207
- */
208
- async function syncHistoryActionImpl(options) {
209
- try {
210
- const db = await openCliDatabase(options.dbPath);
211
- try {
212
- const syncHistoryRepo = new SyncHistoryRepository(db);
213
- const history = syncHistoryRepo.getHistory(options.limit);
214
- if (options.json) {
215
- console.log(JSON.stringify(history, null, 2));
216
- return;
217
- }
218
- if (history.length === 0) {
219
- console.log(chalk.dim('\nNo sync history found. Run `skillsmith sync` to start syncing.\n'));
220
- return;
221
- }
222
- console.log(chalk.bold.blue('\n=== Sync History ===\n'));
223
- const table = new Table({
224
- head: [
225
- chalk.bold('Date'),
226
- chalk.bold('Status'),
227
- chalk.bold('Added'),
228
- chalk.bold('Updated'),
229
- chalk.bold('Duration'),
230
- ],
231
- colWidths: [22, 12, 10, 10, 12],
232
- });
233
- for (const entry of history) {
234
- const statusColor = entry.status === 'success'
235
- ? chalk.green
236
- : entry.status === 'failed'
237
- ? chalk.red
238
- : entry.status === 'partial'
239
- ? chalk.yellow
240
- : chalk.blue;
241
- table.push([
242
- new Date(entry.startedAt).toLocaleString(),
243
- statusColor(entry.status),
244
- String(entry.skillsAdded),
245
- String(entry.skillsUpdated),
246
- entry.durationMs ? formatDuration(entry.durationMs) : '-',
247
- ]);
248
- }
249
- console.log(table.toString());
250
- if (history.some((e) => e.errorMessage)) {
251
- console.log();
252
- console.log(chalk.bold.red('Errors:'));
253
- for (const entry of history.filter((e) => e.errorMessage)) {
254
- console.log(` ${chalk.dim(new Date(entry.startedAt).toLocaleDateString())}: ${entry.errorMessage}`);
255
- }
256
- }
257
- }
258
- finally {
259
- db.close();
260
- }
261
- }
262
- catch (error) {
263
- console.error(chalk.red('Error:'), sanitizeError(error));
264
- process.exit(1);
265
- }
266
- }
267
- /**
268
- * Configure sync settings
269
- */
270
- async function syncConfigActionImpl(options) {
271
- try {
272
- const db = await openCliDatabase(options.dbPath);
273
- try {
274
- const syncConfigRepo = new SyncConfigRepository(db);
275
- // If just showing config
276
- if (options.show || (!options.enable && !options.disable && !options.frequency)) {
277
- const config = syncConfigRepo.getConfig();
278
- if (options.json) {
279
- console.log(JSON.stringify(config, null, 2));
280
- return;
281
- }
282
- console.log(chalk.bold.blue('\n=== Sync Configuration ===\n'));
283
- console.log(` Auto-sync: ${config.enabled ? chalk.green('Enabled') : chalk.red('Disabled')}`);
284
- console.log(` Frequency: ${chalk.cyan(config.frequency)}`);
285
- console.log(` Interval: ${formatDuration(config.intervalMs)}`);
286
- console.log(` Last sync: ${formatDate(config.lastSyncAt)}`);
287
- console.log(` Next sync: ${formatDate(config.nextSyncAt)}`);
288
- console.log();
289
- console.log(chalk.dim('Use --enable/--disable to toggle auto-sync'));
290
- console.log(chalk.dim('Use --frequency daily|weekly to change schedule'));
291
- return;
292
- }
293
- // Apply changes
294
- if (options.enable) {
295
- syncConfigRepo.enable();
296
- console.log(chalk.green('✓ Auto-sync enabled'));
297
- }
298
- if (options.disable) {
299
- syncConfigRepo.disable();
300
- console.log(chalk.yellow('✓ Auto-sync disabled'));
301
- }
302
- if (options.frequency) {
303
- const freq = options.frequency.toLowerCase();
304
- if (freq !== 'daily' && freq !== 'weekly') {
305
- console.error(chalk.red('Error: Frequency must be "daily" or "weekly"'));
306
- process.exit(1);
307
- }
308
- syncConfigRepo.setFrequency(freq);
309
- console.log(chalk.green(`✓ Frequency set to ${freq}`));
310
- }
311
- // Show updated config
312
- const config = syncConfigRepo.getConfig();
313
- console.log();
314
- console.log(chalk.dim('Current settings:'));
315
- console.log(` Auto-sync: ${config.enabled ? 'enabled' : 'disabled'}, Frequency: ${config.frequency}`);
316
- }
317
- finally {
318
- db.close();
319
- }
320
- }
321
- catch (error) {
322
- console.error(chalk.red('Error:'), sanitizeError(error));
323
- process.exit(1);
324
- }
325
- }
326
- // ---------------------------------------------------------------------------
327
- // Telemetry-wrapped exports (SMI-5127)
328
- //
329
- // Namespaced subcommand skillIds use "sync <subcommand>" convention so
330
- // PostHog events are distinguishable per-subcommand while remaining
331
- // obviously grouped under the sync surface.
332
- // ---------------------------------------------------------------------------
333
- export const syncAction = withTelemetry(syncActionImpl, {
334
- source: 'cli',
335
- extractSkillId: () => 'sync',
336
- extractFramework: () => 'cli',
337
- });
338
- export const syncStatusAction = withTelemetry(syncStatusActionImpl, {
339
- source: 'cli',
340
- extractSkillId: () => 'sync status',
341
- extractFramework: () => 'cli',
342
- });
343
- export const syncHistoryAction = withTelemetry(syncHistoryActionImpl, {
344
- source: 'cli',
345
- extractSkillId: () => 'sync history',
346
- extractFramework: () => 'cli',
347
- });
348
- export const syncConfigAction = withTelemetry(syncConfigActionImpl, {
349
- source: 'cli',
350
- extractSkillId: () => 'sync config',
351
- extractFramework: () => 'cli',
352
- });
353
- //# sourceMappingURL=sync.action.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.action.js","sourceRoot":"","sources":["../../../src/commands/sync.action.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- /**
2
- * Sync Command - Registry synchronization CLI
3
- *
4
- * Provides commands for syncing the local skill database with the
5
- * live Skillsmith registry.
6
- *
7
- * Usage:
8
- * skillsmith sync # Run sync (differential)
9
- * skillsmith sync --force # Run full sync
10
- * skillsmith sync --dry-run # Preview what would sync
11
- * skillsmith sync status # Show sync status
12
- * skillsmith sync history # Show sync history
13
- * skillsmith sync config # Configure auto-sync
14
- *
15
- * SMI-5127: Action implementations moved to sync.action.ts.
16
- * This file retains only the commander factory functions.
17
- */
18
- import { Command } from 'commander';
19
- /**
20
- * Create sync command with subcommands
21
- */
22
- export declare function createSyncCommand(): Command;
23
- export default createSyncCommand;
24
- //# sourceMappingURL=sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/commands/sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA8DnC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAsB3C;AAED,eAAe,iBAAiB,CAAA"}