From harness-plugin
Fetch Codex review findings from the current PR and fix them. Polls gh for the latest Codex comment, parses findings, fixes each issue, runs tests, commits, and pushes. Automatically loops — polls for the next review after each push.
How this skill is triggered — by the user, by Claude, or both
Slash command
/harness-plugin:github-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Fetch the latest Codex code review from the current branch's PR, fix every finding, push, then poll for the next review and repeat — until the review comes back clean or the loop hits the max rounds limit.
Fetch the latest Codex code review from the current branch's PR, fix every finding, push, then poll for the next review and repeat — until the review comes back clean or the loop hits the max rounds limit.
Run these commands once at the start of the loop:
# Get current branch's PR number
PR_NUMBER=$(gh pr view --json number --jq '.number' 2>/dev/null)
# Get the repo name
REPO=$(gh repo view --json nameWithOwner --jq '.nameWithOwner')
If no PR exists, tell the user and stop.
Before looking at Codex review comments, check if the PR's CI checks are passing:
gh pr checks $PR_NUMBER
If any checks other than Codex Code Review are failing (e.g., Code Quality Check, Unit Tests):
gh run view <run_id> --log-failedCommon CI failures:
npx prettier --write <file> on the flagged filesnpm run lint:fixnpm run test to reproduce, then fixOnly proceed to Step 2 once all non-Codex checks are passing.
# Fetch the latest Codex review comment ID and body
gh api "repos/$REPO/issues/$PR_NUMBER/comments" \
--jq '[.[] | select(.body | contains("## Codex Code Review"))] | last | {id, body}'
The Codex review comment has this structure:
## Codex Code Review
### [SEVERITY_ICON] [SEVERITY] Title
📍 `file_path` L{start}-{end}
🎯 Confidence: N%
Description of the issue and how to fix it.
---
**Overall: verdict** (confidence: N%)
> Summary
Extract each finding: severity, file path, line range, description.
If the review says "No issues found" or "patch is correct" — tell the user the review is clean and exit the loop.
For each finding:
npm run lint and npm run testRules:
git add -A
git commit -m "fix: address Codex review round N findings
- [list what was fixed]
- [list what was skipped and why]"
git push
Tell the user:
After pushing, the Codex GitHub Action will run on the new commit. Poll for a NEW review comment (different comment ID than the one just processed):
# Poll every 60s, up to 10 minutes
# Look for a comment with a DIFFERENT id than the last processed one
gh api "repos/$REPO/issues/$PR_NUMBER/comments" \
--jq '[.[] | select(.body | contains("## Codex Code Review"))] | last | {id, body}'
/harness-plugin:github-review laterThe loop exits when ANY of these is true:
Provides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub winoooops/vimeflow --plugin harness-plugin