
Code Review
- 4 installs
- 404 repo stars
- Updated August 5, 2026
- aiskillstore/marketplace
This is a copy of code-review by akillness - installs and ranking accrue to the original listing.
code-review is a Claude Code skill that conducts thorough, constructive code reviews for quality and security across pull requests.
About
code-review is a Claude Code skill that conducts thorough code reviews of pull requests. It walks through context, high-level design, detailed code checks, security, performance, testing, and documentation. A developer uses it when reviewing a PR, checking code quality, or auditing for security and bugs. It ends by providing constructive, specific feedback.
- Runs a multi-step code review across correctness, security, performance, and testing
- Includes explicit checklists for naming, SOLID, error handling, and input validation
- Frames feedback constructively with good-versus-bad examples
Code Review by the numbers
- 4 all-time installs (skills.sh)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
code-review capabilities & compatibility
- Capabilities
- code review · security audit · performance review · test coverage review
- Use cases
- code review · security audit · testing
What code-review says it does
Conduct thorough, constructive code reviews for quality and security. Use when reviewing pull requests, checking code quality, identifying bugs, or auditing security.
allowed-tools: Read Grep Glob
npx skills add https://github.com/aiskillstore/marketplace --skill code-reviewAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 4 |
|---|---|
| repo stars | ★ 404 |
| Last updated | August 5, 2026 |
| Repository | aiskillstore/marketplace ↗ |
What it does
Review a pull request for correctness, security, performance, and test coverage with structured feedback.
Who is it for?
Reviewing pull requests and auditing code quality, security, and performance.
Skip if: Refactoring code or explaining it to non-technical stakeholders.
When should I use this skill?
You are reviewing a pull request, checking code quality, or auditing security.
What you get
A prioritized, constructive review covering correctness, security, performance, testing, and docs.
- Structured code review
- Security findings
- Constructive line-level feedback
Files
Code Review
When to use this skill
- Reviewing pull requests
- Checking code quality
- Providing feedback on implementations
- Identifying potential bugs
- Suggesting improvements
- Security audits
- Performance analysis
Instructions
Step 1: Understand the context
Read the PR description:
- What is the goal of this change?
- Which issues does it address?
- Are there any special considerations?
Check the scope:
- How many files changed?
- What type of changes? (feature, bugfix, refactor)
- Are tests included?
Step 2: High-level review
Architecture and design:
- Does the approach make sense?
- Is it consistent with existing patterns?
- Are there simpler alternatives?
- Is the code in the right place?
Code organization:
- Clear separation of concerns?
- Appropriate abstraction levels?
- Logical file/folder structure?
Step 3: Detailed code review
Naming:
- [ ] Variables: descriptive, meaningful names
- [ ] Functions: verb-based, clear purpose
- [ ] Classes: noun-based, single responsibility
- [ ] Constants: UPPER_CASE for true constants
- [ ] Avoid abbreviations unless widely known
Functions:
- [ ] Single responsibility
- [ ] Reasonable length (< 50 lines ideally)
- [ ] Clear inputs and outputs
- [ ] Minimal side effects
- [ ] Proper error handling
Classes and objects:
- [ ] Single responsibility principle
- [ ] Open/closed principle
- [ ] Liskov substitution principle
- [ ] Interface segregation
- [ ] Dependency inversion
Error handling:
- [ ] All errors caught and handled
- [ ] Meaningful error messages
- [ ] Proper logging
- [ ] No silent failures
- [ ] User-friendly errors for UI
Code quality:
- [ ] No code duplication (DRY)
- [ ] No dead code
- [ ] No commented-out code
- [ ] No magic numbers
- [ ] Consistent formatting
Step 4: Security review
Input validation:
- [ ] All user inputs validated
- [ ] Type checking
- [ ] Range checking
- [ ] Format validation
Authentication & Authorization:
- [ ] Proper authentication checks
- [ ] Authorization for sensitive operations
- [ ] Session management
- [ ] Password handling (hashing, salting)
Data protection:
- [ ] No hardcoded secrets
- [ ] Sensitive data encrypted
- [ ] SQL injection prevention
- [ ] XSS prevention
- [ ] CSRF protection
Dependencies:
- [ ] No vulnerable packages
- [ ] Dependencies up-to-date
- [ ] Minimal dependency usage
Step 5: Performance review
Algorithms:
- [ ] Appropriate algorithm choice
- [ ] Reasonable time complexity
- [ ] Reasonable space complexity
- [ ] No unnecessary loops
Database:
- [ ] Efficient queries
- [ ] Proper indexing
- [ ] N+1 query prevention
- [ ] Connection pooling
Caching:
- [ ] Appropriate caching strategy
- [ ] Cache invalidation handled
- [ ] Memory usage reasonable
Resource management:
- [ ] Files properly closed
- [ ] Connections released
- [ ] Memory leaks prevented
Step 6: Testing review
Test coverage:
- [ ] Unit tests for new code
- [ ] Integration tests if needed
- [ ] Edge cases covered
- [ ] Error cases tested
Test quality:
- [ ] Tests are readable
- [ ] Tests are maintainable
- [ ] Tests are deterministic
- [ ] No test interdependencies
- [ ] Proper test data setup/teardown
Test naming:
# Good
def test_user_creation_with_valid_data_succeeds():
pass
# Bad
def test1():
passStep 7: Documentation review
Code comments:
- [ ] Complex logic explained
- [ ] No obvious comments
- [ ] TODOs have tickets
- [ ] Comments are accurate
Function documentation:
def calculate_total(items: List[Item], tax_rate: float) -> Decimal:
"""
Calculate the total price including tax.
Args:
items: List of items to calculate total for
tax_rate: Tax rate as decimal (e.g., 0.1 for 10%)
Returns:
Total price including tax
Raises:
ValueError: If tax_rate is negative
"""
passREADME/docs:
- [ ] README updated if needed
- [ ] API docs updated
- [ ] Migration guide if breaking changes
Step 8: Provide feedback
Be constructive:
✅ Good:
"Consider extracting this logic into a separate function for better
testability and reusability:
def validate_email(email: str) -> bool:
return '@' in email and '.' in email.split('@')[1]
This would make it easier to test and reuse across the codebase."
❌ Bad:
"This is wrong. Rewrite it."Be specific:
✅ Good:
"On line 45, this query could cause N+1 problem. Consider using
.select_related('author') to fetch related objects in a single query."
❌ Bad:
"Performance issues here."Prioritize issues:
- 🔴 Critical: Security, data loss, major bugs
- 🟡 Important: Performance, maintainability
- 🟢 Nice-to-have: Style, minor improvements
Acknowledge good work:
"Nice use of the strategy pattern here! This makes it easy to add
new payment methods in the future."Review checklist
Functionality
- [ ] Code does what it's supposed to do
- [ ] Edge cases handled
- [ ] Error cases handled
- [ ] No obvious bugs
Code Quality
- [ ] Clear, descriptive naming
- [ ] Functions are small and focused
- [ ] No code duplication
- [ ] Consistent with codebase style
- [ ] No code smells
Security
- [ ] Input validation
- [ ] No hardcoded secrets
- [ ] Authentication/authorization
- [ ] No SQL injection vulnerabilities
- [ ] No XSS vulnerabilities
Performance
- [ ] No obvious bottlenecks
- [ ] Efficient algorithms
- [ ] Proper database queries
- [ ] Resource management
Testing
- [ ] Tests included
- [ ] Good test coverage
- [ ] Tests are maintainable
- [ ] Edge cases tested
Documentation
- [ ] Code is self-documenting
- [ ] Comments where needed
- [ ] Docs updated
- [ ] Breaking changes documented
Common issues
Anti-patterns
God class:
# Bad: One class doing everything
class UserManager:
def create_user(self): pass
def send_email(self): pass
def process_payment(self): pass
def generate_report(self): passMagic numbers:
# Bad
if user.age > 18:
pass
# Good
MINIMUM_AGE = 18
if user.age > MINIMUM_AGE:
passDeep nesting:
# Bad
if condition1:
if condition2:
if condition3:
if condition4:
# deeply nested code
# Good (early returns)
if not condition1:
return
if not condition2:
return
if not condition3:
return
if not condition4:
return
# flat codeSecurity vulnerabilities
SQL Injection:
# Bad
query = f"SELECT * FROM users WHERE id = {user_id}"
# Good
query = "SELECT * FROM users WHERE id = %s"
cursor.execute(query, (user_id,))XSS:
// Bad
element.innerHTML = userInput;
// Good
element.textContent = userInput;Hardcoded secrets:
# Bad
API_KEY = "sk-1234567890abcdef"
# Good
API_KEY = os.environ.get("API_KEY")Best practices
1. Review promptly: Don't make authors wait 2. Be respectful: Focus on code, not the person 3. Explain why: Don't just say what's wrong 4. Suggest alternatives: Show better approaches 5. Use examples: Code examples clarify feedback 6. Pick your battles: Focus on important issues 7. Acknowledge good work: Positive feedback matters 8. Review your own code first: Catch obvious issues 9. Use automated tools: Let tools catch style issues 10. Be consistent: Apply same standards to all code
Tools to use
Linters:
- Python: pylint, flake8, black
- JavaScript: eslint, prettier
- Go: golint, gofmt
- Rust: clippy, rustfmt
Security:
- Bandit (Python)
- npm audit (Node.js)
- OWASP Dependency-Check
Code quality:
- SonarQube
- CodeClimate
- Codacy
References
Examples
Example 1: Basic usage
<!-- Add example content here -->
Example 2: Advanced usage
<!-- Add advanced example content here -->
{
"schema_version": "2.0",
"meta": {
"generated_at": "2026-03-07T08:39:40.235Z",
"slug": "supercent-io-code-review",
"source_url": "https://github.com/supercent-io/skills-template/tree/main/.agent-skills/code-review/",
"source_ref": "main",
"model": "claude",
"analysis_version": "3.0.0",
"source_type": "community",
"content_hash": "5db039867afe6b1ed8b4c41baf293fd610d787b08708121bbcd452d43fa61ae8",
"tree_hash": "a757ed59419054ceaa067c9cc1d8d7a6f93bd618e396e3412c617cff9f41385f"
},
"skill": {
"name": "code-review",
"description": "Conduct thorough, constructive code reviews for quality and security. Use when reviewing pull requests, checking code quality, identifying bugs, or auditing security. Handles best practices, SOLID principles, security vulnerabilities, performance analysis, and testing coverage.",
"summary": "AI-powered code review assistant that analyzes pull requests for quality, security, and best practices",
"icon": "📝",
"version": "1.0.0",
"author": "supercent-io",
"license": "MIT",
"tags": [
"code-review",
"pull-request",
"security",
"code-quality",
"best-practices"
],
"supported_tools": [
"claude",
"codex",
"claude-code"
],
"risk_factors": []
},
"security_audit": {
"risk_level": "safe",
"is_blocked": false,
"safe_to_publish": true,
"summary": "All 38 static findings are FALSE POSITIVES. The skill contains educational code examples showing vulnerable patterns (XSS, SQL injection, hardcoded secrets) as anti-patterns to identify during code reviews. External command references are Python code snippets in markdown, not actual execution. Hardcoded URLs are legitimate industry references (Google Code Review, OWASP). Environment access patterns demonstrate SECURE practices (using os.environ.get()). No actual security vulnerabilities present.",
"risk_factor_evidence": [
{
"factor": "scripts",
"evidence": [
{
"file": "SKILL.md",
"line_start": 334,
"line_end": 334
}
]
},
{
"factor": "external_commands",
"evidence": [
{
"file": "SKILL.md",
"line_start": 152,
"line_end": 160
},
{
"file": "SKILL.md",
"line_start": 160,
"line_end": 171
},
{
"file": "SKILL.md",
"line_start": 171,
"line_end": 187
},
{
"file": "SKILL.md",
"line_start": 187,
"line_end": 197
},
{
"file": "SKILL.md",
"line_start": 197,
"line_end": 209
},
{
"file": "SKILL.md",
"line_start": 209,
"line_end": 212
},
{
"file": "SKILL.md",
"line_start": 212,
"line_end": 219
},
{
"file": "SKILL.md",
"line_start": 219,
"line_end": 227
},
{
"file": "SKILL.md",
"line_start": 227,
"line_end": 230
},
{
"file": "SKILL.md",
"line_start": 230,
"line_end": 277
},
{
"file": "SKILL.md",
"line_start": 277,
"line_end": 284
},
{
"file": "SKILL.md",
"line_start": 284,
"line_end": 287
},
{
"file": "SKILL.md",
"line_start": 287,
"line_end": 296
},
{
"file": "SKILL.md",
"line_start": 296,
"line_end": 299
},
{
"file": "SKILL.md",
"line_start": 299,
"line_end": 317
},
{
"file": "SKILL.md",
"line_start": 317,
"line_end": 322
},
{
"file": "SKILL.md",
"line_start": 322,
"line_end": 329
},
{
"file": "SKILL.md",
"line_start": 329,
"line_end": 332
},
{
"file": "SKILL.md",
"line_start": 332,
"line_end": 338
},
{
"file": "SKILL.md",
"line_start": 338,
"line_end": 341
},
{
"file": "SKILL.md",
"line_start": 341,
"line_end": 347
}
]
},
{
"factor": "network",
"evidence": [
{
"file": "SKILL.md",
"line_start": 382,
"line_end": 382
},
{
"file": "SKILL.md",
"line_start": 383,
"line_end": 383
},
{
"file": "SKILL.md",
"line_start": 384,
"line_end": 384
}
]
},
{
"factor": "env_access",
"evidence": [
{
"file": "SKILL.md",
"line_start": 346,
"line_end": 346
},
{
"file": "SKILL.md",
"line_start": 343,
"line_end": 343
},
{
"file": "SKILL.md",
"line_start": 346,
"line_end": 346
},
{
"file": "SKILL.md",
"line_start": 346,
"line_end": 346
}
]
}
],
"critical_findings": [],
"high_findings": [],
"medium_findings": [
{
"title": "Educational Code Examples Misidentified",
"description": "Static scanner flagged Python code examples in markdown as 'external commands' and 'XSS vulnerabilities'. These are educational examples showing anti-patterns to identify during code reviews.",
"locations": [
{
"file": "SKILL.md",
"line_start": 152,
"line_end": 347
}
],
"confidence": 0.95,
"confidence_reasoning": "All flagged lines contain Python code examples in markdown code blocks demonstrating good/bad coding patterns. No actual command execution or vulnerabilities present."
}
],
"low_findings": [
{
"title": "Reference Links to External Resources",
"description": "Hardcoded URLs are legitimate industry references (Google Code Review Guidelines, OWASP Top 10, Clean Code book). Standard educational resources.",
"locations": [
{
"file": "SKILL.md",
"line_start": 382,
"line_end": 384
}
],
"confidence": 1,
"confidence_reasoning": "URLs point to Google GitHub, OWASP.org, and Amazon - recognized industry-standard resources for code review best practices."
},
{
"title": "Secure Environment Variable Usage Example",
"description": "Code example showing os.environ.get() for API key retrieval is a SECURE practice being taught, not a vulnerability.",
"locations": [
{
"file": "SKILL.md",
"line_start": 346,
"line_end": 346
}
],
"confidence": 1,
"confidence_reasoning": "The example explicitly shows GOOD practice (using environment variables) vs BAD practice (hardcoding). This teaches developers to avoid hardcoded secrets."
}
],
"dangerous_patterns": [],
"files_scanned": 2,
"total_lines": 418,
"audit_model": "claude",
"audited_at": "2026-03-07T08:39:40.235Z"
},
"content": {
"user_title": "Review Code with AI",
"value_statement": "This skill enables AI assistants to conduct professional code reviews by checking for bugs, security issues, code quality, and best practices. It provides structured feedback for pull requests.",
"seo_keywords": [
"Claude code review",
"AI code review",
"Codex code review",
"pull request review",
"code quality check",
"security audit",
"bug detection",
"best practices",
"SOLID principles",
"Claude Code"
],
"actual_capabilities": [
"Analyze pull requests for code quality issues",
"Identify security vulnerabilities and anti-patterns",
"Check for performance bottlenecks and optimization opportunities",
"Verify test coverage and code documentation",
"Provide constructive feedback using the SBI (Situation-Behavior-Impact) model",
"Apply SOLID principles and clean code standards"
],
"limitations": [
"Cannot execute code or run tests directly",
"Cannot access external services or APIs for live validation",
"May miss context-specific business logic issues",
"Relies on code being readable in the provided diff"
],
"use_cases": [
{
"title": "Review pull requests",
"description": "Get comprehensive feedback on code changes before merging, including security, quality, and performance suggestions",
"target_user": "Software developers and team leads"
},
{
"title": "Learn coding best practices",
"description": "Receive educational feedback explaining why certain patterns are problematic and how to improve them",
"target_user": "Junior developers learning to write better code"
},
{
"title": "Security audits",
"description": "Identify common security vulnerabilities like SQL injection, XSS, and hardcoded secrets in code changes",
"target_user": "Security-conscious developers and DevOps engineers"
}
],
"prompt_templates": [
{
"title": "Basic PR Review",
"prompt": "Please review this pull request. Check for code quality, security issues, and best practices. Focus on the most important findings first.",
"scenario": "Quick review of a small PR with a clear description"
},
{
"title": "Security-Focused Review",
"prompt": "Conduct a security audit of this code change. Look for SQL injection, XSS vulnerabilities, hardcoded secrets, authentication issues, and other security concerns.",
"scenario": "Reviewing code that handles user input or authentication"
},
{
"title": "Performance Review",
"prompt": "Analyze this code for performance issues. Check for N+1 queries, inefficient algorithms, missing indexes, memory leaks, and resource management problems.",
"scenario": "Reviewing database queries or data processing code"
},
{
"title": "Comprehensive Review",
"prompt": "Perform a thorough code review covering: functionality, code quality, security, performance, testing, and documentation. Provide specific, actionable feedback with code examples where possible.",
"scenario": "Detailed review of a large feature PR"
}
],
"output_examples": [
{
"input": "Review this Python function for security issues:\ndef get_user(user_id):\n query = f\"SELECT * FROM users WHERE id = {user_id}\"\n return execute(query)",
"output": "## Security Review\n\n### Critical Issue: SQL Injection Vulnerability\n\n**Location:** Line 2\n\n**Problem:** The code uses f-string formatting to insert `user_id` directly into the SQL query. This allows attackers to inject malicious SQL code.\n\n```python\n# VULNERABLE\nquery = f\"SELECT * FROM users WHERE id = {user_id}\"\n\n# SECURE - Use parameterized query\nquery = \"SELECT * FROM users WHERE id = %s\"\ncursor.execute(query, (user_id,))\n```\n\n**Recommendation:** Always use parameterized queries or an ORM to prevent SQL injection attacks."
},
{
"input": "Review this JavaScript code for XSS issues:\nfunction displayMessage(userInput) {\n document.getElementById('msg').innerHTML = userInput;\n}",
"output": "## Security Review\n\n### High Issue: Cross-Site Scripting (XSS) Vulnerability\n\n**Location:** Line 2\n\n**Problem:** Using `innerHTML` with user input allows attackers to inject malicious scripts.\n\n```javascript\n// VULNERABLE\nelement.innerHTML = userInput;\n\n// SECURE - Use textContent\nelement.textContent = userInput;\n\n// Or sanitize if HTML needed\nelement.innerHTML = DOMPurify.sanitize(userInput);\n```\n\n**Recommendation:** Always escape untrusted user input or use a sanitization library."
}
],
"best_practices": [
"Provide specific, actionable feedback with code examples showing the preferred approach",
"Prioritize issues by severity: critical security issues first, then performance, then style",
"Acknowledge good code decisions alongside areas for improvement",
"Explain the reasoning behind each feedback point to help developers learn"
],
"anti_patterns": [
"Making personal attacks or focusing on the person instead of the code",
"Vague feedback like 'this is bad' without explaining why or how to fix it",
"Ignoring good aspects of the code and only pointing out problems"
],
"faq": [
{
"question": "What languages does this skill support?",
"answer": "This skill provides general code review guidance applicable to any programming language. It includes examples in Python and JavaScript but the principles apply broadly."
},
{
"question": "Can this skill run tests or linting tools?",
"answer": "No, this skill provides guidance on what to check during code reviews. It cannot execute code, run tests, or use external tools. However, it lists recommended tools to use alongside the review."
},
{
"question": "How does this skill handle large PRs?",
"answer": "For large PRs, prioritize the most important issues first. Focus on security vulnerabilities, potential bugs, and architectural concerns before style issues."
},
{
"question": "Does this skill check for specific framework issues?",
"answer": "This skill focuses on general code quality and common security issues. Framework-specific concerns should be added based on your technology stack."
},
{
"question": "Can this skill review multiple files?",
"answer": "Yes, you can provide file paths or diffs for multiple files. Organize feedback by file or by category depending on what makes sense for the review."
},
{
"question": "How do I integrate this with my CI/CD pipeline?",
"answer": "This skill is designed for AI assistants like Claude or Codex to use during code review conversations. For automated checks, consider linters, security scanners, and testing in your CI pipeline."
}
]
},
"file_structure": [
{
"name": "SKILL.md",
"type": "file",
"path": "SKILL.md",
"lines": 393
},
{
"name": "SKILL.toon",
"type": "file",
"path": "SKILL.toon",
"lines": 25
}
]
}
N:code-review
D:Conduct thorough, constructive code reviews for quality and security. Use when reviewing pull req...
G:code-review code-quality security best-practices PR-review
U[7]:
Reviewing pull requests
Checking code quality
Providing feedback on implementations
Identifying potential bugs
Suggesting improvements
S[8]{n,action}:
1,Understand the context
2,High-level review
3,Detailed code review
4,Security review
5,Performance review
6,Testing review
7,Documentation review
8,Provide feedback
R[6]:
[ ] Variables
[ ] Functions
[ ] Classes
[ ] Constants
🔴 Critical
🟡 ImportantRelated skills
FAQ
What does the review cover?
Best practices, SOLID principles, security vulnerabilities, performance analysis, and testing coverage.
What tools does it use?
Its allowed tools are Read, Grep, and Glob for reading and searching code.