|
| 1 | +name: Claude Code Review |
| 2 | + |
| 3 | +on: |
| 4 | + pull_request: |
| 5 | + types: [opened, synchronize] |
| 6 | + # Optional: Only run on specific file changes |
| 7 | + # paths: |
| 8 | + # - "src/**/*.ts" |
| 9 | + # - "src/**/*.tsx" |
| 10 | + # - "src/**/*.js" |
| 11 | + # - "src/**/*.jsx" |
| 12 | + |
| 13 | +jobs: |
| 14 | + claude-review: |
| 15 | + # Optional: Filter by PR author |
| 16 | + # if: | |
| 17 | + # github.event.pull_request.user.login == 'external-contributor' || |
| 18 | + # github.event.pull_request.user.login == 'new-developer' || |
| 19 | + # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' |
| 20 | + |
| 21 | + runs-on: ubuntu-latest |
| 22 | + permissions: |
| 23 | + contents: read |
| 24 | + pull-requests: read |
| 25 | + issues: read |
| 26 | + id-token: write |
| 27 | + |
| 28 | + steps: |
| 29 | + - name: Checkout repository |
| 30 | + uses: actions/checkout@v4 |
| 31 | + with: |
| 32 | + fetch-depth: 1 |
| 33 | + |
| 34 | + - name: Run Claude Code Review |
| 35 | + id: claude-review |
| 36 | + uses: anthropics/claude-code-action@v1 |
| 37 | + with: |
| 38 | + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} |
| 39 | + prompt: | |
| 40 | + Please review this pull request and provide feedback on: |
| 41 | + - Breaking changes, if any |
| 42 | + - Style and conventions |
| 43 | + - New quantities or units |
| 44 | + - See `.claude/pr-review-instructions.md` for guidance and criteria, they should be widely used and well defined |
| 45 | + - If it seems domain specific or obscure we ask for justification and use cases |
| 46 | + - Changes to generated code |
| 47 | + - Focus feedback on changes to code generators |
| 48 | + - Tie feedback to specific examples from generated code to explain, try to pick 1-3 quantities of different types, e.g. `Length` (`ILinearQuantity`), `Temperature` (`IAffineQuantity`) and `Level` (`ILogarithmicQuantity`) |
| 49 | + - Code quality and best practices |
| 50 | + - Potential bugs or issues |
| 51 | + - Performance considerations |
| 52 | + - Test coverage |
| 53 | + - Security concerns, but only if medium or higher severity |
| 54 | +
|
| 55 | + Use the repository's CLAUDE.md for guidance on style and conventions. |
| 56 | + Be constructive and helpful in your feedback, keep it concise. |
| 57 | +
|
| 58 | + Use `gh pr comment` with your Bash tool to leave your review as a comment on the PR. |
| 59 | +
|
| 60 | + # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md |
| 61 | + # or https://docs.claude.com/en/docs/claude-code/sdk#command-line for available options |
| 62 | + claude_args: '--allowed-tools "Bash(gh issue view:*),Bash(gh search:*),Bash(gh issue list:*),Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh pr list:*)"' |
| 63 | + |
0 commit comments