code-reviewer
Skill2 starsChanged 10 months agoMITView on GitHub
Comprehensive code review for bugs, security vulnerabilities, performance issues, best practices violations, and code quality problems. Use when reviewing pull requests, analyzing code changes, auditing implementations, or performing quality checks on any codebase.
182 other projects use a version of this.
Adopted by
Most recently taken up by
- santiago-migoni/claude-skillstheir own version, first seen Nov 8, 2026
- SaehwanPark/agent-skills-archivetheir own version, first seen Nov 8, 2026
- nainishshafi/developer-productivity-skillstheir own version, first seen Nov 8, 2026
- Flowerf19/agents-skillstheir own version, first seen Nov 8, 2026
- darkweb19/skillstheir own version, first seen Nov 8, 2026
- kazemcodes/skill-treetheir own version, first seen Nov 8, 2026
Used with
Projects with it also use git-doc-updater, git-precommit and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
u9401066Skillgit-doc-updater
Auto-check and update key documentation before Git commits to keep docs in sync with code. Triggers: docs, 文檔, 更新文檔, sync docs, release, 發布.
Also in 5 projects that use this
u9401066Skillgit-precommit
Orchestrate pre-commit workflow including Memory Bank sync, README/CHANGELOG/ROADMAP updates. Triggers: GIT, gc, push, commit, 提交, 準備 commit, 要提交了, git commit, pre-commit, 推送.
Also in 5 projects that use this
JeffallanSkillshopify-expert
Builds and debugs Shopify themes (.liquid files, theme.json, sections), develops custom Shopify apps (shopify.app.toml, OAuth, webhooks), and implements Storefront API integrations for headless storefronts. Use when building or customizing Shopify themes, creating Hydrogen or custom React storefronts, developing Shopify apps, implementing checkout UI extensions or Shopify Functions, optimizing performance, or integrating third-party services. Invoke for Liquid templating, Storefront API, app development, checkout customization, Shopify Plus features, App Bridge, Polaris, or Shopify CLI workflows.
Also in 5 projects that use this
JeffallanSkillspec-miner
Reverse-engineering specialist that extracts specifications from existing codebases. Use when working with legacy or undocumented systems, inherited projects, or old codebases with no documentation. Invoke to map code dependencies, generate API documentation from source, identify undocumented business logic, figure out what code does, or create architecture documentation from implementation. Trigger phrases: reverse engineer, old codebase, no docs, no documentation, figure out how this works, inherited project, legacy analysis, code archaeology, undocumented features.
Also in 6 projects that use this
- +4 more from u9401066
- +4 more from Jeffallan
Other versions182 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 182
- google-gemini/gemini-cli★ 109ksame name
- NVIDIA/SkillSpector★ 25ksame name
- Jeffallan/claude-skills★ 12ksame name
- jewbetcha/openflight★ 1.2ksame name
- web-infra-dev/rsdoctor★ 1.2ksame name
- zhnnky329/MathModeling-skills★ 1.1ksame name
- MageByte-Zero/spec-superflow★ 875same name
- waybarrios/opencode-power-pack★ 547same name
- Karanjot786/TermUI★ 238same name
- elithrar/dotfiles★ 222same name
172 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository9 other files it gives its agents.
- api-designerSkill
- database-helperSkill
- documentation-generatorSkill
- git-commit-helperSkill
- performance-optimizerSkill
- prompt-enhancerSkill
- refactoring-assistantSkill
- security-scannerSkill
- test-generatorSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
54 rules. 0 are common, 52 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 155 edited versions we read keep these.
52
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
When reviewing code, analyze across these dimensions:
- Distinctive: line 16
Check for hardcoded credentials, API keys, or sensitive data
- Distinctive: line 17
Verify proper input validation and sanitization
- Distinctive: line 19
Check for insecure cryptographic practices
- Distinctive: line 24
Check for null/undefined reference errors
- Distinctive: line 27
Check for memory leaks and resource management
- Distinctive: line 28
Verify error handling and exception management
- Distinctive: line 33
Check for unnecessary loops and redundant operations
- Distinctive: line 39
Verify adherence to language-specific conventions
- Distinctive: line 40
Check code readability and maintainability
- Distinctive: line 43
Check function/method length and complexity
- Distinctive: line 44
Verify proper separation of concerns
- Distinctive: line 49
Check for SOLID principles violations
- Distinctive: line 53
Check for proper abstraction layers
- Distinctive: line 57
Follow this structured approach when reviewing code:
- Distinctive: line 67
Security first: - Check for vulnerabilities
- Distinctive: line 68
Correctness: - Verify logical correctness and bug-free implementation
- Distinctive: line 166
Check for proper async/await usage vs promises
- Distinctive: line 167
Verify type safety (TypeScript)
- Very specific: line 168
Look for common pitfalls: == vs ===, variable hoisting, closure issues
- Distinctive: line 169
Check for proper React hooks usage and dependencies
- Distinctive: line 170
Verify proper event listener cleanup
- Distinctive: line 174
Verify proper exception handling (avoid bare except)
- Distinctive: line 175
Look for mutable default arguments
- Very specific: line 176
Check for proper context managers (with statements)
- Distinctive: line 177
Verify proper async/await usage
- Distinctive: line 180
Check for proper exception handling
- Distinctive: line 181
Verify resource cleanup (try-with-resources)
- Distinctive: line 182
Look for potential NullPointerExceptions
- Distinctive: line 183
Check thread safety in concurrent code
- Distinctive: line 184
Verify proper use of generics
- Distinctive: line 187
Check error handling (never ignore errors)
- Distinctive: line 188
Verify proper goroutine and channel usage
- Distinctive: line 189
Look for potential race conditions
- Distinctive: line 190
Check for proper defer usage
- Distinctive: line 194
Check for SQL injection vulnerabilities
- Distinctive: line 195
Verify proper indexing strategies
- Distinctive: line 196
Look for N+1 queries
- Distinctive: line 197
Check for inefficient JOINs
- Distinctive: line 203
Check for unnecessary re-renders
- Distinctive: line 204
Verify proper key usage in lists
- Distinctive: line 206
Verify proper state management
- Distinctive: line 207
Look for memory leaks in effects
- Distinctive: line 211
Verify error handling middleware
- Distinctive: line 212
Look for callback hell
- Distinctive: line 213
Check for proper async error handling
- Distinctive: line 217
Check for ORM N+1 queries
- Distinctive: line 219
Check for SQL injection in raw queries
- Distinctive: line 220
Verify proper form validation
- Distinctive: line 224
Check for proper dependency injection
- Distinctive: line 226
Look for N+1 queries with JPA
- Distinctive: line 245
Before completing the review, verify:
- Distinctive: line 331
When suggesting improvements, reference:
- Distinctive: line 343
Consider project-specific conventions if provided
“Common” is measured: kept by at least 6 in 10 of the 155 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Code Reviewer Skill
This skill provides thorough code review capabilities across all programming languages and frameworks. Use this whenever you need to analyze code for quality, security, performance, or maintainability concerns.
Review Scope
When reviewing code, analyze across these dimensions:
1. Security Analysis
- Identify potential security vulnerabilities (SQL injection, XSS, CSRF, etc.)
- Check for hardcoded credentials, API keys, or sensitive data
- Verify proper input validation and sanitization
- Review authentication and authorization implementations
- Check for insecure cryptographic practices
- Identify potential data leakage points
2. Bug Detection
- Identify logical errors and edge cases
- Check for null/undefined reference errors
- Detect off-by-one errors and boundary conditions
- Identify race conditions and concurrency issues
- Check for memory leaks and resource management
- Verify error handling and exception management
3. Performance Issues
- Identify inefficient algorithms and data structures
- Detect N+1 query problems in database operations
- Check for unnecessary loops and redundant operations
- Identify memory-intensive operations
- Review caching strategies and opportunities
- Analyze computational complexity (Big O)
4. Code Quality & Best Practices
- Verify adherence to language-specific conventions
- Check code readability and maintainability
- Identify code duplication and suggest DRY improvements
- Review naming conventions (variables, functions, classes)
- Check function/method length and complexity
- Verify proper separation of concerns
- Assess test coverage and testability
5. Architecture & Design
- Review design patterns usage and appropriateness
- Check for SOLID principles violations
- Identify tight coupling and low cohesion
- Review dependency management
- Assess scalability considerations
- Check for proper abstraction layers
Review Process
Follow this structured approach when reviewing code:
Step 1: Initial Assessment
- Understand the context and purpose of the code changes
- Identify the programming language and framework
- Note any stated requirements or constraints
- Review related documentation if provided
Step 2: Systematic Analysis
Analyze the code in this order:
- Security first - Check for vulnerabilities
- Correctness - Verify logical correctness and bug-free implementation
- Performance - Identify optimization opportunities
- Quality - Review code structure and best practices
- Architecture - Assess design decisions
Step 3: Categorized Findings
Organize findings by severity:
🔴 Critical Issues (Must fix immediately)
- Security vulnerabilities
- Data loss risks
- System crashes or breaking bugs
- Complete functional failures
🟠 Major Issues (Should fix before merge)
- Performance bottlenecks
- Logic errors in non-critical paths
- Poor error handling
- Significant maintainability concerns
🟡 Minor Issues (Nice to fix)
- Code style inconsistencies
- Minor optimizations
- Naming improvements
- Documentation gaps
💡 Suggestions (Optional improvements)
- Refactoring opportunities
- Alternative approaches
- Design pattern recommendations
- Future enhancement ideas
Step 4: Provide Solutions
For each issue:
- Explain the problem clearly with specific line references
- Describe the impact (security, performance, maintainability)
- Provide concrete fix with code examples when possible
- Explain why the fix is better
Output Format
Structure your review as follows:
# Code Review Summary
## Overview
[Brief summary of what was reviewed and general assessment]
## Findings Summary
- Critical: X issues
- Major: Y issues
- Minor: Z issues
- Suggestions: W items
---
## 🔴 Critical Issues
### Issue 1: [Title]
**Location:** `file.js:42-45`
**Problem:** [Description]
**Impact:** [Security/Performance/Functional impact]
**Fix:**
```language
[Code example showing the fix]Explanation: [Why this fix works]
🟠 Major Issues
[Same format as Critical]
🟡 Minor Issues
[Same format, can be more concise]
💡 Suggestions
[Same format, focus on improvements]
Positive Aspects
[Highlight what was done well]
Overall Assessment
[Summary and recommendation: Approve/Request Changes/Reject]
## Language-Specific Guidelines
### JavaScript/TypeScript
- Check for proper async/await usage vs promises
- Verify type safety (TypeScript)
- Look for common pitfalls: `==` vs `===`, variable hoisting, closure issues
- Check for proper React hooks usage and dependencies
- Verify proper event listener cleanup
### Python
- Check PEP 8 compliance
- Verify proper exception handling (avoid bare except)
- Look for mutable default arguments
- Check for proper context managers (`with` statements)
- Verify proper async/await usage
### Java
- Check for proper exception handling
- Verify resource cleanup (try-with-resources)
- Look for potential NullPointerExceptions
- Check thread safety in concurrent code
- Verify proper use of generics
### Go
- Check error handling (never ignore errors)
- Verify proper goroutine and channel usage
- Look for potential race conditions
- Check for proper defer usage
- Verify context propagation
### SQL
- Check for SQL injection vulnerabilities
- Verify proper indexing strategies
- Look for N+1 queries
- Check for inefficient JOINs
- Verify transaction handling
## Framework-Specific Checks
### React
- Check for unnecessary re-renders
- Verify proper key usage in lists
- Check useEffect dependencies
- Verify proper state management
- Look for memory leaks in effects
### Node.js/Express
- Check middleware ordering
- Verify error handling middleware
- Look for callback hell
- Check for proper async error handling
- Verify CORS configuration
### Django
- Check for ORM N+1 queries
- Verify CSRF protection
- Check for SQL injection in raw queries
- Verify proper form validation
- Check middleware configuration
### Spring Boot
- Check for proper dependency injection
- Verify transaction boundaries
- Look for N+1 queries with JPA
- Check exception handling
- Verify security configuration
## Common Anti-Patterns to Flag
1. **God Objects/Classes** - Single class doing too much
2. **Magic Numbers** - Unexplained numeric constants
3. **Deep Nesting** - Excessive indentation levels (>3-4)
4. **Long Methods** - Functions over 50-100 lines
5. **Premature Optimization** - Complex optimizations without profiling
6. **Copy-Paste Programming** - Duplicated code blocks
7. **Cargo Cult Programming** - Code without understanding
8. **Golden Hammer** - Using same solution for everything
9. **Spaghetti Code** - Unclear control flow
10. **Shotgun Surgery** - Changes requiring edits in many places
## Review Checklist
Before completing the review, verify:
- [ ] All security concerns addressed
- [ ] Critical bugs identified
- [ ] Performance issues noted
- [ ] Code follows project conventions
- [ ] Error handling is appropriate
- [ ] Tests are adequate (if applicable)
- [ ] Documentation is clear
- [ ] Dependencies are justified
- [ ] No hardcoded secrets
- [ ] Resource cleanup is proper
## Tone and Communication
- Be constructive and respectful
- Focus on the code, not the person
- Explain the "why" behind suggestions
- Acknowledge good practices
- Offer learning resources when helpful
- Distinguish between opinions and standards
- Be specific with examples
- Prioritize actionable feedback
## When to Escalate
Flag for human review if you find:
- Critical security vulnerabilities requiring immediate attention
- Fundamental architectural problems
- Regulatory compliance issues
- Licensing violations
- Extremely complex logic requiring domain expertise
## Examples
### Example 1: Security Issue
Issue: SQL Injection Vulnerability
Location: user_service.py:23
Problem: User input directly interpolated into SQL query
Impact: 🔴 Critical - Allows arbitrary SQL execution, potential data breach
Current Code:
query = f"SELECT * FROM users WHERE username = '{username}'"
cursor.execute(query)Fixed Code:
query = "SELECT * FROM users WHERE username = %s"
cursor.execute(query, (username,))Explanation: Using parameterized queries prevents SQL injection by properly escaping user input. The database driver handles sanitization, eliminating the attack vector.
### Example 2: Performance Issue
Issue: N+1 Query Problem
Location: order_controller.js:15-20
Problem: Fetching related data in a loop instead of using eager loading
Impact: 🟠 Major - Performance degrades linearly with number of orders
Current Code:
const orders = await Order.findAll();
for (const order of orders) {
order.customer = await Customer.findByPk(order.customerId); // N+1!
}Fixed Code:
const orders = await Order.findAll({
include: [{ model: Customer }]
});Explanation: Eager loading fetches all related customers in a single query using JOIN, reducing database round-trips from N+1 to 2 queries total.
## Additional Resources
When suggesting improvements, reference:
- Official language/framework documentation
- Security best practices (OWASP, CWE)
- Performance optimization guides
- Design pattern catalogs
- Community style guides
## Notes
- Adapt review depth to the scope of changes
- For small PRs, focus on critical issues
- For major refactors, provide comprehensive analysis
- Consider project-specific conventions if provided
- Balance thoroughness with pragmatism
- Remember that perfect code doesn't exist - focus on meaningful improvementsDoes it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

