Skip to main content

/frontend-visual-verify

Visual verification of UI components via Storybook snapshots and Playwright MCP.


Overview​

Verifies that components render correctly by analyzing accessibility trees and capturing screenshots. Operates in two modes depending on Playwright MCP availability: full visual verification or code-review-only analysis.


Usage​

/frontend-visual-verify "http://localhost:6006/?path=/story/button--default"
/frontend-visual-verify "src/components/Button.tsx"
/frontend-visual-verify "jaan-to/outputs/frontend/design/01-hero/"
ArgumentRequiredDescription
targetNoStorybook URL (localhost), component path, or frontend-design output

What It Produces​

Files at $JAAN_OUTPUTS_DIR/frontend/visual-verify/{id}-{slug}/:

FileContent
{id}-{slug}.mdVerification report with scoring and findings
{id}-{slug}-screenshots/Captured screenshots (visual-mode only)
{id}-{slug}-readme.mdSummary with pass/fail status

Output Modes​

ModeConditionVisual ScoreCan Conclude Pass/Fail?
visual-modePlaywright MCP available0-10 scaleYes
static-modeNo Playwright MCPN/ANo — code analysis only

In static-mode, the report header states: "Static analysis only — visual verification requires Playwright MCP."


Key Features​

  • Accessibility tree analysis — Uses browser_snapshot (structured, deterministic) as the primary verification tool
  • Screenshot capture — browser_take_screenshot for visual evidence (secondary to accessibility tree)
  • Localhost-only default — Only navigates to localhost:* and 127.0.0.1:*; external URLs require per-URL user confirmation
  • Visual scoring rubric — 6 categories: layout, typography, color, spacing, responsiveness, accessibility
  • Honest static-mode — Never claims visual pass/fail without Playwright
  • API dependency note — Flags components with API dependencies that may need MSW handlers for proper Storybook rendering

Network Security​

Default: localhost-only. The skill will not navigate to external domains without explicit user confirmation.

Playwright MCP config recommendation:

{
"network": {
"allowedOrigins": ["http://localhost:*", "http://127.0.0.1:*"]
}
}

Workflow Chain​

/frontend-story-generate → /frontend-visual-verify → /frontend-component-fix (if issues found)
  • frontend-story-generate creates stories to verify
  • frontend-visual-verify checks rendering
  • frontend-component-fix fixes any issues found

SkillRelationship
/frontend-story-generateUpstream — generates stories to verify
/frontend-component-fixDownstream — fixes issues found during verification
/frontend-designUpstream — produces components to verify
/dev-verifyComplementary — verifies build pipeline; this skill verifies visual output

Back to Frontend Skills | Back to All Skills