elvis-ndubuisi/LazyPR AI PR Summary
Generates AI-powered PR summaries with Ghost Commit detection, impact scoring, and automated reviewer checklists
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| api_key | API key for your LLM provider (OpenAI, Anthropic, or Google Gemini) | yes | — |
| provider | LLM provider to use (openai, anthropic, or gemini) | no | openai |
| model | Model to use (defaults to provider-specific model if not specified) | no | "" |
| template | Built-in prompt preset to use (default, concise, verbose, security-focused). Ignored if a valid custom template is found. | no | default |
| custom_template | Whether to load a custom template from the repository (true/false) | no | true |
| custom_template_path | Optional explicit path to a custom template file in the repo (e.g. .github/lazypr-template.md) | no | "" |
| github_token | GitHub token for API access (automatically provided by GitHub Actions) | yes | — |
| ticket_pattern | Custom regex pattern for ticket ID detection (e.g., 'PROJ-[0-9]+') | no | "" |
| ticket_url_template | URL template for ticket links (use {{id}} placeholder) | no | "" |
| auto_update_title | Whether to automatically update vague PR titles (true/false) | no | false |
| custom_placeholders | Custom placeholders as JSON object for template substitution | no | {} |
| pr_size_warning | Warn if PR exceeds this many lines (0 to disable). Default: 500 | no | 500 |
| pr_size_block | Block summarization if PR exceeds this many lines (0 to disable). Default: 2000 | no | 2000 |
Outputs
| name | description |
|---|---|
| summary | Generated PR summary |
| has_ghost_commits | Whether ghost commits were detected |
| risk_level | Risk level of the PR changes (LOW, MEDIUM, or HIGH) |
| impact_score | Impact score from 0-100 |
| pr_size_lines | Total number of lines changed in the PR |
| pr_size_warning_triggered | Whether the PR size warning was triggered (true/false) |
| pr_size_blocked | Whether summarization was blocked due to PR size (true/false) |
| related_tickets | Markdown list of detected tickets (JIRA, GitHub issues, etc.) |
| enhanced_title | Updated PR title if auto_update_title was enabled and title was vague |
| custom_placeholders_applied | Number of custom placeholders that were substituted in the template |