[FEATURE] VS Code extension: show images inline in the chat panel (re-file of stale-closed #79436)

Status Open
Reported on v2.1.278
Maintainer reply None cached
Activity 2 comments · opened Sep 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)

Note on the first box: the same request was filed as #79436 and closed by the stale bot on 2026-09-17 ("inactive for too long. Please open a new issue if this is still relevant"). It is still relevant — another user added a +1 the same day it was closed — so I am re-filing it as the bot suggests. There is no open request for it today.

Problem Statement

In the VS Code extension (tested on 2.1.278, macOS, VS Code 1.136), Claude has no way to show an image to the person in the chat. Claude can see images; the human cannot.

What I observe in the chat panel:

  • A markdown image in Claude's reply renders as the text [Image]. This happens for a local path, an https: URL and a data: URI alike.
  • When Claude uses Read on a PNG/JPG, the tool row shows only the file name. The image is not displayed.
  • SendUserFile answers "1 file delivered to user." but nothing appears in the panel (already reported as a bug in #76739).
  • Image blocks returned by MCP tools are not displayed either.

The only images that do appear in the timeline are Claude in Chrome screenshots, so the panel can clearly display a thumbnail with click-to-enlarge.

Claude Desktop shows the same image content inline (#70619, #84503), so the same work looks very different depending on the client.

Proposed Solution

Show image content inline in the VS Code chat timeline as a height-limited thumbnail that enlarges on click (the component used for Claude in Chrome screenshots would be enough), for:

  1. image results of Read,
  2. image blocks in MCP tool results,
  3. SendUserFile with display: "render",
  4. markdown images that point to a local file inside the workspace, or to a size-capped data: URI. Remote https: images can stay blocked.

Alternative Solutions

  • Ask Claude to open each image in an editor tab (code <path>). It works, but it pulls the image out of the conversation and every prompt or MCP server has to carry that instruction.
  • Switch to Claude Desktop or claude.ai for visual work. That means leaving the editor.
  • What I use today: a small companion VS Code extension that watches a feed file and shows the images in a side view, plus a PostToolUse hook that adds every image Claude reads or generates to that feed. It works well, but the images sit next to the conversation, not in it.

Priority

High - Significant impact on productivity

Feature Category

Other

Use Case Example

  1. I ask Claude Code, in the VS Code panel, to generate a diagram for a slide, or to take a screenshot of a page it just built.
  2. Claude creates the PNG, reads it back to check the result, and tells me it looks fine.
  3. I see only [Image] or a file path. To judge the result I have to find the file and open it somewhere else, then come back to the chat to give feedback.
  4. With inline thumbnails I could review each version in place and answer immediately. Design, chart and screenshot review loops would be several times faster.

Additional Context

  • Related: #79436 (same request, auto-closed as stale), #76739 (SendUserFile shows nothing in VS Code), #70619 and #84503 (Claude Desktop shows images inline; users ask for zoom there).
  • Environment: Claude Code VS Code extension 2.1.278, VS Code 1.136.2, macOS.

View original on GitHub ↗

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