@axm.sh/cli 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/agents/claude-code/descriptor.d.ts.map +1 -1
- package/dist/src/agents/claude-code/descriptor.js +0 -2
- package/dist/src/agents/claude-code/descriptor.js.map +1 -1
- package/dist/src/agents/claude-code/index.d.ts +0 -2
- package/dist/src/agents/claude-code/index.d.ts.map +1 -1
- package/dist/src/agents/claude-code/index.js +0 -2
- package/dist/src/agents/claude-code/index.js.map +1 -1
- package/dist/src/agents/codex/descriptor.d.ts.map +1 -1
- package/dist/src/agents/codex/descriptor.js +0 -2
- package/dist/src/agents/codex/descriptor.js.map +1 -1
- package/dist/src/agents/codex/index.d.ts +0 -2
- package/dist/src/agents/codex/index.d.ts.map +1 -1
- package/dist/src/agents/codex/index.js +0 -2
- package/dist/src/agents/codex/index.js.map +1 -1
- package/dist/src/agents/continue/descriptor.d.ts.map +1 -1
- package/dist/src/agents/continue/descriptor.js +0 -2
- package/dist/src/agents/continue/descriptor.js.map +1 -1
- package/dist/src/agents/continue/index.d.ts +0 -1
- package/dist/src/agents/continue/index.d.ts.map +1 -1
- package/dist/src/agents/continue/index.js +0 -1
- package/dist/src/agents/continue/index.js.map +1 -1
- package/dist/src/agents/cursor/descriptor.d.ts.map +1 -1
- package/dist/src/agents/cursor/descriptor.js +0 -2
- package/dist/src/agents/cursor/descriptor.js.map +1 -1
- package/dist/src/agents/cursor/index.d.ts +0 -1
- package/dist/src/agents/cursor/index.d.ts.map +1 -1
- package/dist/src/agents/cursor/index.js +0 -1
- package/dist/src/agents/cursor/index.js.map +1 -1
- package/dist/src/agents/detection.d.ts +13 -55
- package/dist/src/agents/detection.d.ts.map +1 -1
- package/dist/src/agents/detection.js +27 -84
- package/dist/src/agents/detection.js.map +1 -1
- package/dist/src/agents/index.d.ts +1 -3
- package/dist/src/agents/index.d.ts.map +1 -1
- package/dist/src/agents/index.js +1 -4
- package/dist/src/agents/index.js.map +1 -1
- package/dist/src/agents/opencode/descriptor.d.ts.map +1 -1
- package/dist/src/agents/opencode/descriptor.js +0 -2
- package/dist/src/agents/opencode/descriptor.js.map +1 -1
- package/dist/src/agents/opencode/index.d.ts +0 -1
- package/dist/src/agents/opencode/index.d.ts.map +1 -1
- package/dist/src/agents/opencode/index.js +0 -1
- package/dist/src/agents/opencode/index.js.map +1 -1
- package/dist/src/agents/types.d.ts +1 -16
- package/dist/src/agents/types.d.ts.map +1 -1
- package/dist/src/agents/windsurf/descriptor.d.ts.map +1 -1
- package/dist/src/agents/windsurf/descriptor.js +0 -2
- package/dist/src/agents/windsurf/descriptor.js.map +1 -1
- package/dist/src/agents/windsurf/index.d.ts +0 -1
- package/dist/src/agents/windsurf/index.d.ts.map +1 -1
- package/dist/src/agents/windsurf/index.js +0 -1
- package/dist/src/agents/windsurf/index.js.map +1 -1
- package/dist/src/cli-commands/init/handler.d.ts +1 -1
- package/dist/src/cli-commands/init/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/init/handler.js +1 -1
- package/dist/src/cli-commands/init/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/command.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/command.js +6 -0
- package/dist/src/cli-commands/skills/command.js.map +1 -1
- package/dist/src/cli-commands/skills/constants.d.ts +9 -0
- package/dist/src/cli-commands/skills/constants.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/constants.js +9 -0
- package/dist/src/cli-commands/skills/constants.js.map +1 -0
- package/dist/src/cli-commands/skills/copy-skill.d.ts +1 -1
- package/dist/src/cli-commands/skills/copy-skill.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/copy-skill.js +11 -24
- package/dist/src/cli-commands/skills/copy-skill.js.map +1 -1
- package/dist/src/cli-commands/skills/disable/command.d.ts +15 -0
- package/dist/src/cli-commands/skills/disable/command.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/disable/command.js +56 -0
- package/dist/src/cli-commands/skills/disable/command.js.map +1 -0
- package/dist/src/cli-commands/skills/disable/disable-skill.d.ts +25 -0
- package/dist/src/cli-commands/skills/disable/disable-skill.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/disable/disable-skill.js +101 -0
- package/dist/src/cli-commands/skills/disable/disable-skill.js.map +1 -0
- package/dist/src/cli-commands/skills/disable/handler.d.ts +18 -0
- package/dist/src/cli-commands/skills/disable/handler.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/disable/handler.js +72 -0
- package/dist/src/cli-commands/skills/disable/handler.js.map +1 -0
- package/dist/src/cli-commands/skills/enable/command.d.ts +15 -0
- package/dist/src/cli-commands/skills/enable/command.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/enable/command.js +56 -0
- package/dist/src/cli-commands/skills/enable/command.js.map +1 -0
- package/dist/src/cli-commands/skills/enable/enable-skill.d.ts +26 -0
- package/dist/src/cli-commands/skills/enable/enable-skill.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/enable/enable-skill.js +138 -0
- package/dist/src/cli-commands/skills/enable/enable-skill.js.map +1 -0
- package/dist/src/cli-commands/skills/enable/handler.d.ts +18 -0
- package/dist/src/cli-commands/skills/enable/handler.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/enable/handler.js +72 -0
- package/dist/src/cli-commands/skills/enable/handler.js.map +1 -0
- package/dist/src/cli-commands/skills/fork/handler.d.ts +4 -13
- package/dist/src/cli-commands/skills/fork/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/fork/handler.js +37 -29
- package/dist/src/cli-commands/skills/fork/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/fs-helpers.d.ts +12 -0
- package/dist/src/cli-commands/skills/fs-helpers.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/fs-helpers.js +12 -0
- package/dist/src/cli-commands/skills/fs-helpers.js.map +1 -0
- package/dist/src/cli-commands/skills/install/discover-skills.d.ts +3 -18
- package/dist/src/cli-commands/skills/install/discover-skills.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/install/discover-skills.js +7 -20
- package/dist/src/cli-commands/skills/install/discover-skills.js.map +1 -1
- package/dist/src/cli-commands/skills/install/handler.d.ts +1 -16
- package/dist/src/cli-commands/skills/install/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/install/handler.js +20 -27
- package/dist/src/cli-commands/skills/install/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/install/install-skill.d.ts +1 -1
- package/dist/src/cli-commands/skills/install/install-skill.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/install/install-skill.js +12 -18
- package/dist/src/cli-commands/skills/install/install-skill.js.map +1 -1
- package/dist/src/cli-commands/skills/install/select-skills.d.ts +4 -5
- package/dist/src/cli-commands/skills/install/select-skills.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/install/select-skills.js +13 -13
- package/dist/src/cli-commands/skills/install/select-skills.js.map +1 -1
- package/dist/src/cli-commands/skills/install/skill-utils.d.ts +1 -6
- package/dist/src/cli-commands/skills/install/skill-utils.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/install/skill-utils.js +8 -4
- package/dist/src/cli-commands/skills/install/skill-utils.js.map +1 -1
- package/dist/src/cli-commands/skills/list/handler.d.ts +1 -1
- package/dist/src/cli-commands/skills/list/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/list/handler.js +1 -1
- package/dist/src/cli-commands/skills/list/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/naming.d.ts +17 -0
- package/dist/src/cli-commands/skills/naming.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/naming.js +20 -0
- package/dist/src/cli-commands/skills/naming.js.map +1 -0
- package/dist/src/cli-commands/skills/operations.d.ts +25 -1
- package/dist/src/cli-commands/skills/operations.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/publish/handler.d.ts +1 -10
- package/dist/src/cli-commands/skills/publish/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/publish/handler.js +31 -47
- package/dist/src/cli-commands/skills/publish/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/publish-skill.d.ts +1 -1
- package/dist/src/cli-commands/skills/publish-skill.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/publish-skill.js +37 -52
- package/dist/src/cli-commands/skills/publish-skill.js.map +1 -1
- package/dist/src/cli-commands/skills/rename/command.d.ts +16 -0
- package/dist/src/cli-commands/skills/rename/command.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/rename/command.js +62 -0
- package/dist/src/cli-commands/skills/rename/command.js.map +1 -0
- package/dist/src/cli-commands/skills/rename/handler.d.ts +20 -0
- package/dist/src/cli-commands/skills/rename/handler.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/rename/handler.js +77 -0
- package/dist/src/cli-commands/skills/rename/handler.js.map +1 -0
- package/dist/src/cli-commands/skills/rename/rename-skill.d.ts +25 -0
- package/dist/src/cli-commands/skills/rename/rename-skill.d.ts.map +1 -0
- package/dist/src/cli-commands/skills/rename/rename-skill.js +110 -0
- package/dist/src/cli-commands/skills/rename/rename-skill.js.map +1 -0
- package/dist/src/cli-commands/skills/uninstall/handler.d.ts +1 -1
- package/dist/src/cli-commands/skills/uninstall/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/uninstall/handler.js +12 -1
- package/dist/src/cli-commands/skills/uninstall/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/uninstall/uninstall-skill.d.ts +1 -1
- package/dist/src/cli-commands/skills/uninstall/uninstall-skill.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/uninstall/uninstall-skill.js +14 -23
- package/dist/src/cli-commands/skills/uninstall/uninstall-skill.js.map +1 -1
- package/dist/src/cli-commands/skills/update/build-plan.d.ts +7 -2
- package/dist/src/cli-commands/skills/update/build-plan.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/update/build-plan.js +28 -20
- package/dist/src/cli-commands/skills/update/build-plan.js.map +1 -1
- package/dist/src/cli-commands/skills/update/handler.d.ts +11 -20
- package/dist/src/cli-commands/skills/update/handler.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/update/handler.js +161 -90
- package/dist/src/cli-commands/skills/update/handler.js.map +1 -1
- package/dist/src/cli-commands/skills/utils.d.ts +2 -16
- package/dist/src/cli-commands/skills/utils.d.ts.map +1 -1
- package/dist/src/cli-commands/skills/utils.js +36 -20
- package/dist/src/cli-commands/skills/utils.js.map +1 -1
- package/dist/src/cli-error/cli-error.d.ts +21 -0
- package/dist/src/cli-error/cli-error.d.ts.map +1 -0
- package/dist/src/cli-error/cli-error.js +12 -0
- package/dist/src/cli-error/cli-error.js.map +1 -0
- package/dist/src/cli-error/index.d.ts +3 -0
- package/dist/src/cli-error/index.d.ts.map +1 -0
- package/dist/src/cli-error/index.js +3 -0
- package/dist/src/cli-error/index.js.map +1 -0
- package/dist/src/cli-error/render.d.ts +4 -0
- package/dist/src/cli-error/render.d.ts.map +1 -0
- package/dist/src/cli-error/render.js +25 -0
- package/dist/src/cli-error/render.js.map +1 -0
- package/dist/src/extensions/skills/index.d.ts +0 -5
- package/dist/src/extensions/skills/index.d.ts.map +1 -1
- package/dist/src/extensions/skills/index.js +1 -4
- package/dist/src/extensions/skills/index.js.map +1 -1
- package/dist/src/extensions/skills/state/index.d.ts +2 -2
- package/dist/src/extensions/skills/state/index.d.ts.map +1 -1
- package/dist/src/extensions/skills/state/index.js +1 -1
- package/dist/src/extensions/skills/state/index.js.map +1 -1
- package/dist/src/extensions/skills/state/pure-functions.d.ts +4 -29
- package/dist/src/extensions/skills/state/pure-functions.d.ts.map +1 -1
- package/dist/src/extensions/skills/state/pure-functions.js +4 -37
- package/dist/src/extensions/skills/state/pure-functions.js.map +1 -1
- package/dist/src/extensions/skills/state/types.d.ts +0 -1
- package/dist/src/extensions/skills/state/types.d.ts.map +1 -1
- package/dist/src/extensions/skills/state/types.js.map +1 -1
- package/dist/src/extensions/skills/types.d.ts +0 -40
- package/dist/src/extensions/skills/types.d.ts.map +1 -1
- package/dist/src/extensions/skills/types.js +0 -1
- package/dist/src/extensions/skills/types.js.map +1 -1
- package/dist/src/git/errors.d.ts +1 -2
- package/dist/src/git/errors.d.ts.map +1 -1
- package/dist/src/git/errors.js +0 -1
- package/dist/src/git/errors.js.map +1 -1
- package/dist/src/git/index.d.ts +0 -1
- package/dist/src/git/index.d.ts.map +1 -1
- package/dist/src/git/index.js +0 -1
- package/dist/src/git/index.js.map +1 -1
- package/dist/src/git/operations.d.ts +7 -7
- package/dist/src/git/operations.d.ts.map +1 -1
- package/dist/src/git/operations.js +22 -19
- package/dist/src/git/operations.js.map +1 -1
- package/dist/src/lockfile/index.d.ts +1 -2
- package/dist/src/lockfile/index.d.ts.map +1 -1
- package/dist/src/lockfile/index.js +2 -1
- package/dist/src/lockfile/index.js.map +1 -1
- package/dist/src/lockfile/lockfile.d.ts +77 -51
- package/dist/src/lockfile/lockfile.d.ts.map +1 -1
- package/dist/src/lockfile/lockfile.js +27 -51
- package/dist/src/lockfile/lockfile.js.map +1 -1
- package/dist/src/resolution/index.d.ts +0 -1
- package/dist/src/resolution/index.d.ts.map +1 -1
- package/dist/src/resolution/index.js +0 -2
- package/dist/src/resolution/index.js.map +1 -1
- package/dist/src/resolution/resolver.d.ts +2 -2
- package/dist/src/resolution/resolver.d.ts.map +1 -1
- package/dist/src/resolution/resolver.js +1 -1
- package/dist/src/resolution/resolver.js.map +1 -1
- package/dist/src/resolution/resolvers/ambiguous.js +1 -1
- package/dist/src/resolution/resolvers/ambiguous.js.map +1 -1
- package/dist/src/resolution/resolvers/axm-name.d.ts.map +1 -1
- package/dist/src/resolution/resolvers/axm-name.js +1 -1
- package/dist/src/resolution/resolvers/axm-name.js.map +1 -1
- package/dist/src/resolution/resolvers/bare-name.js +1 -1
- package/dist/src/resolution/resolvers/bare-name.js.map +1 -1
- package/dist/src/resolution/resolvers/explicit-source.d.ts.map +1 -1
- package/dist/src/resolution/resolvers/explicit-source.js +1 -1
- package/dist/src/resolution/resolvers/explicit-source.js.map +1 -1
- package/dist/src/resolution/resolvers/local-path.d.ts.map +1 -1
- package/dist/src/resolution/resolvers/local-path.js +1 -1
- package/dist/src/resolution/resolvers/local-path.js.map +1 -1
- package/dist/src/resolution/resolvers/url.d.ts.map +1 -1
- package/dist/src/resolution/resolvers/url.js +1 -1
- package/dist/src/resolution/resolvers/url.js.map +1 -1
- package/dist/src/runtime/error-handling.d.ts +10 -0
- package/dist/src/runtime/error-handling.d.ts.map +1 -0
- package/dist/src/runtime/error-handling.js +10 -0
- package/dist/src/runtime/error-handling.js.map +1 -0
- package/dist/src/runtime/index.d.ts +5 -4
- package/dist/src/runtime/index.d.ts.map +1 -1
- package/dist/src/runtime/index.js +11 -4
- package/dist/src/runtime/index.js.map +1 -1
- package/dist/src/settings/format-preserving-json.d.ts +1 -2
- package/dist/src/settings/format-preserving-json.d.ts.map +1 -1
- package/dist/src/settings/format-preserving-json.js +7 -7
- package/dist/src/settings/format-preserving-json.js.map +1 -1
- package/dist/src/settings/index.d.ts +5 -4
- package/dist/src/settings/index.d.ts.map +1 -1
- package/dist/src/settings/index.js +4 -2
- package/dist/src/settings/index.js.map +1 -1
- package/dist/src/settings/schema.d.ts +48 -8
- package/dist/src/settings/schema.d.ts.map +1 -1
- package/dist/src/settings/schema.js +26 -7
- package/dist/src/settings/schema.js.map +1 -1
- package/dist/src/settings/settings.d.ts +10 -52
- package/dist/src/settings/settings.d.ts.map +1 -1
- package/dist/src/settings/settings.js +22 -48
- package/dist/src/settings/settings.js.map +1 -1
- package/dist/src/settings/skill-entry.d.ts +44 -0
- package/dist/src/settings/skill-entry.d.ts.map +1 -0
- package/dist/src/settings/skill-entry.js +58 -0
- package/dist/src/settings/skill-entry.js.map +1 -0
- package/dist/src/sources/azurerepos/repo-exists.d.ts +2 -2
- package/dist/src/sources/azurerepos/repo-exists.d.ts.map +1 -1
- package/dist/src/sources/azurerepos/repo-exists.js +9 -7
- package/dist/src/sources/azurerepos/repo-exists.js.map +1 -1
- package/dist/src/sources/azurerepos/scp.d.ts +1 -2
- package/dist/src/sources/azurerepos/scp.d.ts.map +1 -1
- package/dist/src/sources/azurerepos/scp.js +6 -2
- package/dist/src/sources/azurerepos/scp.js.map +1 -1
- package/dist/src/sources/azurerepos/url.d.ts +1 -2
- package/dist/src/sources/azurerepos/url.d.ts.map +1 -1
- package/dist/src/sources/azurerepos/url.js +11 -3
- package/dist/src/sources/azurerepos/url.js.map +1 -1
- package/dist/src/sources/bitbucket/resolve-repo.d.ts +2 -2
- package/dist/src/sources/bitbucket/resolve-repo.d.ts.map +1 -1
- package/dist/src/sources/bitbucket/resolve-repo.js +5 -4
- package/dist/src/sources/bitbucket/resolve-repo.js.map +1 -1
- package/dist/src/sources/bitbucket/scp.d.ts +1 -2
- package/dist/src/sources/bitbucket/scp.d.ts.map +1 -1
- package/dist/src/sources/bitbucket/scp.js +6 -2
- package/dist/src/sources/bitbucket/scp.js.map +1 -1
- package/dist/src/sources/bitbucket/shorthand.d.ts +1 -1
- package/dist/src/sources/bitbucket/shorthand.d.ts.map +1 -1
- package/dist/src/sources/bitbucket/url.d.ts +1 -2
- package/dist/src/sources/bitbucket/url.d.ts.map +1 -1
- package/dist/src/sources/bitbucket/url.js +11 -3
- package/dist/src/sources/bitbucket/url.js.map +1 -1
- package/dist/src/sources/clone-url.d.ts +3 -4
- package/dist/src/sources/clone-url.d.ts.map +1 -1
- package/dist/src/sources/clone-url.js +6 -6
- package/dist/src/sources/clone-url.js.map +1 -1
- package/dist/src/sources/github/api.d.ts +3 -21
- package/dist/src/sources/github/api.d.ts.map +1 -1
- package/dist/src/sources/github/api.js +16 -28
- package/dist/src/sources/github/api.js.map +1 -1
- package/dist/src/sources/github/index.d.ts +1 -1
- package/dist/src/sources/github/index.d.ts.map +1 -1
- package/dist/src/sources/github/index.js +1 -1
- package/dist/src/sources/github/index.js.map +1 -1
- package/dist/src/sources/github/resolve-repo.d.ts +2 -2
- package/dist/src/sources/github/resolve-repo.d.ts.map +1 -1
- package/dist/src/sources/github/resolve-repo.js +5 -4
- package/dist/src/sources/github/resolve-repo.js.map +1 -1
- package/dist/src/sources/github/scp.d.ts +1 -2
- package/dist/src/sources/github/scp.d.ts.map +1 -1
- package/dist/src/sources/github/scp.js +6 -2
- package/dist/src/sources/github/scp.js.map +1 -1
- package/dist/src/sources/github/shorthand.d.ts +1 -1
- package/dist/src/sources/github/shorthand.d.ts.map +1 -1
- package/dist/src/sources/github/url.d.ts +1 -2
- package/dist/src/sources/github/url.d.ts.map +1 -1
- package/dist/src/sources/github/url.js +11 -3
- package/dist/src/sources/github/url.js.map +1 -1
- package/dist/src/sources/gitlab/resolve-repo.d.ts +2 -2
- package/dist/src/sources/gitlab/resolve-repo.d.ts.map +1 -1
- package/dist/src/sources/gitlab/resolve-repo.js +5 -4
- package/dist/src/sources/gitlab/resolve-repo.js.map +1 -1
- package/dist/src/sources/gitlab/scp.d.ts +1 -2
- package/dist/src/sources/gitlab/scp.d.ts.map +1 -1
- package/dist/src/sources/gitlab/scp.js +6 -2
- package/dist/src/sources/gitlab/scp.js.map +1 -1
- package/dist/src/sources/gitlab/shorthand.d.ts +1 -1
- package/dist/src/sources/gitlab/shorthand.d.ts.map +1 -1
- package/dist/src/sources/gitlab/url.d.ts +1 -2
- package/dist/src/sources/gitlab/url.d.ts.map +1 -1
- package/dist/src/sources/gitlab/url.js +11 -3
- package/dist/src/sources/gitlab/url.js.map +1 -1
- package/dist/src/sources/index.d.ts +0 -4
- package/dist/src/sources/index.d.ts.map +1 -1
- package/dist/src/sources/index.js +2 -3
- package/dist/src/sources/index.js.map +1 -1
- package/dist/src/sources/local/parser.d.ts +2 -2
- package/dist/src/sources/local/parser.d.ts.map +1 -1
- package/dist/src/sources/local/parser.js.map +1 -1
- package/dist/src/sources/parse-provider-shorthand.d.ts +2 -3
- package/dist/src/sources/parse-provider-shorthand.d.ts.map +1 -1
- package/dist/src/sources/parse-provider-shorthand.js +7 -3
- package/dist/src/sources/parse-provider-shorthand.js.map +1 -1
- package/dist/src/sources/provider.d.ts +5 -44
- package/dist/src/sources/provider.d.ts.map +1 -1
- package/dist/src/sources/provider.js +12 -26
- package/dist/src/sources/provider.js.map +1 -1
- package/dist/src/sources/providers/azurerepos.js +7 -7
- package/dist/src/sources/providers/azurerepos.js.map +1 -1
- package/dist/src/sources/providers/git-hosting.d.ts +3 -3
- package/dist/src/sources/providers/git-hosting.d.ts.map +1 -1
- package/dist/src/sources/providers/git-hosting.js +14 -33
- package/dist/src/sources/providers/git-hosting.js.map +1 -1
- package/dist/src/sources/providers/git.js +7 -7
- package/dist/src/sources/providers/git.js.map +1 -1
- package/dist/src/sources/providers/local.d.ts.map +1 -1
- package/dist/src/sources/providers/local.js +7 -18
- package/dist/src/sources/providers/local.js.map +1 -1
- package/dist/src/sources/providers/registry.d.ts +5 -5
- package/dist/src/sources/providers/registry.d.ts.map +1 -1
- package/dist/src/sources/providers/registry.js +136 -92
- package/dist/src/sources/providers/registry.js.map +1 -1
- package/dist/src/sources/registry-guard.d.ts +2 -3
- package/dist/src/sources/registry-guard.d.ts.map +1 -1
- package/dist/src/sources/registry-guard.js +8 -6
- package/dist/src/sources/registry-guard.js.map +1 -1
- package/dist/src/sources/resolve-source.d.ts +3 -3
- package/dist/src/sources/resolve-source.d.ts.map +1 -1
- package/dist/src/sources/resolve-source.js +83 -49
- package/dist/src/sources/resolve-source.js.map +1 -1
- package/dist/src/sources/service.d.ts +3 -4
- package/dist/src/sources/service.d.ts.map +1 -1
- package/dist/src/sources/service.js +8 -5
- package/dist/src/sources/service.js.map +1 -1
- package/dist/src/tui/confirm/service.d.ts +2 -2
- package/dist/src/tui/confirm/service.d.ts.map +1 -1
- package/dist/src/tui/confirm/service.js.map +1 -1
- package/dist/src/tui/errors.d.ts +0 -9
- package/dist/src/tui/errors.d.ts.map +1 -1
- package/dist/src/tui/errors.js +0 -2
- package/dist/src/tui/errors.js.map +1 -1
- package/dist/src/tui/index.d.ts +1 -1
- package/dist/src/tui/index.d.ts.map +1 -1
- package/dist/src/tui/index.js +1 -1
- package/dist/src/tui/index.js.map +1 -1
- package/dist/src/tui/multiselect/service.d.ts +3 -2
- package/dist/src/tui/multiselect/service.d.ts.map +1 -1
- package/dist/src/tui/multiselect/service.js +7 -5
- package/dist/src/tui/multiselect/service.js.map +1 -1
- package/dist/src/tui/password-input/service.d.ts +3 -2
- package/dist/src/tui/password-input/service.d.ts.map +1 -1
- package/dist/src/tui/password-input/service.js +7 -5
- package/dist/src/tui/password-input/service.js.map +1 -1
- package/dist/src/tui/select/service.d.ts +3 -2
- package/dist/src/tui/select/service.d.ts.map +1 -1
- package/dist/src/tui/select/service.js +5 -5
- package/dist/src/tui/select/service.js.map +1 -1
- package/dist/src/tui/spinner/index.d.ts +1 -1
- package/dist/src/tui/spinner/index.d.ts.map +1 -1
- package/dist/src/tui/spinner/service.d.ts +1 -5
- package/dist/src/tui/spinner/service.d.ts.map +1 -1
- package/dist/src/tui/spinner/service.js +25 -12
- package/dist/src/tui/spinner/service.js.map +1 -1
- package/dist/src/tui/spinner/test.d.ts +3 -0
- package/dist/src/tui/spinner/test.d.ts.map +1 -1
- package/dist/src/tui/spinner/test.js +9 -0
- package/dist/src/tui/spinner/test.js.map +1 -1
- package/dist/src/tui/spinner/types.d.ts +5 -0
- package/dist/src/tui/spinner/types.d.ts.map +1 -1
- package/dist/src/tui/text-input/service.d.ts +2 -2
- package/dist/src/tui/text-input/service.d.ts.map +1 -1
- package/dist/src/tui/text-input/service.js.map +1 -1
- package/dist/src/utils/create-symlink.d.ts +1 -14
- package/dist/src/utils/create-symlink.d.ts.map +1 -1
- package/dist/src/utils/create-symlink.js +17 -15
- package/dist/src/utils/create-symlink.js.map +1 -1
- package/dist/src/utils/index.d.ts +1 -2
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -2
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/workspace/apply-plan.d.ts +5 -17
- package/dist/src/workspace/apply-plan.d.ts.map +1 -1
- package/dist/src/workspace/apply-plan.js +3 -12
- package/dist/src/workspace/apply-plan.js.map +1 -1
- package/dist/src/workspace/ensure-agents.d.ts +2 -15
- package/dist/src/workspace/ensure-agents.d.ts.map +1 -1
- package/dist/src/workspace/ensure-agents.js +7 -15
- package/dist/src/workspace/ensure-agents.js.map +1 -1
- package/dist/src/workspace/errors.d.ts +1 -1
- package/dist/src/workspace/errors.d.ts.map +1 -1
- package/dist/src/workspace/index.d.ts +1 -2
- package/dist/src/workspace/index.d.ts.map +1 -1
- package/dist/src/workspace/index.js +1 -2
- package/dist/src/workspace/index.js.map +1 -1
- package/dist/src/workspace/service.d.ts +31 -24
- package/dist/src/workspace/service.d.ts.map +1 -1
- package/dist/src/workspace/service.js +110 -81
- package/dist/src/workspace/service.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rename command handler - Effect-based orchestration for `axm skills rename`.
|
|
3
|
+
*
|
|
4
|
+
* Validates skill state then builds and resolves a single-step plan.
|
|
5
|
+
*
|
|
6
|
+
* @experimental This API is unstable and may change without notice.
|
|
7
|
+
*/
|
|
8
|
+
import * as Effect from "effect/Effect";
|
|
9
|
+
import * as Option from "effect/Option";
|
|
10
|
+
import { makeCliError } from "../../../cli-error/index.js";
|
|
11
|
+
import { Log } from "../../../tui/index.js";
|
|
12
|
+
import { Workspace } from "../../../workspace/index.js";
|
|
13
|
+
import { renameSkill } from "./rename-skill.js";
|
|
14
|
+
// -----------------------------------------------------------------------------
|
|
15
|
+
// Main Handler
|
|
16
|
+
// -----------------------------------------------------------------------------
|
|
17
|
+
export const handleRename = (args) => Effect.gen(function* () {
|
|
18
|
+
const ws = yield* Workspace;
|
|
19
|
+
const log = yield* Log;
|
|
20
|
+
yield* log.info("axm skills rename");
|
|
21
|
+
// Load configured skills
|
|
22
|
+
const configuredSkills = yield* ws.getConfiguredSkills();
|
|
23
|
+
const entry = configuredSkills[args.oldName];
|
|
24
|
+
// Validate: old name exists
|
|
25
|
+
if (entry === undefined) {
|
|
26
|
+
return yield* makeCliError({
|
|
27
|
+
code: "SKILL_NOT_FOUND",
|
|
28
|
+
what: `Skill '${args.oldName}' not found`,
|
|
29
|
+
howToFix: "Run `axm skills list` to see available skills",
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
// Validate: skill is managed
|
|
33
|
+
if (!entry.managed) {
|
|
34
|
+
return yield* makeCliError({
|
|
35
|
+
code: "SKILL_NOT_MANAGED",
|
|
36
|
+
what: `Cannot rename unmanaged skill '${args.oldName}'`,
|
|
37
|
+
howToFix: "Only managed skills (installed via axm) can be renamed",
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
// Validate: new name doesn't conflict
|
|
41
|
+
if (configuredSkills[args.newName] !== undefined) {
|
|
42
|
+
return yield* makeCliError({
|
|
43
|
+
code: "SKILL_NAME_CONFLICT",
|
|
44
|
+
what: `Skill '${args.newName}' already exists`,
|
|
45
|
+
howToFix: "Choose a different name or uninstall the existing skill first",
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
// Build operation
|
|
49
|
+
const op = {
|
|
50
|
+
name: "rename-skill",
|
|
51
|
+
args: { oldName: args.oldName, newName: args.newName },
|
|
52
|
+
};
|
|
53
|
+
// Build single-step plan
|
|
54
|
+
const plan = {
|
|
55
|
+
name: "Rename skill",
|
|
56
|
+
description: Option.some(`Rename ${args.oldName} to ${args.newName}`),
|
|
57
|
+
jobs: [
|
|
58
|
+
{
|
|
59
|
+
concurrency: 1,
|
|
60
|
+
steps: [
|
|
61
|
+
{
|
|
62
|
+
_tag: "PlannedJobStep",
|
|
63
|
+
operation: op,
|
|
64
|
+
expectedResult: {
|
|
65
|
+
result: "success",
|
|
66
|
+
message: `Renamed ${args.oldName} to ${args.newName}`,
|
|
67
|
+
},
|
|
68
|
+
label: `${args.oldName} -> ${args.newName}`,
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
};
|
|
74
|
+
yield* ws.resolvePlan(plan, { "rename-skill": renameSkill });
|
|
75
|
+
yield* log.success("Done");
|
|
76
|
+
}).pipe(Effect.withSpan("Rename.handle"));
|
|
77
|
+
//# sourceMappingURL=handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/rename/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rename skill executor — renames files and updates settings/lockfile keys.
|
|
3
|
+
*
|
|
4
|
+
* Pipeline: read state → rename canonical dir → remove old symlinks →
|
|
5
|
+
* create new symlinks → rename settings/lockfile keys → sync lock agents.
|
|
6
|
+
*
|
|
7
|
+
* @experimental This API is unstable and may change without notice.
|
|
8
|
+
*/
|
|
9
|
+
import * as FileSystem from "@effect/platform/FileSystem";
|
|
10
|
+
import * as Path from "@effect/platform/Path";
|
|
11
|
+
import type { OperationHandler } from "../../../workspace/apply-plan.js";
|
|
12
|
+
import { Workspace } from "../../../workspace/service.js";
|
|
13
|
+
import type { RenameSkillOperation } from "../operations.js";
|
|
14
|
+
/**
|
|
15
|
+
* Rename-skill operation handler.
|
|
16
|
+
*
|
|
17
|
+
* 1. Read configured agents, lock entry, settings entry (all by old name)
|
|
18
|
+
* 2. Rename canonical directory (old -> new)
|
|
19
|
+
* 3. Remove old agent symlinks
|
|
20
|
+
* 4. Create new agent symlinks
|
|
21
|
+
* 5. Rename settings/lockfile keys
|
|
22
|
+
* 6. Sync lock agents
|
|
23
|
+
*/
|
|
24
|
+
export declare const renameSkill: OperationHandler<RenameSkillOperation, FileSystem.FileSystem | Path.Path | Workspace>;
|
|
25
|
+
//# sourceMappingURL=rename-skill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rename-skill.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/rename/rename-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAO9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAO7D;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,gBAAgB,CACxC,oBAAoB,EACpB,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,CA+G3C,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rename skill executor — renames files and updates settings/lockfile keys.
|
|
3
|
+
*
|
|
4
|
+
* Pipeline: read state → rename canonical dir → remove old symlinks →
|
|
5
|
+
* create new symlinks → rename settings/lockfile keys → sync lock agents.
|
|
6
|
+
*
|
|
7
|
+
* @experimental This API is unstable and may change without notice.
|
|
8
|
+
*/
|
|
9
|
+
import * as FileSystem from "@effect/platform/FileSystem";
|
|
10
|
+
import * as Path from "@effect/platform/Path";
|
|
11
|
+
import * as Effect from "effect/Effect";
|
|
12
|
+
import * as Option from "effect/Option";
|
|
13
|
+
import { getAgentById } from "../../../agents/registry.js";
|
|
14
|
+
import { makeCliError } from "../../../cli-error/index.js";
|
|
15
|
+
import { createSymlink } from "../../../utils/create-symlink.js";
|
|
16
|
+
import { copySkillDirectory } from "../copy-skill-directory.js";
|
|
17
|
+
import { Workspace } from "../../../workspace/service.js";
|
|
18
|
+
import { CANONICAL_SKILLS_DIR } from "../constants.js";
|
|
19
|
+
import { sanitizeName } from "../install/skill-utils.js";
|
|
20
|
+
// -----------------------------------------------------------------------------
|
|
21
|
+
// Public API
|
|
22
|
+
// -----------------------------------------------------------------------------
|
|
23
|
+
/**
|
|
24
|
+
* Rename-skill operation handler.
|
|
25
|
+
*
|
|
26
|
+
* 1. Read configured agents, lock entry, settings entry (all by old name)
|
|
27
|
+
* 2. Rename canonical directory (old -> new)
|
|
28
|
+
* 3. Remove old agent symlinks
|
|
29
|
+
* 4. Create new agent symlinks
|
|
30
|
+
* 5. Rename settings/lockfile keys
|
|
31
|
+
* 6. Sync lock agents
|
|
32
|
+
*/
|
|
33
|
+
export const renameSkill = (op) => Effect.gen(function* () {
|
|
34
|
+
const fs = yield* FileSystem.FileSystem;
|
|
35
|
+
const path = yield* Path.Path;
|
|
36
|
+
const ws = yield* Workspace;
|
|
37
|
+
const axmDir = ws.path;
|
|
38
|
+
const base = path.dirname(axmDir);
|
|
39
|
+
const oldSanitized = sanitizeName(op.args.oldName);
|
|
40
|
+
const newSanitized = sanitizeName(op.args.newName);
|
|
41
|
+
// 1. Read workspace state
|
|
42
|
+
const configuredAgents = yield* ws.getConfiguredAgents();
|
|
43
|
+
const lockEntryOption = yield* ws.getLockedSkill(op.args.oldName).pipe(Effect.mapError((e) => makeCliError({
|
|
44
|
+
code: "RENAME_SKILL_LOCKFILE_READ_FAILED",
|
|
45
|
+
what: `Failed to read lockfile: ${e.what}`,
|
|
46
|
+
cause: e,
|
|
47
|
+
})));
|
|
48
|
+
if (Option.isNone(lockEntryOption)) {
|
|
49
|
+
return yield* makeCliError({
|
|
50
|
+
code: "RENAME_SKILL_NOT_FOUND",
|
|
51
|
+
what: `Lock entry for "${op.args.oldName}" not found in lockfile`,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
const lockEntry = lockEntryOption.value;
|
|
55
|
+
const lockAgents = lockEntry.agents;
|
|
56
|
+
// 2. Rename canonical directory — files before state
|
|
57
|
+
const oldCanonical = path.join(base, CANONICAL_SKILLS_DIR, oldSanitized);
|
|
58
|
+
const newCanonical = path.join(base, CANONICAL_SKILLS_DIR, newSanitized);
|
|
59
|
+
yield* fs.rename(oldCanonical, newCanonical).pipe(Effect.mapError((e) => makeCliError({
|
|
60
|
+
code: "RENAME_SKILL_DIR_FAILED",
|
|
61
|
+
what: `Failed to rename skill directory from "${oldSanitized}" to "${newSanitized}"`,
|
|
62
|
+
cause: e,
|
|
63
|
+
})));
|
|
64
|
+
// Content path for symlinks (non-registry sources: same as canonical)
|
|
65
|
+
const contentPath = newCanonical;
|
|
66
|
+
// 3. Remove old agent symlinks (concurrent)
|
|
67
|
+
const allAgents = [...new Set([...lockAgents, ...configuredAgents])];
|
|
68
|
+
yield* Effect.forEach(allAgents, (agentId) => {
|
|
69
|
+
const maybeAgent = getAgentById(agentId);
|
|
70
|
+
if (Option.isNone(maybeAgent))
|
|
71
|
+
return Effect.void;
|
|
72
|
+
const agent = maybeAgent.value;
|
|
73
|
+
// Self-reference detection
|
|
74
|
+
const agentSkillsDir = path.resolve(base, agent.skills.dir);
|
|
75
|
+
const canonicalSkillsDir = path.resolve(base, CANONICAL_SKILLS_DIR);
|
|
76
|
+
if (agentSkillsDir === canonicalSkillsDir)
|
|
77
|
+
return Effect.void;
|
|
78
|
+
const agentSkillPath = path.join(base, agent.skills.dir, oldSanitized);
|
|
79
|
+
return fs
|
|
80
|
+
.remove(agentSkillPath, { recursive: true })
|
|
81
|
+
.pipe(Effect.catchAll(() => Effect.void));
|
|
82
|
+
}, { concurrency: "unbounded" });
|
|
83
|
+
// 4. Create new agent symlinks (concurrent)
|
|
84
|
+
yield* Effect.forEach(configuredAgents, (agentId) => {
|
|
85
|
+
const maybeAgent = getAgentById(agentId);
|
|
86
|
+
if (Option.isNone(maybeAgent))
|
|
87
|
+
return Effect.void;
|
|
88
|
+
const agent = maybeAgent.value;
|
|
89
|
+
// Self-reference detection
|
|
90
|
+
const agentSkillsDir = path.resolve(base, agent.skills.dir);
|
|
91
|
+
const canonicalSkillsDir = path.resolve(base, CANONICAL_SKILLS_DIR);
|
|
92
|
+
if (agentSkillsDir === canonicalSkillsDir)
|
|
93
|
+
return Effect.void;
|
|
94
|
+
const agentSkillPath = path.join(base, agent.skills.dir, newSanitized);
|
|
95
|
+
return createSymlink({ target: contentPath, link: agentSkillPath }).pipe(Effect.catchAll(() => copySkillDirectory(contentPath, agentSkillPath).pipe(Effect.catchAll(() => Effect.void))));
|
|
96
|
+
}, { concurrency: "unbounded" });
|
|
97
|
+
// 5. Rename settings/lockfile keys — state after files
|
|
98
|
+
yield* ws
|
|
99
|
+
.renameSkill(op.args.oldName, op.args.newName)
|
|
100
|
+
.pipe(Effect.catchAll(() => Effect.void));
|
|
101
|
+
// 6. Sync lock agents
|
|
102
|
+
yield* ws
|
|
103
|
+
.updateLockEntryAgents(op.args.newName, configuredAgents)
|
|
104
|
+
.pipe(Effect.catchAll(() => Effect.void));
|
|
105
|
+
return {
|
|
106
|
+
result: "success",
|
|
107
|
+
message: `Renamed ${op.args.oldName} to ${op.args.newName}`,
|
|
108
|
+
};
|
|
109
|
+
});
|
|
110
|
+
//# sourceMappingURL=rename-skill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rename-skill.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/rename/rename-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGhE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,gFAAgF;AAChF,aAAa;AACb,gFAAgF;AAEhF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAGpB,CAAC,EAAE,EAAE,EAAE,CACT,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC;IACvB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAElC,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,0BAA0B;IAC1B,MAAM,gBAAgB,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC;IAEzD,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CACpE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,YAAY,CAAC;QACX,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE,4BAA4B,CAAC,CAAC,IAAI,EAAE;QAC1C,KAAK,EAAE,CAAC;KACT,CAAC,CACH,CACF,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,CAAC,YAAY,CAAC;YACzB,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE,mBAAmB,EAAE,CAAC,IAAI,CAAC,OAAO,yBAAyB;SAClE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC;IACxC,MAAM,UAAU,GAAsB,SAAS,CAAC,MAAM,CAAC;IAEvD,qDAAqD;IACrD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC;IAEzE,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,IAAI,CAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,YAAY,CAAC;QACX,IAAI,EAAE,yBAAyB;QAC/B,IAAI,EAAE,0CAA0C,YAAY,SAAS,YAAY,GAAG;QACpF,KAAK,EAAE,CAAC;KACT,CAAC,CACH,CACF,CAAC;IAEF,sEAAsE;IACtE,MAAM,WAAW,GAAG,YAAY,CAAC;IAEjC,4CAA4C;IAC5C,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,SAAS,EACT,CAAC,OAAO,EAAE,EAAE;QACV,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAE/B,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACpE,IAAI,cAAc,KAAK,kBAAkB;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QAE9D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACvE,OAAO,EAAE;aACN,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;aAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC;IAEF,4CAA4C;IAC5C,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACnB,gBAAgB,EAChB,CAAC,OAAO,EAAE,EAAE;QACV,MAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QAClD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAE/B,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACpE,IAAI,cAAc,KAAK,kBAAkB;YAAE,OAAO,MAAM,CAAC,IAAI,CAAC;QAE9D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACvE,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,IAAI,CACtE,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CACnB,kBAAkB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,IAAI,CAClD,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CACnC,CACF,CACF,CAAC;IACJ,CAAC,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAC;IAEF,uDAAuD;IACvD,KAAK,CAAC,CAAC,EAAE;SACN,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;SAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5C,sBAAsB;IACtB,KAAK,CAAC,CAAC,EAAE;SACN,qBAAqB,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC;SACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5C,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE;KAClC,CAAC;AAC9B,CAAC,CAAC,CAAC"}
|
|
@@ -36,5 +36,5 @@ export interface UninstallHandlerArgs {
|
|
|
36
36
|
*
|
|
37
37
|
* @experimental This API is unstable and may change without notice.
|
|
38
38
|
*/
|
|
39
|
-
export declare const handleUninstall: (args: UninstallHandlerArgs) => Effect.Effect<void, import("../../../tui/errors.js").
|
|
39
|
+
export declare const handleUninstall: (args: UninstallHandlerArgs) => Effect.Effect<void, import("../../../tui/errors.js").PromptCancelled | import("../../../cli-error/cli-error.js").CliError, import("../../../tui/index.js").Confirm | Log | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | Workspace>;
|
|
40
40
|
//# sourceMappingURL=handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAUrE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,yBAAyB;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB;AAMD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAUrE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,yBAAyB;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB;AAMD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,oBAAoB,oRAuDZ,CAAC"}
|
|
@@ -36,6 +36,17 @@ export const handleUninstall = (args) => Effect.gen(function* () {
|
|
|
36
36
|
const ws = yield* Workspace;
|
|
37
37
|
const log = yield* Log;
|
|
38
38
|
yield* log.info("axm skills uninstall");
|
|
39
|
+
// Check if the target is an unmanaged skill (bypass plan system entirely)
|
|
40
|
+
if (!args.skill.includes("*")) {
|
|
41
|
+
const configuredSkills = yield* ws.getConfiguredSkills();
|
|
42
|
+
const entry = configuredSkills[args.skill];
|
|
43
|
+
if (entry !== undefined && !entry.managed) {
|
|
44
|
+
yield* ws.removeSkill(args.skill);
|
|
45
|
+
yield* log.info(`Removed unmanaged skill marker '${args.skill}'`);
|
|
46
|
+
yield* log.success("Done");
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
39
50
|
// Step 1: Load lockfile
|
|
40
51
|
const lockedSkills = yield* ws.getLockedSkills();
|
|
41
52
|
const lockfile = { lockfileVersion: 1, skills: lockedSkills };
|
|
@@ -62,5 +73,5 @@ export const handleUninstall = (args) => Effect.gen(function* () {
|
|
|
62
73
|
// Step 5: Resolve plan via workspace
|
|
63
74
|
yield* ws.resolvePlan(plan, { "uninstall-skill": uninstallSkill });
|
|
64
75
|
yield* log.success("Done");
|
|
65
|
-
});
|
|
76
|
+
}).pipe(Effect.withSpan("Uninstall.handle"));
|
|
66
77
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAkBtD,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAA0B,EAAE,EAAE,CAC5D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;IAEvB,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAExC,wBAAwB;IACxB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAG,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAE9D,8BAA8B;IAC9B,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAExE,mCAAmC;IACnC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAC7D,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IAED,oFAAoF;IACpF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEhE,2BAA2B;IAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CACnB,CAAC,IAAI,EAAE,EAAE,CACP,CAAC;QACC,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE;YACJ,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,KAAK;SACnB;KACF,CAAmC,CACvC,CAAC;IAEF,qBAAqB;IACrB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAE3E,qCAAqC;IACrC,KAAK,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC,CAAC;IAEnE,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import * as FileSystem from "@effect/platform/FileSystem";
|
|
10
10
|
import * as Path from "@effect/platform/Path";
|
|
11
|
-
import {
|
|
11
|
+
import type { OperationHandler } from "../../../workspace/apply-plan.js";
|
|
12
12
|
import { Workspace } from "../../../workspace/service.js";
|
|
13
13
|
import type { UninstallSkillOperation } from "../operations.js";
|
|
14
14
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall-skill.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/uninstall-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"uninstall-skill.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/uninstall-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAK9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AA0FhE;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,gBAAgB,CAC3C,uBAAuB,EACvB,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,CA+G3C,CAAC"}
|
|
@@ -11,21 +11,11 @@ import * as Path from "@effect/platform/Path";
|
|
|
11
11
|
import * as Effect from "effect/Effect";
|
|
12
12
|
import * as Option from "effect/Option";
|
|
13
13
|
import { getAgentById } from "../../../agents/registry.js";
|
|
14
|
-
import {
|
|
14
|
+
import { makeCliError } from "../../../cli-error/index.js";
|
|
15
15
|
import { Workspace } from "../../../workspace/service.js";
|
|
16
|
+
import { CANONICAL_SKILLS_DIR, REGISTRY_EXTENSIONS_DIR } from "../constants.js";
|
|
17
|
+
import { removeIfExists } from "../fs-helpers.js";
|
|
16
18
|
import { sanitizeName } from "../install/skill-utils.js";
|
|
17
|
-
// -----------------------------------------------------------------------------
|
|
18
|
-
// Constants
|
|
19
|
-
// -----------------------------------------------------------------------------
|
|
20
|
-
const CANONICAL_SKILLS_DIR = ".agents/skills";
|
|
21
|
-
const REGISTRY_EXTENSIONS_DIR = ".axm/extensions";
|
|
22
|
-
// -----------------------------------------------------------------------------
|
|
23
|
-
// Helpers
|
|
24
|
-
// -----------------------------------------------------------------------------
|
|
25
|
-
/**
|
|
26
|
-
* Remove a directory if it exists, ignoring errors.
|
|
27
|
-
*/
|
|
28
|
-
const removeIfExists = (fsService, dirPath) => fsService.exists(dirPath).pipe(Effect.catchAll(() => Effect.succeed(false)), Effect.flatMap((exists) => exists ? fsService.remove(dirPath, { recursive: true }).pipe(Effect.ignore) : Effect.void));
|
|
29
19
|
/**
|
|
30
20
|
* Remove a skill from ALL known canonical locations.
|
|
31
21
|
*
|
|
@@ -102,9 +92,9 @@ export const uninstallSkill = (op) => Effect.gen(function* () {
|
|
|
102
92
|
const base = path.dirname(axmDir);
|
|
103
93
|
const sanitizedName = sanitizeName(op.args.skillName);
|
|
104
94
|
// Read lockfile entry for this skill via Workspace
|
|
105
|
-
const lockEntryOption = yield* ws.getLockedSkill(op.args.skillName).pipe(Effect.mapError((e) =>
|
|
106
|
-
|
|
107
|
-
|
|
95
|
+
const lockEntryOption = yield* ws.getLockedSkill(op.args.skillName).pipe(Effect.mapError((e) => makeCliError({
|
|
96
|
+
code: "UNINSTALL_SKILL_LOCKFILE_READ_FAILED",
|
|
97
|
+
what: `Failed to read lockfile: ${e.what}`,
|
|
108
98
|
cause: e,
|
|
109
99
|
})));
|
|
110
100
|
const lockEntry = Option.getOrUndefined(lockEntryOption);
|
|
@@ -139,20 +129,21 @@ export const uninstallSkill = (op) => Effect.gen(function* () {
|
|
|
139
129
|
const remainingAgents = lockAgents.filter((a) => !agentFilter.includes(a));
|
|
140
130
|
if (remainingAgents.length > 0) {
|
|
141
131
|
// Update lockfile entry with remaining agents via Workspace.setSkill
|
|
142
|
-
const installedSkills = yield* ws.getInstalledSkills().pipe(Effect.mapError((e) =>
|
|
143
|
-
|
|
144
|
-
|
|
132
|
+
const installedSkills = yield* ws.getInstalledSkills().pipe(Effect.mapError((e) => makeCliError({
|
|
133
|
+
code: "UNINSTALL_SKILL_SETTINGS_READ_FAILED",
|
|
134
|
+
what: `Failed to read settings: ${e.what}`,
|
|
145
135
|
cause: e,
|
|
146
136
|
})));
|
|
147
|
-
const
|
|
137
|
+
const entry = installedSkills[op.args.skillName];
|
|
138
|
+
const currentSource = (entry !== undefined ? Option.getOrUndefined(entry.source) : undefined) ?? lockEntry.type;
|
|
148
139
|
yield* ws
|
|
149
140
|
.setSkill(op.args.skillName, currentSource, {
|
|
150
141
|
...lockEntry,
|
|
151
142
|
agents: remainingAgents,
|
|
152
143
|
})
|
|
153
|
-
.pipe(Effect.mapError((e) =>
|
|
154
|
-
|
|
155
|
-
|
|
144
|
+
.pipe(Effect.mapError((e) => makeCliError({
|
|
145
|
+
code: "UNINSTALL_SKILL_LOCKFILE_WRITE_FAILED",
|
|
146
|
+
what: `Failed to update lockfile: ${e.what}`,
|
|
156
147
|
cause: e,
|
|
157
148
|
})));
|
|
158
149
|
const agentList = [...agentsToRemove].join(", ");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall-skill.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/uninstall-skill.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"uninstall-skill.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/uninstall/uninstall-skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,11 +10,16 @@
|
|
|
10
10
|
import * as Option from "effect/Option";
|
|
11
11
|
import type { Lockfile } from "../../../lockfile/schema.js";
|
|
12
12
|
import type { Plan } from "../../../workspace/plan.js";
|
|
13
|
-
import type { InstallSkillOperation } from "../operations.js";
|
|
13
|
+
import type { InstallSkillOperation, UninstallSkillOperation } from "../operations.js";
|
|
14
|
+
type UpdateOperation = InstallSkillOperation | UninstallSkillOperation;
|
|
14
15
|
/**
|
|
15
16
|
* Build an update plan by comparing operations against lockfile entries.
|
|
16
17
|
*
|
|
18
|
+
* Accepts both install operations (compared against lockfile) and uninstall
|
|
19
|
+
* operations (rename cleanup — always marked as success).
|
|
20
|
+
*
|
|
17
21
|
* Pure function -- no Effect needed.
|
|
18
22
|
*/
|
|
19
|
-
export declare const buildUpdatePlan: (ops: ReadonlyArray<
|
|
23
|
+
export declare const buildUpdatePlan: (ops: ReadonlyArray<UpdateOperation>, lockfile: Lockfile, name: string, description: Option.Option<string>) => Plan<UpdateOperation>;
|
|
24
|
+
export {};
|
|
20
25
|
//# sourceMappingURL=build-plan.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-plan.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/build-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAkB,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"build-plan.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/build-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,6BAA6B,CAAC;AAC5E,OAAO,KAAK,EAAE,IAAI,EAAkB,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAMvF,KAAK,eAAe,GAAG,qBAAqB,GAAG,uBAAuB,CAAC;AA4EvE;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,aAAa,CAAC,eAAe,CAAC,EACnC,UAAU,QAAQ,EAClB,MAAM,MAAM,EACZ,aAAa,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KACjC,IAAI,CAAC,eAAe,CAWrB,CAAC"}
|
|
@@ -41,11 +41,38 @@ const hasChanged = (op, entry) => {
|
|
|
41
41
|
return true;
|
|
42
42
|
};
|
|
43
43
|
// -----------------------------------------------------------------------------
|
|
44
|
+
// Step builders
|
|
45
|
+
// -----------------------------------------------------------------------------
|
|
46
|
+
const buildInstallStep = (op, lockfile) => {
|
|
47
|
+
const entry = lockfile.skills[op.args.skill.name];
|
|
48
|
+
const needsUpdate = !entry || op.args.force || hasChanged(op, entry);
|
|
49
|
+
return {
|
|
50
|
+
_tag: "PlannedJobStep",
|
|
51
|
+
operation: op,
|
|
52
|
+
expectedResult: needsUpdate
|
|
53
|
+
? { result: "success", message: `Updated ${op.args.skill.name}` }
|
|
54
|
+
: { result: "no-op", message: "already up to date" },
|
|
55
|
+
label: op.args.skill.name,
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
const buildUninstallStep = (op) => ({
|
|
59
|
+
_tag: "PlannedJobStep",
|
|
60
|
+
operation: op,
|
|
61
|
+
expectedResult: {
|
|
62
|
+
result: "success",
|
|
63
|
+
message: `Clean up ${op.args.skillName} (renamed)`,
|
|
64
|
+
},
|
|
65
|
+
label: `${op.args.skillName} (renamed)`,
|
|
66
|
+
});
|
|
67
|
+
// -----------------------------------------------------------------------------
|
|
44
68
|
// Plan builder
|
|
45
69
|
// -----------------------------------------------------------------------------
|
|
46
70
|
/**
|
|
47
71
|
* Build an update plan by comparing operations against lockfile entries.
|
|
48
72
|
*
|
|
73
|
+
* Accepts both install operations (compared against lockfile) and uninstall
|
|
74
|
+
* operations (rename cleanup — always marked as success).
|
|
75
|
+
*
|
|
49
76
|
* Pure function -- no Effect needed.
|
|
50
77
|
*/
|
|
51
78
|
export const buildUpdatePlan = (ops, lockfile, name, description) => ({
|
|
@@ -54,26 +81,7 @@ export const buildUpdatePlan = (ops, lockfile, name, description) => ({
|
|
|
54
81
|
jobs: [
|
|
55
82
|
{
|
|
56
83
|
concurrency: "unbounded",
|
|
57
|
-
steps: ops.map((op) =>
|
|
58
|
-
const entry = lockfile.skills[op.args.skill.name];
|
|
59
|
-
const needsUpdate = !entry || op.args.force || hasChanged(op, entry);
|
|
60
|
-
return needsUpdate
|
|
61
|
-
? {
|
|
62
|
-
_tag: "PlannedJobStep",
|
|
63
|
-
operation: op,
|
|
64
|
-
expectedResult: {
|
|
65
|
-
result: "success",
|
|
66
|
-
message: `Updated ${op.args.skill.name}`,
|
|
67
|
-
},
|
|
68
|
-
label: op.args.skill.name,
|
|
69
|
-
}
|
|
70
|
-
: {
|
|
71
|
-
_tag: "PlannedJobStep",
|
|
72
|
-
operation: op,
|
|
73
|
-
expectedResult: { result: "no-op", message: "already up to date" },
|
|
74
|
-
label: op.args.skill.name,
|
|
75
|
-
};
|
|
76
|
-
}),
|
|
84
|
+
steps: ops.map((op) => op.name === "install-skill" ? buildInstallStep(op, lockfile) : buildUninstallStep(op)),
|
|
77
85
|
},
|
|
78
86
|
],
|
|
79
87
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-plan.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/build-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"build-plan.js","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/build-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import * as Effect from "effect/Effect";
|
|
|
11
11
|
import * as Option from "effect/Option";
|
|
12
12
|
import { Log, Spinner } from "../../../tui/index.js";
|
|
13
13
|
import { Workspace } from "../../../workspace/index.js";
|
|
14
|
+
import type { InstallSkillOperation, UninstallSkillOperation } from "../operations.js";
|
|
14
15
|
/**
|
|
15
16
|
* Arguments for the update command.
|
|
16
17
|
*/
|
|
@@ -30,35 +31,25 @@ export interface UpdateHandlerArgs {
|
|
|
30
31
|
/** Disable prompts */
|
|
31
32
|
readonly nonInteractive: Option.Option<boolean>;
|
|
32
33
|
}
|
|
33
|
-
declare const UpdateError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
|
|
34
|
-
readonly _tag: "UpdateError";
|
|
35
|
-
} & Readonly<A>;
|
|
36
|
-
/**
|
|
37
|
-
* Error that occurs during skill update.
|
|
38
|
-
*
|
|
39
|
-
* @experimental This API is unstable and may change without notice.
|
|
40
|
-
*/
|
|
41
|
-
export declare class UpdateError extends UpdateError_base<{
|
|
42
|
-
readonly message: string;
|
|
43
|
-
readonly cause: unknown;
|
|
44
|
-
}> {
|
|
45
|
-
}
|
|
46
34
|
/**
|
|
47
35
|
* Handles the `axm skills update` command.
|
|
48
36
|
*
|
|
49
37
|
* Flow:
|
|
50
|
-
* 1. Load
|
|
51
|
-
* 2. If no skills
|
|
38
|
+
* 1. Load configured skills and filter to managed + enabled
|
|
39
|
+
* 2. If no eligible skills, log info and return
|
|
52
40
|
* 3. Filter by source argument if provided
|
|
53
41
|
* 4. Filter by --skill glob patterns
|
|
54
42
|
* 5. Re-resolve each source string and discover skills
|
|
55
43
|
* 6. Handle re-resolution failures (warn individual, error if all fail)
|
|
56
|
-
* 7.
|
|
57
|
-
* 8. Build
|
|
58
|
-
* 9.
|
|
44
|
+
* 7. Detect renames (skill name not found in source)
|
|
45
|
+
* 8. Build operations with force flag
|
|
46
|
+
* 9. Build update plan
|
|
47
|
+
* 10. Resolve plan via workspace
|
|
59
48
|
*
|
|
60
49
|
* @experimental This API is unstable and may change without notice.
|
|
61
50
|
*/
|
|
62
|
-
export declare const handleUpdate: (args: UpdateHandlerArgs) => Effect.Effect<undefined, import("../../../tui/errors.js").
|
|
63
|
-
|
|
51
|
+
export declare const handleUpdate: (args: UpdateHandlerArgs) => Effect.Effect<undefined, import("../../../tui/errors.js").PromptCancelled | import("../../../cli-error/cli-error.js").CliError, import("../../../tui/index.js").Confirm | Spinner | import("effect/Scope").Scope | SourceProviders | import("../../../workspace/apply-plan.js").ExecutionContext<{
|
|
52
|
+
"install-skill": import("../../../workspace/apply-plan.js").OperationHandler<InstallSkillOperation, Log | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | Workspace>;
|
|
53
|
+
"uninstall-skill": import("../../../workspace/apply-plan.js").OperationHandler<UninstallSkillOperation, import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | Workspace>;
|
|
54
|
+
}>>;
|
|
64
55
|
//# sourceMappingURL=handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEL,eAAe,EAGhB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/cli-commands/skills/update/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEL,eAAe,EAGhB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AASvF;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,2BAA2B;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,yBAAyB;IACzB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,sBAAsB;IACtB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CACjD;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,iBAAiB;;;GA8PnD,CAAC"}
|