Skip to main content

Accessibility Scan (AccessLint)

Fleet adaptation (read first)​

Imported from AccessLint (owner directive 2026-10-07) as the markdown audit method only. The executable layer is declined by owner direction (2026-10-07): the @accesslint/cli and @accesslint/chrome packages, the AccessLint MCP server, any browser-MCP wiring, and the hosted connector will not be adopted — no fleet code goes out to a third party. The method on this page is in use; local-only execution is under evaluation by the research service. Where the source text drives its own engine, this page's method — the tiers, evidence standards, checkpoints, and reporting formats — applies unchanged with whatever scanning and browser tooling the fleet has sanctioned. The shared methodology is in this skill's supporting files (shared/methodology.md) and is the authority for severity, evidence basis, and honesty conventions across all five AccessLint pages.

Audit a live page and report each violation and where it is. Locate; don't fix.

Shared grounding and honesty conventions: the shared methodology in this skill's supporting files (docs/15-skills/_support/accesslint/accessibility-scan/shared/methodology.md).

$ARGUMENTS is a URL, a config target name (dev, storybook, …), or empty to audit the default target from accesslint.config.json. If it's empty and no config exists, ask for a URL or suggest defining a target first.

1. Audit​

Run the rule engine against the target and capture the violations as structured data (selector + source mapping where available). Engine execution is excluded from this import — see the Fleet adaptation section.

<target> is the URL or config target name from $ARGUMENTS. Omit it (don't pass "") to audit the config's default target. Add flags as needed: --selector, --wait-for "<selector>", --include-aaa, --disable <rules>, or pin them per-target in accesslint.config.json.

2. Report​

Counts by impact, then one entry per violation:

  • where: selector verbatim, plus file:line (symbol) if source is present. Don't fabricate. If no violation has source, note "source mapping unavailable; located by selector only".
  • evidence: contrast ratio, missing attribute, empty name.
  • fix: mechanical change, or NEEDS HUMAN.

Don't edit. For fixes, apply the mechanical ones and re-run to verify; for bulk work hand off to accesslint:accessibility-fix.

3. Tear down​

Stop any browser or engine process this run started.

Notes​

  • ensure determines the port; don't hardcode 9222.
  • CLI exit 2 means a bad URL or target, or the page never loaded; check the dev server. An unknown target name makes the CLI list the available targets from accesslint.config.json.

Supporting files: this skill's supporting files are held in the docsite at docs/15-skills/_support/accesslint/accessibility-scan/ — fetch them fresh from jknash/docsite main alongside this page.

Source: AccessLint/skills · plugins/accesslint/skills/accessibility-scan/ @ 2e9d73366783 · view source · Imported 2026-10-07 under the owner's directive (public-repo content approved for internal fleet use; upstream asserts MIT in its README and plugin manifests, no LICENSE file ships). Method only — CLI, MCP server, and hosted connector excluded pending security review.