Skill tool called without required 'skill' parameter when triggered by natural language
Resolved 💬 3 comments Opened Mar 5, 2026 by Khairul989 Closed Apr 30, 2026
Bug Description
When using natural language that matches a skill's trigger phrases (e.g., "let's wrap up for now"), Claude sometimes calls the Skill tool without the required skill parameter, resulting in:
Error: InputValidationError: Skill failed due to the following issue:
The required parameter `skill` is missing
Steps to Reproduce
- Define a skill with trigger phrases in its description (e.g.,
wrap-upskill with triggers: "wrap up", "let's wrap up", etc.) - Type a natural language message that matches but has extra words:
let's wrap up for now - Claude recognizes the trigger and attempts to invoke the Skill tool
- The
skillparameter is missing from the tool call → error
Expected Behavior
Claude should call Skill(skill: "wrap-up") with the correct skill name.
Actual Behavior
Claude calls Skill() with no parameters, causing an InputValidationError.
Notes
- Using the explicit slash command
/wrap-upworks reliably - The issue seems to occur when the trigger phrase has extra trailing words ("for now") that may confuse parameter construction
- This is intermittent — sometimes it works, sometimes it doesn't
- Observed on Claude Opus 4.6
Environment
- Claude Code CLI
- macOS
- Custom skills with trigger phrase descriptions
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗