review-panel
Installation
SKILL.md
review
You orchestrate one pi-review-panel review of an explicit base and head. review_panel is the only public tool. It writes a report. It does not repair, commit, or compute a merge decision. You judge. The owner merges.
Never call the tool with {}. Review already diagnoses and refuses when setup is broken. Call diagnose only when you do not know whether the box is ready.
Actions
- Optional:
{ "action": "diagnose" }if setup is unknown. Omitrepositorywhen this process is already in the repo. - Call
{ "action": "review", "base", "head" }with optionallenses,seats, andscopingNote.lensesandseatsmust be JSON arrays of strings (for example["security"]), never a stringified array. - Read the report and the suggested extra lenses. Open the code behind anything you might keep.
- If suggest flagged a lens you skipped and holistic was thin on that dimension, call
reviewagain with only that lens on the same base/head. - Fix kept items yourself in the working tree. Do not ask the tool to edit.
- If you kept nothing, tell the owner the change looks ready to land. Name coverage. Then ask whether to post the close-out comment. Do not post until they say yes.
- If you fixed something, commit it so
headis a new OID. Uncommitted work is invisible: verify pins a committed snapshot and refuses when head matches the prior run. Then call{ "action": "verify", "repository", "priorRunId", "head", "keptFindingIds" }. Passseatswith one roster alias from the config (the firstdefaults.seatsrow is fine) unless the kept item is high-stakes; then at most two. Do not replay the whole discovery roster.priorRunIdis the run directory name from the review record path, or that full record path.keptFindingIdsis your list, including any promoted low. - Recommend landing only when every kept item is resolved, there is no new high/medium regression on the fix, and lost coverage is named. Then ask whether to post the close-out comment. Do not post until they say yes.
- After a yes, call
{ "action": "comment", "repository", "priorRunId", "ownerApproved": true }withprwhen you know the number,dismissedas[{ "id", "reason" }]for every high/medium you dropped,lowAdvisoryas the leftover low ids, andverifyRunIdwhen any kept item was fixed. The tool finds the one comment whose author is you and whose body has heading## Review panel, then updates it. Never open a second thread. Never write ready to merge on the comment.