agentleFS
jp-solumhealthjp-solumhealth/jpstack/mobile-audit/SKILL.md

mobile-audit

Skill0 starsChanged 18 days agoMITView on GitHub

Measured mobile-optimization audit of a deployed page using real Chromium at phone, large-phone and tablet widths. Reports horizontal scroll, unclipped overflow, touch targets under 44px, and text under 12px. Use when asked to "check mobile", "is it mobile optimized", "mobile audit", "responsive check", or before/after a landing page deployment.

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 3 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Run these by eye or add them if needed:

    line 68

“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Mobile Audit

Renders a live URL in headless Chromium at three widths and reports measured failures. Nothing here is inferred from reading CSS — every finding comes from getBoundingClientRect() on the rendered page.

Run it

node mobile-audit/scripts/audit.js https://your-url.com
node mobile-audit/scripts/audit.js https://your-url.com --json   # machine-readable

Requires Playwright. In this environment Chromium is preinstalled:

NODE_PATH=/opt/node22/lib/node_modules node mobile-audit/scripts/audit.js <url>

Exit code is 1 if any viewport has a blocking issue, so it can gate a deploy.

Viewports tested

WidthDevice
375pxiPhone SE / 13 mini
390pxiPhone 14/15
768pxiPad portrait

What counts as blocking

  • Horizontal page scroll — scrollWidth > clientWidth. Always a bug.
  • Unclipped overflow — an element extending past the right edge with no overflow:hidden|auto ancestor.

What is reported but not blocking

  • Touch targets under 44px tall (Apple HIG minimum).
  • Text under 12px.

These are judgement calls: chrome inside a product mockup can legitimately use 8–10px type, while a real nav link at 11px is a genuine problem.

The false-finding trap

Do not report an element as overflowing just because its right edge exceeds the viewport. Marquees, logo strips and testimonial carousels are designed to extend past the viewport inside an overflow:hidden parent. The script walks each element's ancestors and skips anything already clipped. Preserve that check — removing it produces a report full of false alarms.

Likewise, a fixed width in the CSS is not automatically a bug. Decorative glows are absolutely positioned inside clipped parents and never affect layout. Measure the render; don't grep the stylesheet.

Checks this does NOT cover

Run these by eye or add them if needed:

  • Real-font metrics when webfonts are blocked by a proxy (text can be wider).
  • JS-driven layout that needs interaction (tabs, accordions, modals).
  • Color contrast, focus states, screen-reader semantics.
  • Landscape orientation, foldables, very large phones.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.