update-pr-review
Skill313 starsChanged 6 months agoMITView on GitHub
Update the repo-local review-pr-local and review-spec-local companion skills using human feedback left on pull request conversations. Use when aggregating replies to agent-authored PR review comments, incorporating broader human review comments, extracting repeated reviewer feedback, and refining .agents/skills/review-pr-local/SKILL.md and .agents/skills/review-spec-local/SKILL.md with evidence-backed adjustments.
In this repository17 other files it gives its agents.
- bootstrap-issue-configSkill
- create-product-specSkill
- create-tech-specSkill
- dedupe-issue-localSkill
- dedupe-issueSkill
- evaluate-auto-implement-eligibilitySkill
- implement-issueSkill
- review-pr-localSkill
- review-spec-localSkill
- review-specSkill
- security-review-prSkill
- security-review-specSkill
- triage-issue-localSkill
- triage-issueSkill
- update-dedupeSkill
- update-triageSkill
- verify-prSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. About 0 are common, 11 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
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
- Very specific: line 8
Use this skill to improve the repo-local review companions .agents/skills/review-pr-local/SKILL.md and …
- Distinctive: line 36
Verify GitHub CLI auth:
- Distinctive: line 52
Read the generated JSON and look for repeated reviewer signals, especially:
- Distinctive: line 65
Update each companion skill independently with the smallest rule change that explains the feedback for that category.
- Distinctive: line 66
If feedback for one category is empty, skip that companion.
- Very specific: line 68
Keep the core review contract stable — never edit the shared review-pr skill or .agents/skills/review-spec/SKILL.md.
- Distinctive: line 72
Prefer patterns backed by multiple threads or a strong explicit maintainer statement.
- Distinctive: line 73
Do not weaken correctness, security, or data-loss checks because of a single disagreement.
- Distinctive: line 75
Avoid encoding one-off reviewer preferences as universal rules.
- Distinctive: line 76
If the feedback points to missing repository context, add that context only if it improves review precision.
- Distinctive: line 77
Do not mix code-review feedback into the spec skill, or spec-review feedback into the code skill.
- Distinctive: line 91
Use that temporary data as evidence when refining the skills, then remove it before finishing if you wrote it to disk explicitly.
- Distinctive: line 96
Keep each companion concise.
- Very specific: line 97
Commit any changes on a local branch named oz-agent/update-pr-review.
- Very specific: line 98
If the updates warrant a PR, it will be opened from the pushed branch.
≈ “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
Update PR Review
Use this skill to improve the repo-local review companions .agents/skills/review-pr-local/SKILL.md and .agents/skills/review-spec-local/SKILL.md from real reviewer feedback. The shared review-pr skill and the repo-local core .agents/skills/review-spec/SKILL.md are the cross-repo contracts and are read-only from this loop.
The repository uses two separate review skills: review-pr for code pull requests and review-spec for spec-only pull requests (PRs where every changed file lives under specs/). Feedback from each category of PR should be routed to the corresponding repo-local companion.
Write surface
This self-improvement loop may only write to:
.agents/skills/review-pr-local/(andSKILL.mdinside it).agents/skills/review-spec-local/(andSKILL.mdinside it)
It must NOT touch:
- the shared
review-prskill .agents/skills/review-spec/SKILL.md(the core contract)- any file under
.github/issue-triage/(that taxonomy is owned by theupdate-triageloop) - any other core skill
The self-improvement runner enforces this via a git diff check against allowed prefixes before pushing. A violation aborts the run.
Inputs
- Optional repository override if you are not running from the target checkout.
- Optional time window override when you need something other than the default seven-day lookback.
- Optional agent-login override if the review comments were not authored by the default bot identities.
Workflow
- Verify GitHub CLI auth:
gh auth status- Aggregate the feedback for pull requests updated over the last week with the bundled script:
python3 .agents/skills/update-pr-review/scripts/aggregate_review_feedback.pyBy default this targets the current repo, looks back 7 days, and analyzes review comments authored by the bot identities used by the PR review workflow (warp-dev-github-integration[bot]). It also collects broader human review comments from those PRs so the skill can learn from reviewer norms even when they were not replying directly to the bot. The script writes structured JSON to a temporary file and prints the temp-file path. Treat that file as scratch state for this skill, not as a user-facing deliverable or final output. If you need a repository other than the current checkout, pass --repo owner/name. If you need a different author identity, pass --agent-login <login> one or more times.
Each pull request in the output includes a review_type field that is either "spec" (all changed files under specs/) or "code" (any non-spec file changed). Use this field to route feedback to the correct skill.
- Read the generated JSON and look for repeated reviewer signals, especially:
- replies that say the agent's feedback was wrong, invalid, not applicable, or based on a bad assumption
- signals that the agent had the right instinct but the wrong severity, scope, line targeting, or proposed fix
- feedback that the comment was not actionable enough, including requests for clearer concrete changes
- recurring cases where humans override the bot because repository or product context changes the right call
- review patterns from human-only threads that show what experienced reviewers in this repo consistently care about
- explicit reviewer guidance about what belongs inline, what belongs in the summary, and when the bot should stay uncertain
- Partition the feedback by
review_type:
- Feedback from
"code"PRs applies to.agents/skills/review-pr-local/SKILL.md. - Feedback from
"spec"PRs applies to.agents/skills/review-spec-local/SKILL.md. - Update each companion skill independently with the smallest rule change that explains the feedback for that category.
- If feedback for one category is empty, skip that companion.
- Keep the core review contract stable — never edit the shared
review-prskill or.agents/skills/review-spec/SKILL.md. Only the-localcompanions evolve from feedback.
Evidence Rules
- Prefer patterns backed by multiple threads or a strong explicit maintainer statement.
- Do not weaken correctness, security, or data-loss checks because of a single disagreement.
- Separate feedback about review quality from feedback about repository-specific preferences.
- Avoid encoding one-off reviewer preferences as universal rules.
- If the feedback points to missing repository context, add that context only if it improves review precision.
- Do not mix code-review feedback into the spec skill, or spec-review feedback into the code skill.
Intermediary State
The script builds structured JSON that captures:
- pull request metadata for the recent PR window, including
review_typeclassification - agent-authored review comments that received human replies
- human-authored review comments from the same PRs, even when they were not replying to the bot
- thread metadata like file path, line, resolution, and outdated state
- normalized agent-comment fields such as severity label and whether a suggestion block was present
- the full set of human replies for each agent comment
- top-level PR issue comments for broader review context
Use that temporary data as evidence when refining the skills, then remove it before finishing if you wrote it to disk explicitly.
Final Checks
- Re-read the updated
review-pr-localand/orreview-spec-localcompanion skills and confirm any new rules are explicit. - Keep each companion concise; do not turn them into long style guides.
- Commit any changes on a local branch named
oz-agent/update-pr-review. Do NOT push the branch; the Python entrypoint will run a write-surface guard and push only when the guard passes. - If the updates warrant a PR, it will be opened from the pushed branch. Tag
@captainsafiaas a reviewer on that PR. - Validate any temporary JSON with
jqbefore relying on it.
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.

