con un clic
pr-first-review
// First-pass GitHub PR review: OWASP Top 10, style violations, scope creep, breaking changes. Comments before the maintainer looks.
// First-pass GitHub PR review: OWASP Top 10, style violations, scope creep, breaking changes. Comments before the maintainer looks.
Write signal-driven first lines for cold outreach. Leads with a recent hire, product launch, podcast quote, or funding round. Avoids generic 'I noticed your company...' openers.
Daily diff of competitor landing pages — pricing changes, hero copy swaps, new features mentioned. Flags meaningful changes only.
Triage GitHub issues: label by type/priority, ask for repro on bugs, close obvious duplicates with a link to the canonical thread.
Pull Stripe + Mixpanel + GA4 once a week, compute MRR / churn / ARPU / activation, send a digest to Slack with anomalies flagged.
| name | pr-first-review |
| description | First-pass GitHub PR review: OWASP Top 10, style violations, scope creep, breaking changes. Comments before the maintainer looks. |
| version | 1.0.0 |
| metadata | {"hermes":{"tags":["github","oss","code-review","security","pr"]}} |
A first-pass code review for incoming pull requests. Catches the obvious things — failing tests, security anti-patterns, scope creep, breaking changes — and leaves comments before the maintainer opens the PR. The maintainer's review starts from "is this AI right?" instead of "what does this PR do?".
For every new PR (or new commit on an existing PR):
.eslintrc / .prettierrc / framework convention being violated?*.min.js, dist/), and snapshot tests.Default trigger is the GitHub pull_request.opened and pull_request.synchronize webhooks. Configure via hermes webhook list. For manual run:
/pr-first-review owner/repo#312
github:
default_repo: "owner/repo"
block_on_high_severity: false # set true to actually request changes
skip_paths:
- "package-lock.json"
- "yarn.lock"
- "pnpm-lock.yaml"
- "**/*.min.js"
- "dist/**"
- "__snapshots__/**"
severity_thresholds:
high: ["sql_injection", "xss", "ssrf", "exposed_secret", "broken_auth"]
medium: ["scope_creep", "missing_test", "style_violation"]
low: ["typo", "unused_import"]
comment_style: "constructive" # alternative: "terse"
PR review needs nuance — a Haiku-class model will miss security-relevant context.
Out of the box this skill produces ~10-15% false positives. Calibrate over the first 30 days:
.eslintrc or remove style from severity_thresholds.medium.metadata block.Pairs naturally with github-issue-triage — issues come in, get triaged; PRs go out, get reviewed. Both should run as the same agent under the triager personality.
The 4-agent GitHub Maintainer Team ships with this skill plus changelog automation, docs sync, and shared coordination via AGENTS.md. See crewclaw.com/use-cases/github-maintainer-team.