Automated code review analysis for quality, security, performance, and best practices.
✅ USE this skill when:
❌ DON'T use this skill when:
For every code review, the agent checks in this order:
CheckWhat to look forSQL InjectionString concatenation in queries, unescaped user inputXSSUnsanitized output in HTML/templates, dangerouslySetInnerHTMLCommand Injectionos.system(), exec(), subprocess(shell=True) with user inputPath Traversal../../ in file paths, unsanitized filenamesSensitive DataHardcoded API keys, passwords, tokens, secretsUnvalidated InputMissing type checks, no boundary validation on arrays/buffers
CheckWhat to look forNull/UndefinedMissing null checks, no Optional/Maybe wrappingError HandlingBare except:, swallowed exceptions, no error contextRace ConditionsShared state without locks, async without mutexesResource LeaksUnclosed files, connections, handlesType SafetyImplicit casts, any types, missing genericsDead CodeUnused variables, imports, unreachable branches
CheckWhat to look forNamingVague names ( data, tmp, foo), inconsistent casingCommentsStale/no comments, commented-out codeDuplicationRepeated logic that should be a functionLoggingMissing context in log messages, wrong log levelTestsMissing edge cases, no test for the change
The agent accepts code in these forms:
git diffFor each code segment:
Present findings in order of severity with:
text
## 🔴 Critical
- [Line 42] SQL Injection: f-string used in SQL query. Use parameterized queries.
## 🟡 Important
- [Line 15] Missing null check: `user.getName()` may throw if user is None
## 🟢 Suggestion
- [Line 88] Duplicate logic with lines 12-20 — extract to helper function
The agent can:
.format() or %with for resource managementmap/ filterconst over let, never var=== not ==any in TypeScriptOptional over null returnsgo fmt conventionsdefer for cleanupset -euo pipefail in scripts[[ ]] over [ ]ls outputUser: "Review this Python function" + code block Agent: Runs checklist → finds SQL injection. Reports 🔴 Critical with fix
User: "Check my current git diff" Agent: Runs
git diff, reviews changes, lists findingsUser: "Is this TypeScript safe?" + code block Agent: Checks types, null safety, anti-patterns → 🟡 reports
anymisuse