update-pr reference
update-pr は、既存 PR のタイトルと本文を現在の base…HEAD、検証、CI、review、E2E の状態に合わせて更新する skill である。
古い本文へ経緯を追記するのではなく、初見の reviewer が今の変更だけを判断できる説明へ整える。
使いどころ
- 追加 commit 後に PR 本文を現在の差分へ合わせたい
- CI、review、E2E、手元検証の確定結果を反映したい
- PR タイトル、本文、または両方を更新したい
- PR 作成後の暫定表現や古い説明を解消したい
PR URL または番号を指定できる。 指定がなければ現在 branch に対応する PR を探し、見つからなければ更新せず停止する。
| 指定 | 意味 |
|---|---|
PR番号 / PR URL |
更新する PR を指定する |
pr-writing-review=auto |
本文検査で確認が必要な時だけ、実行 runtime の reviewer gate を使う |
pr-writing-review=codex / pr-writing-review=claude / pr-writing-review=copilot |
指定した reviewer で本文を確認する |
pr-writing-review=off |
本文 reviewer を明示的に使わない |
まず何が起きるか
- PR の current title、本文、base、head、diff、commit、linked Issue を取得する。コミット履歴は
baseRefNameで実 base branch を特定し、git fetch origin "$base"後の"origin/$base"..HEADを基準にする。 - GitHub 上の CI、現在セッションの検証、review、E2E から確認済みの実結果を集める。
- base…HEAD の最終差分を基準に、タイトルと本文を再構成する。
- 本文の読みやすさ、証跡、Issue との重複、内部運用語の混入を検査する。
- 必要な場合だけ本文 reviewer の指摘を反映し、再検査する。
- 更新 scope と許可を確認し、
review-orchestrator pr-publication updateで更新する。 - GitHub から current title と本文を読み直し、更新結果を報告する。
gh pr edit は直接使わない。
更新前に PR が別の操作で変わっていた場合は、その内容を上書きせず最新状態の読み直しへ戻る。
本文の更新方針
利用者が追記や局所修正を明示していない限り、本文全体を現在の最終差分から組み直す。 レビュー指摘への対応や以前の方式など、実装中の時系列は残さない。
- 変更前の問題、変更後の状態、判断理由、review focus を本文単体で読めるようにする。
- linked Issue の背景は必要な分だけ使い、Issue 全文を順番に言い換えない。
- narrative の先頭は課題と実現した状態を合計2〜4文、300字以内でまとめる。
Closes #N/Fixes #Nと実装イメージ: [design doc](URL)形式の Design doc link は、現在の実装対象に合うものだけ保持する。- stale な将来形 status は、取得できた実結果または理由付き未確認へ更新する。
e2e=finalなどの内部 workflow 用語は、対象自体を説明する場合を除き reviewer 向けの表現へ置き換える。
GitHub に投稿する PR 本文の inline code は Markdown の backtick を使い、raw HTML の <code>...</code> は生成しない。
日本語のタイトルと本文は Public Wording Guard、why-led、readability gate に加えて stop-ai-slop-jp の観点でも確認する。
検証と証跡
更新時に参照できるのは、GitHub から取得した current state、現在セッションで実行した command、review / E2E の証跡、利用者が明示した結果である。 取得できない結果を推測して成功済みと書かない。
- 実行済みの command は command、終了状態、結果が分かる transcript を載せる。
- E2E は実施内容、結果、log、screenshot、run URL のいずれかを載せる。要約だけで成功扱いにしない。
- E2E を実施していない場合は、同じ行に理由を書く。
- UI 変更の before / after 画像は折りたたまず、reviewer が比較できる位置に置く。
- local path だけの証跡は公開せず、本文内の transcript または GitHub から読める link に変換する。
小さな text artifact は本文へ埋め込み、画像、binary、大きな text は公開用 URL へ変換する。 artifact の公開で PR branch の diff は変更しない。
更新 scope と許可
案の提示、preview、確認だけを求められた場合は、PR を更新しない。 現在の依頼から対象 PR と更新範囲が一意なら、生成内容の品質検査と提示後に同じ更新可否を再質問せず進める。
親 workflow から呼ばれた場合も、同じ PR、更新範囲、mutation を許可する指示が必要である。 scope、公開 API、設定形式、画面上の挙動に重要な未確定事項がある場合や、破壊的操作、承認 bypass、force push、秘匿情報の露出につながる場合は更新前に停止する。
公開結果
更新後は GitHub 上の current title と本文を確認し、反映した検証、CI、review、E2E の状態を報告する。 PR 本文には最新の実行 runtime を示す AI attribution フッターを自動付与し、正規の 1 block だけを残す。
linked Issue workflow が追加 commit 後も続く場合は、呼び出し元が PR と current HEAD の結び付きを更新する。 この skill は host profile 専用の section、marker、label を本文へ追加しない。
停止後の対応
- 対象 PR が見つからない、または更新 scope を一意に決められない場合は、PR と範囲を確認する。
- 本文検査で未解消の finding が残る場合は、本文を直して再検査する。修正 round の上限に達した場合は更新せず報告する。
- 指定した本文 reviewer を開始できない場合は、別 reviewer へ黙って変更しない。利用可能な transport と許可を確認する。
- 必要な検証や E2E 証跡が欠ける、または current HEAD と一致しない場合は、再実行か理由付き未実施へ戻す。
- 更新直前に GitHub 上の本文が変わった場合は、最新本文を読み直して案を作り直す。
- 更新 request 後の確認に失敗した場合は、GitHub の current state を取得し、反映済みか未反映かを確定してから再開する。
失敗時に gh pr edit を直接呼んで guard を回避しない。
複数行本文は shell の inline 引数へ埋め込まず、安全な本文ファイルとして渡す。
Related Docs
- create-pr reference
- Issue workflow skill guide
claude/skills/update-pr/SKILL.mdclaude/skills/create-pr/references/pr-writing-guidelines.mdclaude/skills/create-pr/references/pr-body-reformat-gate.md