code-review
Skill8 starsChanged 8 months agoMITView on GitHub
When the user asks for a code review, shares code for feedback, or says "review this", "check my code", "what's wrong with this". Also activate when reviewing a pull request or diff.
194 other projects use a version of this.
Adopted by
Most recently taken up by
- doggy8088/spec-kittheir own version, first seen Nov 9, 2026
- strelov1/freehiretheir own version, first seen Nov 9, 2026
- storybookjs/storybooktheir own version, first seen Nov 8, 2026
- codewithmukesh/dotnet-claude-kittheir own version, first seen Nov 8, 2026
- supabase/supabasetheir own version, first seen Nov 8, 2026
- The-Vibe-Company/quivrtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use close-spec, design-with-images 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.
dzhngSkillclose-spec
When a spec under specs/<feature>/ is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it from a build-plan into a durable rationale — the why, the principles, the invariants — pointing back to the real code for the how. Use when implementation has landed and the plan no longer matches what shipped, or the user says a feature/spec is finished. Pairs with [write-spec](../write-spec/SKILL.md) (the plan this closes) and [review](../review/SKILL.md) (run before closing).
Also in 5 projects that use this
dzhngSkilldesign-with-images
Explore UI and visual design with image generation, then iterate the real implementation against the user-selected concept. Use when brainstorming visual directions, offering mockup variants, or implementing an approved generated design; do not stop at the mockups or the first code approximation.
Also in 5 projects that use this
PydanticSkilladd-new-model
Add support for a newly-released language or image generation model in pydantic-ai (e.g. openai:gpt-5.6, anthropic:claude-sonnet-5, openai:gpt-image-2). Use when a provider ships a new model id and you need to wire literals, profile flags, adapters, and tests to recognize it. Handles SDK-lag, gateway list conventions, capability probing, and direct image-model geometry.
Also in 9 projects that use this
transitive-bullshitSkillcompare-screenshots
Compare screenshots against the intended design, distinguishing approved references from historical baselines. Use for iterative implementation matching, before/after visual review, objective image telemetry, or checking a lone capture for flat, empty, or badly framed content.
Also in 5 projects that use this
Microsoft AzureSkillazsdk-common-apiview-feedback-resolution
Analyze and resolve APIView review feedback on Azure SDK PRs. **UTILITY SKILL**. USE FOR: APIView comments, API review feedback, SDK API surface changes. DO NOT USE FOR: general code review, non-APIView feedback. INVOKES: azure-sdk-mcp:azsdk_apiview_get_comments, azure-sdk-mcp:azsdk_customized_code_update, azure-sdk-mcp:azsdk_typespec_delegate_apiview_feedback, azure-sdk-mcp:azsdk_run_typespec_validation, azure-sdk-mcp:azsdk_package_generate_code.
Also in 6 projects that use this
Microsoft AzureSkillazsdk-common-generate-sdk-locally
Generate and finalize Azure SDKs locally from TypeSpec, including build, checks, tests, changelog, metadata, and version updates by default. WHEN: "generate SDK locally", "build SDK", "run SDK tests", "run CI checks", "validate package", "run checks", "update changelog", "fix SDK build errors", "resolve SDK generation errors", "customize TypeSpec", "rename SDK client", "rename SDK model", "hide operation from SDK", "fix analyzer errors", "resolve customization drift", "create subclient", "update metadata", "update version". INVOKES: azsdk_verify_setup, azsdk_package_generate_code, azsdk_package_build_code, azsdk_package_run_check, azsdk_package_run_tests, azsdk_customized_code_update, azsdk_package_update_changelog_content, azsdk_package_update_metadata, azsdk_package_update_version.
Also in 6 projects that use this
- +4 more from dzhng
- +2 more from Azure
Other versions194 projects use a version of this.
Word for word · 1
- shawnpang/startup-founder-skills★ 331100% same
Edited · 0
None found.
Wrote their own version · 193
- mattpocock/skills★ 309ksame name
- TheAlgorithms/Python★ 226ksame name
- microsoft/vscode★ 195ksame name
- github/spec-kit★ 149ksame name
- ggml-org/llama.cpp★ 134ksame name
- supabase/supabase★ 115ksame name
- storybookjs/storybook★ 91ksame name
- shareAI-lab/analysis_claude_code★ 80ksame name
- shareAI-lab/learn-claude-code★ 80ksame name
- vectorize-io/hindsight★ 60ksame name
183 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 repository49 other files it gives its agents.
- accelerator-applicationSkill
- architecture-designSkill
- board-updateSkill
- churn-analysisSkill
- cicd-setupSkill
- cold-outreachSkill
- community-discoverySkill
- competitive-analysisSkill
- competitor-monitoringSkill
- content-strategySkill
- contract-reviewSkill
- daily-product-digestSkill
- data-roomSkill
- earned-media-outreachSkill
- email-marketingSkill
- employer-brandSkill
- event-hostingSkill
- feedback-synthesisSkill
- founder-thought-leadershipSkill
- fundraising-emailSkill
- interview-kitSkill
- investor-researchSkill
- job-descriptionSkill
- landing-pageSkill
- launch-strategySkill
- lead-scoringSkill
- market-researchSkill
- mvp-scopingSkill
- onboarding-flowSkill
- partnership-outreachSkill
- pitch-deckSkill
- prd-writingSkill
- privacy-policySkill
- process-docsSkill
- proposal-generationSkill
- review-miningSkill
- roadmap-planningSkill
- sales-scriptSkill
- security-reviewSkill
- sentiment-monitoringSkill
- seo-technicalSkill
- soc2-prepSkill
- social-contentSkill
- sourcing-outreachSkill
- startup-contextSkill
- support-docsSkill
- tech-stack-evalSkill
- terms-of-serviceSkill
- user-research-synthesisSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 183 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
Follow a structured five-step methodology.
- Distinctive: line 36
Naming and clarity: Do names communicate intent?
- Distinctive: line 85
Always ground feedback in specifics: Every finding must reference a file, line, and include a concrete improvement — not just "this could …
- Distinctive: line 86
Recognize good work explicitly: Call out strong patterns, clean abstractions, and thoughtful error handling.
“Common” is measured: kept by at least 6 in 10 of the 183 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 Review
When to Use
- The user shares code (file, snippet, or diff) and asks for feedback
- They paste a pull request or want to know if code is production-ready
- Pre-merge quality gate or bug hunting
- Reviewing architectural decisions in a PR
Context Required
From startup-context: tech stack, product stage, team size. Also need from the user:
- The code or diff to review
- What the code is supposed to do (PR purpose or feature context)
- Any specific concerns (performance, security, correctness)
- Language and framework if not obvious from the code
Workflow
Follow a structured five-step methodology. Each step must be completed before moving to the next.
- Context — Understand and summarize the PR's purpose before any analysis. Recap the intent back to the user in 1-2 sentences. If unclear, ask before proceeding. Never start reviewing without understanding what the code is trying to accomplish.
- Structure — Evaluate architectural decisions and design patterns:
- Does the code belong in the right module/layer?
- Are abstractions appropriate (not too many, not too few)?
- Does this change align with the existing codebase patterns?
- For non-obvious design choices, acknowledge the author's reasoning before proposing alternatives.
- Details — Assess code quality across multiple dimensions:
- Correctness: Logic errors, off-by-one bugs, null/undefined handling, race conditions, edge cases
- Security: OWASP Top 10 baseline — injection, broken auth, data exposure, XSS, access control, misconfig, insecure deserialization, vulnerable components
- Performance: N+1 queries, unnecessary re-renders, O(n^2) on large datasets, missing caching, memory leaks
- Naming and clarity: Do names communicate intent? Are functions focused on a single responsibility?
- Tests — Validate test coverage with equal rigor as code review:
- Are behavioral assertions present (not just implementation testing)?
- Are edge cases and error paths covered?
- Are tests brittle or resilient to refactoring?
- What test cases are missing?
- Feedback — Generate a prioritized, categorized report with specific code examples and concrete improvements. Recognize strong patterns and good decisions explicitly.
Output Format
# Code Review: [Feature/File Name]
## Summary
One-paragraph assessment: what the PR does, whether it is ready to merge, needs minor fixes, or needs rework.
## Findings
### Critical (must fix before merge)
- **[CRT-1] Title** — file:line — description, why it matters, suggested fix with code example
### Major (should fix before merge)
- **[MAJ-1] Title** — file:line — description, why it matters, suggested fix
### Minor (fix when convenient)
- **[MIN-1] Title** — file:line — description, suggestion
### Positive (things done well)
- **[POS-1] Title** — file:line — what was done well and why it matters
## Questions
Clarifying questions about non-obvious design choices before blocking on them.
## Suggested Tests
- Test case 1
- Test case 2Frameworks & Best Practices
Severity Definitions
| Severity | Definition | Action |
| Critical | Security vulnerability, data loss risk, crash in production, broken core functionality | Block merge |
| Major | Significant bug, performance regression, missing error handling on critical path, architectural violation | Should fix before merge |
| Minor | Style issue, naming improvement, minor optimization, documentation gap | Fix when convenient |
| Positive | Well-written code, good pattern usage, thoughtful error handling | Acknowledge and reinforce |
Review Principles
- Always ground feedback in specifics. Every finding must reference a file, line, and include a concrete improvement — not just "this could be better."
- Recognize good work explicitly. Call out strong patterns, clean abstractions, and thoughtful error handling. Reviews that only flag problems are demoralizing and incomplete.
- Acknowledge author reasoning. For non-obvious choices, assume the author had a reason. Ask before overriding. Phrase as "I see you chose X — was that because of Y? If so, consider Z as an alternative."
- Do not block on style when automated tooling handles it. Linting and formatting are the job of CI, not reviewers. Focus on logic, architecture, and correctness.
- Treat test review with equal weight. Tests are not an afterthought. Missing tests for critical paths is a major finding, not a minor one.
OWASP Top 10 Quick Checks
- Injection — Are user inputs parameterized? Check SQL, NoSQL, OS command, LDAP
- Broken Auth — Sessions secure? Tokens rotated? Passwords hashed (bcrypt/argon2)?
- Sensitive Data Exposure — Secrets in env vars (not code)? PII encrypted at rest?
- XXE — XML parsing disabled or configured to reject external entities?
- Broken Access Control — Every endpoint checks authorization, not just authentication?
- Misconfiguration — Debug modes off? CORS restrictive? Security headers set?
- XSS — Outputs encoded? No
dangerouslySetInnerHTML/v-htmlwith user data? - Insecure Deserialization — Serialized objects from untrusted sources validated?
- Vulnerable Components — Dependencies up to date? Any known CVEs?
- Insufficient Logging — Auth failures, access violations, and errors logged?
N+1 Query Detection
- Looping over a collection and making a DB call per item
- ORM lazy loading inside a loop (e.g.,
user.postsin afor user in usersloop) - GraphQL resolvers fetching related data per parent without DataLoader
- Fix: Eager loading, batch queries, or DataLoader pattern
Language-Agnostic Red Flags
- Functions longer than 40 lines or more than 3 levels of nesting
- Boolean params that change behavior (use separate functions)
- Catch blocks that swallow exceptions silently
- Hardcoded values that should be configuration
- Missing input validation on public API boundaries
Related Skills
security-review— chain for a deep-dive security audit when critical security findings surfacearchitecture-design— chain when code review reveals structural problems that need architectural rethinking
Examples
Example prompt: "Review this Express route handler for creating users."
Good output snippet:
# Code Review: POST /api/users Handler
## Summary
The handler creates users but has a critical SQL injection vulnerability and missing
input validation. Needs fixes before merge. Clean async/await usage is a positive.
## Findings
### Critical
- **[CRT-1] SQL Injection** — routes/users.js:14 — Email interpolated
directly into SQL string. Use parameterized queries:
`db.query('INSERT INTO users (email) VALUES ($1)', [email])`
### Major
- **[MAJ-1] No input validation** — routes/users.js:12 — Email from
`req.body` used with no validation. Add zod/joi schema validation.
- **[MAJ-2] Missing error handling** — routes/users.js:18 — DB errors
propagate as 500 with stack trace. Wrap in try/catch, return generic error.
### Positive
- **[POS-1] Clean async/await** — routes/users.js:11 — Easy to follow,
no callback nesting.
## Questions
- Is there a validation middleware already in the project that should be reused here?Does 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.

