[BUG] Skill tool description example teaches model to pass short names, causing "Unknown skill" errors
BLUF: The Skill tool's own description examples use short names (skill: "commit") but the plugin system registers skills with fully-qualified names (commit-commands:commit). The model follows the example, passes the short name, and gets "Unknown skill" errors. Fix the examples or add short-name resolution.
---
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
When a user types /commit, the model passes skill: "commit" to the Skill tool instead of the fully-qualified skill: "commit-commands:commit". This fails with:
Error: Unknown skill: commit
Root cause: The Skill tool's own description includes this example:
skill: "commit", args: "-m 'Fix bug'" — invoke with arguments
This teaches the model to pass the short name commit instead of the fully-qualified commit-commands:commit. The model has the full skills list in its system prompt — it could resolve the correct name — but the example actively reinforces the wrong pattern.
What Should Happen?
The Skill tool description examples should use fully-qualified names that match how plugin skills are actually registered:
skill: "commit-commands:commit", args: "-m 'Fix bug'" — invoke with arguments
Or at minimum, the examples should not contradict the namespacing scheme.
Error Messages/Logs
⏺ Skill(commit)
⎿ Initializing…
⎿ Error: Unknown skill: commit
Steps to Reproduce
- Install the
commit-commandsplugin from the official marketplace (or any plugin with namespaced commands) - Type
/commit - Model invokes
Skill(commit)instead ofSkill(commit-commands:commit) - Error: "Unknown skill: commit"
Why This Isn't a Duplicate
- #18490 proposed fuzzy matching in the Skill tool (option 1 — workaround). This issue identifies the root cause: the tool description example is misleading the model.
- #16072 covers system prompt conflation of skills/commands. This issue is specifically about the Skill tool description teaching the model wrong invocation patterns.
Fix the example, fix the root cause. The model already has the full skills list — it just needs the tool description to not contradict the namespacing scheme.
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
Latest
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
The available skills list in the system prompt correctly shows commit-commands:commit as the skill name. The Skill tool description's example of skill: "commit" overrides this by teaching the model to use short names.
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗