11name : Claude Code Review
22
33on :
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-
4+ issue_comment :
5+ types : [created]
136jobs :
147 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-
8+ if : github.event.issue.pull_request && contains(github.event.comment.body, '/claude review')
219 runs-on : ubuntu-latest
2210 permissions :
2311 contents : read
3624 uses : anthropics/claude-code-action@beta
3725 with :
3826 anthropic_api_key : ${{ secrets.ANTHROPIC_API_KEY }}
39-
40- # Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4.1)
41- # model: "claude-opus-4-1-20250805"
42-
43- # Direct prompt for automated review (no @claude mention needed)
4427 direct_prompt : |
4528 Please review this pull request and provide feedback on:
4629 - Code quality and best practices
4932 - Security concerns
5033 - Test coverage
5134
52- Be constructive and helpful in your feedback.
53-
54- # Optional: Use sticky comments to make Claude reuse the same comment on subsequent pushes to the same PR
55- # use_sticky_comment: true
56-
57- # Optional: Customize review based on file types
58- # direct_prompt: |
59- # Review this PR focusing on:
60- # - For TypeScript files: Type safety and proper interface usage
61- # - For API endpoints: Security, input validation, and error handling
62- # - For React components: Performance, accessibility, and best practices
63- # - For tests: Coverage, edge cases, and test quality
64-
65- # Optional: Different prompts for different authors
66- # direct_prompt: |
67- # ${{ github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' &&
68- # 'Welcome! Please review this PR from a first-time contributor. Be encouraging and provide detailed explanations for any suggestions.' ||
69- # 'Please provide a thorough code review focusing on our coding standards and best practices.' }}
70-
71- # Optional: Add specific tools for running tests or linting
72- # allowed_tools: "Bash(npm run test),Bash(npm run lint),Bash(npm run typecheck)"
73-
74- # Optional: Skip review for certain conditions
75- # if: |
76- # !contains(github.event.pull_request.title, '[skip-review]') &&
77- # !contains(github.event.pull_request.title, '[WIP]')
78-
35+ Be constructive and helpful in your feedback.
0 commit comments