Screenshot Support via Clipboard Paste in Claude Code CLI
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
When working with Claude Code on PhpStorm, I frequently need to show Claude the visual result
of its work - to verify layouts, check rendering, identify visual bugs, or point
out CSS/styling issues. The web chat interface supports pasting screenshots directly
(Ctrl+V / Cmd+V), making this workflow seamless.
The Claude Code CLI has no way to accept images or screenshots. This forces me to
switch to the web interface just to show a screenshot, breaking the development flow
and context. For visual feedback (UI issues, layout problems, responsiveness checks),
screenshots are often more efficient than describing the problem in text.
Proposed Solution
Claude Code CLI should support pasting images from clipboard, similar to the web chat:
- User presses Ctrl+V (or Cmd+V on Mac) in the CLI input
- If clipboard contains an image/screenshot, Claude Code detects it and asks
"Image detected. Include in message?" (Yes/No)
- The image is attached to the message and sent to Claude for analysis
- Claude can see the screenshot and provide feedback on visual issues, styling
problems, layout issues, etc.
- Support common formats: PNG, JPG, WebP (same as web chat)
Alternative Solutions
Current workarounds are all suboptimal:
- Switch to web chat interface (context loss, flow interruption)
- Save screenshot to file and ask Claude to view it (cumbersome, not part of conversation flow)
- Describe visual issues in text (inefficient, often unclear)
- Use third-party tools to embed images in CLI conversations (hacky, not native)
None of these match the simplicity of native clipboard support.
Priority
High - Significant impact on productivity
Feature Category
Developer tools/SDK
Use Case Example
Scenario: I'm working on a Shopify theme customization. Claude Code is modifying
the product card styling. I run the code and take a screenshot of the result in
my browser - it shows the layout is broken on mobile.
Current workflow:
- Take screenshot
- Open browser, go to Claude web chat
- Paste screenshot and explain the issue
- Claude provides fix
- Copy fix back to IDE
- Lose context of the ongoing CLI session
Desired workflow:
- Take screenshot
- In Claude Code CLI, paste image (Ctrl+V)
- Type: "Mobile layout is broken, see screenshot above"
- Claude analyzes the screenshot, identifies the problem
- Provides fix immediately
- Continue in same session without context loss
Additional Context
Technical considerations:
- Reuse existing image processing from web chat (same models, same capabilities)
- Handle clipboard detection across Windows, Mac, Linux
- File size limits should match web chat (e.g., max 5MB)
- Support drag-and-drop of image files as alternative to clipboard
User context:
This is essential for developers working on visual components, CSS/styling,
responsive design, and UI bugs. Currently, Claude Code is not viable for
these workflows without switching to web chat. Adding clipboard image support
would make Claude Code a complete IDE-integrated development tool.
Related: This pairs well with the previous feature request about session
persistence - combined they would make Claude Code suitable for longer,
more complex development sessions including visual/UI work.
22 Comments
For macOS and Linux users at least, you can paste images directly into the chat via <kbd>Ctrl+V</kbd> (not <kbd>Cmd+V</kbd>). On Windows, you can drag images directly into the Claude Code input box where you send messages, but you still have to save the screenshot first.
https://code.claude.com/docs/en/common-workflows#work-with-images:~:text=You%20can%20use,your/image.png%E2%80%9D
Not sure about native Linux, but Ctrl+V pasting doesn't work when using Claude code on ubuntu WSL2 from Win11
@whackedMallard Did you try dragging the image directly from File Explorer into the CC input box?
That works but is not useful. I want to paste directly from clipboard without saving
workaround might be a slight derivation of the below (untested):
Setup
~/.local/bin/lastshot:``
bash
``#!/bin/bash
LATEST=$(ls -1t /mnt/c/Users/YOUR_USERNAME/Pictures/Screenshots/*.png | head -n1)
echo "$LATEST"
``
bash
``chmod +x ~/.local/bin/lastshot
CLAUDE.md:``
lastshotWhen I type 'ss', run
and read the returned screenshot path.
``## Usage
Anyone know if this is a limitation of terminal applications on windows or claude code? I've tried windows terminal and alacritty both with WSL1 and neither allowed pasting images
Edit: i'm guessing it's a claude code windows implementation issue. Just realized I can't paste images in iTerm in mac so I'm thinking claude code is just reading the clipboard when you hit ctrl+v on mac
This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.
Issue still occurring
I need a
/pastecommand similar to Aider's capability.I usually paste the picture in my work area and @ this picture, and Claude can understand.
I also find this feature very interesting. I usually rely on images to “show” Claude the designs so it can understand them better. Without this, I have to resort to workarounds, which isn’t very practical — especially as a Windows user.
I cannot believe claude code has not make this happen yet, already late to the party, putting bullshit no one asked on their claude code cli app and not adding this incredible important feature and totally ignoring it.
Paste works for me on windows CLI using powershell and alt+v as of v2.1.19 and beyond
Ethan, thanks for the tip. you were right!
Alt + V worked. I tried Ctrl + V, Shift + Insert... without any luck, but
I'm glad it works.
For MacOS I was amazed to find that CTRL+V works (especially because that means something completely different in terminals, usually)! But why does CMD+V for clipboard images work on mac?
Workaround for Windows/WSL using a shell function + custom slash command: https://gist.github.com/halboffen/5af17dc08ff34e75737cccdfc99c2e8a
+1 on this feature request.
Adding macOS-specific observations (iTerm2 + external Logitech keyboard):
Claude Code v2.1.74, macOS Darwin 25.2.0, iTerm2
Two behaviors that I haven't seen reported:
the image successfully. But if I've already typed some text, Ctrl+V does nothing — the image is silently
ignored. Expected: image should be appended regardless of existing text.
doesn't within the same session. Claude Code occasionally detects the image in clipboard and prompts "Press
Ctrl+V to paste", but pressing Ctrl+V still does nothing.
Both issues are independent of key mapping — verified the correct macOS Control+V is being sent.
macOS Solution: Clipboard Image Paste in Kitty Terminal
For anyone struggling with image paste on macOS + Kitty, here's a working solution that enables unlimited image pastes via Cmd+V (or Ctrl+V).
The Problem
Kitty's
paste_from_clipboardonly handles text. There's no native way to paste clipboard images into Claude Code.The Solution:
clip2pathScriptA lightweight bash script that intercepts paste, checks for clipboard images, saves to a temp file, and injects the file path into the terminal via Kitty's remote control API. Claude Code automatically detects the image path and displays it as
[Image #N].Step 1: Install
pngpasteStep 2: Create
~/bin/clip2pathStep 3: Update
~/.config/kitty/kitty.confStep 4: Restart Kitty — done!
How It Works
clip2pathas a background processpngpaste/tmp/clip2path_<timestamp>_<pid>.png, injects path viakitty @ send-textpaste_from_clipboardfor normal text pasteTested With
Credits
Inspired by claude-code-kitty-paste (Linux solution). This is the macOS adaptation using
pngpasteinstead ofwl-paste/xclip.Here's a general solution for tmux + MacOS users.
Enables a tmux keybind to save a clipboard image to /tmp and paste the path directly into tmux. Requires pngpaste.
brew install pngpasteStep 1: Create the script
Step 2: Add tmux binding
I used prefix + v
Windows workaround: AutoHotkey v2 script
For anyone stuck on Windows where clipboard paste doesn't work — here's a clean workaround using AutoHotkey v2.
The idea: leave Win+Shift+S alone (normal snip, image on clipboard). Add a second hotkey Ctrl+Win+Shift+S that triggers the same Snipping Tool, but after the snip completes, replaces the clipboard with the file path instead of the image. Paste the path into Claude Code.
Requires Windows 11 Snipping Tool (which auto-saves every snip to
%USERPROFILE%\Pictures\Screenshots) and AutoHotkey v2.Gist: https://gist.github.com/moravsky/e521900225004ef5f8100d69a543b050
How it works:
To auto-start, drop a shortcut to the .ahk file into
shell:startup.Works great, but this really should be a native Claude Code feature.
For macOS users: I built clipaste as a workaround that makes screenshot paste work today, without waiting for an official fix.
It's a tiny background daemon (~18 MB, 0% CPU) that detects when a screenshot is on the clipboard and auto-saves it as a temp PNG, then registers the file path. After that, both Cmd+V (file path paste) and Ctrl+V (image data paste) work in any terminal + Claude Code / Codex CLI.
Works with Ghostty, Alacritty, iTerm2, Terminal.app.