name: Claude Auto Review on: pull_request: types: [ready_for_review, opened] concurrency: group: claude-review-${{ github.event.pull_request.number }} cancel-in-progress: true jobs: auto-review: runs-on: ubuntu-latest if: github.event.pull_request.draft == false || github.event.pull_request.ready_for_review == true permissions: contents: read pull-requests: read id-token: write steps: - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 1 - name: Read review prompt id: review-prompt run: | { echo 'REVIEW_PROMPT<> "$GITHUB_ENV" - name: Automatic PR Review uses: anthropics/claude-code-action@v1 with: claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} track_progress: true prompt: | REPO: ${{ github.repository }} PR NUMBER: ${{ github.event.pull_request.number }} ${{ env.REVIEW_PROMPT }} claude_args: | --allowedTools "mcp__github_inline_comment__create_inline_comment,Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*)" --model opus