AgentSkillsCN

create-pr

从当前提交创建 Pull Request。

SKILL.md
--- frontmatter
name: create-pr
description: 現在のコミットからPRを作成します。
argument-hint: [-b <base-branch>] [-d (draft)] [-p (prompt付与)]
model: sonnet
context: fork

PRを作成

以下の手順でPRを作成してください。

1. 引数のパース

引数は以下のオプションを受け付けます:

  • -b <base-branch>: ベースブランチを指定(デフォルト: main
  • -d: ドラフトPRとして作成
  • -p: セッションのプロンプトをPR本文に付与

例:

  • /create-pr → mainベースで通常PR
  • /create-pr -b production → productionベースで通常PR
  • /create-pr -d → mainベースでドラフトPR
  • /create-pr -b production -d → productionベースでドラフトPR
  • /create-pr -p → mainベースで通常PR(プロンプト付き)
  • /create-pr -b production -d -p → productionベースでドラフトPR(プロンプト付き)

2. ベースブランチの決定

  • -bオプションが指定されている場合: そのブランチをベースにする
  • -bオプションが指定されていない場合: main をベースにする

3. 事前確認

bash
git status
git log --oneline <ベースブランチ>..HEAD
git diff <ベースブランチ>...HEAD --stat

4. プロンプト取得(-pオプション指定時のみ)

-pオプションが指定されている場合、以下の手順でプロンプトを取得してください:

  1. /export-prompt コマンドを実行してセッションのプロンプトを取得する
  2. 取得したプロンプトを保持しておく(後のPR本文作成で使用)

5. PR作成

テンプレート(@.github/PULL_REQUEST_TEMPLATE.md )を使用してPR本文を作成してください。

PRタイトルと説明欄の自動生成

  • PRタイトル: コミットログの内容を要約して日本語で簡潔に表現
  • なにをやったか: コミットログを分析し自動生成
  • なぜやったのか: コミットログを分析し自動生成

重要: ユーザーに入力を求めて停止してはいけません。コミットログから自動的に生成してください。

プロンプトの記載(-pオプション指定時のみ)

-pオプションが指定されている場合、テンプレートの最後に以下の形式で追記してください:

重要: バッククォート(`)はMarkdownの記法として使用するため、エスケープせずそのまま出力してください。

markdown
## :robot: プロンプト

<details>
<summary>プロンプト</summary>
<p>

```
[取得したプロンプト内容]
```

</p>
</details>

6. リモートにプッシュ

bash
git push -u origin <現在のブランチ名>

7. ghコマンドでPR作成

bash
# 通常PRの場合
gh pr create --base <ベースブランチ> --title "<PRタイトル>" --body "<本文>"

# ドラフトPRの場合(-dオプション指定時)
gh pr create --base <ベースブランチ> --title "<PRタイトル>" --body "<本文>" --draft
  • タイトルは日本語で、変更内容を簡潔に表現してください
  • 本文はテンプレートに沿って記述してください
  • 関連URLにリンクを記載する場合は、404ではなく正しくアクセスできるURLであることを確認してください
  • 関連URLには、変更対象のファイルへのリンクは記載しないでください(PRのdiffで確認できるため)
  • 関連URLは意味のあるリンクのみ記載してください。不要であれば空欄でも構いません

注意事項

  • このコマンドは最後まで必ず実行してください。
  • 新しいコミットは作成しないでください
  • 既存のコミットのみを使用してPRを作成してください
  • すべての記述は日本語で行ってください
  • 会話の中のコンテキストからコミットがされていないなど憶測をしないでください