| name | create-pr |
| description | PRを作成するスキル。変更内容を分析し、雲・雨・傘論法でPR概要を自動生成してghコマンドでPRを作成する。「PR作って」「プルリク作成」「create-pr」「/create-pr」などで起動する。 |
| user_invocable | true |
Create PR
変更内容を分析し、プロジェクトのPRテンプレートに沿ったPRを作成する。
ワークフロー
ステップ 1: 変更内容の分析
以下を並列で実行し、PR本文の材料にする:
git diff origin/main...HEAD
git log origin/main..HEAD --oneline
Note: コミット一覧の検証(余計なコミットの混入チェック)は check-pr-commits.sh フックが gh pr create 実行前に自動で行う。未コミットの変更やpush状態のチェックもフックに任せてよい。
ステップ 2: PR本文を作成する
.github/pull_request_template.md を読み込み、テンプレートに沿ってPR本文を作成する。
概要セクション(雲・雨・傘論法)
変更の全コミットを分析して3行で書く:
- 1行目(雲 = 背景): なぜこの変更が必要になったか。現状の課題や状況
- 2行目(雨 = 必要性): そのまま放置するとどうなるか、何が足りないか
- 3行目(傘 = 変更内容): それに対してこのPRで何をしたか
例:
- CIがテスト実行のみで、ビルド検証やインフラ差分確認ができていない
- コードが壊れたまま本番デプロイされるリスクがある
- 変更パターンに応じてtest/build/terraform plan/container checkを実行するCIパイプラインを構築した
変更内容セクション
コミット単位ではなく、論理的なまとまりごとに見出し(##)で区切って書く。
書き方のルール:
- まとまりが大きい場合は
## 見出し + 1行の要約 + 箇条書き or 表の構成にする
- 繰り返し同様の構造を持つ説明(ファイル×修正内容、ワークフロー×条件×動作など)は箇条書きではなく表にする
- 見出し・表・箇条書きを使い分けて構造を意識して記述する。ベタ書きの箇条書きが続く状態は避ける
- 1つの箇条書きに複数の情報を詰め込まない。1項目1トピック
- ファイル名はバッククォートで囲む
- 小さな変更は「その他」にまとめてよい
悪い例(読みづらい):
- **CI ワークフロー** (`ci.yml`): `.md`等を除く全変更で `pnpm test` + `pnpm typecheck` + `pnpm build` を実行。旧`vitest.yml`を置換
良い例(読みやすい):
## GitHub Actions ワークフロー(4ファイル新規作成、1ファイル削除)
`vitest.yml`(テストのみ)を廃止し、以下4つのワークフローに置き換えた。
| ワークフロー | いつ動くか | 何をするか |
|---|---|---|
| `ci.yml` | `.md`等を除く全変更 | test → typecheck → build |
確認したことセクション
チェックボックス形式で書く。実際に確認した内容のみ記載する。
- [x] 全パターン変更(本PR): CI / Container Check / Merge Gate が全て success
- [x] `.md` のみ変更: Merge Gate のみ即success(他ワークフローは未発動)
- [x] ローカルで `pnpm typecheck` が通ること
参考セクション
実装時に参照した公式ドキュメント、Issue、PRなどのURLを記載する。実際に参照したものだけを書き、関連しそうというだけで載せない。なければセクションごと省略。
補足セクション
レビュアーに伝えておくべき注意点、今後の課題、意図的にスコープ外にしたことなどを書く。なければセクションごと省略。
ステップ 3: PRを作成する
gh pr create --title "タイトル" --body "$(cat <<'EOF'
本文
EOF
)"
- タイトルは70文字以内
- 日本語で自然な文章にする(体言止めや英語混じりの箇条書きスタイルにしない)
- 実装詳細(手法やツール名)ではなく、何をしたかを書く
- 良い例: 「CIパイプラインを整備し、既存のTypeScriptエラーを修正した」
- 悪い例: 「CI/CDパイプライン構築: paths-filter + マージゲート方式」
- 本文の末尾に
🤖 Generated with [Claude Code](https://claude.com/claude-code) を付与
ステップ 4: 結果を報告する
PR URLをユーザーに返す。
ステップ 5: スキルの自己改善
このスキルを使ってPRを作成した結果、改善した方が良いと考える点がある場合は、ユーザーに相談した上でこのスキルファイル自体を更新すること。