Terminal Image Display Not Working - Add Support for Terminal Graphics Protocols (WezTerm, iTerm2, Kitty)

Resolved 💬 4 comments Opened Aug 23, 2025 by groeney Closed Aug 26, 2025

Description

Claude Code currently doesn't display images properly in terminal environments that support graphics protocols. When using the Read tool on image files, Claude can "see" and describe the images internally, but they don't render visually in the terminal for the user.

Steps to Reproduce

  1. Use Claude Code in WezTerm with enable_kitty_graphics = true configured
  2. Ask Claude to read an image file (e.g., /read ~/Desktop/screenshot.png)
  3. Claude successfully processes and describes the image content
  4. No visual output appears in the terminal window

Expected Behavior

Images should display inline in the terminal using supported graphics protocols:

  • WezTerm (Kitty graphics protocol enabled)
  • iTerm2 (iTerm2 inline images protocol)
  • Kitty (native Kitty graphics protocol)
  • Terminals supporting Sixel graphics

Actual Behavior

  • Claude Code internally processes images successfully (can describe content accurately)
  • No visual output appears in terminal despite terminal having image support
  • Users cannot see the images that Claude is analyzing
  • This creates a disconnect where Claude says "I can see the image shows..." but user sees nothing

Environment

  • OS: macOS Darwin 23.6.0
  • Terminal: WezTerm with enable_kitty_graphics = true in .wezterm.lua
  • Claude Code Version: Latest (installed via terminal)
  • Also tested/affects: iTerm2 with imgcat support

Additional Context

  • Tested with various image formats (PNG, JPEG)
  • WezTerm imgcat command works outside of Claude Code
  • Claude's internal image processing works (can describe images accurately)
  • Issue appears to be with passing image data through to terminal display

Workaround

Currently must open images in external viewers (Preview, etc.) while Claude analyzes them separately

Suggested Solution

Implement terminal graphics protocol support to pass through image data when the Read tool processes image files. This would allow users to see the same images that Claude is analyzing, creating a more cohesive experience.

Related

This may relate to existing discussions about terminal graphics protocol support for Sixel, Kitty, and iTerm2 protocols.

View original on GitHub ↗

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