[BUG] "unhandled node type $"

Resolved 💬 1 comment Opened Apr 16, 2026 by rogpeppe Closed May 24, 2026

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?

When Claude tries to run a shell command with a $ at the end of an argument, for example this command:

go test -run TestScript/plugin_build$ ./cmd/cue/cmd

it prints:

Unhandled node type: $

and then always asks for permission even when I've previously granted it a command very similar or identical.
Here's screenshot of an example:

<img width="844" height="291" alt="Image" src="https://github.com/user-attachments/assets/5239402b-2899-4681-803c-9f395ecfe6a0" />

It seems like the Claude shell syntax parser is treating $ at the end of an argument as special, when
it's not.

What Should Happen?

I'd expect the usual ask for permissions, not this odd error.

Error Messages/Logs

All relevant output included above.

Steps to Reproduce

Run claude and type:

Please run a shell echo command with a '$' at the end of the first argument and no quotes 

<img width="935" height="515" alt="Image" src="https://github.com/user-attachments/assets/541d7086-00a0-4dad-9d94-8748c7f4beab" />

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.112 (Claude Code)

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

_No response_

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗