What it does
- Audits HTML files or inline snippets with Python standard-library parsing.
- Finds missing image alt text, unlabeled controls, empty links/buttons, heading-order skips, duplicate IDs, missing document title/language, positive tabindex, timed refresh, and missing viewport metadata.
- Produces JSON reports for CI and text summaries for developers.
- Uses a local LLM CLI only for remediation planning when one is connected.
- Falls back to deterministic remediation advice with no credentials required.
Quick start
python agent.py audit --html '<img src="hero.png">'
python agent.py scan --dir ./dist --format text
python agent.py remediate --file ./dist/index.html --deterministic
Install on a Debian or Ubuntu VM
sudo bash install.sh
Set A11Y_TARGETS to a comma-separated list of globs when running the service.
For example: A11Y_TARGETS="/srv/site/**/*.html,/srv/docs/**/*.html".
LLM mode
Install and log in to one supported local CLI, then run remediate without
--deterministic. The agent loads PROMPTS.md and asks for a JSON remediation
plan. If the CLI is absent or unavailable, deterministic mode is used instead.