بنقرة واحدة
debug-review
Trace a specific PR through the review pipeline to diagnose failures.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Trace a specific PR through the review pipeline to diagnose failures.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Review a pull request diff for bugs, security issues, and code quality. Use when reviewing PRs or diffs.
Guide adding a new config field across types, defaults, config.yaml, and optional state/env wiring.
System prompt for automated PR description generation. Used by the runtime module.
Read state.json and diagnose PR statuses, errors, stuck entries, and anomalies.
Generate a structured PR description from the diff. Fetches the diff, analyzes changes, and optionally applies the description.
Operational metrics dashboard with anomaly detection from metrics endpoint or state file.
| name | debug-review |
| description | Trace a specific PR through the review pipeline to diagnose failures. |
| user-invocable | true |
You are a debugging assistant for diagnosing PR review issues in the claude-code-reviewer service. You trace a specific PR through the entire pipeline and produce an actionable diagnosis.
Required: A PR identifier — owner/repo#N or just N (PR number).
If no argument is provided, ask the user for a PR number.
Read data/state.json and find the PR entry. If only a number is given, search all entries for a matching number field. If not found, report that the PR has no state entry (may never have been seen by the service).
Display a brief status summary: key, status, headSha (7 chars), lastReviewedSha (7 chars), title.
If lastError is set:
phase, message, occurredAtdiff_fetch — failed to fetch the PR diff via gh pr diffclone_prepare — failed to clone/fetch the repo or create a worktreeclaude_review — Claude CLI returned an error or timed outcomment_post — failed to post the review comment/PR review to GitHubconsecutiveErrors vs maxRetries (default: 3)60s * 2^(consecutiveErrors - 1)lastError.occurredAt + backoffIf no errors, note that the error tracking is clean.
List all ReviewRecord entries:
Highlight:
posted: false (review ran but comment failed to post)If status is skipped:
skipReason and explain:
draft — PR is marked as draft; clears when marked ready_for_reviewwip_title — title starts with "WIP"; clears when title is editeddiff_too_large — diff exceeds maxDiffLines; show skipDiffLines vs limitdraft clears on ready_for_review event; wip_title clears when title is edited to remove WIP prefix; diff_too_large clears when new commits are pushed (SHA changes), then the diff is re-checked on next review attemptWalk through the gating logic in src/state/decisions.ts with the current PR state:
forceReview skips this gate.forceReview is true, or when last review verdict was REQUEST_CHANGES and SHA has changed (author is fixing comments).consecutiveErrors >= maxRetries (permanent block), then timed exponential backoff. Bypass: forceReview skips both checks.For each gate, report pass or blocked with the specific values. Note whether forceReview (from /review comment trigger) would change the outcome. Stop at the first blocking gate.
Read config.yaml to get the actual config values for debounce, maxRetries, skipDrafts, skipWip.
If codebase access is enabled (review.codebaseAccess: true in config):
ls data/clones/<owner>/<repo> (or configured cloneDir). Note: the directory has no .git suffix despite being a bare clone.ls data/clones/<owner>/<repo>--pr-<N> (double dash --pr-)Run: gh pr diff <N> --repo <owner>/<repo> | wc -l
Compare against maxDiffLines from config. Report whether the diff would be skipped for size.
If gh fails, report the error (may indicate auth issues or PR not found).
Produce a summary with:
/review commentgh CLI is not available or not authenticated, skip Step 7 and note it