find-skills
Find Skills
Discover and install third-party agent skills from the open Agent Skills ecosystem powered by skills.sh.
Overview
The Agent Skills format is an open standard for packaging procedural knowledge, workflows, and tools that AI agents load on demand. The npx skills CLI (maintained by Vercel Labs) serves as "npm for AI agents" -- enabling discovery and installation of community skills from any Git repository.
skills.sh is the public directory and leaderboard for the ecosystem, hosting thousands of skills across categories like frontend, backend, DevOps, and more.
Before installing a third-party skill, check ls skills/ in this repo (or run /find-skills again after browsing) -- cc-arsenal may already cover the same ground, and a hardcoded list here would just go stale.
Ask First, Never Mutate to "Show" Something
add, remove/rm, and update all touch the user's real filesystem (project .claude/skills/ or global ~/.claude/skills/) -- a wrong guess costs the user real state, not a free re-run. Two hard stops, both end the turn on a question rather than acting and reporting after:
- Scope or target is ambiguous. If it isn't clear which skill/repo to install, or whether it belongs at project vs. global scope, end your response with the clarifying question. Don't run
npx skills addfirst and confirm after, and don't install to a throwaway/local mock "just to show the flow" -- that still runs a real command against the user's real directories. Ask, stop, and install only in a later turn once the user answers. - Any removal, one skill or all of them. Removal is destructive and not undoable via the CLI. Run
npx skills list(and-gif scope is unclear) to show what's actually installed, then end your response asking the user to confirm exactly what gets removed. Runremove/rm/--allonly in a later turn, after the user replies with an explicit yes. The request is never the confirmation: "remove the foo skill, I don't use it anymore" names the action but does not green-light it -- if you catch yourself reasoning "the user already confirmed by naming it", that reasoning is exactly the failure this rule exists to stop.