prlisted
Install: claude install-skill devbasex/ai-plugins
# PR作成
このプロジェクトのコードをcommit, pushし、GitHubでPull Requestを作成する。既にPRがあればPR説明を最新の変更内容に更新する。
**制約**: デフォルトブランチ(main, masterなど)で直接コミット禁止
## 使用方法
```
/ndf:pr # main へ通常PR作成
/ndf:pr --draft # main へドラフトPR作成
/ndf:pr "新機能の追加" # コミットメッセージ指定
/ndf:pr --draft "wip: 作業中" # ドラフトPR + メッセージ指定
/ndf:pr qa/staging # base非main → cherry-pick-prへ誘導
```
## 引数の解釈
- `--draft` が含まれていればドラフトPR
- 既知のベースブランチ名(`main`, `master`, `qa/*`, `release/*`, `staging/*` 等)が末尾にあればベース指定
- それ以外の文字列はコミットメッセージとして扱う
- デフォルトは `main` ベース、非ドラフト
## push / PR 作成前の同意取得(必須)
push と PR 作成は外部(GitHub)への書き込みで、取り消しには追加の操作が要る。
この Skill は自然文の依頼でも起動するため、安全性はこの手順で担保する
(frontmatter の発動制御には依存しない)。
**手順 4(プッシュ)と手順 5(PR 作成)の直前に、次を提示する。**
- push 先のブランチ名と、PR のベースブランチ
- コミット対象のファイル一覧(`git status --short`)と変更量(`git diff --stat`)
- 使用するコミットメッセージ
- 既存 PR の有無(新規作成なのか、既存 PR の更新なのか)
同意の扱い:
- 利用者の依頼が push と PR 作成まで明示的に含む場合(`/ndf:pr` の明示起動、
「コミットしてPRを作って」等)は、その依頼を同意とみなしてよい。提示は行い、
結果報告に含める
- それ以外(作業の流れで暗黙に起動した場合)は、提示したうえで**明示的な同意を得てから
push する**。同意が得られなければ commit までで止め、push も PR 作成も行わない
- ベースブランチが `main`/`master` 以外の場合は、手順 2 の誘導を優先する
## 手順
### 0. PR確認
- `git branch --show-current` で現在ブランチを確認
- `gh pr list --head <branch>` で既存PR確認
- 既にPRが存在しOPEN状態なら:
- `git add` → `git commit`(日本語メッセージ)→ **「push / PR 作成前の同意取得」に従って提示** → `git push`
- **既存PR説明を更新** する(「PR説明の更新」節を参照)
- **手順 6 の完了報告を行う**(PR を更新しただけの場合も省略しない)
- PRがない、またはmerge/close済みなら次へ
### 1. ブランチ確認・切り替え
- デフォ