Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
FREEDOM251

Freedom251 › Blog › CI/CD

How to add Claude Code reviews to GitHub Actions (managed and custom setups)

By Freedom251 Team · · 11 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The practical answer: choose between Anthropic’s managed Claude Code Review for pull requests and the general-purpose anthropics/claude-code-action@v1 for a workflow you control. Managed review is configured once at the organization level and offers once-per-PR, every-push, or manual reviews. The action is defined in repository YAML and can run on virtually any GitHub event with your own prompt, CLI arguments, authentication, and output rules.

Both approaches can post useful findings, but they have different ownership, cost, and security implications. The sections below show the exact setup path, a safe starter workflow, authentication options, permission requirements, and the failure modes that most often prevent a review from running.

As an Amazon Associate I earn from qualifying purchases.

Choose the right Claude review path first

There are two related products, and confusing them is the most common setup mistake.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Decision point Managed Claude Code Review General-purpose Claude Code Action
Who owns configuration? An organization owner or primary owner configures the service in Claude’s organization settings. The repository team owns a workflow file under .github/workflows/.
Customization Fixed review behavior, extended by repository guidance files. Custom prompts, CLI arguments, plugins, trigger phrases, and structured output.
Triggers Once after PR creation, after every push, or manually with @claude review. Any GitHub event you declare, including pull-request, issue, review, comment, schedule, and custom event combinations.
Authentication Claude GitHub App plus organization-level enablement. Anthropic API key, Claude Code OAuth token, or OIDC workload identity federation.
Cost control Usage credits billed separately from included plan usage; review frequency directly changes the number of reviews. Each workflow invocation consumes Claude/API usage according to the prompt, repository context, and tools enabled.
Change authority Posts review findings. Can be limited to comments or granted tools that edit files, issues, or pull requests.

Use managed review when your organization wants a standardized pull-request check with minimal YAML. Use the action when you need a special prompt, scheduled analysis, JSON output, custom triggers, or integration with other workflow steps.

Path A: enable managed Claude Code Review

Anthropic describes Code Review as a research preview for Team and Enterprise plans. It is not available to organizations with zero data retention enabled, and its usage is billed separately through usage credits. An owner or primary owner must complete the organization setup.

1. Open the organization’s Claude Code settings

  1. Sign in as an organization owner or primary owner.
  2. Open Organization settings, then choose Claude Code.
  3. Click Configure.

If the Claude Code section or Configure control is missing, check that the organization is on a supported Team or Enterprise plan and does not have zero data retention enabled. Individual repository administrators cannot complete this organization-level step.

2. Install the Claude GitHub App

The setup flow asks you to install the Claude GitHub App and grant it access to repositories. The app requests read/write permissions for repository contents, issues, and pull requests. Select only the repositories that should be reviewed; granting access to every repository makes the review surface larger than necessary.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If a repository does not appear in the selector, the app is installed for a different GitHub organization or its installation was limited to another repository set. Reopen the GitHub App installation and add the missing repository, then return to Claude’s repository selection screen.

3. Select repositories and choose Review Behavior

After installation, choose the repositories to enable and set Review Behavior:

  • Once after PR creation: runs once when a pull request is opened or marked ready for review.
  • After every push: reviews every push to the pull-request branch and can automatically resolve review threads when the reported issue is fixed. This produces the most reviews and therefore the highest usage.
  • Manual: does not review until an authorized person comments at the start of a top-level pull-request comment with @claude review.

Manual review requires the pull request to be open and not a draft. The commenter must have owner, member, or collaborator access. A reply inside an existing thread is not the same as a new top-level comment, so start the comment itself with @claude review.

4. Verify the first automatic review

Open a small test pull request in an enabled repository. For the automatic modes, look for a check run named Claude Code Review within a few minutes. If no check appears, work through the troubleshooting section below before changing repository files.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the managed reviewer checks

By default, Code Review emphasizes correctness and production-breaking bugs. It does not primarily police formatting preferences or missing test coverage. Repository guidance files can expand the scope—for example, you can state project-specific security rules, compatibility requirements, or files that deserve special scrutiny.

Findings carry severity labels such as Normal, Nit, and Pre-existing. Expand a finding to read the reviewer’s reasoning and see the relevant code location. The service is designed to post findings inline on the lines where it identified an issue, rather than replacing your normal human review process.

Managed-review cost and frequency

Anthropic reports an average cost of $15–25 per Code Review in 2026. That is an average, not a guaranteed price: pull-request size, codebase complexity, and the number of issues that require verification all affect actual usage. Reviews use credits separately from included plan usage.

Every-push mode can multiply that cost because each new commit can start another review. Set a monthly spend cap under Organization settings → Usage, and prefer once-per-PR or manual mode when branches receive frequent fix-up commits.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Path B: add anthropics/claude-code-action@v1 to a workflow

The action path gives the repository team control over events, instructions, permissions, authentication, and outputs. The current v1 interface uses prompt for the natural-language task and claude_args for command-line options. The action can respond to issue comments, pull-request review comments, issue events, pull-request review events, scheduled jobs, and other events supported by GitHub Actions.

Minimal pull-request review workflow

Create .github/workflows/claude-review.yml with a pull-request trigger and the smallest permissions needed for a comment-only review:

name: Claude review

on:
  pull_request:
    types: [opened, synchronize, ready_for_review]

jobs:
  claude-review:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
      issues: write
    steps:
      - uses: actions/checkout@v6
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
          prompt: Review this pull request for correctness, security issues, and regressions. Post concise findings with file and line references.
          claude_args: |
            --max-turns 10

Commit the file to the repository’s default branch or open a pull request containing it, depending on your repository’s workflow policy. The workflow runs for the listed pull-request activity types: when the PR opens, when new commits synchronize it, and when a draft becomes ready for review.

Install the app and create the credential

The official direct-API setup sequence is:

  1. Install the Claude GitHub App for the repository or organization.
  2. Create a repository Actions secret named ANTHROPIC_API_KEY, or use the OAuth secret described below.
  3. Copy the relevant example workflow into .github/workflows/ and adapt its trigger and prompt.

Keep the secret in GitHub’s encrypted Actions secrets. Do not put a key directly in YAML, a repository variable, a prompt, an issue body, or a pull-request branch.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Authentication options for the action

Anthropic API key

Store the key as ANTHROPIC_API_KEY in repository Actions secrets and pass it through the anthropic_api_key input. This is the straightforward choice for direct Anthropic API usage and is supported by the starter workflow above.

Claude Code OAuth token

Pro and Max users can generate a token locally with claude setup-token. Store the resulting value as CLAUDE_CODE_OAUTH_TOKEN and pass it with the action’s claude_code_oauth_token input. Use one credential method per job and protect the token as carefully as an API key.

Workload Identity Federation (OIDC)

Federation avoids a long-lived API-key secret. You configure an Anthropic organization issuer, a service account, and a federation rule. The workflow then exchanges GitHub’s OIDC token for a short-lived Anthropic access token. The documented default OIDC audience is https://api.anthropic.com.

The job must be allowed to request an identity token:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
permissions:
  contents: read
  pull-requests: write
  issues: write
  id-token: write

Configure the organization, service-account, rule identifiers, and audience exactly as required by your federation setup. Do not provide a static API key or OAuth credential alongside federation inputs: static credentials take precedence, which defeats the intended short-lived-token flow.

Design the prompt and trigger deliberately

A good prompt states the review scope, the evidence expected in each finding, and what the action must not do. For example:

Review this pull request for correctness, security vulnerabilities, data-loss risks, and regressions.
Ignore formatting preferences unless they create a defect. For each actionable issue, include
severity, file path, line reference, why it matters, and a minimal fix. Do not modify files or
close issues. If no actionable issue is found, say so briefly.

Use claude_args for CLI-level controls such as --max-turns 10. The usage guide also documents custom trigger phrases, plugin marketplaces, and structured JSON output, so a workflow can hand machine-readable findings to a later step instead of posting only prose.

Choose events based on how often you need analysis:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • opened: catches the initial design and implementation.
  • synchronize: rechecks new commits, but can create frequent runs on active branches.
  • ready_for_review: avoids spending a review on draft work.
  • issue_comment or pull_request_review_comment: supports an on-demand command such as a custom phrase.
  • schedule: useful for periodic audits, but set a narrow scope and a predictable cadence.

Do not enable every event by default. Each invocation consumes runner time and Claude usage, and overlapping triggers can produce duplicate comments.

Permissions: start narrow and expand only when needed

GitHub Actions permissions are an authorization boundary. A comment-only review commonly needs contents: read, pull-requests: write, and issues: write. If the action only reads code and emits an external artifact, you may be able to reduce pull-request and issue permissions as well. If it must edit files, create a branch, or update a pull request, grant only the specific write permission required for that operation.

The federation example includes contents: write, pull-requests: write, issues: write, and id-token: write because it demonstrates a broader automation scenario. Do not copy those write permissions unchanged for a read-only review.

Repository and bot authorization checks

Anthropic’s security guidance checks repository write access for issue, pull-request, comment, and review events. Bot users are blocked by default. If automation must be allowed, an explicit bot allowlist is safer than a wildcard such as *.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The allowed_non_write_users setting bypasses the main permission check. Use it only with tightly limited permissions and only for identities you have deliberately verified. A broad allowlist can let untrusted contributors invoke an action with more authority than intended.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Protect the workflow from untrusted pull-request content

Pull-request titles, descriptions, comments, changed files, and generated diffs are untrusted input. A malicious contributor can try to inject instructions into that content. The action sanitizes hidden HTML comments, invisible characters, hidden attributes, and entities, but prompt-injection defenses are not absolute. Treat every model output as untrusted and validate it before a later step executes commands or changes repository state.

Be especially careful with pull_request_target and workflow_run

These events can run with access to secrets or the base repository even though the pull request comes from an untrusted branch. Do not check out an untrusted PR ref into the workspace root before Claude runs. Use the trusted base checkout at the root. If you need the PR files, place that checkout in a separate subdirectory and pass the directory explicitly with --add-dir.

This layout keeps scripts from an untrusted branch out of the directory where the action and its tooling execute. It also makes it easier to distinguish trusted workflow code from files supplied by the contributor.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Keep model output from becoming an implicit command

  • Do not pipe review text directly into a shell command.
  • Require explicit, deterministic checks before applying a suggested patch.
  • Use read-only permissions unless a write is part of the approved workflow.
  • Limit checkout scope and avoid exposing unrelated secrets to the job.
  • Record which event, commit SHA, and permissions produced each review.

Managed service or action: practical decision framework

Choose managed Code Review when

  • An organization owner wants one consistent review policy across selected repositories.
  • You want setup through Claude’s organization UI rather than maintaining YAML.
  • Inline findings focused on correctness and production-breaking bugs are sufficient.
  • You can control spend with once-per-PR or manual triggering and a monthly cap.

Choose the general-purpose action when

  • Reviews must run on custom events, schedules, or comments.
  • You need repository-specific prompts, plugins, CLI flags, or structured JSON.
  • You want to combine review output with tests, labels, artifacts, or another job.
  • You need a path to controlled file or issue updates, with explicit write permissions.

Run both only with a clear boundary

Using both systems in one repository can duplicate reviews and costs. If you retain managed review for the standard check and add the action for a specialized audit, give each a distinct purpose—for example, managed review for correctness and the action for a scheduled security report—and make the trigger conditions obvious to contributors.

Troubleshooting by symptom

The repository is missing from Claude’s settings

Confirm that the Claude GitHub App is installed in the correct GitHub organization and that its installation includes the repository. Repository selection is controlled by the app installation, not just by a user’s personal repository visibility.

A new pull request receives no managed review

  • Confirm the repository is enabled in Claude Code settings.
  • Check that the pull request is not a draft.
  • Verify the selected behavior is not Manual.
  • For Manual mode, post a new top-level comment beginning with @claude review.
  • For automatic mode, look for the Claude Code Review check after a few minutes.

The action fails authentication

  • Check that the secret name matches the workflow input exactly: ANTHROPIC_API_KEY for anthropic_api_key, or CLAUDE_CODE_OAUTH_TOKEN for claude_code_oauth_token.
  • For federation, verify the Anthropic organization, service account, federation rule IDs, audience, and id-token: write.
  • Remove static credentials when testing federation so they cannot take precedence.
  • Confirm the Claude GitHub App is installed and available to the repository.

The workflow runs unexpectedly or exposes too much

Review the event filters and remove broad bot allowlists. Reduce repository, pull-request, issue, and identity-token permissions to the minimum the job needs. Inspect whether an untrusted checkout was placed at the workspace root, especially for pull_request_target or workflow_run, and move it to a separate directory before invoking Claude.

You use GitHub Enterprise Server

Anthropic provides a separate GHES setup flow. Standard github.com repositories and self-hosted GitHub Enterprise Server installations do not share identical support paths, so follow the GHES-specific configuration rather than assuming the public GitHub instructions apply unchanged.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A rollout checklist

  1. Decide whether organization-managed review or repository-owned action YAML fits the required customization.
  2. Install the Claude GitHub App only for the repositories that need it.
  3. Choose a trigger policy that matches review frequency and budget.
  4. Create an encrypted API-key, OAuth, or federated identity configuration.
  5. Declare minimal workflow permissions, adding id-token: write only for OIDC.
  6. Write a prompt that defines severity, evidence, and prohibited actions.
  7. Test with a small pull request and verify the expected check or comment.
  8. Inspect a run from an untrusted-branch scenario before enabling write capabilities.
  9. Set a monthly spend cap for managed review and monitor action usage.
  10. Document who can trigger manual reviews and who can change the workflow.

Bottom line

For a standardized pull-request check, enable managed Claude Code Review at the organization level, install the Claude GitHub App, select repositories, and choose once, every-push, or manual behavior. For a configurable GitHub Actions integration, add anthropics/claude-code-action@v1, authenticate with an API key, OAuth token, or OIDC federation, and define the event, prompt, arguments, and permissions yourself. The safest implementation is the narrowest one: review only the events you need, keep credentials short-lived where possible, treat pull-request content as hostile input, and grant write access only when a specific workflow step requires it.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

CI/CDClaude Codecode reviewDevOpsGitHub ActionsGitHub security

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.