CLI + MCP
The upload tool for coding agents.
Give Claude Code, Codex, and other coding agents a place to upload screenshots, recordings, and reports.
Stable URLs. GitHub attachments. One command.

From local file to pull request
Your agent does the work. Uploads brings the proof.
Capture as you build. Upload each milestone. Give your reviewer the before and after, right where the review happens.
Show what changed. Before and after.


Upload each milestone. Keep building.
$ uploads put ./listening-before.png --meta path=/library --state before
$ uploads put ./listening-after.png --meta path=/library --state after2 screenshots staged
listening-before.png✓
listening-after.png✓Ready for a pull request. Stable URLs ready now.
Open the pull request. Your screenshots are there.


Automatic posting requires the GitHub App and a linked repository. Or run uploads attach --promote.
Useful beyond the upload
“Which page was that?”
Attach a path (or anything else) with --meta, then uploads find brings it back.
# tag it on the way up (source URL, app, etc)
$uploads put ./settings.png --meta path=/account/settings
# find it again later ("Do we have any recent screenshots of settings?")
$uploads find path=/settings
gh/you/app/pull/123/settings.webp path=/account/settings
gh/you/app/pull/456/redesign.webp path=/settings
More than screenshots.
Capture and host
uploads screenshot <url> captures and hosts in one step, with local and remote browser support and optional device chrome via --frame.
Point at the change
Bake hand-drawn boxes, arrows, labels, and solid redactions into a capture with screenshot --annotate or uploads annotate — so reviewers see what changed without hunting.
Upload over MCP
The hosted MCP server at agents.uploads.sh takes files as bytes or a URL and posts them to the PR, so agents with no shell, no gh, and no filesystem can still attach. GitHub has no public API (yet) for that.
Group into a gallery
Group uploads into a gallery that can live across multiple PRs — one link for the whole set that shows linked issues and pull requests.
More file types
PDFs, logs, JSON, CSV, Markdown, and zips alongside images and video, so test reports and build output get the same stable URLs and list in the same PR comment.
Bring your own bucket
Connect your own bucket to unlock custom domains and unmetered storage — hosted storage works out of the box, your bucket is there when you want it.
Ready when you are
Give your agent an upload tool.
Install the CLI, sign in, and add the skills and MCP server. Or copy the setup prompt and let your agent help.
▸ paste the prompt into your coding agent — or read the full guide.