Communitygithub.com

maxgfr/ultra11y

HTML/CSS/JSX の RGAA 4.1.2 + WCAG 2.1/2.2 AA アクセシビリティ監査(日付入りレポート)またはアクセシブルなマークアップの作成/レビュー — ゼロ依存の静的エンジンとエージェント判断、幻覚防止ゲート付き。skills.sh エージェントスキル。

ultra11y とは?

ultra11y は、AI エージェントが HTML/CSS/JSX の静的アクセシビリティ監査を実行し、RGAA 4.1.2(フランスのアクセシビリティ基準)に基づく準拠レポートや WCAG 2.1/2.2 AA ビューを生成できるようにするスキルです。機械検証可能な非準拠の検出をゼロ依存の静的エンジンに任せ、人間(またはエージェント)が代替テキストの妥当性やコンテキスト内ラベルなどの判断を必要とする基準を評価します。このスキルは Claude Code、Cursor、Codex などの AI エージェントをサポートし、`node scripts/ultra11y.mjs` を介して git diff の変更のみを監査する `--changed`、Docker を使用した動的コントラストスキャン、誤検出を防ぐための幻覚防止ゲートなどの機能を提供します。出力には確認済みの非準拠、手動レビューが必要な残存リスク、アクセシビリティ修正のための安全な自動修正候補が含まれています。

対応~Claude Code~Codex CLI~Cursor
npx skills add maxgfr/ultra11y

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

ultra11y — RGAA 4.1.2 の監査とアクセシブルな記述

アクセシビリティにおいて、自動ツールは問題の一部しか見えません。 ultra11y は役割分担によってこれを前提としています。ゼロ依存の決定論的エンジン(node scripts/ultra11y.mjs <コマンド> — npm install もキーも不要)が機械的な処理 — 機械検証可能な非準拠を検出し、適切な RGAA 基準に紐付ける — を担当し;あなたが判断 — 代替テキストの妥当性、コンテキスト内ラベル、読み上げ順序 — や描画が必要な基準(コントラスト、フォーカス、ズーム)を担当します。幻覚による非準拠が残るのを防ぐゲートがあります。

コアルール:

  1. 非準拠を決して発明しない:各 NC は実際の解決可能な要素を引用します(check で検証)。
  2. まずネイティブ HTML、ARIA は最後;暗黙のセマンティクスを重複させないでください。
  3. 残差は明示的に:描画/判断基準で証明されていないものはすべて「手動評価が必要」に入り、黙って準拠とマークされることはありません。

状況に応じた選択

  • 「監査/準拠レポート」 → node scripts/ultra11y.mjs audit … --json、次に report、次に check;references/audit.md を参照。
  • 「大規模リポジトリで/スマート監査」 → 焦点を絞る:--changed(git diff)、テンプレートの優先順位付け、重複排除、--max-files;references/scale.md を参照。
  • 「修正を適用する」 → fix(デフォルトはドライラン、--write で安全な修正を適用、残りは発明せずに提案);references/fix.md を参照。
  • 「リポジトリでの自動ガード(フック/CI)」 → init --hook/--ci/--baseline(新しい非準拠のみで失敗);references/automation.md を参照。
  • 「このコードをアクセシブルにする/レビューする」 → スニペットを監査(audit - < コンポーネント.html)し、ネイティブ優先に従う;references/authoring.md と references/forbidden-patterns.md を参照。
  • 「基準 X の意味/テーマは何か」 → criteria;references/criteria.md を参照。
  • 「国際規格(WCAG / EN 301 549 / Section 508)」 → report/criteria で --standard wcag;references/methodology.md を参照。
  • 「高保証監査」 → verify --report … --semantic;references/verify.md を参照。方法論と形式:references/methodology.md。
  • 「コントラスト/描画の確認(オプションの Docker ティア)」 → scan <URL> --merge …(ヘッドレスブラウザ内の axe-core);references/dynamic.md を参照。

コマンド早見表

node scripts/ultra11y.mjs audit "src/**/*.html" --json > audit.json
node scripts/ultra11y.mjs audit - < コンポーネント.html        # 標準入力からの HTML
node scripts/ultra11y.mjs audit "src/**/*.tsx" --jsx       # JSX/TSX(ベストエフォート)
node scripts/ultra11y.mjs audit --changed --json           # git diff のみ(大規模リポジトリ)
node scripts/ultra11y.mjs report --in audit.json --out audits
node scripts/ultra11y.mjs report --in audit.json --standard wcag   # WCAG ビュー(表示用)
node scripts/ultra11y.mjs criteria 11.1                    # 基準 + そのテスト
node scripts/ultra11y.mjs criteria --theme 8 --list        # テーマ/リスト
node scripts/ultra11y.mjs check  --report audits/rgaa-AAAA-MM-JJ.md
node scripts/ultra11y.mjs verify --report audits/rgaa-AAAA-MM-JJ.md --semantic
node scripts/ultra11y.mjs fix "src/**/*.html"              # ドライラン;--write で適用
node scripts/ultra11y.mjs init --hook --baseline           # 回帰ガード(フック + ベースライン)
node scripts/ultra11y.mjs scan https://example.jp --merge audits/audit-latest.json  # Docker ティア

--json でどこでも機械可読出力。デフォルトはフランス語レポート、--lang en 利用可能。

エンジン、判断、残存リスクの組み合わせ

audit 出力は各基準を分類します:静的サブセットについては C/NC/NA;描画/判断基準(residualRisks にリスト)については manual。エンジンの NC は確認済み候補です(ファイル:行 で引用)。manual 基準の判断と、描画基準の「手動確認が必要」マーク付けはあなたの責任です。レポートが完全になるのは、該当するすべての基準が正当な C/NC/NA を持ち、すべての残存リスクが名前付けられた場合のみです。

やってはいけないこと

  • エンジンが見つけず、自分でも確認できない非準拠を発明すること(インラインリテラル色のコントラストは静的判定済み;計算されたコントラスト — 外部 CSS、変数 — は scan(Docker ティア)または描画時に確認してから宣言)。
  • ネイティブセマンティクスを重複させる ARIA を追加すること。
  • 人間による確認なしに描画/判断基準を「準拠」とマークすること。
  • references/criteria.md を手動で編集すること(リポジトリから生成)。

範囲

静的エンジン:オフライン、決定論的、ゼロ依存;入力は HTML + JSX/TSX(ベストエフォート)+ 標準入力。描画基準(計算されたコントラスト、リフロー)はオプションの scan ティア(Docker 内の axe-core)でカバー;可視フォーカス、200% テキストズーム、ホバーコンテンツは人間のレビューに残ります(残存リスク)。データ:RGAA 4.1.2 © DINUM、Licence Ouverte / Etalab 2.0(NOTICE 参照)。

関連スキル