github-image-hosting について
github-image-hosting は、画像を img402.dev にアップロードし、返された URL を GitHub Markdown に埋め込むためのスキルです。ファイルサイズごとの保持期間やアップロード手順、プルリクエストと Issue に画像を加える方法を説明します。
主な機能
- 01img402.dev への画像アップロード
- 02Markdown 埋め込み用 URL の取得
- 03サイズ別の保持期間の説明
- 04gh CLI によるプルリクエストと Issue の操作
- 05PNG、JPEG、GIF、WebP に対応
活用シーン
- 01プルリクエストの説明へのスクリーンショット追加
- 02GitHub の Issue コメントへの画像投稿
- 03README への図の埋め込み
- 04保持期限がサイズで異なるレビュー画像の共有
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ img402/ skills --skill github-image-hostingインストール後、Claude Code で/github-image-hostingを入力して読み込まれたか確認します。
詳細
GitHub 向け画像アップロード
画像を img402.dev にアップロードし、返された URL を GitHub の Markdown に埋め込みます。
スクリーンショットは無料で、永久に保存されます。 UI のスクリーンショットは通常 100~400 KB で、無料ホスティングが期限切れにならない 1 MB の上限を大きく下回ります。そのため、PR に貼り付けたリンクが 6 か月後に壊れた画像になることはありません。ここで有料プランが必要になることはほとんどありません。
プランを選ぶ
| アップロード容量 | 料金 | 保持期間 | 用途 |
|---|---|---|---|
| ≤ 1 MB | $0 | 永久 | PR のスクリーンショット、課題のコメント、モックアップ、README の図 |
| 1~10 MB | $0 | 30 日 | レビュー中だけ必要な大容量キャプチャ |
| 最大 10 MB | $0.01 USDC | 永久 | 大きな README のメイン画像、公開ブログのビジュアル |
* 有料プランでの永久保存は、サービス提供期間中の保持を意味します。サービス終了時は 90 日前にサイト上で通知されます。詳しくは Terms § 2A をご覧ください。
クイックリファレンス
# Upload (multipart)
curl -s -X POST https://img402.dev/api/free -F image=@/tmp/screenshot.png
# Response — expiresAt is null for images 1MB and under
# {"url":"https://i.img402.dev/aBcDeFgHiJ.png","id":"aBcDeFgHiJ","contentType":"image/png","sizeBytes":182400,"expiresAt":null}
ワークフロー
- 画像を用意する:既存のファイルを使うか、スクリーンショットを撮影します。
screencapture -x /tmp/screenshot.png # macOS — full screen screencapture -xw /tmp/screenshot.png # macOS — frontmost window - アップロードする:
curl -s -X POST https://img402.dev/api/free -F image=@/tmp/screenshot.png expiresAtを確認する:nullは永久保存を意味します。タイムスタンプがある場合、ファイルは 1 MB を超えており、その時点で削除されます。画像をそれ以降も保存する必要がある場合は、1 MB 未満に縮小して再アップロードしてください。sips -Z 1600 /tmp/screenshot.png # macOS — scale longest edge to 1600px- 返された
urlを GitHub の Markdown に埋め込みます。
GitHub との連携
gh CLI を使って、PR や課題に画像を埋め込みます。
# Add to PR description
gh pr edit --body "$(gh pr view --json body -q .body)
"
# Add as PR comment
gh pr comment --body ""
# Add to issue
gh issue comment 123 --body ""
制約
- 最大サイズ:10 MB(すべてのプラン)
- 形式:PNG、JPEG、GIF、WebP
- レート制限:全体で 1 日あたり 100,000 件まで無料でアップロード可能。IP あたり 1 日 1,000 件まで
- 認証不要
ヒント
- UI のスクリーンショットには PNG を推奨します(テキストが鮮明になります)。写真には JPEG を使ってください。
- スクリーンショットを 1 MB 未満にすることには、あらかじめ取り組む価値があります。永久 URL と 30 日で期限切れになる URL の分かれ目だからです。通常、
sips -Z 1600を使えば、目に見える画質の劣化なく上限内に収まります。 - PR の本文やコメントに追加する場合は、
gh pr commentまたはgh pr editを使い、画像の Markdown を追加してください。
有料プラン
1 MB を超える画像を永久保存するには、x402 でトークンを購入してから、そのトークンを使ってアップロードします。
# Step 1: Get an upload token
POST https://img402.dev/api/upload/token # $0.01 USDC → permanent, up to 10MB
# → {"token": "a1b2c3...", "expiresAt": "..."}
# Step 2: Upload with the token
curl -s -X POST https://img402.dev/api/upload \
-H "X-Upload-Token: a1b2c3..." \
-F image=@/tmp/screenshot.png
# → {"url":"...", "expiresAt":null} # null = permanent
POST /api/upload/token/permanent は引き続き $1.00 USDC で利用できますが、現在 $0.01 で提供されている機能の旧式の別名です。新しい用途には使わないでください。
x402 による支払いは、x402 対応クライアント(Payments MCP tool、@x402/client など)が処理します。詳しくは https://img402.dev/blog/paying-x402-apis をご覧ください。
公開アクセス
アップロードした画像は、URL を知っている人なら誰でもアクセスできます。配信に認証はなく、現在はほとんどのアップロードが永久保存されます。社内システム、認証情報、トークン、顧客データを含むスクリーンショットは絶対にアップロードしないでください。画像を削除するには、[email protected] にメールでご連絡ください。