Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Expert code review of current git changes with a senior engineer lens. Detects SOLID violations, security risks, and proposes actionable improvements.
.claude/skills/dtsola-code-review-expert/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 46% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 228% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 391% | 0% |
| case-20 | ✗→✓ | ▲ Improved | 33% | 0% |
| case-21 | ✗→✓ | ▲ Improved | 32% | 0% |
Perform a structured review of the current git changes with focus on SOLID, architecture, removal candidates, and security risks. Default to review-only output unless the user asks to implement changes.
| Level | Name | Description | Action | |-------|------|-------------|--------| | P0 | Critical | Security vulnerability, data loss risk, correctness bug | Must block merge | | P1 | High | Logic error, significant SOLID violation, performance regression | Should fix before merge | | P2 | Medium | Code smell, maintainability concern, minor SOLID violation | Fix in this PR or create follow-up | | P3 | Low | Style, naming, minor suggestion | Optional improvement |
git status -sb, git diff --stat, and git diff to scope changes.rg or grep to find related modules, usages, and contracts.Edge cases:
git diff is empty, inform user and ask if they want to review staged changes or a specific commit range.references/solid-checklist.md for specific prompts.references/removal-plan.md for template.references/security-checklist.md for coverage.references/code-quality-checklist.md for coverage.Structure your review as follows:
markdown## Code Review Summary **Files reviewed**: X files, Y lines changed **Overall assessment**: [APPROVE / REQUEST_CHANGES / COMMENT] --- ## Findings ### P0 - Critical (none or list) ### P1 - High 1. **[file:line]** Brief title - Description of issue - Suggested fix ### P2 - Medium 2. (continue numbering across sections) - ... ### P3 - Low ... --- ## Removal/Iteration Plan (if applicable) ## Additional Suggestions (optional improvements, not blocking)
Inline comments: Use this format for file-specific findings:
::code-comment{file="path/to/file.ts" line="42" severity="P1"}
Description of the issue and suggested fix.
::Clean review: If no issues found, explicitly state:
After presenting findings, ask user how to proceed:
markdown--- ## Next Steps I found X issues (P0: _, P1: _, P2: _, P3: _). **How would you like to proceed?** 1. **Fix all** - I'll implement all suggested fixes 2. **Fix P0/P1 only** - Address critical and high priority issues 3. **Fix specific items** - Tell me which issues to fix 4. **No changes** - Review complete, no implementation needed Please choose an option or provide specific instructions.
Important: Do NOT implement any changes until user explicitly confirms. This is a review-first workflow.
| File | Purpose | |------|---------| | solid-checklist.md | SOLID smell prompts and refactor heuristics | | security-checklist.md | Web/app security and runtime risk checklist | | code-quality-checklist.md | Error handling, performance, boundary conditions | | removal-plan.md | Template for deletion candidates and follow-up plan |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-10 | pass→pass | 8,640 | 4,540 | -47% | 1 | 1 | 0% | 1,534 | 2,047 | +33% | 0 | 0 | — |
case-11 | pass→pass | 6,723 | 7,359 | +9% | 1 | 1 | 0% | 1,147 | 2,499 | +118% | 0 | 0 | — |
case-01 | fail→fail | 13,240 | 14,877 | +12% | 1 | 1 | 0% | 1,376 | 2,970 | +116% | 0 | 0 | — |
case-02 | fail→fail | 2,725 | 5,667 | +108% | 1 | 1 | 0% | 331 | 1,573 | +375% | 0 | 0 | — |
case-03 | fail→fail | 10,157 | 6,746 | -34% | 1 | 1 | 0% | 1,641 | 1,655 | +1% | 0 | 0 | — |
case-04 | fail→pass | 9,495 | 5,746 | -39% | 1 | 1 | 0% | 1,553 | 2,269 | +46% | 0 | 0 | — |
case-05 | fail→fail | 16,492 | 13,722 | -17% | 1 | 1 | 0% | 2,502 | 3,402 | +36% | 0 | 0 | — |
case-06 | pass→pass | 9,886 | 11,164 | +13% | 1 | 1 | 0% | 1,649 | 3,134 | +90% | 0 | 0 | — |
case-07 | pass→pass | 9,382 | 9,578 | +2% | 1 | 1 | 0% | 1,904 | 3,178 | +67% | 0 | 0 | — |
case-08 | pass→pass | 9,524 | 8,648 | -9% | 1 | 1 | 0% | 1,658 | 2,874 | +73% | 0 | 0 | — |
case-09 | pass→pass | 10,053 | 7,219 | -28% | 1 | 1 | 0% | 1,569 | 2,436 | +55% | 0 | 0 | — |
case-12 | pass→pass | 11,233 | 9,304 | -17% | 1 | 1 | 0% | 1,645 | 2,751 | +67% | 0 | 0 | — |
case-13 | fail→pass | 4,608 | 5,447 | +18% | 1 | 1 | 0% | 660 | 2,163 | +228% | 0 | 0 | — |
case-14 | fail→pass | 8,048 | 21,149 | +163% | 1 | 1 | 0% | 606 | 2,973 | +391% | 0 | 0 | — |
case-15 | pass→fail | 8,212 | 8,278 | +1% | 1 | 1 | 0% | 1,312 | 2,166 | +65% | 0 | 0 | — |
case-16 | pass→pass | 11,134 | 12,940 | +16% | 1 | 1 | 0% | 2,172 | 3,871 | +78% | 0 | 0 | — |
case-17 | pass→fail | 11,789 | 5,792 | -51% | 1 | 1 | 0% | 1,959 | 1,525 | -22% | 0 | 0 | — |
case-18 | pass→pass | 7,218 | 3,826 | -47% | 1 | 1 | 0% | 1,219 | 1,924 | +58% | 0 | 0 | — |
case-19 | fail→fail | 10,034 | 5,718 | -43% | 1 | 1 | 0% | 1,643 | 2,234 | +36% | 0 | 0 | — |
case-20 | fail→pass | 10,560 | 5,760 | -45% | 1 | 1 | 0% | 1,637 | 2,179 | +33% | 0 | 0 | — |
case-21 | fail→pass | 8,438 | 3,403 | -60% | 1 | 1 | 0% | 1,414 | 1,873 | +32% | 0 | 0 | — |
case-22 | pass→pass | 13,426 | 5,752 | -57% | 1 | 1 | 0% | 1,992 | 2,133 | +7% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +14 percentage points is the difference between those two pass rates over the 19 comparable cases. 3 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.