feat(install): add neutral local library activation lifecycle#320
Open
ngaurav wants to merge 17 commits into
Open
feat(install): add neutral local library activation lifecycle#320ngaurav wants to merge 17 commits into
ngaurav wants to merge 17 commits into
Conversation
added 10 commits
June 18, 2026 17:42
added 7 commits
June 18, 2026 20:33
Author
|
@luongnv89 please have a look. The primary motivation is to have a local neutral folder (e.g. ~/asm/skills) so that when a skill is installed in a project we can just symlink it to the neutral location. This way I ensure I'm not copying the same files in all the projects. There are skills like superpowers which I install in multiple projects but not every project. While implementing there were many other aspects which I discovered in the issues and therefore this is not a 1:1 solution for any individual issue. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
asm install --library,asm library list,asm activate, andasm deactivateso library skills are explicitly linked into and removed from selected provider scopes.asm library update <skill>/asm library update --allto refresh centrally installed skills from recorded source metadata, including local root skills and GitHub/registry-backed library entries.Why
This moves ASM toward the desired local/private skill-library workflow: keep reusable skills in one central ASM location, then explicitly activate only the skills a project/provider should see.
It also preserves and uses the real discovered
skillPath, avoiding the class of update bug described in rohitg00/skillkit#133 where update logic later looks in the wrong subdirectory.Related Issues
Test Plan
npm test(53 files, 1821 tests)npm run typecheckNotes
--library --method vercelis rejected because the Vercel installer writes to provider skill folders, which would break the neutral-library guarantee.asm activateis symlink-only and requires explicit provider/scope selection.asm deactivateremoves only symlinks that resolve into the ASM library; it refuses real directories and external symlinks.asm library update --allreports per-skill results and continues after individual failures.