markup-decompose

Decomposes whole-screen markup tasks into components and routes each phase to verification loops.

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

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building or repairing a whole screen as one monolithic task leads to duplicated fixes, noisy page-level diffs, and no protection against regressions. This Skill plans the split of a screen into components first, then routes construction, freezing, and maintenance to the right verification loops so each component is checked at component cost instead of page cost. ## Core Features & Use Cases - Reference outlining: Extracts landmarks, composition, viewports, component bounding boxes, palettes, and breakpoints from a reference page or image before any markup is written. - Component boundary planning: Guides the explicit decision of which blocks become standalone components with named states, using measured evidence about component size versus detection precision. - Construction-to-maintenance handoff: Routes per-component builds to auto-markup, then freezes converged components as story baselines via vlmkit build gallery so later edits are verified per component with check story. - Use Case: Given a design mock for a full dashboard page, outline the reference, decide the component list (header, card, table), build each with the construction loop, generate a gallery with per-story thresholds, commit baselines, and maintain all future edits through component-level visual regression checks. ## Quick Start Ask the agent to decompose the target screen or feature into components, build each one against the reference, and freeze the converged components as story baselines for ongoing maintenance.

Frequently Asked Questions about markup-decompose

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

FAQPage Schema
How do I break a full page design into components before writing markup?

Outline the reference first with vlmkit contract introspect, scan component, check palette, and scan breakpoints, then write an explicit component list where each entry renders standalone and has named states. Build components smallest first and handle page composition only after the parts converge.

When should I use component-level visual regression instead of page diffs?

Use per-component story baselines for small components, where measured results show far fewer image tokens and better change detection than page diffs. Keep a page-level diff html running too, because large components and sub-perceptual style shifts are missed by pixel-based story checks.

How do I freeze a finished component so future edits are checked?

Run vlmkit build gallery on the converged page to generate gallery.html, stories.json, and per-story thresholds, then write baselines with the printed check story commands and record the set in vlmkit.gates.json. Commit the baselines so CI runs them and story ids stop drifting.

Can component boundaries be extracted automatically from a screenshot?

No. vlmkit scan component finds visual blocks, not codebase component boundaries, so its output is only a proposal. Motion and keyframes also cannot be extracted from any reference and must come from a written brief or manual reading of the source CSS.

What are the limitations of generated story galleries?

Generated galleries capture rendered markup, so props are accepted but ignored and behaviour is not exercised; stories are frozen snapshots. Components needing prop variation or runtime states require a hand-written gallery, for which templates exist in the component-vrt assets.