.agent/skills/pr-reviewer/SKILL.md
Fetches PR review comments, analyzes requested changes, implements fixes, commits and pushes the resolution. Use after a reviewer has left comments on an open PR to close the feedback loop efficiently.
npx skillsauth add fu-jie/openwebui-extensions pr-reviewerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill automates the response cycle for code review. When a reviewer leaves comments on a Pull Request, this skill fetches all pending feedback, categorizes issues by severity, implements fixes, and submits a follow-up commit with appropriate review response comments.
gh CLI is authenticatedRetrieve all review comments and overall review status:
# Get overall review decisions
PAGER=cat GH_PAGER=cat gh pr view <PR-NUMBER> --json reviews,reviewDecision,headRefName \
--jq '{decision: .reviewDecision, reviews: [.reviews[] | {author: .author.login, state: .state, body: .body}]}'
# Get inline code comments (specific line comments)
PAGER=cat GH_PAGER=cat gh api repos/Fu-Jie/openwebui-extensions/pulls/<PR-NUMBER>/comments \
--jq '[.[] | {path: .path, line: .line, body: .body, author: .user.login, id: .id}]'
# Get general issue comments
PAGER=cat GH_PAGER=cat gh issue view <PR-NUMBER> --comments --json comments \
--jq '[.comments[] | {author: .author.login, body: .body}]'
Confirm the current local branch matches the PR head:
git branch --show-current
If mismatched, checkout the correct branch first.
Group feedback into categories:
| Category | Examples | Action | |----------|---------|--------| | Code Bug | Logic error, incorrect variable, broken condition | Fix code immediately | | Style / Formatting | Indentation, naming convention, missing blank line | Fix code | | Documentation | Missing i18n key, wrong version in README, typo | Fix docs | | Design Question | Suggestion to restructure, alternative approach | Discuss with user before implementing | | Nitpick / Optional | Minor style preferences reviewer marked as optional | Fix if quick; document if skipped | | Blocking | Reviewer explicitly blocks merge | Must fix before proceeding |
Present the full categorized list to the user and confirm the resolution plan.
For each accepted fix:
sed -n '<line-5>,<line+10>p' <file-path>
For code changes that might affect behavior:
ls tests/test_*.pypython -m pytest tests/ -vFor documentation fixes:
docs/ mirror needs the same fixAfter all fixes are applied:
# Version consistency (if any version files were touched)
python3 scripts/check_version_consistency.py
# Quick syntax check for Python files
python3 -m py_compile plugins/{type}/{name}/{name}.py && echo "✅ Syntax OK"
Create a new commit (do NOT amend if the branch has already been pushed, to avoid force-push):
git add -A
git status
Draft a Conventional Commits message for the fixup:
Format: fix(scope): address review feedback
Body should list what was fixed, referencing reviewer concerns:
fix(github-copilot-sdk): address review feedback from @reviewer
- Fix X per review comment on line Y of file Z
- Update README to clarify auth requirement
- Correct edge case in _parse_mcp_servers logic
git commit -m "<fixup commit message>"
git push origin $(git branch --show-current)
Force-push policy:
git push (non-force) by defaultgit push --force-with-lease if:
--force (without --lease)For each addressed review comment, post a reply:
# Reply to inline comment
gh api repos/Fu-Jie/openwebui-extensions/pulls/<PR-NUMBER>/comments/<COMMENT-ID>/replies \
-X POST -f body="Fixed in commit <SHORT-SHA>. <Brief explanation of what was changed.>"
# General comment to summarize all fixes
gh issue comment <PR-NUMBER> --body "All review feedback addressed in commit <SHORT-SHA>:
- Fixed: <item 1>
- Fixed: <item 2>
Ready for re-review. 🙏"
If the reviewer had submitted a CHANGES_REQUESTED review, request a new review after fixes:
PAGER=cat GH_PAGER=cat gh api repos/Fu-Jie/openwebui-extensions/pulls/<PR-NUMBER>/requested_reviewers \
-X POST -f reviewers[]='<reviewer-login>'
nit: — Ask user if they want to include itgit commit --amend on a pushed commit without user approval for force-push--force (only --force-with-lease when absolutely necessary)development
Commit and push code to GitHub, then publish to OpenWebUI official marketplace without updating version. Use when fixing bugs or optimizing performance that doesn't warrant a version bump.
tools
Automatically publishes plugin update posts to openwebui.com.
tools
Automates version upgrades and changelog synchronization across 7+ files (Code, READMEs, Docs). Use when a plugin is ready for release to ensure version consistency.
tools
Automotive deployment and testing of GitHub Copilot SDK Pipe plugin for frontend/backend status stability.