[FEATURE] run Bash commands in VSCode integrated terminal for real-time visibility

Resolved 💬 2 comments Opened May 21, 2026 by danielleaquino Closed May 21, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Summary

When Claude Code executes Bash commands (e.g., running tests), the output is shown
in a read-only temporary file in the editor rather than in the VSCode integrated
terminal. This prevents users from seeing the execution in real time.

Expected behavior

Bash tool commands should run in the VSCode integrated terminal panel, so the user
can follow the output live — similar to how GitHub Copilot executes terminal commands
directly in the integrated terminal.

Current behavior

Commands run in a background process and output is displayed in a read-only temporary
file (e.g., Bash tool output (ifc6yy)), opened as a read-only editor tab.

Use case

When running long test suites with pytest, it's important to see the output streaming
in real time (test names, pass/fail status, logs). The current approach requires
waiting for the full execution to finish and then reading a static file, which makes
it hard to monitor progress or interrupt if needed.

Proposed Solution

Add an option (or make it the default) to execute Bash commands in the VSCode
integrated terminal, keeping the interactive terminal experience users are familiar
with.

Alternative Solutions

The current workaround is running commands manually in the VSCode integrated terminal,
copying the command suggested by Claude Code and pasting it there. This breaks the
flow of the interaction since it requires switching context and running commands
separately from the conversation.

Another alternative is reading the output from the temporary read-only file that
Claude Code opens in the editor, but this only shows the final result after the
command finishes — there is no streaming, and the file closes automatically, making
it hard to review or scroll through longer outputs like full test suite runs.

Neither workaround allows Claude Code to react to the output automatically, which
defeats the purpose of having an AI assistant that can observe results and iterate.

Priority

High - Significant impact on productivity

Feature Category

Developer tools/SDK

Use Case Example

Example scenario:

  1. I'm working on a Python integration test suite using pytest in VSCode
  2. I ask Claude Code to modify several tests and run them to validate the changes
  3. With this feature, Claude Code would run pytest -v directly in the VSCode

integrated terminal, and I could watch each test pass or fail in real time,
interrupt the run if needed, and see the full output with colors and formatting

  1. This would save me time because I wouldn't need to copy the command, switch to

the terminal manually, paste and run it myself — the entire loop of
edit → run → observe → fix would stay inside the Claude Code conversation
without breaking my workflow

Additional Context

Similar feature in another tool:
GitHub Copilot in VSCode already implements this behavior. When Copilot executes a
terminal command, it opens the VSCode integrated terminal panel and runs
the command there directly, allowing the user to see the output streaming in real
time, interact with the process if needed, and keep the terminal history after
execution.

Technical consideration:
The VSCode extension API provides vscode.window.createTerminal() and
terminal.sendText(), which allow extensions to open an integrated terminal and send
commands to it programmatically. This is likely the mechanism Copilot uses, and it
could be leveraged by Claude Code to achieve the same experience without significant
architectural changes.

Suggested behavior:

  • Commands that are purely informational (e.g., git status, ls) can continue

running internally as today

  • Commands that produce long or streaming output (e.g., test runners, build tools,

servers) should run in the integrated terminal so the user can follow along

  • Optionally, expose a setting to always use the integrated terminal for all Bash

tool executions

View original on GitHub ↗

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