Rate limit triggered by skill invocation despite 90% context remaining

Resolved 💬 4 comments Opened Mar 18, 2026 by panda850819 Closed May 3, 2026

Description

When invoking a skill (e.g., /ship) during a session that has used multiple sub-agents (parallel review agents, explore agents), the skill invocation hits a rate limit error even though the context window is only ~10% utilized (out of 1M context on Opus 4.6).

Expected Behavior

Skill invocation should not be blocked by rate limits when the context window has ample capacity. At minimum, a retry mechanism should handle transient rate limits transparently rather than surfacing a hard error to the user.

Actual Behavior

> /ship
└ API Error: Rate limit reached

The same operation succeeds when done manually (without the skill wrapper) in the same session, suggesting the skill loading mechanism consumes additional API quota that pushes past the rate limit.

Reproduction

  1. Start a session with Opus 4.6 (1M context)
  2. Perform substantial work: multiple parallel sub-agents (e.g., 3 review agents), several explore agents, extensive file reads/edits
  3. Context usage is ~10% (well within limits)
  4. Invoke any skill (e.g., /ship, /commit)
  5. Rate limit error is returned

Environment

  • Claude Code CLI
  • Model: claude-opus-4-6 (1M context)
  • Platform: macOS

Suggestion

  • Skill prompt loading should not count against the same per-minute rate limit bucket as conversation turns, OR
  • Add automatic retry with backoff for skill invocations hitting transient rate limits, OR
  • At minimum, surface a clearer error message distinguishing rate limits from context limits, since the current behavior is confusing (user sees 90% context remaining but gets blocked)

View original on GitHub ↗

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