Clipboard to SSH for Claude Code or Cursor
Use vmup --clip to batch clipboard files over SSH and paste the prompt into Claude Code, Cursor, or any agent that reads paths on the host.
Claude Code, Cursor, and Codex on a VM open files by path. They do not see your laptop clipboard. vmup --clip uploads what you copy and leaves a prompt (with the remote folder path inside it) to paste into the thread.
Same end state as First upload. This page is the clipboard loop. Full key list and pngpaste: Capture the clipboard. Screenshots as the job: Upload screenshots to a remote coding agent.
Capture
vmup --clipvmup holds the terminal. Copy a file (Finder) or an image, press Enter, repeat, then type done.
On macOS, clipboard images need pngpaste. Copied files do not. Windows is not supported for --clip; use WSL and pass paths, or skip clip.
Zero captures: No files to upload, exit 2.
Paste into the agent
After upload, stdout looks like:
Uploaded 3 files → default
Agent folder: ~/vmup/agents-…/
Prompt:
Please inspect all files in ~/vmup/agents-…/The prompt is already on the clipboard (clipboard_copy = "prompt"). Paste it into Claude Code, Cursor, or Codex in the same thread. The agent inspects that directory on the host. Set clipboard_copy = "path" if you only want the folder, or "none" to skip the copy.
Remote names are image-01.png, file-01.pdf, and so on. Original basenames are gone on the VM. How a batch is built explains the rename.
TTL still applies (default 5 minutes). Raise it for a longer session, or run vmup prune --all to delete every remote batch now: Why batches expire.
If Claude prints No image found in clipboard over SSH, diagnose the remote clipboard. For other agents, attach an image to Codex CLI over SSH or give Cursor access to local files over Remote-SSH.