Surface live stdout/stderr of background Bash tasks in the Tasks panel

Resolved 💬 1 comment Opened May 7, 2026 by shenng1 Closed Jun 5, 2026

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 BashOutput and paste — slow, costs a turn.
  • Running in a separate terminal outside Claude Code — defeats the purpose of run_in_background.

View original on GitHub ↗

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