Surface live stdout/stderr of background Bash tasks in the Tasks panel
Summary
When Claude runs a Bash command with run_in_background: true, the user sees it in the Tasks panel as a row with a title and a status label — but no way to see what the command is actually printing. Only the agent can read the live output (via BashOutput). For long-running commands (builds, dry-runs, dev servers, test suites) this leaves the user blind to progress, and — worse — when a task fails, the user sees a red "Failed" with zero context about why.
Current behavior
- Tasks panel shows: title + status ("Running" / "Failed") + Bash badge + cancel button.
- Clicking the row does not reveal stdout/stderr.
- On failure the user has to ask the agent ("what was the error?") and wait a turn round-trip just to see a tail of the log.
- For running tasks there's no way to tail live output without prompting the agent.
Proposed behavior
Make each background Bash task in the Tasks panel expandable to show a live-tailing view of its stdout/stderr, similar to a terminal pane:
- Click/expand a task row → reveal a scrollable log view that streams as output arrives.
- Show last N lines by default with auto-scroll-to-follow.
- Keep the log accessible after the task completes/fails (until dismissed) so the user can review what happened.
- Especially important on Failed tasks: surface the last stderr lines inline or one click away.
- Optional: separate stdout/stderr coloring; copy-to-clipboard button.
Why
- Parity with what the agent already sees — currently there's an asymmetry where Claude can read the log but the user can't.
- Failure debugging: a "Failed" row with no error text forces an extra round-trip to the model to ask "why did it fail?".
- Faster progress checking: the user can spot a stack trace, prompt, or warning without prompting Claude.
- Useful for dev servers, builds, watchers, long test runs — exactly the cases people use background Bash for.
Screenshots
<img width="428" height="122" alt="Image" src="https://github.com/user-attachments/assets/589624ba-3400-4ee6-abe5-b4d3cfca6d49" />
Workarounds today
- Asking the agent to call
BashOutputand paste — slow, costs a turn. - Running in a separate terminal outside Claude Code — defeats the purpose of
run_in_background.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗