- PR Research Skill
- Systematic exploration of upstream repositories before contributing.
- Overview
- Research an external codebase to understand how to contribute effectively.
- This is the FIRST step before planning or implementing an open source contribution.
- When to Use
- :
- Before contributing to an external repository
- Starting a new open source contribution
- Evaluating whether to contribute to a project
- When NOT to Use
- :
- Researching your own codebase (use
- $research
- )
- Already familiar with the project's guidelines
- Workflow
- -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
- Phase -1: Prior Work Check (BLOCKING)
- CRITICAL
- Before ANY research, check if someone is already working on this.
Search for open issues on this topic
gh issue list -R < owner/repo
--state open --search "
" --limit 20
Search for open PRs that might address this
gh pr list -R < owner/repo
--state open --search "
" --limit 20
Check for recently merged PRs (might already be fixed)
- gh
- pr
- list
- -R
- <
- owner/repo
- >
- --state
- merged
- --search
- "
" - --limit
- 10
- Finding
- Action
- Open issue exists
- Link to it, don't create duplicate
- Open PR exists
- Don't duplicate work
- Recently merged PR
- Verify fix, no work needed
- No prior work found
- Proceed to Phase 0
- Phase 0: CONTRIBUTING.md Discovery (BLOCKING)
- CRITICAL
- Do not proceed without finding contribution guidelines.
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
- Extract Key Requirements
- Requirement
- Where to Find
- Commit format
- "Commit messages" section
- PR process
- "Pull Requests" section
- Testing requirements
- "Testing" section
- Code style
- "Style" section
- CLA/DCO
- "Legal" or "License" section
- Phase 3: PR Archaeology
- CRITICAL
- Understand what successful PRs look like.
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 Size Analysis Size Files Lines Likelihood Small 1-3 <100 High acceptance Medium 4-10 100-500 Moderate Large 10+ 500+ Needs discussion first Phase 5: Issue Discovery
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 Output Write to .agents/research/YYYY-MM-DD-pr-{repo-slug}.md
PR Research: {repo-name}
Executive Summary
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
->
$pr-plan .agents/research/YYYY-MM-DD-pr-{repo}.md
Anti-Patterns
DON'T
DO INSTEAD
Skip guidelines check
Always read CONTRIBUTING.md first
Ignore PR patterns
Study successful merged PRs
Start with large PRs
Begin with small, focused changes
Workflow Integration
$pr-research