https://github.com/auth0/auth0-ai-pr-analyzer-gh-action
AI PR reviewer for public facing Auth0 repos.
https://github.com/auth0/auth0-ai-pr-analyzer-gh-action
Last synced: 8 months ago
JSON representation
AI PR reviewer for public facing Auth0 repos.
- Host: GitHub
- URL: https://github.com/auth0/auth0-ai-pr-analyzer-gh-action
- Owner: auth0
- License: apache-2.0
- Created: 2025-08-21T18:40:59.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-12-05T15:43:54.000Z (8 months ago)
- Last Synced: 2025-12-08T02:37:07.091Z (8 months ago)
- Language: Shell
- Size: 101 KB
- Stars: 2
- Watchers: 0
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Notice: NOTICE
Awesome Lists containing this project
- awesome-auth0 - auth0-ai-pr-analyzer-gh-action - A GitHub Actions workflow that provides AI-powered code reviews using Claude via Amazon Bedrock. (Developer Ecosystem)
README
# AI PR Analyzer GitHub Action
A GitHub Actions workflow that provides AI-powered code reviews using Claude via Amazon Bedrock. Automatically analyze pull requests and provide intelligent feedback when triggered by mentioning `@claude` in PR comments or descriptions.
## Key Features
- **AI-Powered Code Reviews**: Leverages Claude AI through Amazon Bedrock for intelligent code analysis
- **Inline Comments**: Provides line-specific feedback directly in GitHub pull requests
- **Customizable Instructions**: Support for custom review instructions tailored to your project
- **File Filtering**: Ability to exclude specific files or directories from review
- **Clean PR Experience**: Automatically hides outdated bot reviews to keep PRs focused
- **OIDC Authentication**: Secure AWS authentication without long-lived credentials
- **Trigger-Based**: Only runs when explicitly requested via `@claude` mentions
## Installation
Add this reusable workflow to your repository by creating a new workflow file (e.g., `.github/workflows/claude-code-review.yml`):
```yaml
name: Claude Code PR Review
on:
issue_comment:
types: [ created ]
pull_request_review_comment:
types: [ created ]
pull_request_review:
types: [ submitted ]
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
```
## Usage
### Basic Usage
Once the workflow is set up, simply mention `@claude` in:
- Pull request descriptions
- PR comments
- Review comments
The AI will analyze the code changes and provide intelligent feedback.
### Advanced Configuration
#### Custom Review Instructions
```yaml
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
with:
custom_review_instructions: |
When reviewing code changes, please:
- Focus on Go best practices and idioms
- Check for proper error handling patterns
- Verify context usage in long-running operations
- Review goroutine and channel usage for race conditions
- Check for proper resource cleanup (defer statements)
```
#### Project Context with CLAUDE.md
For comprehensive project context and review instructions, we recommend creating a `CLAUDE.md` file in your repository root instead of using `custom_review_instructions`. This approach provides better organization and maintainability of your AI assistant context.
## Examples
### Minimal Configuration
For a basic setup without any custom parameters:
```yaml
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
```
#### Ignoring Files and Directories
By default, `vendor` and `dist` directories, and `package-lock.json` files are ignored from the review.
You can prevent the reviewer from reading specific files and directories by using the `disallowed_tools` parameter with the `Read()` syntax:
```yaml
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
with:
disallowed_tools: |
Read(build)
Read(__pycache__)
```
**Allow additional tools:**
```yaml
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
with:
allowed_tools: "Bash(npm:*),Bash(yarn:*)"
```
You can also use wildcards with the star symbol:
```yaml
jobs:
claude-review:
uses: auth0/auth0-ai-pr-analyzer-gh-action/.github/workflows/claude-code-review.yml@main
with:
disallowed_tools: |
Read(*_mock.go)
Read(*.pb.go)
Read(*.generated.ts)
```
For more information on using the `disallowed_tools` parameter, check the [Claude Code documentation](https://github.com/anthropics/claude-code-action/blob/main/docs/configuration.md#custom-tools).
## Contributing
We appreciate feedback and contribution to this repo! Before you get started, please read the following:
- [Auth0's general contribution guidelines](https://github.com/auth0/open-source-template/blob/master/GENERAL-CONTRIBUTING.md)
- [Auth0's code of conduct guidelines](https://github.com/auth0/nextjs-auth0/blob/main/CODE-OF-CONDUCT.md)
- [This repo's contribution guide](./CONTRIBUTING.md)
## Contact/Support
### Raise an Issue
To provide feedback or report a bug, please [raise an issue on our issue tracker](https://github.com/auth0/ai-pr-analyzer-github-action/issues).
## What is Auth0?
Auth0 is an easy to implement, adaptable authentication and authorization platform. To learn more checkout Why Auth0?
This project is licensed under the Apache 2.0 license. See the LICENSE file for more info.