file-upload
Upload local files (screenshots, recordings, logs) to the Cloudflare R2 bucket and get public URLs plus ready-to-paste markdown.
Skill by mateusjunges
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/mateusjunges-file-upload
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, cloud
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/file-upload
What's inside
- Skill name
file-upload- Description
- Upload local files (screenshots, recordings, logs) to the Cloudflare R2 bucket and get public URLs plus ready-to-paste markdown. Use when a PR description, PR comment, or issue needs images or files embedded, or when the user asks to upload or share a file.
- License
- MIT
- Instructions
- 24 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (2)
- SKILL.md
- upload.sh
SKILL.md (first lines)
Upload files with the bundled script: ```bash ~/.dotfiles/skills/file-upload/upload.sh [--prefix <dir>] <file> [<file>...] ``` Each successful upload prints one tab-separated line: the local path, the public URL, and a markdown snippet. Images get ``, everything else gets a `[name](url)` link. The script exits non-zero if any file failed, so read stderr and report failures instead of pasting broken links. Objects are stored as `<prefix>/<YYYY>/<MM>/<random>-<filename>`. The prefix defaults to the current git repository name, so run the script from inside the repo the PR belongs to, or pass `--prefix` explicitly. ## Using it in PR descriptions 1. Capture or locate the files first (screenshots, screen recordings, etc.). Use absolute paths. 2. Upload them in a single call so the output lines up with the order you passed them in. 3. Paste the markdown snippets into the PR body where they belong, usually next to the paragraph describing that change. Give each image a meaningful alt text by editing the label in the snippet if the filename is not descriptive. 4. Pass the body to `gh pr create --body-file` or `gh pr edit --body-file` rather than inlining it, so the markdown is not mangled by shell quoting. GitHub does not render `<video>` tags pointing at external hosts, so videos can only be linked. If a recording should play inline, convert it to a GIF first (for example with `ffmpeg`) and upload the GIF. ## Things to keep in mind Uploaded files are public to anyone with the URL. The random segment makes them unguessable, but never upload secrets, credentials, `.env` files, or screenshots showing customer data or tokens. If a screenshot might contain sensitive information, check it before uploading.
From mateusjunges/dotfiles, MIT.
More from mateusjunges/dotfiles
- 0.626score
deploying-laravel-cloud
mateusjunges
Deploys and manages Laravel applications on Laravel Cloud using the `cloud` CLI.
SkillAFreshness: A★ 8Claude Code +9 - 0.625score
babysit-pr
mateusjunges
Monitor a pull request through review and CI.
SkillAFreshness: A★ 8Claude Code +9 - 0.621score
dsa-review
mateusjunges
Review recent spike/work for data structures or organizing models that would materially simplify the code.
SkillAFreshness: A★ 8Claude Code +9 - 0.621score
file-pr
mateusjunges
File a concise pull request.
SkillAFreshness: A★ 8Claude Code +9
Signals
- Stars
- 8
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 26, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/mateusjunges/dotfiles
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from mateusjunges
- 0.626score
deploying-laravel-cloud
mateusjunges
Deploys and manages Laravel applications on Laravel Cloud using the `cloud` CLI.
SkillAFreshness: A★ 8Claude Code +9 - 0.625score
babysit-pr
mateusjunges
Monitor a pull request through review and CI.
SkillAFreshness: A★ 8Claude Code +9 - 0.621score
dsa-review
mateusjunges
Review recent spike/work for data structures or organizing models that would materially simplify the code.
SkillAFreshness: A★ 8Claude Code +9 - 0.621score
file-pr
mateusjunges
File a concise pull request.
SkillAFreshness: A★ 8Claude Code +9
Cite this page
file-upload skill. Agent Mart. https://agentmart.dev/skills/mateusjunges-file-upload (last updated 2026-10-24)