[Bug] Skill tool steps dropped during execution, skipping to manual gh commands

Resolved 💬 3 comments Opened Mar 31, 2026 by theotherzach Closed Mar 31, 2026

Bug Description

Claude consistently drops later steps from multi-step skill instructions during execution. The skill loads correctly into context (verified via <command-name> tags), but once Claude begins executing tool calls for the first step, subsequent steps are silently skipped.

Reproduction

  1. Create a skill with 5 sequential steps, where each step involves tool calls (e.g., Bash commands)
  2. Invoke the skill via slash command (e.g., /my-skill 123)
  3. The skill loads correctly - all 5 steps are visible in the expanded prompt
  4. Claude executes steps 1-2 (tool calls to check status, analyze output)
  5. Claude reports results as if finished, skipping steps 3-5 entirely

Expected behavior

All steps in the skill should execute in order. If the skill says "do X, then Y, then Z", Claude should do all three.

Actual behavior

Claude executes the first 1-2 steps (typically the ones involving analysis/reading), then treats the task as complete. Later steps that involve different actions (updating state, reporting, monitoring) are dropped without acknowledgment.

What I've tried (none of these fix it)

  • Adding "Execute all steps" to the skill instructions
  • Using CAPS, bold, and explicit "ALWAYS" language
  • Adding "Step N" numbered headers
  • Adding the rule to CLAUDE.local.md ("follow skill instructions exactly, never skip steps")
  • Creating a pre-commit hook to block freestyle commands outside the skill
  • Rewriting the instructions across 3+ days and multiple sessions

Workaround attempted

Restructured the skill to include a mandatory printed checklist before any commands, with explicit transition markers between steps ("Next: Step N"). Early eval results suggest this helps, but the underlying issue remains: Claude loses track of multi-step instructions once it starts executing tool calls and analyzing their output.

Environment

  • Platform: darwin
  • Terminal: iTerm.app
  • Version: 2.1.87
  • Feedback ID: 2b948912-ba41-4e3e-ad64-7b6ad9cee732

View original on GitHub ↗

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