Communitygithub.com

TrackerJo/github-pr-attachments

ローカルのPRスクリーンショットや録画を、GitHub CLIの`--attach`オプションを使ってGitHubにアップロードします。視覚的な証拠がレビュー証跡を生成したときや、ローカルの画像・動画をプルリクエストの本文やコメントに表示する必要があるときに使用します。

github-pr-attachments とは?

このスキルは、ビルドパデュー(BuildPurdue)プロジェクトにおけるプルリクエストのスクリーンショットや録画を、GitHubを承認済みホストとしてアップロードするためのものです。`visual-proof` で取得したローカルの証拠ファイルを、リポジトリにコミットせずにGitHub上のPR添付ファイルとして公開できるようにします。GitHub CLIの `gh pr edit --attach` コマンドを利用し、ローカルのMarkdownファイルに埋め込まれたメディアパスを自動的にGitHubホストのURLに書き換えるワークフローが推奨されています。このスキルは、Claude CodeやCursor、CodexなどのAIエージェントが、PRレビューのための視覚的証拠を安全かつ効率的に管理するために使用することを想定しています。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/TrackerJo/buildpurdue/tree/main/.agents/skills/github-pr-attachments

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

プレビュー

スキル README より

Before: モバイルイベントページ
After: モバイルイベントページ

ドキュメント

GitHub PR 添付ファイル

GitHub自体が、BuildPurdue PRのスクリーンショットと録画の承認済みホストです。 このスキルは、無視されたローカルの証拠を、メディアをリポジトリにコミットせずにGitHubホストのPR添付ファイルに変換します。

visual-proof が証拠をキャプチャした後、ユーザーから見えるPRが準備完了と呼べるようになる前に、このスキルを使用してください。

前提条件

  1. 証拠ファイルが存在し、無視された artifacts/ ディレクトリ下にあることを確認します。
  2. gh auth status で、このリポジトリに対してGitHub CLIが認証されていることを確認します。
  3. インストールされているCLIが添付ファイル機能をサポートしていることを確認します。該当コマンドのヘルプ(例:gh pr edit --help)で --attach オプションを確認してください。
  4. 対象のPRと最新のプッシュコミットが、証明しようとしているものであることを確認します。

コマンド自体が直接答えられる場合は、gh のバージョン文字列から添付ファイルのサポートを推測しないでください。

推奨ワークフロー:証拠を埋め込んだPR本文

スクリーンショットにキャプションやBefore/After表、特定の順序が必要な場合は、PR本文を無視されたローカルのMarkdownファイルに書き込み、通常通りローカルメディアパスを参照します:

## 視覚的証拠

| Before | After |
| --- | --- |
| ![Before: モバイルイベントページ](artifacts/event-before-phone.png) | ![After: モバイルイベントページ](artifacts/event-after-phone.png) |

[インタラクション録画](artifacts/event-flow.mp4)

次に、本文を公開し、参照されているすべてのメディアファイルを同じコマンドで添付します:

gh pr edit <pr> \
  --body-file artifacts/pr-body.md \
  --attach artifacts/event-before-phone.png \
  --attach artifacts/event-after-phone.png \
  --attach artifacts/event-flow.mp4

GitHub CLIはファイルをアップロードし、一致するローカルのMarkdown参照を、結果として得られるGitHubホストの添付ファイルURLに書き換えます。これはURLを手動で貼り付けるよりも推奨されます。アップロード前でも本文が読みやすく、最終的なURLをGitHubが所有するためです。

追加専用の証拠

レイアウトが重要でない場合、画像や動画はPR本文を置き換えずに追加できます:

gh pr edit <pr> --attach 'artifacts/after.png#After: 修正されたモバイルレイアウト'

複数のファイルに対して --attach を繰り返します。スクリーンショットには有用な代替テキストを使用してください。動画は代替テキストを受け付けません。

PR本文の代わりに証拠コメントを追加する場合:

gh pr comment <pr> \
  --body-file artifacts/evidence-comment.md \
  --attach artifacts/after.png \
  --attach artifacts/interaction.mp4

公開の確認

コマンドの終了コードとPR自体を別々のチェックとして扱います。GitHubは一部のファイルを正常にアップロードしても、別の添付ファイルが失敗することがあります。

アップロード後は毎回:

  1. コマンドの終了ステータスを確認します。
  2. GitHubからPR本文またはコメントを再読み込みします。
  3. 必要なすべてのローカルパスがGitHubホストのURLに置き換えられていることを確認します。
  4. ローカルMarkdownパスの不一致によって重複した添付ファイルが追加されていないことを確認します。
  5. アクティブなハーネスがサポートしている場合は、PRから投稿されたメディアを開きます。
  6. メディアが最新のプッシュコミットを証明しており、秘密情報、トークン、個人データ、メールアドレス、OTP、無関係なユーザーコンテンツを含まないことを確認します。

必要な添付ファイルが欠落しているか古い場合、PRは準備完了ではありません。

厳格な制限

  • PR専用のスクリーンショットや録画を決してコミットしないでください。 証拠をリンク可能にするためだけに .github/pr-assets/、public/pr-assets/、ドキュメントメディア、またはその他の追跡対象アセットディレクトリを追加しないでください。
  • BuildPurdue PRの証拠にサードパーティのファイルホストを決して使用しないでください。 ユーザーが特定のケースに対してそのホストを明示的に承認した場合を除きます。
  • 添付ファイルURLを決して発明、予測、手動構築しないでください。 GitHubによって返却または書き込まれたURLのみを使用してください。
  • アップロードツールが不足しているために visual-proof 要件を弱めないでください。 --attach が利用できない場合は、その正確な前提条件を報告し、PRを準備完了としないでください。
  • 機密性の高いキャプチャを公開しないでください。 アップロード前に編集または再キャプチャしてください。
  • ローカルの証拠は artifacts/ に保持してください。これは意図的にgitignoreされており、GitHubホストの証拠が確認されたら削除できます。

これが存在する理由

これはT3 Codeと同じ運用ルールに従っています。つまり、ユーザーから見える変更にはレビュー可能な視覚的証拠が伴い、その証拠はGitHubにアップロードされ、PR専用のスクリーンショットが製品履歴にコミットされることは決してありません。

GitHubのCLI添付ファイル機能は、ブラウザのペースト/ドロップのように動作します。画像や動画をGitHubにアップロードし、ホストされたURLをPRまたはコメントに挿入します。

出典

ソース

このコピーは .agents/skills/ の下で編集してください。pre-commitフックがそれを .claude/skills/ にミラーリングします。ミラーを直接編集しないでください。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

関連スキル