@skillsmith/cli 0.7.1 → 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.
- package/CHANGELOG.md +9 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/cli.js +44039 -0
- package/package.json +21 -11
- package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts +0 -20
- package/dist/src/commands/__meta__/telemetry-coverage.test.d.ts.map +0 -1
- package/dist/src/commands/__meta__/telemetry-coverage.test.js +0 -118
- package/dist/src/commands/__meta__/telemetry-coverage.test.js.map +0 -1
- package/dist/src/commands/ab-test.d.ts +0 -29
- package/dist/src/commands/ab-test.d.ts.map +0 -1
- package/dist/src/commands/ab-test.js +0 -226
- package/dist/src/commands/ab-test.js.map +0 -1
- package/dist/src/commands/ab-test.test.d.ts +0 -7
- package/dist/src/commands/ab-test.test.d.ts.map +0 -1
- package/dist/src/commands/ab-test.test.js +0 -255
- package/dist/src/commands/ab-test.test.js.map +0 -1
- package/dist/src/commands/analyze.d.ts +0 -14
- package/dist/src/commands/analyze.d.ts.map +0 -1
- package/dist/src/commands/analyze.js +0 -191
- package/dist/src/commands/analyze.js.map +0 -1
- package/dist/src/commands/audit-collisions.d.ts +0 -68
- package/dist/src/commands/audit-collisions.d.ts.map +0 -1
- package/dist/src/commands/audit-collisions.js +0 -309
- package/dist/src/commands/audit-collisions.js.map +0 -1
- package/dist/src/commands/audit-sources.action.d.ts +0 -37
- package/dist/src/commands/audit-sources.action.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.action.js +0 -321
- package/dist/src/commands/audit-sources.action.js.map +0 -1
- package/dist/src/commands/audit-sources.d.ts +0 -37
- package/dist/src/commands/audit-sources.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.js +0 -55
- package/dist/src/commands/audit-sources.js.map +0 -1
- package/dist/src/commands/audit-sources.test.d.ts +0 -9
- package/dist/src/commands/audit-sources.test.d.ts.map +0 -1
- package/dist/src/commands/audit-sources.test.js +0 -228
- package/dist/src/commands/audit-sources.test.js.map +0 -1
- package/dist/src/commands/audit.d.ts +0 -40
- package/dist/src/commands/audit.d.ts.map +0 -1
- package/dist/src/commands/audit.js +0 -223
- package/dist/src/commands/audit.js.map +0 -1
- package/dist/src/commands/audit.test.d.ts +0 -8
- package/dist/src/commands/audit.test.d.ts.map +0 -1
- package/dist/src/commands/audit.test.js +0 -97
- package/dist/src/commands/audit.test.js.map +0 -1
- package/dist/src/commands/author/index.d.ts +0 -17
- package/dist/src/commands/author/index.d.ts.map +0 -1
- package/dist/src/commands/author/index.js +0 -21
- package/dist/src/commands/author/index.js.map +0 -1
- package/dist/src/commands/author/init.action.d.ts +0 -29
- package/dist/src/commands/author/init.action.d.ts.map +0 -1
- package/dist/src/commands/author/init.action.js +0 -131
- package/dist/src/commands/author/init.action.js.map +0 -1
- package/dist/src/commands/author/init.d.ts +0 -36
- package/dist/src/commands/author/init.d.ts.map +0 -1
- package/dist/src/commands/author/init.helpers.d.ts +0 -80
- package/dist/src/commands/author/init.helpers.d.ts.map +0 -1
- package/dist/src/commands/author/init.helpers.js +0 -107
- package/dist/src/commands/author/init.helpers.js.map +0 -1
- package/dist/src/commands/author/init.js +0 -320
- package/dist/src/commands/author/init.js.map +0 -1
- package/dist/src/commands/author/mcp-init.d.ts +0 -21
- package/dist/src/commands/author/mcp-init.d.ts.map +0 -1
- package/dist/src/commands/author/mcp-init.js +0 -202
- package/dist/src/commands/author/mcp-init.js.map +0 -1
- package/dist/src/commands/author/subagent.d.ts +0 -23
- package/dist/src/commands/author/subagent.d.ts.map +0 -1
- package/dist/src/commands/author/subagent.js +0 -174
- package/dist/src/commands/author/subagent.js.map +0 -1
- package/dist/src/commands/author/transform.d.ts +0 -23
- package/dist/src/commands/author/transform.d.ts.map +0 -1
- package/dist/src/commands/author/transform.js +0 -149
- package/dist/src/commands/author/transform.js.map +0 -1
- package/dist/src/commands/author/utils.d.ts +0 -27
- package/dist/src/commands/author/utils.d.ts.map +0 -1
- package/dist/src/commands/author/utils.js +0 -118
- package/dist/src/commands/author/utils.js.map +0 -1
- package/dist/src/commands/config.d.ts +0 -57
- package/dist/src/commands/config.d.ts.map +0 -1
- package/dist/src/commands/config.js +0 -226
- package/dist/src/commands/config.js.map +0 -1
- package/dist/src/commands/create.d.ts +0 -43
- package/dist/src/commands/create.d.ts.map +0 -1
- package/dist/src/commands/create.js +0 -336
- package/dist/src/commands/create.js.map +0 -1
- package/dist/src/commands/diff.d.ts +0 -21
- package/dist/src/commands/diff.d.ts.map +0 -1
- package/dist/src/commands/diff.js +0 -227
- package/dist/src/commands/diff.js.map +0 -1
- package/dist/src/commands/diff.test.d.ts +0 -6
- package/dist/src/commands/diff.test.d.ts.map +0 -1
- package/dist/src/commands/diff.test.js +0 -327
- package/dist/src/commands/diff.test.js.map +0 -1
- package/dist/src/commands/import-local.d.ts +0 -28
- package/dist/src/commands/import-local.d.ts.map +0 -1
- package/dist/src/commands/import-local.helpers.d.ts +0 -28
- package/dist/src/commands/import-local.helpers.d.ts.map +0 -1
- package/dist/src/commands/import-local.helpers.js +0 -166
- package/dist/src/commands/import-local.helpers.js.map +0 -1
- package/dist/src/commands/import-local.js +0 -273
- package/dist/src/commands/import-local.js.map +0 -1
- package/dist/src/commands/import-local.types.d.ts +0 -59
- package/dist/src/commands/import-local.types.d.ts.map +0 -1
- package/dist/src/commands/import-local.types.js +0 -2
- package/dist/src/commands/import-local.types.js.map +0 -1
- package/dist/src/commands/import.d.ts +0 -47
- package/dist/src/commands/import.d.ts.map +0 -1
- package/dist/src/commands/import.js +0 -314
- package/dist/src/commands/import.js.map +0 -1
- package/dist/src/commands/index.d.ts +0 -28
- package/dist/src/commands/index.d.ts.map +0 -1
- package/dist/src/commands/index.js +0 -50
- package/dist/src/commands/index.js.map +0 -1
- package/dist/src/commands/info.d.ts +0 -19
- package/dist/src/commands/info.d.ts.map +0 -1
- package/dist/src/commands/info.js +0 -110
- package/dist/src/commands/info.js.map +0 -1
- package/dist/src/commands/install-skill.d.ts +0 -16
- package/dist/src/commands/install-skill.d.ts.map +0 -1
- package/dist/src/commands/install-skill.js +0 -155
- package/dist/src/commands/install-skill.js.map +0 -1
- package/dist/src/commands/install.d.ts +0 -34
- package/dist/src/commands/install.d.ts.map +0 -1
- package/dist/src/commands/install.js +0 -311
- package/dist/src/commands/install.js.map +0 -1
- package/dist/src/commands/inventory.action.d.ts +0 -55
- package/dist/src/commands/inventory.action.d.ts.map +0 -1
- package/dist/src/commands/inventory.action.js +0 -179
- package/dist/src/commands/inventory.action.js.map +0 -1
- package/dist/src/commands/inventory.action.test.d.ts +0 -19
- package/dist/src/commands/inventory.action.test.d.ts.map +0 -1
- package/dist/src/commands/inventory.action.test.js +0 -371
- package/dist/src/commands/inventory.action.test.js.map +0 -1
- package/dist/src/commands/inventory.d.ts +0 -21
- package/dist/src/commands/inventory.d.ts.map +0 -1
- package/dist/src/commands/inventory.js +0 -42
- package/dist/src/commands/inventory.js.map +0 -1
- package/dist/src/commands/login.d.ts +0 -7
- package/dist/src/commands/login.d.ts.map +0 -1
- package/dist/src/commands/login.js +0 -323
- package/dist/src/commands/login.js.map +0 -1
- package/dist/src/commands/login.test-helpers.d.ts +0 -7
- package/dist/src/commands/login.test-helpers.d.ts.map +0 -1
- package/dist/src/commands/login.test-helpers.js +0 -44
- package/dist/src/commands/login.test-helpers.js.map +0 -1
- package/dist/src/commands/login.test.d.ts +0 -2
- package/dist/src/commands/login.test.d.ts.map +0 -1
- package/dist/src/commands/login.test.js +0 -387
- package/dist/src/commands/login.test.js.map +0 -1
- package/dist/src/commands/logout.d.ts +0 -15
- package/dist/src/commands/logout.d.ts.map +0 -1
- package/dist/src/commands/logout.js +0 -54
- package/dist/src/commands/logout.js.map +0 -1
- package/dist/src/commands/logout.test.d.ts +0 -8
- package/dist/src/commands/logout.test.d.ts.map +0 -1
- package/dist/src/commands/logout.test.js +0 -137
- package/dist/src/commands/logout.test.js.map +0 -1
- package/dist/src/commands/manage.d.ts +0 -19
- package/dist/src/commands/manage.d.ts.map +0 -1
- package/dist/src/commands/manage.js +0 -346
- package/dist/src/commands/manage.js.map +0 -1
- package/dist/src/commands/merge.d.ts +0 -24
- package/dist/src/commands/merge.d.ts.map +0 -1
- package/dist/src/commands/merge.js +0 -168
- package/dist/src/commands/merge.js.map +0 -1
- package/dist/src/commands/pin.d.ts +0 -26
- package/dist/src/commands/pin.d.ts.map +0 -1
- package/dist/src/commands/pin.js +0 -138
- package/dist/src/commands/pin.js.map +0 -1
- package/dist/src/commands/pin.test.d.ts +0 -6
- package/dist/src/commands/pin.test.d.ts.map +0 -1
- package/dist/src/commands/pin.test.js +0 -206
- package/dist/src/commands/pin.test.js.map +0 -1
- package/dist/src/commands/recommend-scoring.d.ts +0 -29
- package/dist/src/commands/recommend-scoring.d.ts.map +0 -1
- package/dist/src/commands/recommend-scoring.js +0 -141
- package/dist/src/commands/recommend-scoring.js.map +0 -1
- package/dist/src/commands/recommend.d.ts +0 -15
- package/dist/src/commands/recommend.d.ts.map +0 -1
- package/dist/src/commands/recommend.helpers.d.ts +0 -44
- package/dist/src/commands/recommend.helpers.d.ts.map +0 -1
- package/dist/src/commands/recommend.helpers.js +0 -303
- package/dist/src/commands/recommend.helpers.js.map +0 -1
- package/dist/src/commands/recommend.js +0 -198
- package/dist/src/commands/recommend.js.map +0 -1
- package/dist/src/commands/recommend.types.d.ts +0 -66
- package/dist/src/commands/recommend.types.d.ts.map +0 -1
- package/dist/src/commands/recommend.types.js +0 -14
- package/dist/src/commands/recommend.types.js.map +0 -1
- package/dist/src/commands/run-registry-sync.d.ts +0 -31
- package/dist/src/commands/run-registry-sync.d.ts.map +0 -1
- package/dist/src/commands/run-registry-sync.js +0 -45
- package/dist/src/commands/run-registry-sync.js.map +0 -1
- package/dist/src/commands/search-formatters.d.ts +0 -36
- package/dist/src/commands/search-formatters.d.ts.map +0 -1
- package/dist/src/commands/search-formatters.js +0 -132
- package/dist/src/commands/search-formatters.js.map +0 -1
- package/dist/src/commands/search-types.d.ts +0 -46
- package/dist/src/commands/search-types.d.ts.map +0 -1
- package/dist/src/commands/search-types.js +0 -12
- package/dist/src/commands/search-types.js.map +0 -1
- package/dist/src/commands/search.action.d.ts +0 -16
- package/dist/src/commands/search.action.d.ts.map +0 -1
- package/dist/src/commands/search.action.js +0 -384
- package/dist/src/commands/search.action.js.map +0 -1
- package/dist/src/commands/search.d.ts +0 -18
- package/dist/src/commands/search.d.ts.map +0 -1
- package/dist/src/commands/search.helpers.d.ts +0 -52
- package/dist/src/commands/search.helpers.d.ts.map +0 -1
- package/dist/src/commands/search.helpers.js +0 -95
- package/dist/src/commands/search.helpers.js.map +0 -1
- package/dist/src/commands/search.js +0 -48
- package/dist/src/commands/search.js.map +0 -1
- package/dist/src/commands/search.test.d.ts +0 -10
- package/dist/src/commands/search.test.d.ts.map +0 -1
- package/dist/src/commands/search.test.js +0 -179
- package/dist/src/commands/search.test.js.map +0 -1
- package/dist/src/commands/sync.action.d.ts +0 -39
- package/dist/src/commands/sync.action.d.ts.map +0 -1
- package/dist/src/commands/sync.action.js +0 -353
- package/dist/src/commands/sync.action.js.map +0 -1
- package/dist/src/commands/sync.d.ts +0 -24
- package/dist/src/commands/sync.d.ts.map +0 -1
- package/dist/src/commands/sync.helpers.d.ts +0 -55
- package/dist/src/commands/sync.helpers.d.ts.map +0 -1
- package/dist/src/commands/sync.helpers.js +0 -90
- package/dist/src/commands/sync.helpers.js.map +0 -1
- package/dist/src/commands/sync.js +0 -101
- package/dist/src/commands/sync.js.map +0 -1
- package/dist/src/commands/telemetry.action.d.ts +0 -38
- package/dist/src/commands/telemetry.action.d.ts.map +0 -1
- package/dist/src/commands/telemetry.action.js +0 -350
- package/dist/src/commands/telemetry.action.js.map +0 -1
- package/dist/src/commands/telemetry.d.ts +0 -30
- package/dist/src/commands/telemetry.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.d.ts +0 -58
- package/dist/src/commands/telemetry.helpers.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.js +0 -173
- package/dist/src/commands/telemetry.helpers.js.map +0 -1
- package/dist/src/commands/telemetry.helpers.test.d.ts +0 -15
- package/dist/src/commands/telemetry.helpers.test.d.ts.map +0 -1
- package/dist/src/commands/telemetry.helpers.test.js +0 -240
- package/dist/src/commands/telemetry.helpers.test.js.map +0 -1
- package/dist/src/commands/telemetry.js +0 -65
- package/dist/src/commands/telemetry.js.map +0 -1
- package/dist/src/commands/telemetry.test.d.ts +0 -18
- package/dist/src/commands/telemetry.test.d.ts.map +0 -1
- package/dist/src/commands/telemetry.test.js +0 -401
- package/dist/src/commands/telemetry.test.js.map +0 -1
- package/dist/src/commands/whoami.d.ts +0 -15
- package/dist/src/commands/whoami.d.ts.map +0 -1
- package/dist/src/commands/whoami.js +0 -55
- package/dist/src/commands/whoami.js.map +0 -1
- package/dist/src/commands/whoami.test.d.ts +0 -8
- package/dist/src/commands/whoami.test.d.ts.map +0 -1
- package/dist/src/commands/whoami.test.js +0 -133
- package/dist/src/commands/whoami.test.js.map +0 -1
- package/dist/src/config.d.ts +0 -29
- package/dist/src/config.d.ts.map +0 -1
- package/dist/src/config.js +0 -34
- package/dist/src/config.js.map +0 -1
- package/dist/src/index.d.ts +0 -22
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -117
- package/dist/src/index.js.map +0 -1
- package/dist/src/templates/changelog.md.template.d.ts +0 -8
- package/dist/src/templates/changelog.md.template.d.ts.map +0 -1
- package/dist/src/templates/changelog.md.template.js +0 -19
- package/dist/src/templates/changelog.md.template.js.map +0 -1
- package/dist/src/templates/index.d.ts +0 -11
- package/dist/src/templates/index.d.ts.map +0 -1
- package/dist/src/templates/index.js +0 -11
- package/dist/src/templates/index.js.map +0 -1
- package/dist/src/templates/mcp-server.template.d.ts +0 -82
- package/dist/src/templates/mcp-server.template.d.ts.map +0 -1
- package/dist/src/templates/mcp-server.template.js +0 -430
- package/dist/src/templates/mcp-server.template.js.map +0 -1
- package/dist/src/templates/mcp-server.template.snippets.d.ts +0 -51
- package/dist/src/templates/mcp-server.template.snippets.d.ts.map +0 -1
- package/dist/src/templates/mcp-server.template.snippets.js +0 -162
- package/dist/src/templates/mcp-server.template.snippets.js.map +0 -1
- package/dist/src/templates/mcp-template-handlers.d.ts +0 -33
- package/dist/src/templates/mcp-template-handlers.d.ts.map +0 -1
- package/dist/src/templates/mcp-template-handlers.js +0 -106
- package/dist/src/templates/mcp-template-handlers.js.map +0 -1
- package/dist/src/templates/mcp-template-types.d.ts +0 -48
- package/dist/src/templates/mcp-template-types.d.ts.map +0 -1
- package/dist/src/templates/mcp-template-types.js +0 -18
- package/dist/src/templates/mcp-template-types.js.map +0 -1
- package/dist/src/templates/readme.md.template.d.ts +0 -8
- package/dist/src/templates/readme.md.template.d.ts.map +0 -1
- package/dist/src/templates/readme.md.template.js +0 -86
- package/dist/src/templates/readme.md.template.js.map +0 -1
- package/dist/src/templates/skill.md.template.d.ts +0 -8
- package/dist/src/templates/skill.md.template.d.ts.map +0 -1
- package/dist/src/templates/skill.md.template.js +0 -97
- package/dist/src/templates/skill.md.template.js.map +0 -1
- package/dist/src/templates/subagent.md.template.d.ts +0 -38
- package/dist/src/templates/subagent.md.template.d.ts.map +0 -1
- package/dist/src/templates/subagent.md.template.js +0 -128
- package/dist/src/templates/subagent.md.template.js.map +0 -1
- package/dist/src/utils/errors.d.ts +0 -52
- package/dist/src/utils/errors.d.ts.map +0 -1
- package/dist/src/utils/errors.js +0 -58
- package/dist/src/utils/errors.js.map +0 -1
- package/dist/src/utils/formatters.d.ts +0 -39
- package/dist/src/utils/formatters.d.ts.map +0 -1
- package/dist/src/utils/formatters.js +0 -69
- package/dist/src/utils/formatters.js.map +0 -1
- package/dist/src/utils/license-types.d.ts +0 -88
- package/dist/src/utils/license-types.d.ts.map +0 -1
- package/dist/src/utils/license-types.js +0 -60
- package/dist/src/utils/license-types.js.map +0 -1
- package/dist/src/utils/license-validation.d.ts +0 -61
- package/dist/src/utils/license-validation.d.ts.map +0 -1
- package/dist/src/utils/license-validation.js +0 -198
- package/dist/src/utils/license-validation.js.map +0 -1
- package/dist/src/utils/license.d.ts +0 -56
- package/dist/src/utils/license.d.ts.map +0 -1
- package/dist/src/utils/license.js +0 -163
- package/dist/src/utils/license.js.map +0 -1
- package/dist/src/utils/license.test.d.ts +0 -7
- package/dist/src/utils/license.test.d.ts.map +0 -1
- package/dist/src/utils/license.test.js +0 -308
- package/dist/src/utils/license.test.js.map +0 -1
- package/dist/src/utils/manifest.d.ts +0 -121
- package/dist/src/utils/manifest.d.ts.map +0 -1
- package/dist/src/utils/manifest.js +0 -133
- package/dist/src/utils/manifest.js.map +0 -1
- package/dist/src/utils/manifest.test.d.ts +0 -20
- package/dist/src/utils/manifest.test.d.ts.map +0 -1
- package/dist/src/utils/manifest.test.js +0 -344
- package/dist/src/utils/manifest.test.js.map +0 -1
- package/dist/src/utils/node-version.d.ts +0 -41
- package/dist/src/utils/node-version.d.ts.map +0 -1
- package/dist/src/utils/node-version.js +0 -123
- package/dist/src/utils/node-version.js.map +0 -1
- package/dist/src/utils/open-database.d.ts +0 -35
- package/dist/src/utils/open-database.d.ts.map +0 -1
- package/dist/src/utils/open-database.js +0 -73
- package/dist/src/utils/open-database.js.map +0 -1
- package/dist/src/utils/require-tier.d.ts +0 -38
- package/dist/src/utils/require-tier.d.ts.map +0 -1
- package/dist/src/utils/require-tier.js +0 -74
- package/dist/src/utils/require-tier.js.map +0 -1
- package/dist/src/utils/sanitize.d.ts +0 -30
- package/dist/src/utils/sanitize.d.ts.map +0 -1
- package/dist/src/utils/sanitize.js +0 -45
- package/dist/src/utils/sanitize.js.map +0 -1
- package/dist/src/utils/skill-name.d.ts +0 -19
- package/dist/src/utils/skill-name.d.ts.map +0 -1
- package/dist/src/utils/skill-name.js +0 -26
- package/dist/src/utils/skill-name.js.map +0 -1
- package/dist/src/utils/skills-directory.d.ts +0 -95
- package/dist/src/utils/skills-directory.d.ts.map +0 -1
- package/dist/src/utils/skills-directory.js +0 -283
- package/dist/src/utils/skills-directory.js.map +0 -1
- package/dist/src/utils/startup-header-gate.d.ts +0 -29
- package/dist/src/utils/startup-header-gate.d.ts.map +0 -1
- package/dist/src/utils/startup-header-gate.js +0 -44
- package/dist/src/utils/startup-header-gate.js.map +0 -1
- package/dist/src/utils/startup-header-gate.test.d.ts +0 -2
- package/dist/src/utils/startup-header-gate.test.d.ts.map +0 -1
- package/dist/src/utils/startup-header-gate.test.js +0 -46
- package/dist/src/utils/startup-header-gate.test.js.map +0 -1
- package/dist/src/utils/tool-analyzer.d.ts +0 -54
- package/dist/src/utils/tool-analyzer.d.ts.map +0 -1
- package/dist/src/utils/tool-analyzer.js +0 -156
- package/dist/src/utils/tool-analyzer.js.map +0 -1
- package/dist/src/version.d.ts +0 -2
- package/dist/src/version.d.ts.map +0 -1
- package/dist/src/version.js +0 -24
- package/dist/src/version.js.map +0 -1
- package/dist/tests/audit-collisions.test.d.ts +0 -42
- package/dist/tests/audit-collisions.test.d.ts.map +0 -1
- package/dist/tests/audit-collisions.test.js +0 -370
- package/dist/tests/audit-collisions.test.js.map +0 -1
- package/dist/tests/audit-restructure.test.d.ts +0 -15
- package/dist/tests/audit-restructure.test.d.ts.map +0 -1
- package/dist/tests/audit-restructure.test.js +0 -151
- package/dist/tests/audit-restructure.test.js.map +0 -1
- package/dist/tests/author.test.d.ts +0 -5
- package/dist/tests/author.test.d.ts.map +0 -1
- package/dist/tests/author.test.js +0 -653
- package/dist/tests/author.test.js.map +0 -1
- package/dist/tests/config.test.d.ts +0 -33
- package/dist/tests/config.test.d.ts.map +0 -1
- package/dist/tests/config.test.js +0 -240
- package/dist/tests/config.test.js.map +0 -1
- package/dist/tests/create.test.d.ts +0 -5
- package/dist/tests/create.test.d.ts.map +0 -1
- package/dist/tests/create.test.js +0 -449
- package/dist/tests/create.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-affix.test.d.ts +0 -11
- package/dist/tests/e2e/audit-sources-affix.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-affix.test.js +0 -121
- package/dist/tests/e2e/audit-sources-affix.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-apply.test.d.ts +0 -13
- package/dist/tests/e2e/audit-sources-apply.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-apply.test.js +0 -166
- package/dist/tests/e2e/audit-sources-apply.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-recovery.test.d.ts +0 -15
- package/dist/tests/e2e/audit-sources-recovery.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-recovery.test.js +0 -179
- package/dist/tests/e2e/audit-sources-recovery.test.js.map +0 -1
- package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts +0 -23
- package/dist/tests/e2e/audit-sources-roundtrip.test.d.ts.map +0 -1
- package/dist/tests/e2e/audit-sources-roundtrip.test.js +0 -139
- package/dist/tests/e2e/audit-sources-roundtrip.test.js.map +0 -1
- package/dist/tests/e2e/author.e2e.test.d.ts +0 -9
- package/dist/tests/e2e/author.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/author.e2e.test.js +0 -666
- package/dist/tests/e2e/author.e2e.test.js.map +0 -1
- package/dist/tests/e2e/import.e2e.test.d.ts +0 -10
- package/dist/tests/e2e/import.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/import.e2e.test.js +0 -213
- package/dist/tests/e2e/import.e2e.test.js.map +0 -1
- package/dist/tests/e2e/manage.e2e.test.d.ts +0 -9
- package/dist/tests/e2e/manage.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/manage.e2e.test.js +0 -277
- package/dist/tests/e2e/manage.e2e.test.js.map +0 -1
- package/dist/tests/e2e/search.e2e.test.d.ts +0 -10
- package/dist/tests/e2e/search.e2e.test.d.ts.map +0 -1
- package/dist/tests/e2e/search.e2e.test.js +0 -324
- package/dist/tests/e2e/search.e2e.test.js.map +0 -1
- package/dist/tests/e2e/test-config.d.ts +0 -39
- package/dist/tests/e2e/test-config.d.ts.map +0 -1
- package/dist/tests/e2e/test-config.js +0 -44
- package/dist/tests/e2e/test-config.js.map +0 -1
- package/dist/tests/e2e/utils/baseline-collector.d.ts +0 -107
- package/dist/tests/e2e/utils/baseline-collector.d.ts.map +0 -1
- package/dist/tests/e2e/utils/baseline-collector.js +0 -211
- package/dist/tests/e2e/utils/baseline-collector.js.map +0 -1
- package/dist/tests/e2e/utils/hardcoded-detector.d.ts +0 -46
- package/dist/tests/e2e/utils/hardcoded-detector.d.ts.map +0 -1
- package/dist/tests/e2e/utils/hardcoded-detector.js +0 -238
- package/dist/tests/e2e/utils/hardcoded-detector.js.map +0 -1
- package/dist/tests/e2e/utils/index.d.ts +0 -12
- package/dist/tests/e2e/utils/index.d.ts.map +0 -1
- package/dist/tests/e2e/utils/index.js +0 -12
- package/dist/tests/e2e/utils/index.js.map +0 -1
- package/dist/tests/e2e/utils/linear-reporter.d.ts +0 -60
- package/dist/tests/e2e/utils/linear-reporter.d.ts.map +0 -1
- package/dist/tests/e2e/utils/linear-reporter.js +0 -223
- package/dist/tests/e2e/utils/linear-reporter.js.map +0 -1
- package/dist/tests/e2e/utils/mock-github.d.ts +0 -23
- package/dist/tests/e2e/utils/mock-github.d.ts.map +0 -1
- package/dist/tests/e2e/utils/mock-github.js +0 -60
- package/dist/tests/e2e/utils/mock-github.js.map +0 -1
- package/dist/tests/e2e/utils/mock-prompts.d.ts +0 -19
- package/dist/tests/e2e/utils/mock-prompts.d.ts.map +0 -1
- package/dist/tests/e2e/utils/mock-prompts.js +0 -48
- package/dist/tests/e2e/utils/mock-prompts.js.map +0 -1
- package/dist/tests/e2e/utils/source-recovery-fixture.d.ts +0 -49
- package/dist/tests/e2e/utils/source-recovery-fixture.d.ts.map +0 -1
- package/dist/tests/e2e/utils/source-recovery-fixture.js +0 -106
- package/dist/tests/e2e/utils/source-recovery-fixture.js.map +0 -1
- package/dist/tests/embedding-probe-stdio.test.d.ts +0 -11
- package/dist/tests/embedding-probe-stdio.test.d.ts.map +0 -1
- package/dist/tests/embedding-probe-stdio.test.js +0 -58
- package/dist/tests/embedding-probe-stdio.test.js.map +0 -1
- package/dist/tests/import.test.d.ts +0 -5
- package/dist/tests/import.test.d.ts.map +0 -1
- package/dist/tests/import.test.js +0 -11
- package/dist/tests/import.test.js.map +0 -1
- package/dist/tests/init.test.d.ts +0 -30
- package/dist/tests/init.test.d.ts.map +0 -1
- package/dist/tests/init.test.js +0 -357
- package/dist/tests/init.test.js.map +0 -1
- package/dist/tests/install-multi-client.test.d.ts +0 -2
- package/dist/tests/install-multi-client.test.d.ts.map +0 -1
- package/dist/tests/install-multi-client.test.js +0 -202
- package/dist/tests/install-multi-client.test.js.map +0 -1
- package/dist/tests/install-quarantine.test.d.ts +0 -10
- package/dist/tests/install-quarantine.test.d.ts.map +0 -1
- package/dist/tests/install-quarantine.test.js +0 -86
- package/dist/tests/install-quarantine.test.js.map +0 -1
- package/dist/tests/install-skill.test.d.ts +0 -8
- package/dist/tests/install-skill.test.d.ts.map +0 -1
- package/dist/tests/install-skill.test.js +0 -414
- package/dist/tests/install-skill.test.js.map +0 -1
- package/dist/tests/integration/import-local.test.d.ts +0 -2
- package/dist/tests/integration/import-local.test.d.ts.map +0 -1
- package/dist/tests/integration/import-local.test.js +0 -158
- package/dist/tests/integration/import-local.test.js.map +0 -1
- package/dist/tests/license-validation.test.d.ts +0 -8
- package/dist/tests/license-validation.test.d.ts.map +0 -1
- package/dist/tests/license-validation.test.js +0 -186
- package/dist/tests/license-validation.test.js.map +0 -1
- package/dist/tests/manage.test.d.ts +0 -5
- package/dist/tests/manage.test.d.ts.map +0 -1
- package/dist/tests/manage.test.js +0 -495
- package/dist/tests/manage.test.js.map +0 -1
- package/dist/tests/mcp-server-template.test.d.ts +0 -7
- package/dist/tests/mcp-server-template.test.d.ts.map +0 -1
- package/dist/tests/mcp-server-template.test.js +0 -372
- package/dist/tests/mcp-server-template.test.js.map +0 -1
- package/dist/tests/node-version.test.d.ts +0 -8
- package/dist/tests/node-version.test.d.ts.map +0 -1
- package/dist/tests/node-version.test.js +0 -200
- package/dist/tests/node-version.test.js.map +0 -1
- package/dist/tests/open-database.test.d.ts +0 -2
- package/dist/tests/open-database.test.d.ts.map +0 -1
- package/dist/tests/open-database.test.js +0 -77
- package/dist/tests/open-database.test.js.map +0 -1
- package/dist/tests/recommend-helpers.test.d.ts +0 -9
- package/dist/tests/recommend-helpers.test.d.ts.map +0 -1
- package/dist/tests/recommend-helpers.test.js +0 -308
- package/dist/tests/recommend-helpers.test.js.map +0 -1
- package/dist/tests/recommend-scoring.test.d.ts +0 -8
- package/dist/tests/recommend-scoring.test.d.ts.map +0 -1
- package/dist/tests/recommend-scoring.test.js +0 -184
- package/dist/tests/recommend-scoring.test.js.map +0 -1
- package/dist/tests/recommend.errors.test.d.ts +0 -8
- package/dist/tests/recommend.errors.test.d.ts.map +0 -1
- package/dist/tests/recommend.errors.test.js +0 -232
- package/dist/tests/recommend.errors.test.js.map +0 -1
- package/dist/tests/recommend.filters.test.d.ts +0 -9
- package/dist/tests/recommend.filters.test.d.ts.map +0 -1
- package/dist/tests/recommend.filters.test.js +0 -235
- package/dist/tests/recommend.filters.test.js.map +0 -1
- package/dist/tests/recommend.test-helpers.d.ts +0 -66
- package/dist/tests/recommend.test-helpers.d.ts.map +0 -1
- package/dist/tests/recommend.test-helpers.js +0 -79
- package/dist/tests/recommend.test-helpers.js.map +0 -1
- package/dist/tests/recommend.test.d.ts +0 -11
- package/dist/tests/recommend.test.d.ts.map +0 -1
- package/dist/tests/recommend.test.js +0 -320
- package/dist/tests/recommend.test.js.map +0 -1
- package/dist/tests/search-helpers.test.d.ts +0 -2
- package/dist/tests/search-helpers.test.d.ts.map +0 -1
- package/dist/tests/search-helpers.test.js +0 -110
- package/dist/tests/search-helpers.test.js.map +0 -1
- package/dist/tests/search.test.d.ts +0 -5
- package/dist/tests/search.test.d.ts.map +0 -1
- package/dist/tests/search.test.js +0 -91
- package/dist/tests/search.test.js.map +0 -1
- package/dist/tests/skills-directory-per-harness.test.d.ts +0 -2
- package/dist/tests/skills-directory-per-harness.test.d.ts.map +0 -1
- package/dist/tests/skills-directory-per-harness.test.js +0 -116
- package/dist/tests/skills-directory-per-harness.test.js.map +0 -1
- package/dist/tests/skills-directory.test.d.ts +0 -2
- package/dist/tests/skills-directory.test.d.ts.map +0 -1
- package/dist/tests/skills-directory.test.js +0 -97
- package/dist/tests/skills-directory.test.js.map +0 -1
- package/dist/tests/sync.auth-ux.test.d.ts +0 -14
- package/dist/tests/sync.auth-ux.test.d.ts.map +0 -1
- package/dist/tests/sync.auth-ux.test.js +0 -148
- package/dist/tests/sync.auth-ux.test.js.map +0 -1
- package/dist/tests/tool-analyzer.test.d.ts +0 -8
- package/dist/tests/tool-analyzer.test.d.ts.map +0 -1
- package/dist/tests/tool-analyzer.test.js +0 -149
- package/dist/tests/tool-analyzer.test.js.map +0 -1
- package/dist/tests/unit/commands/install.test.d.ts +0 -7
- package/dist/tests/unit/commands/install.test.d.ts.map +0 -1
- package/dist/tests/unit/commands/install.test.js +0 -482
- package/dist/tests/unit/commands/install.test.js.map +0 -1
- package/dist/tests/unit/import-local.helpers.test.d.ts +0 -2
- package/dist/tests/unit/import-local.helpers.test.d.ts.map +0 -1
- package/dist/tests/unit/import-local.helpers.test.js +0 -96
- 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.
|
|
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/
|
|
8
|
-
"sklx": "dist/
|
|
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
|
-
"@
|
|
21
|
-
"@
|
|
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
|
-
|
|
31
|
-
"
|
|
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":"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"}
|
|
@@ -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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ab-test.test.d.ts","sourceRoot":"","sources":["../../../src/commands/ab-test.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|