| name | pr-create |
| description | IssueとCommit履歴からPR descriptionを生成しgh pr createする。課題・解決策・やったこと・やらなかったこと・証跡を含む技術ブログ風のPR bodyを作る。「PRを作りたい」「プルリクエストを作成する」「変更をPRにまとめたい」時に使う。 |
pr-create — 意図と差分のセットでPRを生成
IssueにあるWhy(意図)とコミット履歴のWhat(差分)を紐付け、レビュアーがコードを読む前に全体像を把握できるPR bodyを生成する。
Step 1: コンテキスト収集
git branch --show-current
git log main...HEAD --oneline
git diff main...HEAD --stat
ブランチ名に Issue番号が含まれる場合(feature/#42-... 形式)は自動抽出。
含まれない場合はユーザーに Issue番号を確認する。
gh issue view <番号>
Step 2: PR bodyの生成
以下のテンプレートに沿って生成する。Issueの「やらないこと」欄を必ず引用すること。
## 課題
<!-- Issueから引用。背景・動機を1〜2行で -->
Closes #<番号>
<課題の説明>
## 解決策・意図
<!-- Issueの「解決策の意図」から引用。なぜこのアプローチを選んだか。代替案と除外理由があれば -->
<解決策の説明>
## やったこと
<!-- git logのコミット単位でサマリー。コミットメッセージから生成 -->
- `<commit-type>`: <1行説明>
- `<commit-type>`: <1行説明>
## やらなかったこと
<!-- Issueの「やらないこと」から引用 + 実装中に追加で除外したものがあれば追記 -->
<!-- これがあることでレビュアーが「なぜないのか」を疑問に思わずに済む -->
- <Issueで決めていたスコープ外>(理由: <Issue参照 or 1行>)
- <実装中に気づいた次回対応>(理由: <1行>)
## 証跡
<!-- UIの変更があればスクリーンショット必須。APIならレスポンス例またはテスト結果 -->
## 参考
<!-- 関連するIssue・Slack thread・外部ドキュメント・参考記事 -->
- #<Issue番号>
Step 3: スクリーンショットの確認
変更にUI要素が含まれる場合(コンポーザブル・画面・ダイアログ等):
UI変更が含まれています。PRを作成する前にスクリーンショットを撮影してください。
証跡セクションに画像を添付してから /pr-create を再実行するか、PR作成後に画像を追記してください。
Step 4: レビュアーへの確認
生成したbodyを表示し「このPR bodyでよいですか?」と確認する。
Step 5: PR作成
gh pr create \
--title "<type>(<scope>): <subject>" \
--body "<生成したbody>" \
--assignee "@me"
ドラフトとして作成したい場合は --draft を追加する。
Step 6: 完了後の案内
PR #<番号> を作成しました:
次のステップ:
- レビュアーをアサインしてください(
gh pr edit <番号> --add-reviewer <user>)
- セルフレビューするなら
/pr-review #<番号> を使ってください
- CI が通るまで待ちましょう