[BUG] "Tool loaded." confirmation rendered as user message in chat UI
Description
When deferred tools are loaded via ToolSearch, the confirmation message "Tool loaded." is rendered as a user turn (with the > input prompt) in the chat UI, as if the user typed it. This happens every time a deferred tool is discovered.
Steps to Reproduce
- Start a Claude Code session (v2.1.70)
- Trigger any action that requires a deferred tool (e.g.,
Bash,Read,Edit,WebSearch) - Observe "Tool loaded." appearing as a user message in the conversation
Expected Behavior
The "Tool loaded." confirmation should either be hidden entirely or rendered as a system message, not as a user turn.
Actual Behavior
"Tool loaded." appears with the > user prompt prefix, breaking the visual flow of the conversation. In a typical session this can happen 5-10 times.
Screenshot
<img width="1136" height="961" alt="Image" src="https://github.com/user-attachments/assets/71b0b96a-4ae7-41d9-ac08-5c86ee75377a" />
<!-- Note: Screenshot available but could not be attached via CLI. Shows multiple "Tool loaded." lines rendered as user input between actual user messages and Claude responses. -->
Environment
- Claude Code version: 2.1.70
- Platform: macOS (Darwin 24.6.0)
- Terminal: Claude Code CLI
Notes
Possibly related to the 2.1.70 fix for "empty responses immediately after ToolSearch" — the empty response was fixed but the confirmation may now be surfacing as a user turn instead.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗