From clara
Reviews a code change before merge — correctness bugs, security, performance/cacheability, coding standards, and test coverage — and produces a structured, severity-ranked verdict with concrete actions. Tuned for Drupal/PHP + GitLab workflows. Use when the user asks to review a diff, a branch, a fix, or a change before preparing a merge request, or invokes /clara:review.
How this skill is triggered — by the user, by Claude, or both
Slash command
/clara:reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Review a focused code change and return a verdict the author can act on. Quality and correctness, not style nitpicks. Be direct: state what is wrong, why, and the exact fix.
Review a focused code change and return a verdict the author can act on. Quality and correctness, not style nitpicks. Be direct: state what is wrong, why, and the exact fix.
Determine what to review, in this order:
glab — no manual copy needed:
GITLAB_HOST=<host> glab mr view <id> -R <group/project> # title, description, branches, the Mantis link
GITLAB_HOST=<host> glab mr diff <id> -R <group/project> # the diff to review
The -R and host come from the URL (https://<host>/<group/project>/-/merge_requests/<id>).git diff <base>...HEAD, base usually develop or main).git diff / git diff --cached).Read the changed lines and enough surrounding code to judge them (the function, its callers, the form/route/service it touches). Never review a hunk in isolation when the bug could live in the context.
Correctness is judged against intent, so get the ticket. Extract the Mantis id from the MR description or the branch name (fix/<id>-slug), then:
scripts/mantis-issue.sh <id> # prints summary, description, steps-to-reproduce, notes
It needs MANTIS_URL + MANTIS_TOKEN in the env. If they're unset or it exits non-zero (exit 2 = no creds, 3 = API error), ask the user to paste the ticket rather than reviewing intent blind.
Assess each, and only report what applies:
.module, etc.) and the Drupal,DrupalPractice standard. Run the linters (see below) rather than eyeballing.Prefer real signals over opinion. Prefix with the project's runner (lando, ddev, or docker compose exec <svc>) to run linters and quick probes:
lando php -l <file>
lando phpcs --standard=Drupal,DrupalPractice <path>
Report a check as passed only after it actually ran. If a tool is absent, say "(indispo)" — don't claim it passed.
Tag every finding with one level; the verdict follows mechanically:
Verdict: any Blocker/Major → needs changes; only Minor/Nit → ship with nits; none → ship.
Lead with the one-line verdict (ship / ship with nits / needs changes). Then:
| Dimension | Verdict |
|---|---|
| Correctness | ✅ / ⚠️ / ❌ + one line |
| Security | … |
| Cacheability | … |
| Standards | … |
| Tests | … |
Then findings, most severe first:
- [Blocker|Major|Minor|Nit] <symptom> (<file>:<line>)
Why: <reason>
Action: <exact edit or command — copy-pasteable, never "investigate X">
Finish with Out-of-scope notes (dead code, latent issues you spotted but that belong in a separate ticket) and, when relevant, manual UAT steps. When the verdict is ship / ship with nits, point the author to /clara:merge-request to open the MR.
npx claudepluginhub tarto-dev/clara-claude-skills --plugin claraProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.