@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
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SMI-746: Skill Authoring Commands
|
|
3
|
-
* SMI-1389: Subagent Generation Command
|
|
4
|
-
* SMI-1390: Transform Command
|
|
5
|
-
* SMI-1433: MCP Server Scaffolding
|
|
6
|
-
* SMI-1487: Refactored into modular structure
|
|
7
|
-
*
|
|
8
|
-
* Provides CLI commands for creating, validating, publishing skills,
|
|
9
|
-
* and generating companion subagents.
|
|
10
|
-
*/
|
|
11
|
-
export { createInitCommand, createValidateCommand, createPublishCommand } from './init.action.js';
|
|
12
|
-
export { initSkill, validateSkill, publishSkill, type InitOptions, VALID_CATEGORIES, } from './init.js';
|
|
13
|
-
export { createSubagentCommand, generateSubagent, type SubagentOptions } from './subagent.js';
|
|
14
|
-
export { createTransformCommand, transformSkill, type TransformOptions } from './transform.js';
|
|
15
|
-
export { createMcpInitCommand, initMcpServer, type McpInitOptions } from './mcp-init.js';
|
|
16
|
-
export { printValidationResult, fileExists, ensureAgentsDirectory, extractTriggerPhrases, validateSubagentDefinition, } from './utils.js';
|
|
17
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/author/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACjG,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,KAAK,WAAW,EAChB,gBAAgB,GACjB,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAA;AAE7F,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAE9F,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAGxF,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,YAAY,CAAA"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SMI-746: Skill Authoring Commands
|
|
3
|
-
* SMI-1389: Subagent Generation Command
|
|
4
|
-
* SMI-1390: Transform Command
|
|
5
|
-
* SMI-1433: MCP Server Scaffolding
|
|
6
|
-
* SMI-1487: Refactored into modular structure
|
|
7
|
-
*
|
|
8
|
-
* Provides CLI commands for creating, validating, publishing skills,
|
|
9
|
-
* and generating companion subagents.
|
|
10
|
-
*/
|
|
11
|
-
// Re-export command creators
|
|
12
|
-
// SMI-5129: the command factories moved to init.action.ts (sibling-split);
|
|
13
|
-
// the logic functions + types stay in init.ts.
|
|
14
|
-
export { createInitCommand, createValidateCommand, createPublishCommand } from './init.action.js';
|
|
15
|
-
export { initSkill, validateSkill, publishSkill, VALID_CATEGORIES, } from './init.js';
|
|
16
|
-
export { createSubagentCommand, generateSubagent } from './subagent.js';
|
|
17
|
-
export { createTransformCommand, transformSkill } from './transform.js';
|
|
18
|
-
export { createMcpInitCommand, initMcpServer } from './mcp-init.js';
|
|
19
|
-
// Re-export utilities that may be useful externally
|
|
20
|
-
export { printValidationResult, fileExists, ensureAgentsDirectory, extractTriggerPhrases, validateSubagentDefinition, } from './utils.js';
|
|
21
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/author/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,6BAA6B;AAC7B,2EAA2E;AAC3E,+CAA+C;AAC/C,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACjG,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EAEZ,gBAAgB,GACjB,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAwB,MAAM,eAAe,CAAA;AAE7F,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAyB,MAAM,gBAAgB,CAAA;AAE9F,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAuB,MAAM,eAAe,CAAA;AAExF,oDAAoD;AACpD,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,YAAY,CAAA"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview `skillsmith author init|validate|publish` command factories +
|
|
3
|
-
* withTelemetry-wrapped action handlers.
|
|
4
|
-
* @module @skillsmith/cli/commands/author/init.action
|
|
5
|
-
* @see SMI-5129 — sibling-split of init.ts so the 3 author handlers can be
|
|
6
|
-
* wrapped without init.ts exceeding the 500-LOC gate. Mirrors the
|
|
7
|
-
* sync.action.ts / telemetry.action.ts convention (SMI-5127/SMI-5128): the
|
|
8
|
-
* business logic (initSkill/validateSkill/publishSkill) stays in init.ts;
|
|
9
|
-
* the commander factories + wrapped actions live here. One-way import
|
|
10
|
-
* (init.action → init), so no import cycle.
|
|
11
|
-
*/
|
|
12
|
-
import { Command } from 'commander';
|
|
13
|
-
export declare const initAction: (name: string | undefined, opts: Record<string, string | boolean | undefined>) => Promise<void>;
|
|
14
|
-
/**
|
|
15
|
-
* Create init command
|
|
16
|
-
* SMI-1473: Added non-interactive flags for E2E testing
|
|
17
|
-
*/
|
|
18
|
-
export declare function createInitCommand(): Command;
|
|
19
|
-
export declare const validateAction: (skillPath: string) => Promise<void>;
|
|
20
|
-
/**
|
|
21
|
-
* Create validate command
|
|
22
|
-
*/
|
|
23
|
-
export declare function createValidateCommand(): Command;
|
|
24
|
-
export declare const publishAction: (skillPath: string, opts: Record<string, string | boolean | undefined>) => Promise<void>;
|
|
25
|
-
/**
|
|
26
|
-
* Create publish command
|
|
27
|
-
*/
|
|
28
|
-
export declare function createPublishCommand(): Command;
|
|
29
|
-
//# sourceMappingURL=init.action.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.action.d.ts","sourceRoot":"","sources":["../../../../src/commands/author/init.action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAuCnC,eAAO,MAAM,UAAU,iGAIrB,CAAA;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAa3C;AAgBD,eAAO,MAAM,cAAc,sCAIzB,CAAA;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAK/C;AA8BD,eAAO,MAAM,aAAa,0FAIxB,CAAA;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAU9C"}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview `skillsmith author init|validate|publish` command factories +
|
|
3
|
-
* withTelemetry-wrapped action handlers.
|
|
4
|
-
* @module @skillsmith/cli/commands/author/init.action
|
|
5
|
-
* @see SMI-5129 — sibling-split of init.ts so the 3 author handlers can be
|
|
6
|
-
* wrapped without init.ts exceeding the 500-LOC gate. Mirrors the
|
|
7
|
-
* sync.action.ts / telemetry.action.ts convention (SMI-5127/SMI-5128): the
|
|
8
|
-
* business logic (initSkill/validateSkill/publishSkill) stays in init.ts;
|
|
9
|
-
* the commander factories + wrapped actions live here. One-way import
|
|
10
|
-
* (init.action → init), so no import cycle.
|
|
11
|
-
*/
|
|
12
|
-
import { Command } from 'commander';
|
|
13
|
-
import chalk from 'chalk';
|
|
14
|
-
import { withTelemetry } from '@skillsmith/core/telemetry';
|
|
15
|
-
import { sanitizeError } from '../../utils/sanitize.js';
|
|
16
|
-
import { InitSkillError } from '../../utils/errors.js';
|
|
17
|
-
import { initSkill, validateSkill, publishSkill } from './init.js';
|
|
18
|
-
// ---------------------------------------------------------------------------
|
|
19
|
-
// init
|
|
20
|
-
// ---------------------------------------------------------------------------
|
|
21
|
-
async function initActionImpl(name, opts) {
|
|
22
|
-
const targetPath = opts['path'] || '.';
|
|
23
|
-
try {
|
|
24
|
-
await initSkill(name, targetPath, {
|
|
25
|
-
description: opts['description'],
|
|
26
|
-
author: opts['author'],
|
|
27
|
-
category: opts['category'],
|
|
28
|
-
yes: opts['yes'],
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
catch (error) {
|
|
32
|
-
// SMI-4314: typed InitSkillError → user-facing message is already
|
|
33
|
-
// composed (and chalk-styled); print it verbatim and exit with the
|
|
34
|
-
// requested code. Anything else is an unexpected bug — route
|
|
35
|
-
// through sanitizeError with the generic prefix.
|
|
36
|
-
if (error instanceof InitSkillError) {
|
|
37
|
-
console.error(error.message);
|
|
38
|
-
process.exit(error.exitCode);
|
|
39
|
-
}
|
|
40
|
-
console.error(chalk.red('Error initializing skill:'), sanitizeError(error));
|
|
41
|
-
process.exit(1);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
export const initAction = withTelemetry(initActionImpl, {
|
|
45
|
-
source: 'cli',
|
|
46
|
-
extractSkillId: () => 'author init',
|
|
47
|
-
extractFramework: () => 'cli',
|
|
48
|
-
});
|
|
49
|
-
/**
|
|
50
|
-
* Create init command
|
|
51
|
-
* SMI-1473: Added non-interactive flags for E2E testing
|
|
52
|
-
*/
|
|
53
|
-
export function createInitCommand() {
|
|
54
|
-
return new Command('init')
|
|
55
|
-
.description('Initialize a new skill directory')
|
|
56
|
-
.argument('[name]', 'Skill name')
|
|
57
|
-
.option('-p, --path <path>', 'Target directory', '.')
|
|
58
|
-
.option('-d, --description <description>', 'Skill description (non-interactive)')
|
|
59
|
-
.option('-a, --author <author>', 'Skill author (non-interactive)')
|
|
60
|
-
.option('-c, --category <category>', 'Skill category: development|productivity|communication|data|security|other (non-interactive)')
|
|
61
|
-
.option('-y, --yes', 'Auto-confirm overwrite (non-interactive)')
|
|
62
|
-
.action(initAction);
|
|
63
|
-
}
|
|
64
|
-
// ---------------------------------------------------------------------------
|
|
65
|
-
// validate
|
|
66
|
-
// ---------------------------------------------------------------------------
|
|
67
|
-
async function validateActionImpl(skillPath) {
|
|
68
|
-
try {
|
|
69
|
-
const valid = await validateSkill(skillPath);
|
|
70
|
-
process.exit(valid ? 0 : 1);
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
console.error(chalk.red('Error validating skill:'), sanitizeError(error));
|
|
74
|
-
process.exit(1);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
export const validateAction = withTelemetry(validateActionImpl, {
|
|
78
|
-
source: 'cli',
|
|
79
|
-
extractSkillId: () => 'author validate',
|
|
80
|
-
extractFramework: () => 'cli',
|
|
81
|
-
});
|
|
82
|
-
/**
|
|
83
|
-
* Create validate command
|
|
84
|
-
*/
|
|
85
|
-
export function createValidateCommand() {
|
|
86
|
-
return new Command('validate')
|
|
87
|
-
.description('Validate a local SKILL.md file')
|
|
88
|
-
.argument('[path]', 'Path to SKILL.md or skill directory', '.')
|
|
89
|
-
.action(validateAction);
|
|
90
|
-
}
|
|
91
|
-
// ---------------------------------------------------------------------------
|
|
92
|
-
// publish
|
|
93
|
-
// ---------------------------------------------------------------------------
|
|
94
|
-
async function publishActionImpl(skillPath, opts) {
|
|
95
|
-
try {
|
|
96
|
-
const referencePatterns = opts['referencePatterns']
|
|
97
|
-
? String(opts['referencePatterns'])
|
|
98
|
-
.split(',')
|
|
99
|
-
.map((p) => p.trim())
|
|
100
|
-
: undefined;
|
|
101
|
-
// SMI-2444: Use conditional spread to satisfy exactOptionalPropertyTypes
|
|
102
|
-
const success = await publishSkill(skillPath, {
|
|
103
|
-
...(opts['checkReferences'] !== undefined && {
|
|
104
|
-
checkReferences: opts['checkReferences'],
|
|
105
|
-
}),
|
|
106
|
-
...(referencePatterns !== undefined && { referencePatterns }),
|
|
107
|
-
});
|
|
108
|
-
process.exit(success ? 0 : 1);
|
|
109
|
-
}
|
|
110
|
-
catch (error) {
|
|
111
|
-
console.error(chalk.red('Error publishing skill:'), sanitizeError(error));
|
|
112
|
-
process.exit(1);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
export const publishAction = withTelemetry(publishActionImpl, {
|
|
116
|
-
source: 'cli',
|
|
117
|
-
extractSkillId: () => 'author publish',
|
|
118
|
-
extractFramework: () => 'cli',
|
|
119
|
-
});
|
|
120
|
-
/**
|
|
121
|
-
* Create publish command
|
|
122
|
-
*/
|
|
123
|
-
export function createPublishCommand() {
|
|
124
|
-
return new Command('publish')
|
|
125
|
-
.description('Prepare skill for sharing')
|
|
126
|
-
.argument('[path]', 'Path to skill directory', '.')
|
|
127
|
-
.option('--check-references', 'Scan for project-specific references before publishing')
|
|
128
|
-
.option('--reference-patterns <patterns>', 'Additional regex patterns to check (comma-separated)')
|
|
129
|
-
.action(publishAction);
|
|
130
|
-
}
|
|
131
|
-
//# sourceMappingURL=init.action.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.action.js","sourceRoot":"","sources":["../../../../src/commands/author/init.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SMI-746: Skill Initialization Commands
|
|
3
|
-
* SMI-1473: Non-interactive init command flags
|
|
4
|
-
*
|
|
5
|
-
* Commands for creating, validating, and publishing skills.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* SMI-1473: Options for non-interactive init command
|
|
9
|
-
*/
|
|
10
|
-
export interface InitOptions {
|
|
11
|
-
description?: string | undefined;
|
|
12
|
-
author?: string | undefined;
|
|
13
|
-
category?: string | undefined;
|
|
14
|
-
yes?: boolean | undefined;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Valid categories for skill initialization
|
|
18
|
-
*/
|
|
19
|
-
export declare const VALID_CATEGORIES: string[];
|
|
20
|
-
/**
|
|
21
|
-
* Initialize a new skill directory
|
|
22
|
-
*/
|
|
23
|
-
export declare function initSkill(name: string | undefined, targetPath: string, options?: InitOptions): Promise<void>;
|
|
24
|
-
/**
|
|
25
|
-
* Validate a local SKILL.md file
|
|
26
|
-
*/
|
|
27
|
-
export declare function validateSkill(skillPath: string): Promise<boolean>;
|
|
28
|
-
/**
|
|
29
|
-
* Prepare skill for publishing
|
|
30
|
-
* @returns true if publishing succeeded, false if validation failed
|
|
31
|
-
*/
|
|
32
|
-
export declare function publishSkill(skillPath: string, options?: {
|
|
33
|
-
checkReferences?: boolean;
|
|
34
|
-
referencePatterns?: string[];
|
|
35
|
-
}): Promise<boolean>;
|
|
36
|
-
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../src/commands/author/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,UAO5B,CAAA;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,IAAI,CAAC,CA2Hf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA0DvE;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GACxE,OAAO,CAAC,OAAO,CAAC,CAoJlB"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SMI-4289: author init error-handling helpers (closes #602)
|
|
3
|
-
* SMI-4314: error-contract update — initSkill now throws InitSkillError on
|
|
4
|
-
* expected user-facing failures. The createInitCommand() action wrapper
|
|
5
|
-
* catches, prints the sanitized message exactly once, and exits with
|
|
6
|
-
* InitSkillError.exitCode. Helpers here keep the library-to-library
|
|
7
|
-
* { ok, error } signalling contract: they never call process.exit and never
|
|
8
|
-
* print user-facing output directly.
|
|
9
|
-
*
|
|
10
|
-
* Design notes:
|
|
11
|
-
* - scaffoldSkillDirectory catches all fs errors and returns { ok, error }.
|
|
12
|
-
* - rollbackPartialScaffold removes the skill directory ONLY when the mkdir
|
|
13
|
-
* at line ~128 of init.ts created it fresh (createdFresh === true). When
|
|
14
|
-
* the user confirmed an overwrite of a pre-existing directory
|
|
15
|
-
* (createdFresh === false), rollback is a no-op to avoid destroying the
|
|
16
|
-
* user's existing files on mid-write failure.
|
|
17
|
-
*/
|
|
18
|
-
/**
|
|
19
|
-
* Input for scaffoldSkillDirectory.
|
|
20
|
-
*/
|
|
21
|
-
export interface ScaffoldInput {
|
|
22
|
-
/** Absolute path to the skill directory to populate. */
|
|
23
|
-
skillDir: string;
|
|
24
|
-
/** Skill name (used in templates). */
|
|
25
|
-
skillName: string;
|
|
26
|
-
/** Skill description (used in templates). */
|
|
27
|
-
description: string;
|
|
28
|
-
/** Skill author (used in templates). */
|
|
29
|
-
author: string;
|
|
30
|
-
/** Skill category (used in templates). */
|
|
31
|
-
category: string;
|
|
32
|
-
/**
|
|
33
|
-
* True if the skillDir was created by this invocation (fresh mkdir).
|
|
34
|
-
* False if the directory pre-existed and the user confirmed overwrite.
|
|
35
|
-
*
|
|
36
|
-
* Controls rollback behaviour on failure:
|
|
37
|
-
* - true: on error, rm -rf skillDir (best-effort cleanup)
|
|
38
|
-
* - false: on error, leave skillDir alone (user's pre-existing files preserved)
|
|
39
|
-
*/
|
|
40
|
-
createdFresh: boolean;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Result of scaffoldSkillDirectory. Never throws — callers should branch on `ok`.
|
|
44
|
-
*/
|
|
45
|
-
export type ScaffoldResult = {
|
|
46
|
-
ok: true;
|
|
47
|
-
} | {
|
|
48
|
-
ok: false;
|
|
49
|
-
error: string;
|
|
50
|
-
};
|
|
51
|
-
/**
|
|
52
|
-
* Create subdirectories, render templates, and write SKILL.md, README.md,
|
|
53
|
-
* example.js, and .gitignore into `skillDir`.
|
|
54
|
-
*
|
|
55
|
-
* On any fs failure, best-effort rollback is attempted (see
|
|
56
|
-
* `rollbackPartialScaffold`) and the sanitized error is returned as a string.
|
|
57
|
-
* No exception escapes this function for fs-level failures.
|
|
58
|
-
*/
|
|
59
|
-
export declare function scaffoldSkillDirectory(input: ScaffoldInput): Promise<ScaffoldResult>;
|
|
60
|
-
/**
|
|
61
|
-
* Best-effort cleanup of a partially-scaffolded skill directory.
|
|
62
|
-
*
|
|
63
|
-
* CRITICAL: This function must only remove `skillDir` (the skill directory
|
|
64
|
-
* itself). It must NEVER receive or operate on `targetPath` (the parent
|
|
65
|
-
* directory the user passed via --path) — doing so would rm -rf the user's
|
|
66
|
-
* chosen parent directory.
|
|
67
|
-
*
|
|
68
|
-
* When `createdFresh === false`, the directory pre-existed before this init
|
|
69
|
-
* invocation (user confirmed overwrite earlier). Removing it would destroy
|
|
70
|
-
* the user's existing files, so this function no-ops.
|
|
71
|
-
*
|
|
72
|
-
* When `createdFresh === true`, the directory was created by the current
|
|
73
|
-
* init invocation. Best-effort `rm -rf` is safe because only partial scaffold
|
|
74
|
-
* output lives there.
|
|
75
|
-
*
|
|
76
|
-
* Any rollback failure is swallowed — the original scaffold error is the
|
|
77
|
-
* user-facing failure; rollback is defence-in-depth.
|
|
78
|
-
*/
|
|
79
|
-
export declare function rollbackPartialScaffold(skillDir: string, createdFresh: boolean): Promise<void>;
|
|
80
|
-
//# sourceMappingURL=init.helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.helpers.d.ts","sourceRoot":"","sources":["../../../../src/commands/author/init.helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,wDAAwD;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAA;IACnB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAA;IACd,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;;;OAOG;IACH,YAAY,EAAE,OAAO,CAAA;CACtB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAExE;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAsD1F;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC,CAWf"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* SMI-4289: author init error-handling helpers (closes #602)
|
|
3
|
-
* SMI-4314: error-contract update — initSkill now throws InitSkillError on
|
|
4
|
-
* expected user-facing failures. The createInitCommand() action wrapper
|
|
5
|
-
* catches, prints the sanitized message exactly once, and exits with
|
|
6
|
-
* InitSkillError.exitCode. Helpers here keep the library-to-library
|
|
7
|
-
* { ok, error } signalling contract: they never call process.exit and never
|
|
8
|
-
* print user-facing output directly.
|
|
9
|
-
*
|
|
10
|
-
* Design notes:
|
|
11
|
-
* - scaffoldSkillDirectory catches all fs errors and returns { ok, error }.
|
|
12
|
-
* - rollbackPartialScaffold removes the skill directory ONLY when the mkdir
|
|
13
|
-
* at line ~128 of init.ts created it fresh (createdFresh === true). When
|
|
14
|
-
* the user confirmed an overwrite of a pre-existing directory
|
|
15
|
-
* (createdFresh === false), rollback is a no-op to avoid destroying the
|
|
16
|
-
* user's existing files on mid-write failure.
|
|
17
|
-
*/
|
|
18
|
-
import { mkdir, writeFile, rm } from 'fs/promises';
|
|
19
|
-
import { join } from 'path';
|
|
20
|
-
import { SKILL_MD_TEMPLATE, README_MD_TEMPLATE } from '../../templates/index.js';
|
|
21
|
-
import { sanitizeError } from '../../utils/sanitize.js';
|
|
22
|
-
/**
|
|
23
|
-
* Create subdirectories, render templates, and write SKILL.md, README.md,
|
|
24
|
-
* example.js, and .gitignore into `skillDir`.
|
|
25
|
-
*
|
|
26
|
-
* On any fs failure, best-effort rollback is attempted (see
|
|
27
|
-
* `rollbackPartialScaffold`) and the sanitized error is returned as a string.
|
|
28
|
-
* No exception escapes this function for fs-level failures.
|
|
29
|
-
*/
|
|
30
|
-
export async function scaffoldSkillDirectory(input) {
|
|
31
|
-
const { skillDir, skillName, description, author, category, createdFresh } = input;
|
|
32
|
-
try {
|
|
33
|
-
await mkdir(join(skillDir, 'scripts'), { recursive: true });
|
|
34
|
-
await mkdir(join(skillDir, 'resources'), { recursive: true });
|
|
35
|
-
const skillMdContent = SKILL_MD_TEMPLATE.replace(/\{\{name\}\}/g, skillName)
|
|
36
|
-
.replace(/\{\{description\}\}/g, description)
|
|
37
|
-
.replace(/\{\{author\}\}/g, author)
|
|
38
|
-
.replace(/\{\{category\}\}/g, category)
|
|
39
|
-
.replace(/\{\{date\}\}/g, new Date().toISOString().split('T')[0] || '')
|
|
40
|
-
.replace(/\{\{behavioralClassification\}\}/g, '');
|
|
41
|
-
await writeFile(join(skillDir, 'SKILL.md'), skillMdContent, 'utf-8');
|
|
42
|
-
const readmeContent = README_MD_TEMPLATE.replace(/\{\{name\}\}/g, skillName).replace(/\{\{description\}\}/g, description);
|
|
43
|
-
await writeFile(join(skillDir, 'README.md'), readmeContent, 'utf-8');
|
|
44
|
-
const placeholderScript = `#!/usr/bin/env node
|
|
45
|
-
/**
|
|
46
|
-
* ${skillName} - Example Script
|
|
47
|
-
*
|
|
48
|
-
* Add your skill's automation scripts here.
|
|
49
|
-
*/
|
|
50
|
-
|
|
51
|
-
console.log('${skillName} script executed');
|
|
52
|
-
`;
|
|
53
|
-
await writeFile(join(skillDir, 'scripts', 'example.js'), placeholderScript, 'utf-8');
|
|
54
|
-
const gitignore = `# Dependencies
|
|
55
|
-
node_modules/
|
|
56
|
-
|
|
57
|
-
# Build output
|
|
58
|
-
dist/
|
|
59
|
-
|
|
60
|
-
# Environment
|
|
61
|
-
.env
|
|
62
|
-
.env.local
|
|
63
|
-
|
|
64
|
-
# OS files
|
|
65
|
-
.DS_Store
|
|
66
|
-
Thumbs.db
|
|
67
|
-
`;
|
|
68
|
-
await writeFile(join(skillDir, '.gitignore'), gitignore, 'utf-8');
|
|
69
|
-
return { ok: true };
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
await rollbackPartialScaffold(skillDir, createdFresh);
|
|
73
|
-
return { ok: false, error: sanitizeError(error) };
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Best-effort cleanup of a partially-scaffolded skill directory.
|
|
78
|
-
*
|
|
79
|
-
* CRITICAL: This function must only remove `skillDir` (the skill directory
|
|
80
|
-
* itself). It must NEVER receive or operate on `targetPath` (the parent
|
|
81
|
-
* directory the user passed via --path) — doing so would rm -rf the user's
|
|
82
|
-
* chosen parent directory.
|
|
83
|
-
*
|
|
84
|
-
* When `createdFresh === false`, the directory pre-existed before this init
|
|
85
|
-
* invocation (user confirmed overwrite earlier). Removing it would destroy
|
|
86
|
-
* the user's existing files, so this function no-ops.
|
|
87
|
-
*
|
|
88
|
-
* When `createdFresh === true`, the directory was created by the current
|
|
89
|
-
* init invocation. Best-effort `rm -rf` is safe because only partial scaffold
|
|
90
|
-
* output lives there.
|
|
91
|
-
*
|
|
92
|
-
* Any rollback failure is swallowed — the original scaffold error is the
|
|
93
|
-
* user-facing failure; rollback is defence-in-depth.
|
|
94
|
-
*/
|
|
95
|
-
export async function rollbackPartialScaffold(skillDir, createdFresh) {
|
|
96
|
-
if (!createdFresh) {
|
|
97
|
-
// User's pre-existing directory — do not remove.
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
try {
|
|
101
|
-
await rm(skillDir, { recursive: true, force: true });
|
|
102
|
-
}
|
|
103
|
-
catch {
|
|
104
|
-
// Swallow — best-effort cleanup; original failure is what matters.
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=init.helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.helpers.js","sourceRoot":"","sources":["../../../../src/commands/author/init.helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAgCvD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,KAAoB;IAC/D,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,KAAK,CAAA;IAElF,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3D,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAE7D,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC;aACzE,OAAO,CAAC,sBAAsB,EAAE,WAAW,CAAC;aAC5C,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;aAClC,OAAO,CAAC,mBAAmB,EAAE,QAAQ,CAAC;aACtC,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACtE,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAA;QAEnD,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,CAAA;QAEpE,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,OAAO,CAClF,sBAAsB,EACtB,WAAW,CACZ,CAAA;QACD,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;QAEpE,MAAM,iBAAiB,GAAG;;KAEzB,SAAS;;;;;eAKC,SAAS;CACvB,CAAA;QACG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAA;QAEpF,MAAM,SAAS,GAAG;;;;;;;;;;;;;CAarB,CAAA;QACG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;QAEjE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;QACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAA;IACnD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAgB,EAChB,YAAqB;IAErB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,iDAAiD;QACjD,OAAM;IACR,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC"}
|