Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 5 additions & 34 deletions .github/workflows/claude-review.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
name: Claude Review

on:
pull_request:
types: [opened, synchronize, ready_for_review, reopened]
types: [ready_for_review, synchronize]
Comment on lines 3 to +5
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Trigger on PR open so ready PRs get an initial review

Restricting pull_request.types to ready_for_review and synchronize skips the initial run for PRs that are created already non-draft, because those PRs emit opened (not ready_for_review). As a result, many PRs will not receive any Claude review until another commit is pushed, which is a functional regression from the previous workflow behavior.

Useful? React with 👍 / 👎.


concurrency:
group: claude-review-${{ github.event.pull_request.number }}
Expand All @@ -11,36 +12,6 @@ permissions: {}

jobs:
review:
if: github.event.pull_request.draft == false && github.event.pull_request.head.repo.fork == false
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
id-token: write
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 1

- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
track_progress: true
prompt: |
REPO: ${{ github.repository }}
PR NUMBER: ${{ github.event.pull_request.number }}

Please review this pull request with a focus on:
- Code quality and best practices
- Potential bugs or issues
- Security implications
- Performance considerations

Provide detailed feedback using inline comments for specific issues.

# --max-turns caps how many tool-use cycles Claude can run, which
# bounds token spend per invocation. The allowed `gh pr` commands are
# scoped to this PR's number so a misfire can't reach into another PR.
claude_args: |
--max-turns 30
--allowedTools "mcp__github_inline_comment__create_inline_comment,Bash(gh pr comment ${{ github.event.pull_request.number }}:*),Bash(gh pr diff ${{ github.event.pull_request.number }}:*),Bash(gh pr view ${{ github.event.pull_request.number }}:*)"
uses: stellar/actions/.github/workflows/claude-review.yml@main
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Re-add token permissions on the reusable workflow call

This change removes the job-level permissions block while keeping workflow-level permissions: {}, which leaves the called reusable workflow with a GITHUB_TOKEN that has no scopes. In that state, the review workflow cannot perform core actions like reading contents or writing PR comments/reviews, so Claude review runs will fail or become non-functional for all PRs.

Useful? React with 👍 / 👎.

secrets:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
Loading