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@beta
37+ with :
38+ anthropic_api_key : ${{ secrets.ANTHROPIC_API_KEY }}
39+
40+ # Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4)
41+ # model: "claude-opus-4-20250514"
42+
43+ # Direct prompt for automated review (no @claude mention needed)
44+ direct_prompt : |
45+ Please review this pull request and provide feedback on:
46+ - Code quality and best practices
47+ - Potential bugs or issues
48+ - Performance considerations
49+ - Security concerns
50+ - Test coverage
51+
52+ Be constructive and helpful in your feedback.
53+
54+ # Optional: Customize review based on file types
55+ # direct_prompt: |
56+ # Review this PR focusing on:
57+ # - For TypeScript files: Type safety and proper interface usage
58+ # - For API endpoints: Security, input validation, and error handling
59+ # - For React components: Performance, accessibility, and reusability
60+ # - For test files: Coverage, edge cases, and test quality
61+
62+ # Optional: If automated review posts public comments
63+ # no_comments: true
64+
65+ # Optional: Create a summary comment on the PR
66+ # summary_comment: true
67+
68+ # Optional: Allow Claude to suggest code changes
69+ # allow_code_suggestions: true
70+
71+ # Optional: Limit Claude review scope
72+ # max_files_to_review: 10
73+ # max_lines_per_file: 500
0 commit comments