
gjalla-code-review
Review a code change (diff or PR) for ship-readiness before merge. Use when reviewing your own or someone else's changes prior to committing/merging/etc.
- Installs
- 860
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/gjalla/engineering --skill gjalla-code-review- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads gjalla-code-review automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Code Review
Your task is to review the code changes as a team lead with extremely high standards. You care about: simple, elegantly-designed, maintainable code; code which meets the expectations and verification criteria; code which is well-tested, robust, secure, and production-ready; and code that balances everything you know about the end user, the company, and the feature.
Approach
- Goal versus reality. Answer three questions in order, before reading the diff for defects: what was the goal (from the PR description, linked spec, or commit messages, in one sentence)? What mechanism did we actually build? Do those two close the same gap, and did we do it sanely and safely? A change can be clean, tested, well-factored, and still not be the thing that was asked for.
- Put yourself in the shoes of multi-faceted reviewers based on what is relevant to this change. For instance, the perspective of a senior software engineer who is skilled at code correctness / dead code / DRY adherence; an architect who looks for spaghetti code, elegant designs that are minimal yet effective, code that lives up to architectural best practices and gets cleaner over time; a product manager who is great at user experience, voice of the user, and auditing workflows for confusion, duplication, and incompleteness; a QA engineer looking for quality, bugs, edge cases, and maintainability; a customer success manager responsible for implementation and value delivery; or a security analyst looking for data access / privacy / security / vulnerabilities. Each review must include the perspective of the architect and the security analyst. Otherwise, no need to a) use all of these personas or b) use only these personas. Use the context of the change to determine what the most helpful, adversarial, and gap-filling approach would be and take it.
- From each perspective, review the diff in full, using second order thinking (what collateral, implicit, or second-order implications do these changes have?) and fresh eyes. The quality lenses that always apply: is it minimal, elegant, effective, not overengineered, and maintainable?
- Based on what you've found, what is the priority of these items within the context of this user/product/company?
Review until clean
A review with findings is not the end of the process — it's the middle. A non-clean review mandates another full round with fresh eyes after the fixes land, until a round comes back clean (no blocking or must-fix changes; cap at 5 rounds).
-
"Fresh eyes" is literal: where your agent supports subagents, spawn a fresh-context reviewer for each round rather than re-reading your own work — self-review after self-fix is grading your own homework. Where you can't, disclose it: add
--evidence review_mode=selfto the marks below. -
Keep a short record of each round in your working notes: what was found, what changed, and whether the round came back clean.
-
If you hit the cap without a clean round, do not loop forever and do not quietly proceed: record the final round honestly and surface the unresolved findings to the human.
Output
Group findings by severity:
- Blocking — must fix before merge (correctness, security, data loss).
- Should fix — quality/maintainability issues worth addressing now.
- Nit — optional polish.
For each finding: file:line, what's wrong, and a concrete suggested fix. State what you verified and what you could not.
Principles
- Review the code that's there AND what's missing — the dangerous bug is usually the unhandled case, not the wrong line.
- Be specific: a finding without a location and a fix is noise.
- Approve only what you understand. If you can't tell whether it's correct, say so rather than rubber-stamping.
- Verify before reporting conclusions. When you think you have found a defect, double check the source, data flow, etc to bolster your understanding before jumping to conclusions.
- You may be reviewing partial implementations toward a goal. That's fine, sometimes users and agents work incrementally. Make sure to note it in your report, but it could be intentional and therefore not fatal.
- Check that what you're reading is current before you reason about it. A stale checkout, a leftover worktree, or a cached artifact will produce a confident and wrong review.
FAQ
What does the gjalla-code-review skill do?
Review a code change (diff or PR) for ship-readiness before merge. Use when reviewing your own or someone else's changes prior to committing/merging/etc.
How do I install gjalla-code-review?
Run npx skills add https://github.com/gjalla/engineering --skill gjalla-code-review in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/gjalla-code-review/ (personal) or .claude/skills/gjalla-code-review/ (project).
Which AI agents can use gjalla-code-review?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is gjalla-code-review safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains gjalla-code-review?
It is published by gjalla in gjalla/engineering. It has 860 recorded installs.
More from gjalla/engineering
gjalla-spec-review
gjalla/engineering
Full review of a plan or spec to be sure there are no surprises, gaps, or mistakes. Use to harden a spec before implementation.
gjalla-test-audit
gjalla/engineering
Audit a test suite to find tests that give false confidence — tests that encode bugs, duplicate coverage, or are so heavily mocked they can't catch real regressions. Use to improve robustness, audit coverage, or harden a risky area.
gjalla-prepare-and-commit
gjalla/engineering
Make sure your code is ready to commit, then stage changes into clean, atomic commit. Use before committing.
gjalla-spec
gjalla/engineering
Create a well-thought-out plan covering problem statement, goals, technical approach, and verification criteria. Use while planning / before implementing any non-trivial feature.
gjalla-breakdown
gjalla/engineering
Break a feature spec into intentional waves and bite-sized tasks grouped by dependency. Use after a spec is written to prepare for easy-to-track implementation.
gjalla-cleanup-audit
gjalla/engineering
Open the skill to read its SKILL.md instructions.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.