Skip to content
Back to skills

Create Pr Octkp

ASecurity

JIRAチケットブランチからPRを自動作成するスキル。親ブランチ自動検出、JIRAリンク自動挿入、テンプレートに沿ったPR本文生成を行う。「PR作成」「PRを作って」「/create-pr」などのリクエストで使用。

  • 57 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 17, 2026
code-qualitybashgit

Works with

  • cli

Security analysis

A100/100

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill create-pr-octkp --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Create Pr Octkp?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Create Pr Octkp
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-create-pr-octkp/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-create-pr-octkp)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: create-pr
description: JIRAチケットブランチからPRを自動作成するスキル。親ブランチ自動検出、JIRAリンク自動挿入、テンプレートに沿ったPR本文生成を行う。「PR作成」「PRを作って」「/create-pr」などのリクエストで使用。
---

# Create PR Skill

JIRAチケット番号のブランチからPull Requestを自動作成する。親ブランチの自動検出、JIRAリンクの自動挿入、テンプレートに沿った本文生成を行う。

## 使用方法

```
/create-pr
```

引数なしで実行。現在のブランチ名とgit履歴から全て自動判定する。

## 実行手順

### Step 1: 事前チェック

1. `git branch --show-current` でブランチ名を取得
2. ブランチ名が `main` または `develop` の場合はエラー終了:
   - 「main/developブランチ上ではPRを作成できません。フィーチャーブランチに切り替えてください。」
3. `gh auth status` で認証状態を確認。未認証ならエラー:
   - 「gh CLIが未認証です。`gh auth login` を実行してください。」
4. `gh pr list --head {ブランチ名} --json url --jq '.[0].url'` で既存PRを確認。存在する場合:
   - 「既存のPRが見つかりました: {URL}」と表示して終了
5. `git status --porcelain` で未コミット変更を確認。ある場合:
   - 「未コミットの変更があります。先にコミットすることを推奨します。」と警告(続行は可能)

### Step 2: 親ブランチ検出

以下の優先順で親ブランチを特定する:

#### 方法A: merge-base距離比較(推奨)

```bash
git fetch origin
CURRENT=$(git branch --show-current)
git branch -r --list 'origin/*' | grep -v "origin/$CURRENT" | grep -v 'origin/HEAD' | while read branch; do
  echo "$(git rev-list --count $(git merge-base HEAD $branch)..HEAD) $branch"
done | sort -n | head -1 | awk '{print $2}' | sed 's|origin/||'
```

最もmerge-baseが近い(= 分岐元に近い)リモートブランチを親とする。

#### 方法B: 直前のブランチ

方法Aで結果が得られない場合:

```bash
git rev-parse --abbrev-ref @{-1}
```

#### フォールバック

いずれも失敗した場合、AskUserQuestionでユーザーに確認する:
- 「親ブランチ(PRのマージ先)を指定してください」
- 選択肢: `main`, `develop`, その他

### Step 3: 差分収集

```bash
git diff origin/{parent}...HEAD --stat
git log origin/{parent}..HEAD --oneline
```

差分の内容とコミットメッセージを確認し、変更の概要を把握する。

### Step 4: PR本文生成

テンプレート(`templates/pr-template.md`)の構造に従い、PR本文を構築する:

- **概要**: 差分とコミットログから日本語で要約を自動生成
- **関連リンク**: `https://kokopelli-inc.atlassian.net/browse/{ブランチ名}` を自動挿入
- **動作確認**: 空欄のまま
- **特に見て欲しいところ**: 空欄のまま

### Step 5: プッシュ

リモートにブランチが存在しない場合:

```bash
git push -u origin {ブランチ名}
```

### Step 6: PR作成

```bash
gh pr create --base {parent} --title "{ブランチ名}: {変更の要約}" --body "$(cat <<'EOF'
# 📝 概要

{自動生成した要約}

# 🔗 関連リンク

- https://kokopelli-inc.atlassian.net/browse/{ブランチ名}

# 🧪 動作確認



# 👀 特に見て欲しいところ

EOF
)"
```

### Step 7: 結果表示

作成されたPRのURLを表示する。

## PRタイトル

- フォーマット: `{ブランチ名}: {変更の要約}`
- 例: `BAX-12345: チャットメンバー表示の不整合を修正`
- 要約は日本語で簡潔に(70文字以内)

## エラーハンドリング

| 状況 | 対応 |
|------|------|
| `main`/`develop`上で実行 | エラーメッセージを表示して終了 |
| 未コミット変更あり | 警告を表示(続行可能) |
| 既存PRが存在 | 既存PRのURLを表示して終了 |
| `gh` CLI未認証 | エラーメッセージを表示して終了 |
| 親ブランチ検出失敗 | ユーザーに確認 |

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.