security-review
SkillFiles & storageChecks your code for common security vulnerabilities like injection, broken access control, and exposed secrets before shipping.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the security-review skill
About this capability
Check code for the most common, high-risk security vulnerabilities (broken access control, tenant isolation, injection, secrets, SSRF, auth/session, unsafe file handling, mass assignment) before it ships. Use after editing any API controller, guard, or auth code (apps/api/src/auth/**), a Prisma sche
What this skill tells your AI
The instructions your AI receives, as published by trycompai/comp in .claude/skills/security-review/SKILL.md and read by ahel’s review.
Review code for high-risk security vulnerabilities and fix confirmed high-severity issues immediately. Complements CI (CodeQL/Dependabot/SBOM) by catching logic/design flaws those miss — do not re-flag dependency CVEs or generic lint.
1. Scope
- If
$ARGUMENTSnames files/dirs, review those. - Otherwise review the current change set:
git diff --name-only origin/main...HEAD(fall back togit diff --name-onlyfor uncommitted work). Skip generated files, lockfiles, and*.spec.ts(unless the change is in a spec).
Review whenever the change touches a trust boundary or a resource — judge by behavior, not path. That includes: any controller or service (services are where IDOR, tenant-scoping, and mass-assignment bugs actually live), Next.js route handlers (app/api/**, route.ts), Trigger.dev jobs (apps/api/src/trigger/** — SSRF, elevated context), guards/auth (apps/api/src/auth/**, packages/auth/**), any Prisma query (especially lookups/updates/deletes by a client-supplied id → IDOR), middleware, file upload/storage, webhooks, outbound requests to a dynamic URL, crypto/token handling, and any frontend that renders user-supplied HTML or builds redirects from input.
Only if the change is genuinely non-security (pure presentation, types, copy, config with no secrets) — say so and stop, don't invent findings.
2. Review
Dispatch the security-reviewer agent on the scoped files. For a broad review (a full PR / many files), fan out parallel security-reviewer agents by dimension group so coverage is thorough:
- Access control & tenancy — guards,
@RequirePermission, API-key/service-token scope enforcement, authz-vs-attribution, IDOR,organizationIdscoping. - Injection, XSS & mass assignment — raw Prisma/SQL, command/path injection,
dangerouslySetInnerHTML/unsanitized HTML,...dtospread intocreate/update. - Secrets, SSRF, auth/session & file handling — hardcoded/logged secrets, outbound fetch to user URLs, session/cookie/attribution boundaries, S3/upload safety, DoS, info disclosure.
The agent's full checklist lives in .claude/agents/security-reviewer.md.
3. Verify (no false positives)
For each P1/P2 finding, adversarially verify before acting: dispatch one security-reviewer (or read the code yourself) prompted to refute it — trace the guard→controller→service→DB path. Drop anything that can't be confirmed. Attribution-only use of a resolved actor, org-scoped queries, and parameterized Prisma are NOT findings.
4. Fix & report
- Fix confirmed
P1/P2issues immediately (mirror the surrounding code; add a regression test for auth/attribution changes). - Report
P3s and anything needing a product decision, withseverity · file:line · exploit/impact · fix. - Run
bunx turbo run typecheck --filter=@trycompai/api --filter=@trycompai/appafter fixes. - End with a one-line verdict: clean, or the highest-priority action remaining.
Signals
- GitHub stars
- 2k
- Forks
- 412
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
security-review-trycompai- Source
- github.com/trycompai/comp