[BUG] "Unhandled node type: string" on Bash tool confirmation prompt (regression in 2.1.89)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
## Description
When a Bash tool call containing $() command substitution or backticks is presented in the confirmation prompt, the CLI displays Unhandled node type: string error message.
What Should Happen?
This is a regression — version 2.1.83 correctly displays Command contains $() command substitution, while 2.1.89 shows the error.
Error Messages/Logs
Steps to Reproduce
## Reproduction
Any Bash command with $() triggers this. Minimal example:
result=$(echo hello); echo "$result"
### 2.1.83 (correct behavior)
Bash command
result=$(echo hello); echo "$result"
Echo hello via variable
Command contains $() command substitution
Do you want to proceed?
### 2.1.89 (broken)
Bash command
result=$(echo hello); echo "$result"
Echo hello via variable
Unhandled node type: string
Do you want to proceed?
## Impact
- The error message is cosmetic — selecting "Yes" still executes the command correctly.
- Affects every Bash command containing
$()or backticks. - Confirmed on two separate machines, both running 2.1.89 on Linux.
## Environment
- Affected version: 2.1.89
- Working version: 2.1.83
- OS: Linux (Ubuntu 24.04, kernel 6.8.0-90-generic)
- Node.js: v22
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.83
Claude Code Version
2.1.89
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
_No response_
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗