[Skills] Add support for installing/removing skills#25373
Merged
Conversation
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.
Description
The Skills extension currently allows users to browse and search for skills on skills.sh, but it doesn't let them install or manage those skills within Raycast. Users have to copy the install command manually and run it in a terminal, and they can't see what's already installed on their machine.
This PR adds those missing features. Now, users can install skills directly from the search and trending views with just one action. There's also a new "Manage Skills" command that shows all installed skills along with agent information and SKILL.md content. Users can remove skills through a confirmation dialog to prevent accidental deletions.
Behind the scenes, all skill operations are handled by the
npx skillsCLI instead of directly manipulating the filesystem. This keeps the extension in sync with how the CLI manages its internal state, including agent directories and symlinks, and it automatically supports all 30+ agents that the CLI recognizes.We're parsing the CLI output after removing ANSI codes since the CLI doesn't yet support
--jsonflag yet. I've reached out to the Vecel team about this. Once they add support, we can simplify the parsing logic.Screencast
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare located outside the metadata folder if they were not generated with our metadata tool