Skip to main content

responsive_audit

Headless responsive-design audit across multiple viewport sizes. Loads the page in hidden iframes at each target size and reports layout issues, content overflows, and viewport-specific accessibility problems — in one shot, no manual resizing.

For an interactive loop where you dial into a specific break and hand it to the agent, see Responsive Mode; Auto-sweep there runs this same audit.

Synopsis

responsive_audit {proxy_id: "dev"}
responsive_audit {proxy_id: "dev", checks: ["layout", "overflow"]}
responsive_audit {proxy_id: "dev", viewports: [{name: "xs", width: 320, height: 568}]}
responsive_audit {proxy_id: "dev", raw: true}

Parameters

ParameterTypeRequiredDefaultDescription
proxy_idstringYesProxy ID to run the audit on
viewportsarrayNomobile / tablet / desktopCustom viewports [{name, width, height}]
checksarrayNoallSubset of ["layout", "overflow", "a11y"]
timeoutintNo10000Load timeout per viewport (ms)
rawboolNofalseReturn full JSON instead of compact text

Default Viewports

NameSizeDevice
Mobile375 × 667iPhone SE
Tablet768 × 1024iPad
Desktop1440 × 900

Checks

CheckDetects
layoutCollapsed content (has text, zero height), fixed elements covering large viewport fractions, margin/padding squeeze
overflowHorizontal scroll, clipped content, truncated text without tooltip, squeezed images
a11yTouch targets too small (mobile), iOS zoom-triggering font sizes, readability issues

Issue Severities

  • critical — horizontal scroll, collapsed content (breaks layout)
  • warning — touch targets too small, fixed elements covering 25–40% of viewport
  • info — truncated text without tooltip, small font sizes on mobile

Compact Output (default)

=== Responsive Audit: 3 viewports ===

MOBILE (375px) - 2 issues
! [layout] .header - collapsed content, element has text but zero height
o [overflow] .sidebar - truncated text without title/tooltip

TABLET (768px) - 0 issues

DESKTOP (1440px) - 1 issues
! [layout] .fixed-nav - fixed element covers 45% of viewport

SUMMARY: 3 issues (1 critical, 2 minor)
PATTERNS: 1 mobile-only, 0 tablet-only, 1 cross-viewport

Raw Output

responsive_audit {proxy_id: "dev", raw: true}
{
"viewports": {
"mobile": {
"width": 375,
"issues": [
{"type": "layout", "severity": "critical", "selector": ".header", "message": "..."}
]
}
},
"summary": {"total": 3, "critical": 1, "minor": 2},
"patterns": {"mobileOnly": 1, "tabletOnly": 0, "crossViewport": 1}
}

Pattern Detection

  • mobileOnly — issues appearing only on the mobile viewport
  • tabletOnly — issues appearing only on the tablet viewport
  • crossViewport — issues appearing across all viewports

See Also