Capture the clipboard
How vmup --clip captures copied files and screenshots, batches them over SSH, and leaves one remote folder path to paste into the agent.
vmup --clipvmup holds the terminal. Copy a file or an image, press Enter to capture, repeat, then finish.
Clipboard mode
Copy a file or image, then press Enter to capture.
Type "done" or Ctrl+D when finished. Ctrl+C cancels.
Duplicate captures are skipped (clip_dedup = true).Keys
| Input | Result |
|---|---|
| Enter (empty line) | Capture the current clipboard |
done, stop, or q | Stop collecting and upload |
| Ctrl+D | Same as done (stdin closes) |
| Ctrl+C | Cancel. Local staging is deleted. Exit 130. |
Do not combine --clip with --watch. vmup exits 1 with Use either --clip or --watch, not both.
What gets captured
vmup tries a file on the clipboard first, then an image.
macOS
- A file copied in Finder becomes a capture (no pngpaste).
- A bitmap on the clipboard (screenshot, copy from Preview) needs pngpaste:
brew install pngpaste. - Without pngpaste, an image-only clipboard prints:
(clipboard has no file or image — copy a file in Finder, or brew install pngpaste for screenshots)Linux
- Files:
wl-paste -t text/uri-list, thenxclipwith the same MIME type.file://URIs are decoded. - Images:
wl-paste -t image/png, thenxclip -selection clipboard -t image/png. Writes under 32 bytes are treated as empty.
Windows is not supported for --clip.
Dedup
Identical clipboard bytes are skipped while clip_dedup is true (the default):
(same clipboard content already captured — copy a different file)Turn it off in config (clip_dedup = false) or with VMUP_CLIP_DEDUP=0. See config.toml.
After you finish
Captures are staged, then uploaded like any other batch. Zero captures: No files to upload, exit 2.
Each capture prints:
+ image-01.pngThen Captured N file(s). and the usual upload spinner.
Job-shaped pages: Upload screenshots to a remote coding agent, Clipboard to SSH for Claude Code or Cursor.
Upload files
Pass paths, drop a directory, or use the native picker. Every mode uploads over SSH into one remote folder and leaves a clipboard path for the agent.
Upload screenshots to a remote coding agent
Send laptop screenshots to an agent on a VM: capture with --clip or watch a folder, upload over SSH, paste one remote folder path.