Claude CodeClaude Code 2.1 · terminal and VS Code · macOS, Linux, Windows
Dashboard
0%
1
Curious builder0 XP earned · 300 to level 2
0 daysFinish a lesson to begin
Badge collection0 of 6 unlocked
32 small wins to finish your pathNext lesson →

Code Review and GitHub Actions

Code Review is a managed Claude service that reads a pull request against the whole codebase and posts its findings as inline comments.

Last updated: 28 Sep, 2026 · Claude Code

Work that ran unattended most needs a second reader. There are two ways to get one, and they are not the same product.

Code ReviewThe GitHub Action
What it isA managed service that reviews pull requestsA workflow you write, running Claude Code in CI
SetupTurn it on for a repositoryA workflow file and an API key
It doesPosts findings as inline comments, tagged by severityWhatever your prompt says: fix an issue, answer an @claude mention, open a pull request
AvailabilityResearch preview, Team and Enterprise plansAny repository you can add a workflow to

Code Review reads the change in the context of the whole codebase rather than the diff alone, which is the part a human reviewer usually skips. Findings do not approve or block the pull request, so it slots in beside whatever review process already exists.

You steer what it flags with a CLAUDE.md or a REVIEW.md in the repository. That is the same file from the CLAUDE.md lesson doing a second job: the conventions you wrote for the session are the conventions the review holds you to.

The action, in one file

yaml

name: Claude
on:
  issue_comment:
    types: [created]

jobs:
  claude:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
      issues: write
      id-token: write
      actions: read
    steps:
      - uses: actions/checkout@v6
      - uses: anthropics/claude-code-action@v1
        with:
          anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

With that in place, mentioning @claude in a pull request or an issue starts a run in your own CI, with your repository checked out. It is the headless mode from the last lesson with GitHub events as the trigger.

The action reads the key from a repository secret. In GitHub open Settings, then Secrets and variables, then Actions, choose New repository secret, name it ANTHROPIC_API_KEY and paste a Console key. To use your plan instead, save the token from claude setup-token as a secret named CLAUDE_CODE_OAUTH_TOKEN and pass it as claude_code_oauth_token in place of anthropic_api_key. Running /install-github-app inside Claude Code sets this up for you.

Unattended means the rules matter
Whatever you put in CI runs unattended by definition, which makes part 4 the important part of this lesson. Deny rules and hooks stop an automated run from doing something you would not have approved.
Try it yourself
  • Look at your last three pull requests and ask which comments a reviewer would have made from reading the whole repo.
  • Add the workflow to a scratch repository and mention @claude in an issue.

Every expert started right here.