"Unhandled node type: array" emitted during bash tool call display

Resolved 💬 3 comments Opened Apr 20, 2026 by derammo Closed May 8, 2026

Description

When Claude Code presents a bash command containing nested $() subshells with bash array expansions (e.g. "${ARRAY[@]}"), the message "Unhandled node type: array" is emitted before the command runs. This appears to come from the tool-call rendering/display layer, not from bash itself.

Reproduction

A bash tool call like:

jq -n \
    --argjson labels "$(jq -n '$ARGS.positional' --args "${LABELS[@]}")" \
    '...'

The message appears in the output stream before execution begins.

Potential concern

If the display layer cannot fully render the command being executed, the user may not be able to verify what will actually run before approving it. Worth checking whether the rendering failure could cause the displayed command to differ from what actually executes, or silently truncate/modify the displayed text.

The rendering layer should ideally either:

  1. Handle all valid bash syntax it might encounter, or
  2. Fall back to displaying the raw command text verbatim rather than emitting an error

Environment

  • Claude Code CLI on Linux
  • Model: claude-opus-4-6
  • Date: 2026-04-20

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗