mcpField
P
pr-research

pr-research

github.com/boshu2開発450757 回インストール今日更新
リポジトリ

pr-research について

pr-research は、外部リポジトリへの貢献を検討・準備する人向けのスキルです。計画前に既存の作業や貢献ガイドを確認し、プロジェクトの慣習と候補を調べます。

主な機能

  1. 01既存の Issue と PR の確認
  2. 02貢献ガイドの検索
  3. 03マージ済み PR とコミット傾向の分析
  4. 04貢献候補の発見
  5. 05調査ドキュメントの作成

活用シーン

  1. 01上流プロジェクトへの貢献前の評価
  2. 02入門向けの小さな Issue の探索
  3. 03レビューとコミットの慣習の把握

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/boshu2/agentops --skill pr-research

インストール後、Claude Code で/pr-researchを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
pr-research.feature
upstream-research-checklist.md
scripts/
validate.sh

詳細

PR リサーチスキル

コントリビューションを始める前に、上流リポジトリを体系的に調査します。

概要

外部のコードベースを調査して、効果的なコントリビューションの方法を理解します。 オープンソースへのコントリビューションを計画または実装する前に行う最初のステップです。

使用する場面:

  • 外部リポジトリにコントリビューションする前
  • 新しいオープンソースへのコントリビューションを始めるとき
  • プロジェクトへのコントリビューションを検討するとき

使用しない場面:

  • 自分のコードベースを調査するとき($research を使用)
  • プロジェクトのガイドラインをすでに把握しているとき

ワークフロー

-1. Prior Work Check    -> BLOCKING: Check for existing issues/PRs
0.  CONTRIBUTING.md     -> MANDATORY: Find contribution guidelines
1.  Repository Setup    -> Clone/identify upstream repo
2.  Guidelines Analysis -> Templates, CODE_OF_CONDUCT
3.  PR Archaeology      -> Analyze merged PRs, commit patterns
4.  Maintainer Research -> Response patterns, review expectations
5.  Issue Discovery     -> Find contribution opportunities
6.  Output              -> Write research document

フェーズ -1:過去の作業の確認(必須)

重要:調査を始める前に、すでに誰かが取り組んでいないか確認してください。

# Search for open issues on this topic
gh issue list -R <owner/repo> --state open --search "<topic keywords>" --limit 20

# Search for open PRs that might address this
gh pr list -R <owner/repo> --state open --search "<topic keywords>" --limit 20

# Check for recently merged PRs (might already be fixed)
gh pr list -R <owner/repo> --state merged --search "<topic keywords>" --limit 10
確認結果対応
オープンな Issue があるその Issue にリンクし、重複して作成しない
オープンな PR がある作業を重複させない
最近マージされた PR がある修正を確認し、作業が不要か判断する
過去の作業が見つからないフェーズ 0 に進む

フェーズ 0:CONTRIBUTING.md の確認(必須)

重要:コントリビューションガイドラインを見つけるまでは先に進まないでください。

# Check all common locations
cat CONTRIBUTING.md 2>/dev/null
cat .github/CONTRIBUTING.md 2>/dev/null
cat docs/CONTRIBUTING.md 2>/dev/null

# Check README for contribution section
grep -i "contribut" README.md | head -10
主な要件の抽出
要件確認場所
コミット形式「Commit messages」セクション
PR の手順「Pull Requests」セクション
テスト要件「Testing」セクション
コードスタイル「Style」セクション
CLA/DCO「Legal」または「License」セクション

フェーズ 3:PR の調査

重要:成功した PR の特徴を把握してください。

# List recent merged PRs
gh pr list --state merged --limit 20

# Recent commit style
git log --oneline -30 | head -20

# Check for conventional commits
git log --oneline -30 | grep -E "^[a-f0-9]+ (feat|fix|docs|refactor|test|chore)(\(.*\))?:"
PR の規模分析
規模ファイル数行数採用の可能性
小規模1~3<100高い
中規模4~10100~500中程度
大規模10+500+まず相談が必要

フェーズ 5:Issue の確認

# Find beginner-friendly issues
gh issue list --label "good first issue" --state open
gh issue list --label "help wanted" --state open

# Issues with no assignee
gh issue list --state open --json assignees,title,number | \
  jq -r '.[] | select(.assignees | length == 0) | "#\(.number): \(.title)"' | head -10

出力

.agents/research/YYYY-MM-DD-pr-{repo-slug}.md に書き込みます。

# PR Research: {repo-name}

## Executive Summary
{2-3 sentences: project health, contribution friendliness}

## Contribution Guidelines
| Document | Status | Key Requirements |
|----------|--------|------------------|
| CONTRIBUTING.md | Present/Missing | {summary} |
| PR Template | Present/Missing | {required sections} |

## PR Patterns
- **Average size**: X files, Y lines
- **Commit style**: {conventional/imperative/etc}
- **Review time**: ~X days

## Contribution Opportunities
| Issue | Type | Difficulty |
|-------|------|------------|
| #N | bug/feat | easy/medium |

## Next Steps
-> `$plan .agents/research/YYYY-MM-DD-pr-{repo}.md`

避けるべきパターン

しないこと代わりにすること
ガイドラインの確認を省略する必ず最初に CONTRIBUTING.md を読む
PR のパターンを無視する成功してマージされた PR を調べる
大規模な PR から始める小規模で焦点を絞った変更から始める

ワークフローとの連携

$pr-research <repo> -> $plan <research> -> implement -> $pr-prep

例

コントリビューション前に上流を調査する

ユーザーの指示:「修正案を提案する前に、owner/repo の PR リサーチをしてください。」

実行内容:

  1. コントリビューションガイドラインとガバナンス関連ファイルを確認します。
  2. マージされた PR のパターンと慣例を分析します。
  3. 機会とリスクをまとめた調査資料を作成します。
対象範囲の確認

ユーザーの指示:「このリポジトリで、初めてのコントリビューションに適した小規模な候補を見つけてください。」

実行内容:

  1. Issue、ラベル、過去のマージ済み作業を調べます。
  2. 難易度と対象範囲に基づいて候補を分類します。
  3. リスクが最も低い小規模なコントリビューションを提案します。

トラブルシューティング

問題原因解決策
コントリビューションガイドが見つからないリポジトリに標準ファイルがないマージ済み PR の履歴とメンテナーのコメントから慣例を推測する
対象となる Issue が多すぎる対象範囲が定まっていないラベル、コンポーネントのパス、最近のメンテナーの活動で絞り込む
提案された作業にリスクがありそう隠れた依存関係、または影響範囲が広い対象をより狭いファイルやドメインの境界に絞り、前提条件を明示する
出力が一般論に偏っているリポジトリの根拠が不十分具体的なファイルや PR を参照し、見つかったパターンを明記する

参考資料

コメント