pr
Skill0 starsChanged 18 days agoMITView on GitHub
Create a pull request with full quality checks. Use when asked to create a PR, submit changes for review, or prepare code for merging. Runs tests, linting, type checking, analyzes async/blocking code, identifies performance bottlenecks, commits with concise messages, creates PR with bullet summary, and holds reviewer requests until the user has reviewed.
- Commits and pushes
In this repository11 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- analytics-viewSkill
- explain-diffSkill
- finalizeSkill
- frontend-designSkill
- planSkill
- pr-reviewSkill
- quality-gatesSkill
- rule-authoringSkill
- setup-projectSkill
- test-on-mainSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 6 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 8
Create a pull request with comprehensive quality checks and analysis.
- Distinctive: line 22
If merge conflicts occur, stop and inform the user.
- Distinctive: line 32
Run all checks even if some fail, to surface all issues at once.
- Very specific: line 46
Check the diff against every guideline in .claude/rules/ and docs/review.md (if they exist).
- Very specific: line 62
If the diff touches user-visible UI, use the run skill to shoot the changed view into the scratchpad.
- Very specific: line 64
Never commit screenshots. Attach them at PR creation with --attach <path>#<alt text> (gh >= 2.99): a body that references the local path …
- Distinctive: line 68
If there are uncommitted changes, stage specific files (not git add .) and commit:
- Distinctive: line 83
Write the body to answer four questions, each kept short:
- Very specific: line 111
If the PR makes an architecture decision, add an ## Architecture section: state the decision, the alternative rejected, and why in a few …
- Distinctive: line 125
Check whether the base branch requires an approving review:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Pull Request Creation Skill
Create a pull request with comprehensive quality checks and analysis.
Process
Step 1: Merge default branch into current branch
Detect the default branch and merge:
git fetch origin
DEFAULT_BRANCH=$(git remote show origin | grep 'HEAD branch' | cut -d' ' -f5)
git merge "origin/$DEFAULT_BRANCH" -m "Merge $DEFAULT_BRANCH into $(git branch --show-current)"If merge conflicts occur, stop and inform the user. Do not proceed.
Step 2: Run quality checks
Discover and run the project's quality checks. Look for:
Makefiletargets (make check,make lint,make test)package.jsonscripts (npm test,npm run lint)- CI config (
.github/workflows/) to determine what CI runs - Language-specific tools (
pytest,cargo test,go test ./...)
Run all checks even if some fail, to surface all issues at once. If any fail, show failures and ask user whether to proceed or fix first.
Step 3: Analyze changes against default branch
git diff "origin/$DEFAULT_BRANCH"...HEAD --name-only
git diff "origin/$DEFAULT_BRANCH"...HEAD
git log "origin/$DEFAULT_BRANCH"..HEAD --onelineAnalyze: what changed, async/blocking patterns, potential performance issues, code complexity.
Step 3b: Review against project guidelines
Check the diff against every guideline in .claude/rules/ and docs/review.md (if they exist). Fix violations before proceeding; ask the user if a fix is ambiguous.
Step 3c: Verify only relevant changes
Flag unrelated features or significant unrelated work that should be in a separate PR. Small incidental fixes are acceptable.
Step 3d: Drop stray files
From the changed-file list plus untracked files, flag dependency dirs (node_modules/, .venv/), build output (dist/, build/, *.pyc), local scratch (tmp*, scratch*, *.log, ad-hoc run scripts) and editor/OS junk (.DS_Store, .idea/). Exempt a dependency or build path whose directory already has tracked files on the default branch; scratch and junk get no exemption.
Tell the user what you found. Untrack tracked files with git rm --cached <path>; untracked ones need only a .gitignore entry. Match the pattern, not just that path. Ask first when a file's purpose is unclear, and suggest a global ignore or pre-commit hook when the same class keeps coming back.
Env files, keys, certs and tokens are not this case: git rm --cached does not unpublish a secret already pushed. Report it and tell the user to rotate it.
Step 3e: Screenshot UI changes
If the diff touches user-visible UI, use the run skill to shoot the changed view into the scratchpad. For an altered view, shoot the same view at the same viewport on a default-branch worktree too.
Never commit screenshots. Attach them at PR creation with --attach <path>#<alt text> (gh >= 2.99): a body that references the local path gets it rewritten in place, anything unreferenced is appended.
Step 4: Commit if needed
If there are uncommitted changes, stage specific files (not git add .) and commit:
git add <specific-files>
git commit -m "Brief description"Step 5: Push to remote
git push -u origin "$(git branch --show-current)"Step 6: Create PR
Write the body to answer four questions, each kept short:
gh pr create --base "$DEFAULT_BRANCH" --title "Descriptive PR title" \
--attach "/abs/path/before.png#Settings page, before" \
--attach "/abs/path/after.png#Settings page, after" \
--body "$(cat <<'EOF'
## Why
[The problem or goal. 1-2 sentences.]
## What
- [Change 1]
- [Change 2]
## Screenshots
| Before | After |
| --- | --- |
|  |  |
## Implications
- [Breaking changes, migrations, performance/async effects, follow-ups. Omit if none.]
## How we ensured it works
- [Tests added/run, manual verification, checks passed.]
EOF
)"If the PR makes an architecture decision, add an ## Architecture section: state the decision, the alternative rejected, and why in a few lines, and draw it with a Mermaid diagram (GitHub renders it):
## Architecture
[Decision + rejected alternative + why, kept short.]
```mermaid
flowchart LR
A[Client] --> B[Service] --> C[(DB)]
```Step 7: Reviewers
Check whether the base branch requires an approving review:
gh pr view --json reviewDecision -q .reviewDecisionREVIEW_REQUIRED means a review gates the merge. In that case do NOT add reviewers.
Report the PR URL and stop. Once the user says their manual review is done, ask who
should review and add them.
Otherwise, ask the user who should review, then add them:
gh pr edit --add-reviewer username1,username2PR descriptions: short and skimmable. Lead with why, not just what. Draw out any architecture decision with a Mermaid diagram. Omit ## Screenshots when nothing user-visible changed; drop the Before column for new views.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

