Run full AI code review cycle on current PR branch
Runs iterative AI code review on current PR branch, fixes issues or rebuts false positives.
/plugin marketplace add rami-code-review/claude-code-marketplace/plugin install rami@rami-code-reviewFix or rebutt all review issues until clean. Max 5 iterations.
MCP Server Available
If rami MCP tools are not available, stop and display:
Rami MCP server needs authentication.
To authenticate:
1. Run /mcp in Claude Code
2. Select "plugin:rami:rami"
3. Press Enter to login
4. Complete GitHub authentication in browser
5. Return here and run /rami:review again
PR Detection
REMOTE=$(git remote get-url origin)
BRANCH=$(git branch --show-current)
mcp__plugin_rami-code-review_rami__get_current_branch_pr(remote_url=$REMOTE, branch=$BRANCH)
| Result | Action |
|---|---|
status: success | Use pr_url, proceed |
status: not_found | Stop: "No PR found for branch $BRANCH" |
| Any error | Stop: Report error message |
$ARGUMENTS
Initialize:
iteration = 0max_iterations = 5history = []Loop:
iteration++mcp__plugin_rami-code-review_rami__get_review_results(pr_url) → issuesissue_count == 0 OR iteration > max_iterationshistory.push({iteration, issues})mcp__plugin_rami-code-review_rami__get_fix_prompt(pr_url, issue_index) → instructionsmcp__plugin_rami-code-review_rami__rebutt(pr_url, issue_index, author_reply="<evidence>")
verdict: valid → Dismissed, next issueverdict: invalid|partial → Must fixgit add -A && git commit -m "fix: address rami review feedback" && git push## Rami Review Summary
**PR**: {pr_url}
**Iterations**: {iteration}
**Status**: {Clean | N issues remaining}
### Per-Iteration Breakdown
| Iter | Found | Fixed | Rebutted | Remaining |
|------|-------|-------|----------|-----------|
| 1 | 5 | 4 | 1 | 0 |
### Rebuttals
- Issue #2: [verdict: valid] - False positive: framework validates input
| Error | Action |
|---|---|
| MCP tools unavailable | Display auth instructions from Prerequisites Check step 1 |
status: auth_required | Display message from response (GitHub App installation needed) |
| Rate limited | Wait interval seconds from response, retry once, then abort |