open-pr
Skill0 starsChanged 7 months agoMITArchived repositoryView on GitHub
Open a PR for the current feature branch — self-review the diff, organize commits, push, create the PR, wait for CI and review, then address feedback. Use when implementation is complete and ready for review.
- Commits and pushes
63 other projects use a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- 0xdeafcafe/skillstheir own version, first seen Nov 6, 2026
- pascalorg/editortheir own version, first seen Nov 6, 2026
- Significant-Gravitas/AutoGPTtheir own version, first seen Nov 4, 2026
- angusfretwell/skillstheir own version, first seen Nov 4, 2026
- mongodb/docstheir own version, first seen Nov 2, 2026
- elpiarthera/vantage-startertheir own version, first seen Nov 1, 2026
Used with
Projects with it also use review-change, commit-push and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
thlaureSkillreview-change
Use this skill when the user asks for a code review, a correctness pass, a check before PR, or asks whether a Signalist change follows project conventions.
Also in 4 projects that use this
DataCoveySkillcommit-push
Commit and push the changes made on this chat session to the current branch. Use best practices from Conventional Commits.
Also in 3 projects that use this
Codagent-AISkillimplement-change
Implements an approved change in one continuous session, with tiered test runs. Use when asked to implement a change from its approved definition, or to invoke codagent:implement-change.
Also in 3 projects that use this
saffron-healthSkilladdress-review
Address PR review comments systematically. Use when responding to code review feedback on a pull request.
Also in 3 projects that use this
SentrySkillwrite-tests
Write tests following project conventions. Use when adding new tests or modifying existing ones.
Also in 4 projects that use this
SentrySkillcommit
Create commit messages following Sentry conventions. Use when committing code changes, writing commit messages, or formatting git history. Follows conventional commits with Sentry-specific issue references.
Also in 17 projects that use this
Other versions63 projects use a version of this.
Word for word · 0
None found.
Edited · 1
- dougborg/statuspro-openapi-client★ 016% same
Wrote their own version · 62
- Significant-Gravitas/AutoGPT★ 188ksame name
- storybookjs/storybook★ 91ksame name
- pascalorg/editor★ 25ksame name
- dask/dask★ 14ksame name
- polarsource/polar★ 10ksame name
- cloudflare/agents★ 6ksame name
- Kiln-AI/Kiln★ 5.3ksame name
- analogjs/analog★ 3.2ksame name
- raine/workmux★ 3ksame name
- Akylas/OSS-DocumentScanner★ 2.6ksame name
52 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository6 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- babysit-prsSkill
- new-verticalSkill
- review-prSkill
- vendor-and-regenSkill
The file
We split this skill into the rules it gives an agent
11 rules. 0 are common, 7 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 62 edited versions we read keep these.
7
Distinctive
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 36
If on main, stop and tell the user to create a feature branch first.
- Very specific: line 49
Run uv run poe fix for auto-fixable lint/format issues
- Very specific: line 59
If a PR already exists and is open, tell the user and stop — use /review-pr instead.
- Distinctive: line 109
If all changes are uncommitted: group into logical commits (e.g., separate feature code from tests, separate refactoring from new …
- Distinctive: line 111
If commits already exist and are well-organized: just commit any remaining uncommitted changes
- Distinctive: line 113
If commits exist but are messy (fixup commits, WIP): consider interactive cleanup
- Very specific: line 159
If there's a related GitHub issue, include Closes #N in the summary
- Very specific: line 171
If --watch is not available, poll manually:
- Distinctive: line 185
Commit the fix (specific files only, never git add -A), push, and resume waiting
- Distinctive: line 191
Poll for review activity: every 60 seconds, with a 15-minute timeout:
- Distinctive: line 218
If the agents find nothing actionable (the common case), say so and move on.
“Common” is measured: kept by at least 6 in 10 of the 62 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Open PR Workflow
Take the current feature branch from "implementation done" to "PR open, CI green, first-round review addressed."
Phase 1: Pre-flight checks
Verify feature branch — confirm we're not on
main:git branch --show-currentIf on
main, stop and tell the user to create a feature branch first.- Determine base branch — use
$ARGUMENTSif provided and non-empty, otherwise default tomain. Run validation:
uv run poe checkThis runs format + lint + type-check + tests. ALL must pass. If validation fails:
- Run
uv run poe fixfor auto-fixable lint/format issues - Fix remaining issues manually
- Re-run
uv run poe checkuntil clean
- Run
Check for existing PR on this branch:
gh pr view --json number,url,stateIf a PR already exists and is open, tell the user and stop — use
/review-prinstead.
Phase 2: Self-review
Review every change that will be in the PR. Get the full diff:
git diff <base>...HEADAlso check uncommitted changes:
git diff
git diff --cachedReview every change for:
- Bugs, logic errors, edge cases — incorrect conditions, off-by-one, missing null checks
- Generated file edits — ensure no manual changes to
api/**/*.py,models/**/*.py,client.py - Anti-patterns from CLAUDE.md — UNSET misuse, manual status checks, retry wrapping
- Missing error handling — unhandled exceptions, missing fallbacks
- Code quality / style — naming, structure, consistency with codebase patterns
- Security concerns — secrets in code, injection vulnerabilities
- Missing or inadequate tests — new code paths without test coverage
- Leftover debug code —
print(),TODO/FIXMEwithout issue refs, commented-out code
Fix any issues found. After fixes, re-run validation:
uv run poe checkPhase 3: Organize commits
Review current state:
git log <base>..HEAD --oneline git status git diffDecide on commit organization:
- If all changes are uncommitted: group into logical commits (e.g., separate feature code from tests, separate refactoring from new functionality)
- If commits already exist and are well-organized: just commit any remaining uncommitted changes
- If commits exist but are messy (fixup commits, WIP): consider interactive cleanup
- Stage specific files per commit — never use
git add -Aorgit add . Commit format — use conventional commits with scope and trailer:
git commit -m "$(cat <<'EOF' feat(client): short description Optional longer explanation of the change. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> EOF )"Valid scopes:
client,mcp, or no scope for cross-cutting changes.
Phase 4: Push and open PR
Push the branch:
git push -u origin <branch>Craft PR title and body:
- Title: conventional format, under 70 chars (e.g.,
feat(client): add batch stock endpoint) - Body format using HEREDOC:
gh pr create --base <base> --title "feat(scope): short description" --body "$(cat <<'EOF' ## Summary - Bullet points describing what this PR does ## Test plan - [ ] How to verify the changes work 🤖 Generated with [Claude Code](https://claude.com/claude-code) EOF )"- If there's a related GitHub issue, include
Closes #Nin the summary
- Title: conventional format, under 70 chars (e.g.,
- Print the PR URL for the user.
Phase 5: Wait for CI
Poll CI status:
gh pr checks <number> --watch --fail-fastIf
--watchis not available, poll manually:gh pr checks <number>If a check fails:
- Fetch the failure logs:
gh run view <run-id> --log-failed - Fix the issue (code change, lint fix, etc.)
- Run
uv run poe checklocally - Commit the fix (specific files only, never
git add -A), push, and resume waiting
- Fetch the failure logs:
- Once all required checks pass, move on.
Phase 6: Wait for review comments
Poll for review activity every 60 seconds, with a 15-minute timeout:
# Check for review comments gh api repos/{owner}/{repo}/pulls/{number}/comments --jq 'length' # Check for PR reviews (approve/request-changes) gh pr view {number} --json reviews --jq '.reviews | length'- If the PR is approved with no comments — tell the user and stop.
- If comments arrive — proceed to Phase 7.
- If timeout (15 min) with no comments — tell the user "CI is green, PR is open, no review comments yet" and stop.
Phase 7: Self-review with /simplify
Once CI is green, run /simplify against the PR diff before (or alongside) handling
review comments. The skill spawns three parallel review agents (reuse, quality,
efficiency) on the changed code and surfaces any findings as a single triage list.
Catching issues here — before an external reviewer flags them — keeps PR rounds
short. Fold any genuine findings into a fixup! commit + git rebase --autosquash so
the history stays clean (same flow /review-pr uses).
If the agents find nothing actionable (the common case), say so and move on.
Phase 8: Address review comments
Invoke the /review-pr skill to handle all review comments:
/review-pr <number>This handles: fetching comments, triaging, fixing, validating, committing, pushing, and replying.
Do not duplicate this workflow — always delegate to /review-pr.
Phase 9: Final summary
Print an overall summary:
- PR URL
- Number of commits on the branch
- CI status (all green / any failures)
- Review comments addressed (count, if any)
- Current PR state (ready for re-review, approved, etc.)
Important Rules
- Validate before opening —
uv run poe checkmust pass before creating the PR - Self-review is mandatory — always review the full diff before opening
- Logical commits — organize changes into meaningful commits, not one giant squash
- No shortcuts — never use
--no-verify,noqa, ortype: ignore - Fix CI failures in-place — don't close and re-open the PR
- Timeout on review wait — don't wait forever for human review (15 min max)
- Invoke
/review-pr— don't duplicate the review-comment workflow; delegate to the existing skill - Stage specific files — never use
git add -Aorgit add . - HEREDOC for messages — always pass commit messages and PR bodies via HEREDOC for proper formatting
- File issues for deferred work — if the self-review identifies issues that are out
of scope, create GitHub issues with
gh issue createbefore opening the PR. Never defer work without a tracking issue.
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.

