arthrod/AI-based PR Reviewer & Summarizer with Chat Capabilities
AI-based PR Reviewer & Summarizer with Chat Capabilities
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Mar 7, 2026
- License
- MIT
Pinned Snippet
uses: arthrod/ai-pr-reviewer@44244a9e06f5acf72a93f661c7dbb8d8d808143d # 1.16.2tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| debug | Enable debug mode | no | false |
| max_files | Max files to summarize and review. Less than or equal to 0 means no limit. | no | 150 |
| review_simple_changes | Review even when the changes are simple | no | false |
| review_comment_lgtm | Leave comments even if the patch is LGTM | no | false |
| path_filters | The path filters, e.g., "src/**.py", "!dist/**", each line will be considered as one pattern. See also - https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onpushpull_requestpull_request_targetpathspaths-ignore - https://github.com/isaacs/minimatch | no | !dist/** !**/*.app !**/*.bin !**/*.bz2 !**/*.class !**/*.db !**/*.csv !**/*.tsv !**/*.dat !**/*.dll !**/*.dylib !**/*.egg !**/*.glif !**/*.gz !**/*.xz !**/*.zip !**/*.7z !**/*.rar !**/*.zst !**/*.ico !**/*.jar !**/*.tar !**/*.war !**/*.lo !**/*.log !**/*.mp3 !**/*.wav !**/*.wma !**/*.mp4 !**/*.avi !**/*.mkv !**/*.wmv !**/*.m4a !**/*.m4v !**/*.3gp !**/*.3g2 !**/*.rm !**/*.mov !**/*.flv !**/*.iso !**/*.swf !**/*.flac !**/*.nar !**/*.o !**/*.ogg !**/*.otf !**/*.p !**/*.pdf !**/*.doc !**/*.docx !**/*.xls !**/*.xlsx !**/*.ppt !**/*.pptx !**/*.pkl !**/*.pickle !**/*.pyc !**/*.pyd !**/*.pyo !**/*.pub !**/*.pem !**/*.rkt !**/*.so !**/*.ss !**/*.eot !**/*.exe !**/*.pb.go !**/*.lock !**/*.ttf !**/*.yaml !**/*.yml !**/*.cfg !**/*.toml !**/*.ini !**/*.mod !**/*.sum !**/*.work !**/*.json !**/*.mmd !**/*.svg !**/*.jpeg !**/*.jpg !**/*.png !**/*.gif !**/*.bmp !**/*.tiff !**/*.webm !**/*.woff !**/*.woff2 !**/*.dot !**/*.md5sum !**/*.wasm !**/*.snap !**/*.parquet !**/gen/** !**/_gen/** !**/generated/** !**/@generated/** !**/vendor/** !**/*.min.js !**/*.min.js.map !**/*.min.js.css !**/*.tfstate !**/*.tfstate.backup |
| disable_review | Only provide the summary and skip the code review. | no | false |
| disable_release_notes | Disable release notes | no | false |
| gemini_api_key | The Google Gemini API key. | no | "" |
| gemini_light_model | Model to use for simple tasks like summarizing diff on a file. | no | gemini-3.1-pro-preview |
| gemini_heavy_model | Model to use for complex tasks such as code reviews. | no | gemini-3.1-pro-preview |
| gemini_model_temperature | Temperature for Gemini model | no | 0.05 |
| gemini_retries | How many times to retry Gemini API in case of timeouts or errors? | no | 5 |
| gemini_timeout_ms | Timeout for Gemini API call in millis | no | 360000 |
| gemini_concurrency_limit | How many concurrent API calls to make to Gemini servers? | no | 6 |
| github_concurrency_limit | How many concurrent API calls to make to GitHub? | no | 6 |
| system_message | System message to be sent to Gemini | no | You are `@cicero-ai` (aka `github-actions[bot]`), a language model powered by Google Gemini. Your purpose is to act as a highly experienced software engineer and provide a thorough review of the code hunks and suggest code snippets to improve key areas such as: - Logic - Security - Performance - Data races - Consistency - Error handling - Maintainability - Modularity - Complexity - Optimization - Best practices: DRY, SOLID, KISS Do not comment on minor code style issues, missing comments/documentation. Identify and resolve significant concerns to improve overall code quality while deliberately disregarding minor issues. |
| summarize | The prompt for final summarization response | no | Provide your final response in markdown with the following content: - **Walkthrough**: A high-level summary of the overall change instead of specific files within 80 words. - **Changes**: A markdown table of files and their summaries. Group files with similar changes together into a single row to save space. - **Poem**: Below the changes, include a whimsical, short poem written by a rabbit to celebrate the changes. Format the poem as a quote using the ">" symbol and feel free to use emojis where relevant. Avoid additional commentary as this summary will be added as a comment on the GitHub pull request. Use the titles "Walkthrough" and "Changes" and they must be H2. |
| summarize_release_notes | The prompt for generating release notes in the same chat as summarize stage | no | Craft concise release notes for the pull request. Focus on the purpose and user impact, categorizing changes as "New Feature", "Bug Fix", "Documentation", "Refactor", "Style", "Test", "Chore", or "Revert". Provide a bullet-point list, e.g., "- New Feature: Added search functionality to the UI". Limit your response to 50-100 words and emphasize features visible to the end-user while omitting code-level details. |
| language | ISO code for the response language | no | en-US |
| bot_icon | The icon for the bot | no | <img src="https://avatars.githubusercontent.com/in/347564?s=41" alt="Image description" width="20" height="20"> |
| enable_test_coverage_analysis | Enable automated test coverage analysis for changed files | no | true |
| test_coverage_threshold | Minimum test coverage percentage threshold for warnings | no | 80 |
| test_coverage_files | Comma-separated list of test coverage report files to check | no | coverage/coverage-summary.json,coverage/lcov.info,coverage/clover.xml,test-results/coverage.json,coverage/coverage.json |
| enable_security_analysis | Enable automated security vulnerability analysis for changed files | no | true |
| security_severity_threshold | Minimum severity level for security vulnerabilities to report (low, medium, high, critical) | no | medium |
| enable_performance_analysis | Enable automated performance impact assessment for changed files | no | true |
| performance_score_threshold | Minimum performance score threshold for warnings (0-100) | no | 70 |
| enable_complexity_analysis | Enable automated code complexity analysis for changed files | no | true |
| complexity_score_threshold | Minimum complexity score threshold for warnings (0-100) | no | 75 |
| enable_dependency_analysis | Enable automated dependency update intelligence analysis for changed files | no | true |
| dependency_security_threshold | Minimum dependency security score threshold for warnings (0-100) | no | 80 |
| enable_documentation_analysis | Enable automated documentation quality validation for changed files | no | true |
| documentation_coverage_threshold | Minimum documentation coverage score threshold for warnings (0-100) | no | 70 |
| enable_cicd_analysis | Enable automated CI/CD pipeline integration with quality gates | no | true |
| cicd_merge_blocking | Enable merge blocking when quality gates fail | no | false |
| cicd_strict_mode | Enable strict mode with higher quality thresholds | no | false |
| cicd_quality_gate_threshold | CI/CD quality gate threshold (0-100) | no | 80 |
| cicd_security_gate_threshold | CI/CD security gate threshold (0-100) | no | 85 |
| cicd_performance_gate_threshold | CI/CD performance gate threshold (0-100) | no | 70 |
| cicd_coverage_gate_threshold | CI/CD test coverage gate threshold (0-100) | no | 80 |
| cicd_complexity_gate_threshold | CI/CD complexity gate threshold (0-100) | no | 75 |
| cicd_dependency_gate_threshold | CI/CD dependency gate threshold (0-100) | no | 80 |
| cicd_documentation_gate_threshold | CI/CD documentation gate threshold (0-100) | no | 70 |
Outputs
no outputs