Skill tool call returns 'Tool result missing due to internal error' and agent gets stuck

Resolved 💬 5 comments Opened Apr 5, 2026 by omrfc Closed Jun 13, 2026

Bug Description

When invoking the Skill tool, Claude Code intermittently returns [Tool result missing due to internal error] and the agent gets stuck — it does not retry, does not proceed, and does not inform the user. The only recovery is Ctrl+C.

This has been happening repeatedly since 2026-04-04 (yesterday). Before that, it was rare/nonexistent.

Reproduction Steps

  1. Open a Claude Code session with hooks and skills configured
  2. Invoke a skill via the Skill tool: Skill("knowledge-evolve")
  3. The tool returns: [Tool result missing due to internal error]
  4. Agent gets stuck — no output, no retry, no error message to user
  5. Only Ctrl+C recovers the session
  6. Retrying the same Skill call after Ctrl+C usually succeeds

Expected Behavior

  • Agent should automatically retry (at least once) on internal error
  • If retry fails, agent should inform the user instead of hanging silently

Actual Behavior

  • Tool returns internal error
  • Agent produces no output and hangs indefinitely
  • User must Ctrl+C to recover

Environment

  • Claude Code version: 2.1.92
  • OS: Windows 11 Home 10.0.26200
  • Shell: Git Bash
  • Node.js: v24.12.0
  • Model: claude-opus-4-6 (1M context)
  • Hooks: 53 total (43 global + 10 project), including PreToolUse and PostToolUse hooks
  • MCP servers: 3 configured (kastell, context7, prompts-chat)
  • Plugins: 2 (context-mode, telegram)

Error Message (exact)

<error>[Tool result missing due to internal error]</error>

This is the raw tool result returned by CC runtime when calling the Skill tool.

Frequency

  • Rare before 2026-04-04
  • Multiple times per session since 2026-04-04
  • Affects Skill tool primarily, but may affect other tools

Possible Related Issues

  • #39830 — Parallel agent calls losing tool_results (similar symptom, different trigger)
  • #33949 — SSE streaming hangs indefinitely
  • #26224 — General hanging/freezing

Workaround

User must Ctrl+C and manually re-invoke the skill. The CLAUDE.md directive to "immediately retry on internal error" is not followed because the agent gets stuck before it can act on the error.

View original on GitHub ↗

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