Chisle
코딩 에이전트 플러그인, 20개 실시간 작업에서 기본 모델 52% 활용, 간결한 페르소나와 출력 압축 제공
Pull request review by Claude Code, run in GitHub Actions when someone asks for it.
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Pull request review by Claude Code, run in GitHub Actions when someone asks for it.
code-reviewer agent always runs; language and security specialists join when the changed files call for them.CODEOWNERS when a change needs a human: a blocker on an owned path, high risk, or a design question.The bot posts as a GitHub App you create. This repository's examples use the app neralabs-reviewer (handle @neralabs-reviewer) and the team @neralabs/reviewer.
flowchart LR
E[PR event in a target repo] --> C[caller workflow]
C --> G{gate: trigger, permission, state}
G -->|ignore| X[exit]
G -->|help / stop| S[respond job: app token]
G -->|review| R[review job: Claude Code + review skill, read-only]
R --> J[findings.json]
J --> P[post job: app token]
P --> GH[review, inline comments, resolved threads, reviewer requests]
The model reads untrusted PR content, so it never holds a credential that can write. The review job has no GitHub token and no shell; it produces findings.json and nothing else. A separate post job validates and sanitises that output, re-reads the PR from GitHub, applies the verdict rules and posts. Details: docs/architecture.md and docs/security-model.md.
These steps set the reviewer up for your organization. Replace <org> with your organization and <app> with your app's name.
Create a GitHub App in your organization (Settings → Developer settings → GitHub Apps). Permissions:
Generate a private key. Note the app's client ID.
Install the app on each repository it should review. It needs access to those repositories only.
Create a team for review requests, for example <org>/reviewer. Remove every member, including yourself (GitHub adds the creator), and turn notifications off. Give the team read access to each target repository, so it can be requested as a reviewer.
Store the credentials as organization or repository settings visible to the target repositories:
REVIEWER_APP_CLIENT_ID: the app's client ID;REVIEWER_APP_PRIVATE_KEY: the app's private key;REVIEWER_ANTHROPIC_API_KEY (a Claude API key), or secret REVIEWER_BEDROCK_API_KEY (an Amazon Bedrock API key). Scope the key to invoking the model you configure and nothing else. infra/bedrock.yml is a CloudFormation example for Bedrock.Add the caller workflow. Copy templates/caller.yml to .github/workflows/reviewer.yml in the target repository. Set provider and model, pin uses: and reviewer_ref to a release tag (docs/versioning.md), and set team_slug, handle and bot_login for your app and team (docs/configuration.md). Keep the explicit list; don't use .
Start with allow_approve: false. The bot then comments and requests changes but never approves. Turn approvals on once its reviews are reliable for the repository. When the app has Contents read and write, bot approvals count toward required reviews, so treat the caller, REVIEW.md and CODEOWNERS as security-relevant files. With Contents read, the bot still posts approvals, but a person's approval is still required.
Only users with write access to the repository can trigger the bot. It ignores bots, quoted lines and fenced code.
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗
secrets:secrets: inheritAdd a REVIEW.md at the repository root, from templates/REVIEW.md: what the repo is, what blocks a merge, known gaps, high-risk paths, and the settings block.
Add a CODEOWNERS file. Escalations go to the owners it names. Without one, the bot mentions the repository admins and reports the missing file.