Bash tool output duplicated on non-zero exit code
Status Fixed / completed
Maintainer reply None cached
Activity 3 comments · opened Mar 4, 2026 · closed Mar 5, 2026
Description
When a command run via the Bash tool exits with a non-zero exit code, its output is displayed twice in the error block. This happens regardless of whether output goes to stdout, stderr, or both.
Reproduction
Any command that produces output and exits non-zero:
python3 -c "print('hello'); import sys; sys.exit(1)"
Displayed as:
Error: Exit code 1
hello
hello
Additional tests confirm the duplication is not stream-dependent:
- stdout only (stderr closed) → duplicated
- stderr only (nothing on stdout) → duplicated
os._exit(1)after flush → duplicated
Commands that exit 0 display output once as expected.
Expected behavior
Output should appear once, not twice.
Environment
- Claude Code CLI
- macOS (Darwin 24.6.0)
- Model: claude-opus-4-6
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗