diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml new file mode 100644 index 0000000..ca227de --- /dev/null +++ b/.github/workflows/claude-code-review.yml @@ -0,0 +1,34 @@ +name: Code Review +on: + pull_request: + types: [opened, ready_for_review, reopened] +jobs: + review: + runs-on: ubuntu-latest + timeout-minutes: 20 + permissions: + contents: read + pull-requests: read + issues: read + id-token: write + steps: + - uses: actions/checkout@v6 + with: + fetch-depth: 1 + - uses: actions/create-github-app-token@v1 + id: app-token + with: + app-id: ${{ secrets.VANDAME_APP_ID }} + private-key: ${{ secrets.VANDAME_APP_PRIVATE_KEY }} + - uses: anthropics/claude-code-action@v1 + env: + # The review ran its subagents in the background and ended before they answered, so some pull requests got no + # comment. With the background tasks off, the subagents run in the foreground and the review waits for them. + CLAUDE_CODE_DISABLE_BACKGROUND_TASKS: "1" + with: + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN_ENTERPRISE }} + github_token: ${{ steps.app-token.outputs.token }} + plugin_marketplaces: "https://github.com/anthropics/claude-code.git" + plugins: "code-review@claude-code-plugins" + prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}. Para correções pequenas e diretas, formate o corpo do comentário inline com um bloco de código na linguagem 'suggestion' contendo o texto substituto exato, para habilitar o botão 'Commit suggestion' do GitHub. Execute os subagentes em primeiro plano (sem run_in_background) e espere o resultado de todos antes de encerrar: só termine depois de publicar o comentário da revisão." + claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'