Skip to content

chore(deps): bump pyo3 from 0.28.3 to 0.29.0 #73

chore(deps): bump pyo3 from 0.28.3 to 0.29.0

chore(deps): bump pyo3 from 0.28.3 to 0.29.0 #73

name: Claude Code Review
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
branches: [main]
permissions:
contents: read
id-token: write
pull-requests: write
issues: write
jobs:
review:
name: claude-code-review
runs-on: ubuntu-latest
if: >-
${{
github.event.pull_request.draft == false &&
contains(fromJSON('["OWNER","MEMBER","COLLABORATOR"]'), github.event.pull_request.author_association)
}}
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
CLAUDE_MODEL: claude-sonnet-4-6
steps:
- name: Skip when Claude secrets are not configured
if: ${{ env.ANTHROPIC_API_KEY == '' || env.ANTHROPIC_BASE_URL == '' }}
run: echo "Claude Code review secrets are not configured; skipping Claude Code review."
- name: Detect Claude review workflow changes
id: claude-workflow-change
if: ${{ env.ANTHROPIC_API_KEY != '' && env.ANTHROPIC_BASE_URL != '' }}
uses: actions/github-script@v8
with:
script: |
const files = await github.paginate(github.rest.pulls.listFiles, {
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.payload.pull_request.number,
per_page: 100,
});
const selfChanged = files.some(
(file) => file.filename === ".github/workflows/claude-code-review.yml",
);
core.setOutput("self_changed", selfChanged ? "true" : "false");
- name: Skip Claude review for workflow self-change
if: ${{ steps.claude-workflow-change.outputs.self_changed == 'true' }}
run: echo "Skipping Claude Code Review because this PR changes the review workflow itself."
- name: Checkout repository
if: ${{ env.ANTHROPIC_API_KEY != '' && env.ANTHROPIC_BASE_URL != '' && steps.claude-workflow-change.outputs.self_changed != 'true' }}
uses: actions/checkout@v6
with:
fetch-depth: 1
persist-credentials: false
- name: Run Claude Code review
if: ${{ env.ANTHROPIC_API_KEY != '' && env.ANTHROPIC_BASE_URL != '' && steps.claude-workflow-change.outputs.self_changed != 'true' }}
uses: anthropics/claude-code-action@v1
env:
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
track_progress: true
use_sticky_comment: true
exclude_comments_by_actor: MapleEve,github-actions,codecov,sourcery-ai,copilot-pull-request-reviewer
prompt: |
REPO: ${{ github.repository }}
PR NUMBER: ${{ github.event.pull_request.number }}
Review this pull request using REVIEW.md as the review-only guide.
Focus on actionable VoScript risks:
- Privacy and security leaks
- Model lifecycle races and GPU/CPU fallback behavior
- HTTP API compatibility
- Regression-test coverage
- Synchronized English/Chinese documentation
The PR branch is already checked out in the current working directory.
Use only the configured ANTHROPIC_API_KEY and ANTHROPIC_BASE_URL for Claude access.
Do not start browser login or any interactive authorization flow.
Post feedback only through this GitHub Actions run.
Do not use the GitHub CLI and do not use a user-owned GitHub token.
If non-interactive API-key review is unavailable, fail instead of falling back.
If there are no actionable findings, post the standard no-findings confirmation through the action.
Avoid formatting-only comments.
claude_args: |
--model ${{ env.CLAUDE_MODEL }}
--max-turns 8