visual-audit

Audits design-system component screenshots against a 13-item pixel-level geometry checklist.

5|9|Updated Mar 25, 2026
One-click install
npx skills add https://github.com/ajenchen/design-system --skill visual-audit-ajenchen
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: visual-audit
Source: https://github.com/ajenchen/design-system/tree/main/.agents/skills/visual-audit
Command: npx skills add https://github.com/ajenchen/design-system --skill visual-audit-ajenchen

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Code and spec audits can pass while the rendered UI is still visually wrong — asymmetric padding, hover backgrounds eating declared gaps, misaligned baselines, broken overlay positioning, or dark-mode token mismatches. This Skill catches those pixel-level defects by mechanically measuring screenshots against design-system tokens and specs. ## Core Features & Use Cases - 13-item mechanical checklist: Measures 4-side padding symmetry, vertical symmetry, gap token fidelity, overlay positioning, typography baseline alignment, icon-text gaps, container fill, field height alignment, scrollbar consistency, zoom step ratio, dark-mode token behavior, overflow indicator occlusion, and arrow button placement. - Two-layer architecture: Consumes Layer A mechanical evidence (Playwright screenshots, WCAG contrast scans, geometry assertions from npm run visual-audit) and applies Layer B AI judgment for design reasonableness and world-class benchmark comparison. - Strictly read-only reporting: Produces a structured Markdown audit report with PASS/FAIL/undetermined verdicts, measured vs expected values, and routed remediation — never edits code, specs, or stories. - Use Case: A user uploads a Storybook screenshot of a DatePicker asking whether the layout is correct; the Skill measures that bottom padding is 8px versus the 12px spec token and files a FAIL with the exact delta and governing rule. ## Quick Start Upload a Storybook screenshot of a component and ask the assistant to run a visual audit on it against the design-system spec.

Frequently Asked Questions about visual-audit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run a visual audit on a design-system component?

Provide a screenshot of the component (from Storybook or the product) and invoke the audit. The Skill measures pixel distances against the component's spec-declared tokens across 13 checklist items and writes a structured Markdown report with PASS, FAIL, or undetermined verdicts.

What visual bugs does a screenshot-based UI audit catch that code review misses?

It catches asymmetric container padding, hover backgrounds overflowing and eating declared flex gaps, overlay elements covering anchor content, icon-text baseline misalignment, zoom steps that jump too far, and dark-mode contrast or shadow token failures — defects where code and spec are correct but rendered pixels are wrong.

Can the visual audit run without a screenshot?

No. The Skill refuses to proceed without screenshot evidence and will not guess from descriptions. It first tries to generate captures through the existing Storybook or product capture pipeline, and only reports an evidence gap when capture is genuinely impossible.

Does the visual audit fix the UI bugs it finds?

No, it is strictly read-only. It reports measured values, expected token values, and the violated rule, then hands evidence back for remediation through the code-level audit skills or direct edits. It never modifies code, specs, tokens, or stories.

What is the difference between Layer A and Layer B visual auditing?

Layer A is the mechanical script (npm run visual-audit) that captures retina screenshots, runs WCAG contrast scans, and checks DOM geometry assertions. Layer B is this Skill, which reads that report and applies judgment on design reasonableness, cross-component consistency, and world-class benchmark comparison.

Why does the audit report items as undetermined instead of failing them?

When screenshot resolution, angle, or missing states prevent reliable measurement, the item is marked undetermined with a note on what evidence is needed. Subjective impressions like 'looks off' are never recorded as audit conclusions; every verdict must be mechanically verifiable.