vrt-markup-synth

Generates pixel diffs, token audits, and overflow signals from HTML and screenshots using Playwright.

22|1|Updated Mar 30, 2026
One-click install
npx skills add https://github.com/mizchi/vlmkit --skill vrt-markup-synth-mizchi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vrt-markup-synth
Source: https://github.com/mizchi/vlmkit/tree/main/.apm/skills/vlmkit/workflows/vrt-markup-synth
Command: npx skills add https://github.com/mizchi/vlmkit --skill vrt-markup-synth-mizchi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright.

What problem does it solve? When writing or revising HTML/CSS, developers need fast, deterministic feedback on how close their markup is to a design target without paying for VLM API calls or eyeballing screenshots manually. This Skill provides five DOM and pixel-based signal tools that surface concrete defects so an agent or developer can iterate markup to convergence. ## Core Features & Use Cases - Component build loop: Pixel-diff a reference image against your current HTML, producing a Markdown report with bbox IoU, palette comparison, text-row alignment, and a diff heatmap. - Component scanning and token audits: Crop a full-page screenshot into per-component PNGs, and audit computed styles against design-token scales (spacing, radius, z-index) with snap-to-nearest violations. - Theme parity and i18n stress testing: Detect unthemed elements that render identically in light and dark mode, and inflate text nodes to find selectors that overflow under longer translations. - Use Case: You are reproducing a Figma export as HTML. Run the build component loop after each edit, read the pixel-diff report, adjust your CSS, and re-run until the diff converges — all locally with zero API cost. ## Quick Start Ask the agent to run the build component loop comparing your design.png against current.html and iterate on the markup until the pixel diff converges.

Frequently Asked Questions about vrt-markup-synth

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

FAQPage Schema
How do I compare my HTML against a design screenshot without a VLM?

Run the build component command with your target image and current HTML file. It renders the HTML in Playwright at the target's viewport, pixel-diffs it against the reference, and writes a Markdown report with bbox, palette, and heatmap signals to test-results/component/report.md.

How to check CSS values against a design token scale?

Use the check tokens command on your HTML file or URL. It scans computed styles and flags values outside the default spacing, border-radius, and z-index scales within a 0.5px tolerance, showing each violation with its nearest token. Override scales with a JSON config or scale flags.

Does this require an API key or VLM model?

No API keys are required for any sub-tool. All five tools are deterministic Playwright plus pixel-math runs executed locally. The only prerequisite is installing the chromium browser via npx playwright install chromium.

Why does check theme report every element as unthemed?

This happens when the page does not respond to the prefers-color-scheme toggle, meaning it has no dark variant to audit. Verify by loading the page with system dark mode enabled; if it stays light, there is no dark theme implemented.

When should I not use these markup signal tools?

Do not use them to compare two existing pages (use vrt-visual-diff), migrate an existing implementation (use vrt-migration-eval), or self-repair a known regression (use vrt-css-fix-loop). These tools only supply signals; the agent writes the markup fixes.