A comprehensive pull request review skill for the Ambasdr monorepo. Produces structured reports covering code quality, bugs, security, test coverage, accessibility, performance, design consistency, and project-standard compliance.
The /ambasdr-review skill runs a thorough, evidence-based review of all changes on a branch compared to main. Every finding cites a specific file, line number, or pattern. The output is a structured report with severity ratings, category grades, a test coverage assessment, and a merge readiness verdict.
Detects which layers are affected (backend, frontend, mobile, iOS) and loads the appropriate review checklist automatically.
Checks CLAUDE.md rules, recorded feedback from memory, placeholder/TODO audits, dead code detection, and large file analysis.
Every finding is ranked Critical, High, Medium, Low, or Nit. Blocking vs non-blocking items are clearly separated.
Invoke the skill from Claude Code while on the branch you want reviewed.
Check out the branch containing the changes you want reviewed. The skill compares the current branch against main.
git checkout feat/my-feature
Type /ambasdr-review in Claude Code, or ask Claude to "review this PR" or "review the changes on this branch."
The skill outputs a structured report directly in the conversation. To post the review to a GitHub PR, ask Claude to "post the review to the PR."
Any of these will activate the skill: "review this PR", "review the changes", "code review", "PR review", "check this branch", "review before merge", "is this ready to merge", "review my code", "what's wrong with this PR".
The skill follows a five-phase process. Every changed file is read in full — no sampling.
Runs git log, git diff --stat, and the full diff (excluding lock files and binaries). Identifies which layers are affected.
If backend/ is touched, loads the Go-specific checklist (OpenAPI-first, gommon errors, goqu, gin, zerolog, testcontainers). If frontend/ is touched, loads the frontend checklist (a11y, performance, design tokens, Storybook, tests). If both, loads both.
Evaluates every applicable category from the loaded checklists. Each finding records: severity, file:line, what's wrong, and what to do.
Checks CLAUDE.md compliance, MEMORY.md feedback rules, placeholder/TODO audit, dead code/files, raw backend errors reaching a user, Storybook stories that fetch, and large files.
Two of these checks are graded and produce a mandatory row in the report: user-purge coverage and demo-data parity. Both exist because their failures are invisible — a missed purge table only surfaces when a real deletion half-completes and cannot be retried, and an unfed demo panel only surfaces when someone opens a demo page.
Outputs the structured report with findings tables, category grades, detailed analysis, test coverage assessment, and merge readiness verdict.
Every review follows the same structure so reports are consistent across PRs and easy to scan.
| Section | Contents |
|---|---|
| Summary | 3–5 sentences. Overall assessment, single biggest concern, and whether the PR is merge-ready. |
| Findings by Severity | Tables of findings grouped by Critical, High, Medium, and Low/Nit. Each row includes category, file:line, finding, and action. |
| Category Grades | A–F letter grades per category with a one-line summary. |
| Detailed Analysis | Per-category breakdown: what's good, what the issues are, and specific recommendations. |
| Test Coverage | What tests exist, what's missing, whether coverage is sufficient per project standards. |
| Merge Readiness | READY, READY WITH CAVEATS, or NOT READY — with a bullet list of blockers or conditions. |
The skill evaluates up to 11 categories depending on which layers are affected.
Dead code, duplication, component size, naming consistency, magic values, type safety.
Logic errors, race conditions, stale closures, edge cases, error handling.
XSS, injection, secrets in code, auth/authz consistency, CORS, dependency vulnerabilities.
Existence of tests, build tags, handler-level tests, Storybook stories, happy/unhappy paths.
Keyboard access, ARIA attributes, color contrast, reduced-motion, focus management.
Image sizes, lazy loading, N+1 queries, re-renders, bundle impact, CSS layout thrashing.
Design tokens, responsive breakpoints, dark mode, touch targets, typography system.
Does the change store anything new that a user delete must remove — a table, a storage prefix, a graph label, an external system? Grades N/A when the change stores nothing new, but the row is never omitted.
Does a new API-fed surface have demo content behind it, and is that content consistent with the panels beside it? Grades N/A when the change adds no such surface.
File conventions, import aliases, circular deps, API contract alignment, service layer separation.
When backend/ is touched, the review also checks: OpenAPI-first compliance, gommon error handling (no fmt.Errorf), goqu repository patterns, gin handler structure, zerolog logging, and testcontainers testing.
| Grade | Meaning |
|---|---|
| A | Exemplary. Minor nitpicks only. |
| B | Good. Solid work with small gaps. |
| C | Adequate. Works but has meaningful issues. |
| D | Poor. Significant problems. |
| F | Failing. Must fix before merge. |
| N/A | Does not apply to this change. A verdict, not a skip — it requires having checked, and the summary must say what made the category inapplicable. |
The skill lives at .claude/skills/ambasdr-review/ in the repository root and is checked into git so all contributors have access.
| File | Purpose |
|---|---|
SKILL.md |
Main skill definition — workflow phases, report format, grading scale, and review principles. |
references/review-checklist.md |
Frontend and cross-layer checklist — a11y, performance, design tokens, Storybook, component tests, security, architecture, fabricated content. |
references/backend-checklist.md |
Go backend-specific checklist — OpenAPI-first, gommon commonerrors, goqu repository, gin handlers, zerolog logging, testcontainers testing. |