create-pr
gh pr createを使用して高品質なプルリクエストを作成できます。ユーザーがプルリクエストの作成、提出、オープン、レビュー申請、またはレビュー用の変更をプッシュしたいときに使用します。以下のトリガーで動作します:プルリクエストを作成、create-pr、プルリクエストを提出、プルリクエストをオープン、レビュー申請、プルリクエストを作成、gh pr create。
description の原文を見る
Create high-quality pull requests via gh pr create. Use when the user wants to create a PR, submit a PR, open a pull request, submit for review, or push changes for review. Triggers on: create a pr, create-pr, submit a pr, open a pull request, submit for review, make a pr, gh pr create.
SKILL.md 本文
PR クリエーター
ベストプラクティスに従い、レビュアーフレンドリーでよく構成されたプルリクエストを作成します。
重要: このスキルは常に PR の作成をもたらさなければなりません。途中で停止しないでください。別のコマンドを実行するようユーザーに指示しないでください。前提条件(コミット、ブランチ作成、プッシュ)をすべてインラインで処理し、gh pr create に進めてください。
ワークフロー
ステップ 1: プリフライトチェック
その他すべての前に、これらのチェックを実行します:
- GitHub CLI 認証を確認 —
gh api user --jq '.login'を実行して CLI が認証されていることを確認します。これが失敗する場合、ユーザーにgh auth loginを実行するよう指示して停止します。 - ベースブランチを確認 — デフォルトは
mainです。ユーザーが異なるベースを指定する場合はそれを使用します。$BASE_BRANCHとしてキャプチャします。
ステップ 2: コミットされていない変更をコミット
git status を実行してコミットされていない変更がないか確認します。コミットされていない変更がある場合は、別のスキルに委譲せず、ユーザーに先にコミットするよう指示せず、直接 コミットします。
- 変更をステージング — 関連する変更/未追跡ファイルに対して
git add <files>を実行します。.envまたは gitignore ファイルをステージングしないでください。 - リント とフォーマット — Python ファイルがステージングされている場合は、以下を実行します:
変更されたファイルを再度ステージングします。ruff check --fix <files> && ruff format <files> - コミット — ステージングされた diff に基づいて従来のコミットメッセージを作成します:
プリコミットフックが ファイルを変更した場合は、git commit -m "<type>: <description>"git add -uで再度ステージングして再試行します(最大 3 回まで)。
ステップ 3: フィーチャーブランチの確認
- 現在のブランチを確認 —
git branch --show-currentを実行します。 $BASE_BRANCHにある場合、フィーチャーブランチを作成します:- コミット/変更を分析して、わかりやすい名前を選択します(例:
feat/add-auth、fix/login-bug) git checkout -b <branch-name>を実行します
- コミット/変更を分析して、わかりやすい名前を選択します(例:
- 異なるブランチにある場合、ブランチに
$BASE_BRANCHと比較して PR に値するコミットがあるか確認します:git log $BASE_BRANCH..HEAD --onelineを実行します- コミットがある場合は、現在のブランチをそのまま使用します
- コミットがない場合(ブランチがベースと同じポイントにある)、何か問題が発生しています — 調査して修正します
ステップ 4: ベースブランチと同期
- 最新情報を取得 —
git fetch origin $BASE_BRANCHを実行します - 分岐を確認 —
git log HEAD..origin/$BASE_BRANCH --onelineを実行します - 必要に応じてリベース — ベースブランチに新しいコミットがある場合:
a.
git rebase origin/$BASE_BRANCHを実行します b. コンフリクトが発生した場合は、ユーザーに表示します — 両側を表示して、どちらを保持するか尋ねます。サイレントに解決しないでください。 c. 解決後、git add <file>とgit rebase --continueを実行します
ステップ 5: プッシュ
ブランチをリモートにプッシュします:
git push -u origin HEAD
プッシュが拒否された場合(例: リベース後の分岐した履歴)、git push --force-with-lease -u origin HEAD を使用します。
ステップ 6: 変更を分析し PR ドラフトを作成
- 分析 — これらを並列に実行します:
git log $BASE_BRANCH..HEAD --oneline— すべてのコミットgit diff $BASE_BRANCH...HEAD --stat— ファイル変更の概要git diff $BASE_BRANCH...HEAD— 完全な diff
- PR サイズを確認 — 500 行以上変更されている場合は、ユーザーに警告しますが続行します。
- タイトルのドラフト — 70 文字以下、従来のプリフィックス(
feat:、fix:、refactor:、docs:、chore:)。 - このテンプレートを使用してボディのドラフトを作成します:
## Summary
<何が変更され、なぜ変更されたかを説明する 1 ~ 5 個の箇条書き>
## Changes
<何が変更されたかのカテゴリー化されたリスト — 領域/関心事でグループ化>
## Diagrams
<オプション — ワークフロー またはアーキテクチャ変更を視覚的に明確にする場合は Mermaid ダイアグラムを含めます>
## Test Plan
<変更がどのように検証されたか — 手動テストステップ、実行された自動テスト、curl コマンドなど>
ガイドライン:
- 「何」だけでなく「なぜ」を説明します
- WIP PR の場合は、
[WIP]プリフィックスの代わりに--draftフラグを使用します - ワークフロー またはアーキテクチャを明確にする場合は Mermaid ダイアグラムを含めます
- 「Generated with Claude Code」フッターやボット属性を含めないでください
Co-Authored-By行を含めないでください
ステップ 7: PR を作成
ボディを一時ファイルに書き込んで PR を作成します:
cat > /tmp/pr_body.md <<'EOF'
## Summary
...
## Changes
...
## Test Plan
...
EOF
gh pr create --title "the pr title" --base $BASE_BRANCH --body-file /tmp/pr_body.md
オプションフラグ:
- WIP/ドラフト:
--draftを追加します - レビュアー:
--reviewer <handle>を追加します - アサイニー:
--assignee <handle>を追加します
追加しないでください:
--authorフラグ(gh は認証されたユーザーを自動的に使用します)Co-Authored-Byトレーラー- 「Generated with Claude Code」フッター
ステップ 8: レポート
- PR URL を返すので、ユーザーがレビューできます
gh pr createが失敗した場合は、エラーを診断し、修正を加えて再試行します
ベストプラクティス
コミット履歴: コミット履歴がまとまりがない場合は、PR 作成前にリベースしてクリーンアップすることを提案します。
フィードバックリクエスト: ユーザーが特定のフィードバックを望むことを言及した場合は、ボディに「Feedback Requested」セクションを追加します。
スクリーンショット: フロントエンドの変更の場合は、ユーザーに作成後 PR にスクリーンショットまたは録画を追加するよう指示します。
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- ReflexioAI
- リポジトリ
- ReflexioAI/reflexio
- ライセンス
- Apache-2.0
- 最終更新
- 2026/5/12
Source: https://github.com/ReflexioAI/reflexio / ライセンス: Apache-2.0