AskUserQuestion tool silently auto-resolves with empty responses after Skill tool invocations
Description
The AskUserQuestion tool intermittently fails to render its UI to the user. When this happens, the tool returns a successful result with empty answer data (no question-answer pairs), as if the user responded — but the user never saw the question. The tool's return format shows "User has answered your questions: . You can now continue with the user's answers in mind." with no actual selections.
Reproduction Pattern
The issue consistently occurs after a Skill tool invocation, which injects a large block of instruction text into the conversation. When AskUserQuestion is called shortly after, it silently auto-resolves without rendering.
Steps to reproduce:
- Invoke a skill via the
Skilltool (e.g.,/smithy,/commission,/drafting) — these inject large prompt blocks (1000+ lines) - Immediately call
AskUserQuestionafter the skill loads - The question UI does not appear to the user
- The tool returns a "success" result with empty/missing answer data
- Claude proceeds as if the user answered, but the user saw nothing
Observed frequency: Happened on 4 out of 4 attempts immediately following skill loads. Questions asked without a preceding skill load rendered correctly every time.
Partial Mitigation
Adding a text output message between the skill load and the AskUserQuestion call sometimes helps — it worked during the Commission phase but failed during the Drafting phase. The mitigation is unreliable.
Expected Behavior
AskUserQuestion should always render its UI to the user and wait for actual input before returning a result. If the question cannot be rendered, the tool should return an error rather than silently auto-resolving with empty data.
Environment
- Claude Code CLI
- macOS (Darwin 25.3.0)
- Model: claude-opus-4-6
- Skills with large prompt injections (1000+ lines of instruction text)
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗