a11y-agent-ops
v0.3.4
Published
Framework-independent accessibility auditing CLI for any website or web application
Maintainers
Readme
🇸🇰 Slovensky | 🇺🇸 English
a11y-agent-ops
Audity prístupnosti, z ktorých vzniknú hotové úlohy pre vývojárov.
Prejde ľubovoľný web v reálnom prehliadači, spustí axe-core WCAG kontroly, urobí zvýraznené screenshoty a vygeneruje Markdown tickety plus HTML report. Voliteľné AI vysvetlenia robia z každého nálezu niečo, na čom sa dá hneď pracovať — nie len ďalšie skóre.
GitHub: github.com/davidkolisek/a11y-agent-ops · npm: npmjs.com/package/a11y-agent-ops
Funkcie
- Nezávislé od frameworku — funguje s akýmkoľvek stackom aj čistým HTML
- AI vysvetlenia problémov s prístupnosťou
- Zvýraznené screenshoty ku každému porušeniu
- Markdown úlohy pripravené pre vývojárov
- Samostatný HTML report
- Funguje na akomkoľvek webe aj na localhoste
Inštalácia
npm install -g a11y-agent-ops
npx playwright install chromiumAlebo bez globálnej inštalácie:
npx a11y-agent-ops scan https://example.comVyžaduje Node.js 18+.
Po inštalácii uvidíš krátky tip. Potom:
a11y-ops setupVytvorí ~/.a11y-ops/ (.env + config), vypíše cesty a otvorí priečinok vo Finderi / Exploreri.
Rýchly štart
a11y-ops scan http://localhost:3000
a11y-ops scan https://example.comUžitočné flagy:
a11y-ops scan https://example.com --max-pages 50 --wcag-level AA
a11y-ops scan https://example.com --project my-app --sk
a11y-ops scan https://example.com --ai-mode off| Flag | Popis |
| --- | --- |
| --max-pages <n> | Max. počet stránok na crawl |
| --wcag-level <A\|AA\|AAA> | WCAG úroveň (default AA) |
| --ai-mode <auto\|on\|off> | Režim AI analýzy |
| --project <name> | Názov priečinka reportu |
| --sk | Report / úlohy / AI po slovensky |
| -v, --verbose | Podrobné logy |
Globálne CLI vs per-project
Dva rôzne workflowy:
| | Globálne CLI (npm i -g) | Per-project |
| --- | --- | --- |
| Kedy | Skenuješ URL odkiaľkoľvek | Audituješ jednu appku v jej repo |
| AI kľúč | ~/.a11y-ops/.env (raz) | to isté, alebo project .env |
| Defaulty | ~/.a11y-ops/a11y-ops.config.ts | voliteľné |
| Nastavenia appky | CLI flagy | a11y-ops.config.ts v repo |
Priorita: CLI flagy > project config > global config > built-in defaulty.
AI setup (sprav raz)
AI je voliteľné. Bez kľúča stále dostaneš plný audit (skóre, screenshoty, úlohy). S kľúčom sú vysvetlenia a opravy lepšie.
Odporúčané pre globálnu inštaláciu — spusti:
a11y-ops setupAlebo ručne vytvor ~/.a11y-ops/.env:
mkdir -p ~/.a11y-ops
cat > ~/.a11y-ops/.env << 'EOF'
OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o-mini
# OPENAI_BASE_URL=https://api.openai.com/v1
EOFPotom z ľubovoľného priečinka:
a11y-ops scan https://example.comAlternatívy:
- export v shelli (
~/.zshrc):export OPENAI_API_KEY=sk-... - project
.envv aktuálnom pracovnom adresári
| Režim | Správanie |
| --- | --- |
| --ai-mode auto (default) | AI beží, keď je kľúč dostupný |
| --ai-mode on | AI je povinné (bez kľúča spadne) |
| --ai-mode off | AI sa vždy preskočí |
Funguje s OpenAI aj kompatibilnými endpointmi cez OPENAI_BASE_URL.
Konfigurácia
Globálne defaulty (~/.a11y-ops/)
Pre globálne CLI — defaulty pre každý sken:
# ~/.a11y-ops/a11y-ops.config.ts
export default {
maxPages: 50,
wcagLevel: 'AA',
ai: { enabled: true },
};Per-project (voliteľné)
Keď cdneš do appky a chceš crawl pravidlá len pre ňu, daj do koreňa a11y-ops.config.ts:
export default {
maxPages: 50,
wcagLevel: 'AA',
ignorePaths: ['/admin'],
includePaths: ['/checkout'],
locale: 'sk', // alebo 'en'
projectName: 'my-app',
ai: {
enabled: true,
},
};Podporované aj: .js, .mjs, .cjs, .json. Alebo --config ./path/to/config.ts.
| Option | Popis |
| --- | --- |
| maxPages | Max. počet stránok (default 50) |
| ignorePaths | Prefixy ciest, ktoré sa preskočia |
| includePaths | Ak je nastavené, crawlí len zhodné cesty |
| wcagLevel | A | AA | AAA (default AA) |
| locale | en (default) alebo sk |
| projectName | Priečinok pod .a11y-ops-report/<name>/ |
| ai.enabled | Zapnúť AI, keď je dostupný API kľúč |
Výstup
.a11y-ops-report/<project>/
├── index.html # Interaktívny HTML dashboard
├── screenshots/ # Zvýraznené PNG ku každému porušeniu
└── tasks/ # Markdown tickety pre Jira / Linear / GitHubZapisuje sa relatívne k aktuálnemu pracovnému adresáru. <project> je predvolene hostname.
Po skene sa report otvorí v prehliadači a CLI ostane bežať s malým menu.
Prečo A11yOps?
Väčšina nástrojov na prístupnosť skončí pri zozname porušení. Tím si stále musí problémy reprodukovať, vysvetliť dopad a napísať tickety.
A11yOps túto medzeru zatvára — z každého nálezu vznikne úloha pripravená na skopírovanie: selektor, screenshot, WCAG referencia a praktický návrh opravy.
Dokumentácia
Licencia
MIT
