Borrowing it
Nothing to install: this file belongs to nick-pape/grackle. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/nick-pape/grackle/main/.claude/skills/pr-fixup/SKILL.mdgit clone --depth 1 https://github.com/nick-pape/grackleWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/nick-pape/grackle/pr-fixup)<a href="https://agentmods.dev/skills/nick-pape/grackle/pr-fixup"><img src="https://agentmods.dev/badge/skills/nick-pape/grackle/pr-fixup.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00048 | $0.02329 |
| Opus 5 | $0.00024 | $0.01164 |
| Sonnet 5 | $0.00010 | $0.00466 |
| Haiku 4.5 | $0.00005 | $0.00233 |
Grade A, and why
pr-fixup scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
const {execSync} = require('child_process'); How it starts
The opening of the file, as written. The whole thing — 221 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PR Fixup — Automated Copilot Review Loop
This skill automates the full PR-readiness workflow: sync with main, address Copilot review comments in a loop, and verify CI passes.
Step 0: Detect PR Number
If a PR number was provided as an argument, use it. Otherwise detect from the current branch:
gh pr view --json number --jq '.number'
If this fails, the current branch has no open PR — tell the user and stop.
Store the PR number, repo owner, and repo name for all subsequent commands:
PR_NUMBER=<detected or provided PR number>
OWNER=$(gh repo view --json owner --jq '.owner.login')
REPO=$(gh repo view --json name --jq '.name')
All commands below use $PR_NUMBER, $OWNER, and $REPO.
Step 1: Sync with Main
git fetch origin
git merge origin/main
If merge conflicts arise:
- List the conflicted files with
git diff --name-only --diff-filter=U - Read each conflicted file and resolve the conflicts intelligently
- Stage the resolved files and commit the merge
If no conflicts, and the merge brought in new commits, the merge commit is created automatically.
Step 2: Build Verification
Run the build to catch compile errors before pushing:
rush build
If the build fails, fix the errors, commit the fixes, and re-run the build. Only proceed to push once the build succeeds.
Step 3: Manual Test and Push
Before pushing, manually test the PR's changes to catch issues early (see Step 4g for testing instructions). If the PR only touches config/docs or codespace-only code, note why testing is skipped.
git push
This triggers both CI and a Copilot review on the PR.
Step 4: Copilot Review Loop
Repeat the following cycle until stable (zero new unresolved Copilot comments on two consecutive checks).
4a: Wait for Copilot Review
Wait 30 seconds for the Copilot review to arrive:
sleep 30
4b: Fetch Review Threads
Use the GraphQL API to fetch all review threads, filtering for unresolved ones with Copilot comments.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 221 lines · 48 tokens per session scan A 821f7f7d4f36
pr-fixup is a skill published in the GitHub repository nick-pape/grackle (21 stars, last pushed 2mo ago), licensed MIT. It adds 48 tokens to every session and 2,329 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
vhs-e2e-gif
Record a test run, a TUI session, or any terminal command as a GIF with VHS and attach it to a GitHub PR as a release-hosted asset, never a repo commit. Use when asked to record an e2e run, demo a fix on a PR, attach a GIF or screen recording to a pull request, show a test passing visually, or produce a terminal…
gh-pr-review
Review GitHub Pull Requests using the gh CLI. Use when a user asks to review a PR, perform code review, check a pull request, or provide feedback on proposed changes. Triggers on phrases like "review PR", "review pull request", "check PR", "code review".
resolve-merge-conflicts
Resolve git merge/rebase conflicts safely by preserving both sides' intent and validating the result.
create-pr
Prepare a pull request by summarizing changes, verification, risks, and reviewer guidance without adding AI footers.
pair-review
Standalone cross-review of current git changes with a fresh read-only reviewer, optionally adding Codex's native review. ONLY runs when the user explicitly types /pair-review. NEVER activate automatically.
gh-address-comments
Help address review/issue comments on the open GitHub PR for the current branch using gh CLI; verify gh auth first and prompt the user to authenticate if not logged in.