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
- Open a Claude Code session with hooks and skills configured
- Invoke a skill via the Skill tool:
Skill("knowledge-evolve") - The tool returns:
[Tool result missing due to internal error] - Agent gets stuck — no output, no retry, no error message to user
- Only Ctrl+C recovers the session
- 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.
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗