Skill routing: project-level exact name match should win over plugin fuzzy match
Bug
When a project defines a skill with name todo (in .claude/skills/todo/SKILL.md), typing /todo can incorrectly route to a plugin skill compound-engineering:resolve-todo-parallel instead. The plugin skill has "todo" in its name and description, which seems to cause a fuzzy match that overrides the project's exact match.
Expected behavior
Project-level skills with an exact name match should always take priority over plugin skills matched by keyword/fuzzy matching.
Steps to reproduce
- Have a project with
.claude/skills/todo/SKILL.md(name:todo) - Have the
compound-engineeringplugin installed (which providesresolve-todo-parallelskill) - Type
/todoin Claude Code - The
compound-engineering:resolve-todo-parallelskill gets invoked instead of the project'stodoskill
Workaround
Added a note to the project's CLAUDE.md instructing Claude not to use compound-engineering skills unless explicitly prefixed.
Feature request
It would also be helpful to have a way to disable individual skills from a plugin (e.g., a disabledSkills setting in settings.json) rather than having to disable the entire plugin.
Environment
- Claude Code (CLI)
- macOS
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗