From a88723a97c8e64c0888bf9a251e058188ddc0588 Mon Sep 17 00:00:00 2001 From: Marvin Schenkel Date: Thu, 26 Feb 2026 12:01:05 +0100 Subject: [PATCH] Add review-pr skill with reusable review standards. --- .claude/skills/review-pr/REVIEW_STANDARDS.md | 26 ++++++++++++ .claude/skills/review-pr/SKILL.md | 42 ++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 .claude/skills/review-pr/REVIEW_STANDARDS.md create mode 100644 .claude/skills/review-pr/SKILL.md diff --git a/.claude/skills/review-pr/REVIEW_STANDARDS.md b/.claude/skills/review-pr/REVIEW_STANDARDS.md new file mode 100644 index 00000000..23a58c0f --- /dev/null +++ b/.claude/skills/review-pr/REVIEW_STANDARDS.md @@ -0,0 +1,26 @@ +# PR Review Standards + +## What to Analyze + +Review all code changes for: +- Code quality and style consistency with the existing codebase +- Potential bugs or issues +- Performance implications +- Security concerns +- Test coverage +- Documentation updates if needed + +## PR Title + +The PR title must be a functional description of the change. It must NOT contain conventional commit prefixes such as `feat:`, `fix:`, `refactor:`, `chore:`, etc. Labels are used to categorize PRs, not the title. Flag as `[PROBLEM]` if the title uses such prefixes. + +## Existing Review Comments + +Ensure any existing review comments on the PR have been addressed before approving. + +## Issue Categories + +Categorize every issue found as one of: +- `[CRITICAL]` — must be fixed before merging (bugs, security issues, broken functionality) +- `[PROBLEM]` — should be fixed (code quality, bad patterns, missing tests) +- `[SUGGESTION]` — optional improvement (style, minor refactors, nice-to-haves) diff --git a/.claude/skills/review-pr/SKILL.md b/.claude/skills/review-pr/SKILL.md new file mode 100644 index 00000000..25eb4faf --- /dev/null +++ b/.claude/skills/review-pr/SKILL.md @@ -0,0 +1,42 @@ +--- +name: review-pr +description: Review a GitHub pull request and provide feedback comments +--- + +# Review GitHub Pull Request + +Please review the GitHub pull request: $ARGUMENTS. + +Follow these steps: +1. Use 'gh pr view' to get the PR details and description. +2. Use 'gh pr diff' to see all the changes in the PR. +3. Use 'gh pr checks' to see the status of CI checks. +4. Apply the review standards defined in `REVIEW_STANDARDS.md` (located in the same directory as this skill). +6. Generate constructive review comments in the CONSOLE. DO NOT POST TO GITHUB YOURSELF. + +IMPORTANT: +- If the local commit does not match the pr one, checkout the PR locally using 'gh pr checkout'. +- CRITICAL: If 'gh pr checkout' fails for ANY reason, you MUST immediately STOP. + - Do NOT attempt any workarounds (git fetch, alternative methods, etc.). + - Do NOT proceed with the review using only diffs. + - ALERT about the failure and WAIT for instructions. + - This is a hard requirement - no exceptions. +- When checked out locally, ensure the local commit hash matches the remote one. + - CRITICAL: if the commits don't match, you MUST immediately STOP. +- DO NOT make any changes to the code +- Be constructive and specific in your comments +- Suggest improvements where appropriate +- Only provide review feedback in the CONSOLE. DO NOT ACT ON GITHUB. +- No need to run tests or linters, just review the code changes. + +Output format: +- List specific comments per file/line that need attention +- Do not list things that are already correct +- In the end, summarize with an overall assessment (approve, request changes, or comment) and list of changes suggested, if any. + - Example output: + ``` + Overall assessment: request changes + - [CRITICAL] Memory leak in music_assistant/components/sensor/my_sensor.py + - [PROBLEM] Inefficient algorithm in music_assistant/helpers/data_processing.py + - [SUGGESTION] Improve variable naming in music_assistant/helpers/config_validation.py + ``` -- 2.34.1