Fixes image pasting in Claude Code when running inside WSL2 on Windows Terminal.
When you copy an image on Windows and try to paste it in Claude Code running in WSL2, nothing happens. Windows Terminal intercepts Ctrl+V as its own paste shortcut. When the clipboard has image data (not text), nothing is sent to Claude Code — it never sees the keypress.
Claude Code v2.1.121+ already handles BMP→PNG conversion internally (issue #25935), so the clipboard format isn't the problem — the keypress just never arrives.
Bind Alt+V to chat:imagePaste in Claude Code. Windows Terminal doesn't intercept Alt+V, so the keypress reaches Claude Code, which then reads the clipboard image directly via wl-paste.
git clone https://github.com/LeeSinLiang/claude-image-paste.git
cd claude-image-paste
chmod +x setup.sh
./setup.shRestart Claude Code after running setup.
Copy any image on Windows (Win+Shift+S, browser, etc.), then press Alt+V in Claude Code.
Creates ~/.claude/keybindings.json with one binding:
{ "context": "Chat", "bindings": { "alt+v": "chat:imagePaste" } }That's it. No daemon, no background process, zero resource cost.
Windows Terminal reserves Ctrl+V (paste) and Ctrl+Shift+V (paste as plain text) at the terminal level. These keybindings cannot be passed through to CLI applications. Alt+V is also what Claude Code uses on native Windows.
- WSL2 with WSLg (Windows 11 or Windows 10 with WSLg support)
- Claude Code v2.1.121+
If wl-paste errors with "compositor does not seem to implement seat", restart WSL from PowerShell: wsl --shutdown, then reopen your terminal.