Skill routing: project-level exact name match should win over plugin fuzzy match

Resolved 💬 2 comments Opened Mar 30, 2026 by hpharmsen Closed Mar 30, 2026

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

  1. Have a project with .claude/skills/todo/SKILL.md (name: todo)
  2. Have the compound-engineering plugin installed (which provides resolve-todo-parallel skill)
  3. Type /todo in Claude Code
  4. The compound-engineering:resolve-todo-parallel skill gets invoked instead of the project's todo skill

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

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗