design-auditlisted
Install: claude install-skill AThevon/genjutsu
> **Version-sensitive.** Every API name, SDK gate and browser-support claim below was
> verified on **2026-09-08** against primary sources. What against, and when, is in
> `_jutsu/VERSIONS.md`. If that date is old, re-verify before acting on a version number.
# Design Audit
> The final checkpoint. Loaded by `/genjutsu:paint` at the end of the pipeline.
> Scans the codebase for motion gaps, a11y violations, perf issues, and inconsistencies.
---
## The static pass
**Run the script. Do not hand-write the greps.**
```bash
python3 "$SKILL_BASE/design-audit/scripts/audit.py" .
```
Add `--json` if you want to post-process it. `--only <check-id>` runs one check.
It reports three things, and the distinction between the last two is the whole reason it
exists:
- **findings** - the check ran and found something. Every finding carries `file:line` and the
matched text, so you report the evidence rather than a verdict.
- **clean** - the check ran against real files and found nothing.
- **not applicable** - there were no files of that type, so the check did not run. **Report
these as not checked. Never as passing.**
These greps used to live in this file, anchored on `src/`. A default Next.js app-router or
Nuxt 3 project has no `src/`, so they matched nothing, and the pipeline read the empty output as
a clean bill of health and said so to the user right before delivery. The script detects its
roots, skips `node_modules` and build output, covers `.vue` / `.svelte` / `.astro` alon