gh-upload
Installation
SKILL.md
gh-upload
gh cannot attach files. POST https://uploads.github.com/user-attachments/assets can — it is the endpoint behind drag-and-drop in the web UI. No browser, no computer use.
Assets inherit repo visibility: upload against a private repo and the URL 404s for anyone without access. That is the reason to prefer this over an external host for anything going into a GitHub body.
1. Get the numeric repo id
REPO_ID=$(gh api repos/{owner}/{repo} --jq .id) # e.g. 169221790
It must be the numeric id. gh repo view --json id returns a GraphQL node id (MDEwOlJlcG9zaXRvcnkx…) — that 404s.