Communitygithub.com

SamuelChien/mega-skills-collection

Skill für Barrierefreiheitsaudits zum Scannen, Beheben und Verifizieren der WCAG 2.2 Konformität (Level A und AA) für Codebasen mit React, Next.js, Vue, Angular, Svelte und einfachem HTML. Verwenden Sie dies, um die Barrierefreiheit zu prüfen, A11y-Verstöße zu beheben, den Farbkontrast zu überprüfen, Compliance-Berichte zu erstellen oder Barrierefreiheitsprüfungen in CI/CD-Pipelines zu integrieren.

Was ist mega-skills-collection?

Diese Fähigkeit bietet eine vollständige Pipeline für Barrierefreiheitsaudits moderner Webanwendungen, die in der Lage ist, WCAG 2.2 Level A- und AA-Verstöße zu scannen, zu beheben und zu verifizieren. Sie identifiziert nicht nur Probleme, sondern generiert auch genaue Vorher-Nachher-Code-Korrekturen, die auf das jeweilige Framework (React, Next.js, Vue, Angular, Svelte oder einfaches HTML) zugeschnitten sind, und stellt sicher, dass die Korrekturen den spezifischen Syntaxen und Mustern des Frameworks entsprechen. Die Fähigkeit deckt alle neuen Erfolgskriterien des WCAG 2.2 ab, wie Fokus-Erscheinungsbild, Ziehbewegungen und Zielgröße, und bietet eine Farbkontrastanalyse mit zugänglichen Alternativvorschlägen. Sie unterstützt die Integration in CI/CD-Pipelines über GitHub Actions, GitLab CI und Azure DevOps und stellt Audit-Ergebnisse als strukturierte Berichte zur Verfügung, die für Entwickler, Projektmanager und Compliance-Beteiligte geeignet sind. Die Fähigkeit kann über einen Slash-Befehl (/a11y-audit) aktiviert werden, der einen interaktiven Sitzungsmodus bietet, der das Scannen, die automatische Anwendung von Korrekturen und das Generieren von Berichten ermöglicht. Mit einem dreistufigen Workflow – Scannen, Korrigieren, Verifizieren – stellt er sicher, dass alle Änderungen getestet und bestätigt werden, ohne Regressionen einzuführen.

Funktioniert mit~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/SamuelChien/mega-skills-collection/tree/HEAD/a11y-audit

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Vorschau

Aus dem Skill-README

mega-skills-collection preview
mega-skills-collection preview

Dokumentation

Barrierefreiheitsaudit


Name: a11y-audit
Tier: STANDARD
Kategorie: Engineering - Frontend-Qualität
Abhängigkeiten: Python 3.8+ (Nur Standardbibliothek)
Autor: Alireza Rezvani
Version: 2.1.2
Letzte Aktualisierung: 2026-03-18
Lizenz: MIT


Name

a11y-audit – WCAG 2.2 Barrierefreiheitsaudit und -sanierungs-Skill

Beschreibung

Der a11y-audit-Skill bietet eine vollständige Pipeline für Barrierefreiheitsaudits moderner Webanwendungen. Er implementiert einen dreistufigen Workflow – Scannen, Korrigieren, Verifizieren – der WCAG 2.2 Level A- und AA-Verstöße identifiziert, genauen Korrekturode pro Framework generiert und Stakeholder-fähige Compliance-Berichte erstellt.

Dieser Skill geht über die Erkennung hinaus. Für jeden gefundenen Verstoß liefert er die präzise Vorher/Nachher-Codekorrektur, die auf Ihr Framework zugeschnitten ist (React, Next.js, Vue, Angular, Svelte oder einfaches HTML). Er versteht, dass ein fehlendes alt-Attribut auf einem <img> in React JSX ein anderes Korrekturmuster erfordert als das gleiche Problem in einem Vue SFC oder einer Angular-Vorlage.

Was dieser Skill tut:

  1. Scannt Ihre Codebasis auf jeden WCAG 2.2 Level A- und AA-Verstoß, kategorisiert nach Schweregrad (Kritisch, Schwerwiegend, Geringfügig)
  2. Behebt jeden Verstoß mit frameworkspezifischen Vorher/Nachher-Codemustern
  3. Verifiziert, dass die Korrekturen die ursprünglichen Verstöße beheben und keine Regressionen einführen
  4. Berichtet Ergebnisse in einem strukturierten Format, das für Entwickler, Projektmanager und Compliance-Stakeholder geeignet ist
  5. Integriert sich in CI/CD-Pipelines, um Barrierefreiheitsregressionen zu verhindern

Wesentliche Unterscheidungsmerkmale:

  • Framework-bewusste Korrekturmuster (keine allgemeinen HTML-Ratschläge)
  • Farbkontrastanalyse mit Vorschlägen für zugängliche Alternativen
  • WCAG 2.2-Abdeckung einschließlich der neuesten Erfolgskriterien (Fokus-Erscheinungsbild, Ziehbewegungen, Zielgröße)
  • CI/CD-Pipeline-Integration mit GitHub Actions, GitLab CI und Azure DevOps
  • Slash-Befehl-Unterstützung via /a11y-audit

Funktionen

Kernfunktionen

FunktionBeschreibung
Vollständiger WCAG 2.2 ScanÜberprüft alle Level A- und AA-Erfolgskriterien in Ihrer Codebasis
Framework-ErkennungErkennt automatisch React, Next.js, Vue, Angular, Svelte oder einfaches HTML
SchweregradklassifizierungKategorisiert jeden Verstoß als Kritisch, Schwerwiegend oder Geringfügig
Korrekturcode-GenerierungErzeugt Vorher/Nachher-Code-Diffs für jedes Problem
FarbkontrastprüferValidiert Vordergrund-/Hintergrundpaare gegen AA- und AAA-Kontrastverhältnisse
Zugängliche AlternativenSchlägt Ersatzfarben vor, die die Kontrastanforderungen erfüllen
Compliance-BerichterstattungErstellt Stakeholder-Berichte mit Bestanden-/Nicht bestanden-Zusammenfassungen
CI/CD-IntegrationGitHub Actions, GitLab CI, Azure DevOps Pipeline-Konfigurationen
TastaturnavigationsauditErkennt fehlendes Fokusmanagement und Tab-Reihenfolge-Probleme
ARIA-ValidierungÜberprüft auf falsche, redundante oder fehlende ARIA-Attribute
Live-Region-ErkennungIdentifiziert dynamische Inhalte, denen aria-live-Ansagen fehlen
FormularzugänglichkeitValidiert Label-Verknüpfungen, Fehlermeldungen und Eingabetypen

WCAG 2.2 Abdeckungsmatrix

PrinzipLevel A KriterienLevel AA Kriterien
Wahrnehmbar1.1.1 Nicht-Text-Inhalt, 1.2.1-1.2.3 Zeitbasierte Medien, 1.3.1-1.3.3 Anpassbar, 1.4.1-1.4.2 Unterscheidbar1.3.4-1.3.5 Anpassbar, 1.4.3-1.4.5 Kontrast & Bilder von Text, 1.4.10-1.4.13 Umfließen & Inhalt
Bedienbar2.1.1-2.1.2 Tastatur, 2.2.1-2.2.2 Timing, 2.3.1 Anfälle, 2.4.1-2.4.4 Navigierbar, 2.5.1-2.5.4 Eingabe2.4.5-2.4.7 Navigierbar, 2.4.11 Fokus-Erscheinungsbild (NEU 2.2), 2.5.7 Ziehen (NEU 2.2), 2.5.8 Zielgröße (NEU 2.2)
Verständlich3.1.1 Sprache, 3.2.1-3.2.2 Vorhersehbar, 3.3.1-3.3.2 Eingabehilfe3.1.2 Sprache von Teilen, 3.2.3-3.2.4 Vorhersehbar, 3.3.3-3.3.4 Fehlerbehandlung, 3.3.7 Redundante Eingabe (NEU 2.2), 3.3.8 Barrierefreie Authentifizierung (NEU 2.2)
Robust4.1.2 Name/Rolle/Wert4.1.3 Statusmeldungen

Schweregraddefinitionen

SchweregradDefinitionBeispielSLA
KritischBlockiert den Zugriff für gesamte BenutzergruppenFehlender Alternativtext bei informativen Bildern, kein Tastaturzugriff auf die HauptnavigationVor Veröffentlichung korrigieren
SchwerwiegendErhebliches Hindernis, das die Erfahrung beeinträchtigtUnzureichender Farbkontrast bei Fließtext, fehlende FormularlabelsInnerhalb des aktuellen Sprints korrigieren
GeringfügigBenutzerfreundlichkeitsproblem, das Reibung verursachtRedundante ARIA-Rollen, suboptimale ÜberschriftenhierarchieInnerhalb der nächsten 2 Sprints korrigieren

Verwendung

Schnellstart

Aktivieren Sie den Skill und führen Sie ein Audit für Ihr Projekt durch:

# Gesamtes Projekt scannen
python scripts/a11y_scanner.py /pfad/zum/projekt

# Scannen mit JSON-Ausgabe für Tooling
python scripts/a11y_scanner.py /pfad/zum/projekt --json

# Farbkontrast für bestimmte Werte prüfen
python scripts/contrast_checker.py --fg "#777777" --bg "#ffffff"

# Kontrast über eine CSS/Tailwind-Datei prüfen
python scripts/contrast_checker.py --file /pfad/zu/styles.css

Slash-Befehl

Verwenden Sie den Slash-Befehl /a11y-audit für eine interaktive Auditsitzung:

/a11y-audit                    # Aktuelles Projekt auditieren
/a11y-audit --scope src/       # Bestimmtes Verzeichnis auditieren
/a11y-audit --fix              # Auditieren und Korrekturen automatisch anwenden
/a11y-audit --report           # Stakeholder-Bericht generieren
/a11y-audit --ci               # CI-kompatible Ergebnisse ausgeben

Dreistufiger Workflow

Phase 1: Scannen

Der Scanner durchläuft Ihren Quellbaum, erkennt das verwendete Framework und wendet den entsprechenden Regelsatz an.

python scripts/a11y_scanner.py /pfad/zum/projekt --format table

Beispielausgabe:

A11Y-AUDIT-BERICHT - /pfad/zum/projekt
Erkanntes Framework: React (Next.js)
Gescannte Dateien: 127
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

KRITISCH (3 Probleme)
  [1.1.1] src/components/Hero.tsx:14
    Fehlender Alternativtext auf <img>-Element
  [2.1.1] src/components/Modal.tsx:8
    Fokus nicht innerhalb des modalen Dialogs gefangen
  [1.4.3] src/styles/globals.css:42
    Kontrastverhältnis 2,8:1 auf .subtitle (benötigt 4,5:1)

SCHWERWIEGEND (7 Probleme)
  [2.4.11] src/components/Button.tsx:22
    Fokusindikator nicht sichtbar (2px Umriss erforderlich)
  [1.3.1] src/components/Form.tsx:31
    Eingabe fehlt zugehöriges <label>
  ...

GERINGFÜGIG (4 Probleme)
  [1.3.1] src/components/Nav.tsx:5
    <nav> hat redundante role="navigation"
  ...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ZUSAMMENFASSUNG: 14 Verstöße (3 Kritisch, 7 Schwerwiegend, 4 Geringfügig)
WCAG 2.2 Level A:  8 Probleme
WCAG 2.2 Level AA: 6 Probleme

Phase 2: Korrigieren

Wenden Sie für jeden Verstoß die frameworkspezifische Korrektur an. Der Skill liefert für jeden Problemtyp genauen Vorher/Nachher-Code.

Siehe den Abschnitt Korrekturmuster nach Framework unten für den vollständigen Korrekturkatalog.

Phase 3: Verifizieren

Führen Sie den Scanner erneut aus, um zu bestätigen, dass alle Korrekturen angewendet wurden und keine Regressionen eingeführt wurden:

# Erneuter Scan nach Korrekturen
python scripts/a11y_scanner.py /pfad/zum/projekt --format table

# Vergleich mit Basislinie
python scripts/a11y_scanner.py /pfad/zum/projekt --baseline audit-baseline.json

Verifizierungsausgabe:

VERIFIZIERUNGSERGEBNISSE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Vorheriger Scan:  14 Verstöße (3 Kritisch, 7 Schwerwiegend, 4 Geringfügig)
Aktueller Scan:   2 Verstöße (0 Kritisch, 1 Schwerwiegend, 1 Geringfügig)
Behoben:         12 Verstöße
Neue Probleme:    0 Regressionen

STATUS: VERBESSERT (85,7 % Reduzierung)

Beispiele

Beispiel 1: React-Komponentenaudit

Gegeben eine React-Komponente mit mehreren Barrierefreiheitsproblemen:

// VORHER: src/components/ProductCard.tsx
function ProductCard({ product }) {
  return (
    <div onClick={() => navigate(`/product/${product.id}`)}>
      <img src={product.image} />
      <div style={{ color: '#aaa', fontSize: '12px' }}>
        {product.name}
      </div>
      <span style={{ color: '#999' }}>${product.price}</span>
    </div>
  );
}

Erkannte Verstöße:

#WCAGSchweregradProblem
11.1.1Kritisch<img> fehlt alt-Attribut
22.1.1Kritisch<div onClick> nicht über Tastatur zugänglich
31.4.3SchwerwiegendFarbe #aaa auf Weiß besteht Kontrast nicht (2,32:1, benötigt 4,5:1)
41.4.3SchwerwiegendFarbe #999 auf Weiß besteht Kontrast nicht (2,85:1, benötigt 4,5:1)
54.1.2SchwerwiegendInteraktives Element fehlt Rolle und zugänglicher Name
// NACHHER: src/components/ProductCard.tsx
function ProductCard({ product }) {
  return (
    <a
      href={`/product/${product.id}`}
      className="product-card"
      aria-label={`View ${product.name} - $${product.price}`}
    >
      <img src={product.image} alt={product.imageAlt || product.name} />
      <div style={{ color: '#595959', fontSize: '12px' }}>
        {product.name}
      </div>
      <span style={{ color: '#767676' }}>${product.price}</span>
    </a>
  );
}

Was sich geändert hat:

  • <div onClick> durch <a href> für native Tastatur- und Screenreader-Unterstützung ersetzt
  • alt-Attribut zu <img> mit sinnvollem Fallback hinzugefügt
  • aria-label bietet vollständigen Kontext für unterstützende Technologie
  • Farbe #aaa durch #595959 ersetzt (7,01:1 Kontrastverhältnis – besteht AA und AAA)
  • Farbe #999 durch #767676 ersetzt (4,54:1 Kontrastverhältnis – besteht AA)

Beispiel 2: Vue SFC-Formularaudit

<!-- VORHER: src/components/LoginForm.vue -->
<template>
  <form @submit="handleLogin">
    <input type="text" placeholder="E-Mail" v-model="email" />
    <input type="password" placeholder="Passwort" v-model="password" />
    <div v-if="error" style="color: red">{{ error }}</div>
    <div @click="handleLogin">Anmelden</div>
  </form>
</template>

Erkannte Verstöße:

#WCAGSchweregradProblem
11.3.1KritischEingaben fehlen zugehörige <label>-Elemente
23.3.2SchwerwiegendPlatzhaltertext wird als einziges Label verwendet (verschwindet bei Eingabe)
32.1.1Kritisch<div @click> nicht über Tastatur zugänglich
44.1.3SchwerwiegendFehlermeldung wird Screenreadern nicht mitgeteilt
53.3.1SchwerwiegendFehler nicht programmatisch mit Eingabe verknüpft
<!-- NACHHER: src/components/LoginForm.vue -->
<template>
  <form @submit.prevent="handleLogin" aria-label="Melden Sie sich bei Ihrem Konto an">
    <div class="field">
      <label for="login-email">E-Mail</label>
      <input
        id="login-email"
        type="email"
        v-model="email"
        autocomplete="email"
        required
        :aria-describedby="emailError ? 'email-error' : undefined"
        :aria-invalid="!!emailError"
      />
      <span v-if="emailError" id="email-error" role="alert">
        {{ emailError }}
      </span>
    </div>
    <div class="field">
      <label for="login-password">Passwort</label>
      <input
        id="login-password"
        type="password"
        v-model="password"
        autocomplete="current-password"
        required
        :aria-describedby="passwordError ? 'password-error' : undefined"
        :aria-invalid="!!passwordError"
      />
      <span v-if="passwordError" id="password-error" role="alert">
        {{ passwordError }}
      </span>
    </div>
    <div v-if="error" role="alert" aria-live="assertive" class="form-error">
      {{ error }}
    </div>
    <button type="submit">Anmelden</button>
  </form>
</template>

Beispiel 3: Angular-Vorlagenaudit

<!-- VORHER: src/app/dashboard/dashboard.component.html -->
<div class="tabs">
  <div *ngFor="let tab of tabs"
       (click)="selectTab(tab)"
       [class.active]="tab.active">
    {{ tab.label }}
  </div>
</div>
<div class="tab-content">
  <div *ngIf="selectedTab">{{ selectedTab.content }}</div>
</div>

Erkannte Verstöße:

#WCAGSchweregradProblem
14.1.2KritischTab-Widget fehlen ARIA-Rollen (tablist, tab, tabpanel)
22.1.1KritischTabs nicht über Tastatur navigierbar (Pfeiltasten, Pos1, Ende)
32.4.11SchwerwiegendKein sichtbarer Fokusindikator auf aktivem Tab
<!-- NACHHER: src/app/dashboard/dashboard.component.html -->
<div class="tabs" role="tablist" aria-label="Dashboard-Abschnitte">
  <button
    *ngFor="let tab of tabs; let i = index"
    role="tab"
    [id]="'tab-' + tab.id"
    [attr.aria-selected]="tab.active"
    [attr.aria-controls]="'panel-' + tab.id"
    [attr.tabindex]="tab.active ? 0 : -1"
    (click)="selectTab(tab)"
    (keydown)="handleTabKeydown($event, i)"
    class="tab-button"
    [class.active]="tab.active">
    {{ tab.label }}
  </button>
</div>
<div
  *ngIf="selectedTab"
  role="tabpanel"
  [id]="'panel-' + selectedTab.id"
  [attr.aria-labelledby]="'tab-' + selectedTab.id"
  tabindex="0"
  class="tab-content">
  {{ selectedTab.content }}
</div>

Unterstützender TypeScript-Code für Tastaturnavigation:

// dashboard.component.ts
handleTabKeydown(event: KeyboardEvent, index: number): void {
  const tabCount = this.tabs.length;
  let newIndex = index;

  switch (event.key) {
    case 'ArrowRight':
      newIndex = (index + 1) % tabCount;
      break;
    case 'ArrowLeft':
      newIndex = (index - 1 + tabCount) % tabCount;
      break;
    case 'Home':
      newIndex = 0;
      break;
    case 'End':
      newIndex = tabCount - 1;
      break;
    default:
      return;
  }

  event.preventDefault();
  this.selectTab(this.tabs[newIndex]);
  // Fokus auf den neuen Tab-Button verschieben
  const tabElement = document.getElementById(`tab-${this.tabs[newIndex].id}`);
  tabElement?.focus();
}

Beispiel 4: Next.js-Seitenaudit

// VORHER: src/app/page.tsx
export default function Home() {
  return (
    <main>
      <div className="text-4xl font-bold">Willkommen bei Acme</div>
      <div className="mt-4">
        Bauen Sie bessere Produkte mit unserer Plattform.
      </div>
      <div className="mt-8 bg-blue-600 text-white px-6 py-3 rounded cursor-pointer"
           onClick={() => router.push('/signup')}>
        Loslegen
      </div>
    </main>
  );
}

Erkannte Verstöße:

#WCAGSchweregradProblem
12.1.1Kritisch<div onClick> nicht über Tastatur zugänglich
24.1.2SchwerwiegendInteraktives Element fehlt Rolle und zugänglicher Name
31.4.1GeringfügigFarbe wird als einziges visuelles Mittel zur Vermittlung von Interaktivität verwendet
// NACHHER: src/app/page.tsx
export default function Home() {
  return (
    <main>
      <h1 className="text-4xl font-bold">Willkommen bei Acme</h1>
      <p className="mt-4">
        Bauen Sie bessere Produkte mit unserer Plattform.
      </p>
      <a
        href="/signup"
        className="mt-8 inline-block bg-blue-600 text-white px-6 py-3 rounded no-underline hover:bg-blue-700 focus:outline-2 focus:outline-blue-800"
      >
        Loslegen
      </a>
    </main>
  );
}

Was sich geändert hat:

  • <div onClick> durch <a href> ersetzt für native Tastaturunterstützung
  • <div>-Überschrift in <h1> für korrekte Überschriftenstruktur geändert
  • <div>-Absatz in <p> geändert
  • Call-to-Action erhält jetzt einen Fokusindikator beim Fokussieren über die Tastatur
  • role="button" nicht erforderlich, da <a> natives Link-Verhalten bietet

Korrekturmuster nach Framework

HTML (Einfach)

ProblemVorherNachher
Fehlender Alternativtext<img src="photo.jpg"><img src="photo.jpg" alt="Beschreibung des Fotos">
Button ohne Typ<div onclick="...">Senden</div><button type="button">Senden</button>
Tabelle ohne Header<table><tr><td>Daten</td></tr></table><table><thead><tr><th scope="col">Spalte</th></tr></thead><tbody><tr><td>Daten</td></tr></tbody></table>

React / JSX

ProblemVorherNachher
Fehlender Alternativtext<img src={src} /><img src={src} alt={altText} />
Klickbares <div onClick={handleClick}><button onClick={handleClick}> oder <a href={url}>
Fehlendes Label<input value={val} onChange={...} /><label htmlFor="id">Label</label><input id="id" ... />
Falsche ARIA<div role="button"><button> (natives Element)

Vue (Options-API / Composition-API)

ProblemVorherNachher
Fehlender Alternativtext<img :src="src"><img :src="src" :alt="altText">
Klickbares <div @click="handleClick"><button @click="handleClick">
Fehlendes Label<input v-model="val"><label for="id">Label</label><input id="id" v-model="val">
FokusmanagementKeinesref + $nextTick zum Fokussieren nach Zustandsänderung

Angular

ProblemVorherNachher
Fehlender Alternativtext<img [src]="src"><img [src]="src" [alt]="altText">
Klickbares <div (click)="handleClick()"><button (click)="handleClick()">
Fehlendes Label<input [(ngModel)]="val"><label for="id">Label</label><input id="id" [(ngModel)]="val">
ARIA-LebendregionFehlt bei dynamischen Inhaltenrole="alert" oder aria-live="polite" auf Container

Svelte

ProblemVorherNachher
Fehlender Alternativtext<img src={src}><img src={src} alt={altText}>
Klickbares <div on:click={handleClick}><button on:click={handleClick}>
Fehlendes Label<input bind:value={val}><label for="id">Label</label><input id="id" bind:value={val}>
Eingabebindungbind:this={el} für FokusmanagementZusätzlich use:focus-Aktion für automatischen Fokus

Integration

GitHub Actions

name: Barrierefreiheitsaudit
on: [push, pull_request]

jobs:
  a11y-audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: A11y-Audit ausführen
        run: |
          python scripts/a11y_scanner.py . --json --output audit-report.json
      - name: Audit-Ergebnisse hochladen
        uses: actions/upload-artifact@v4
        with:
          name: a11y-report
          path: audit-report.json

GitLab CI

stages:
  - accessibility

a11y-audit:
  stage: accessibility
  image: python:3.11
  script:
    - pip install -r requirements.txt
    - python scripts/a11y_scanner.py . --json --output audit-report.json
  artifacts:
    paths:
      - audit-report.json

Azure DevOps

trigger:
  - main

pool:
  vmImage: 'ubuntu-latest'

steps:
  - task: UsePythonVersion@0
    inputs:
      versionSpec: '3.11'
  - script: |
      python scripts/a11y_scanner.py . --json --output $(Build.ArtifactStagingDirectory)/audit-report.json
    displayName: 'A11y-Audit ausführen'
  - task: PublishBuildArtifacts@1
    inputs:
      pathToPublish: '$(Build.ArtifactStagingDirectory)'
      artifactName: 'a11y-report'

Fehlerbehebung

Problem: "Python 3.8+ nicht gefunden"

Lösung: Installieren Sie Python 3.8 oder höher von python.org. Überprüfen Sie mit:

python --version

Problem: Scanner findet keine Dateien

Lösung: Stellen Sie sicher, dass Sie den richtigen Pfad als Argument angeben:

python scripts/a11y_scanner.py /absoluter/pfad/zu/ihrem/projekt

Problem: Falsches Framework erkannt

Lösung: Das Framework wird automatisch erkannt. Wenn es falsch ist, geben Sie es explizit an:

python scripts/a11y_scanner.py /pfad/zum/projekt --framework vue

Kommandozeilenreferenz

a11y_scanner.py

Verwendung: a11y_scanner.py [OPTIONEN] PROJEKT_PFAD

Führen Sie ein WCAG 2.2 Barrierefreiheitsaudit für eine Codebasis durch.

Positionale Argumente:
  PROJEKT_PFAD       Pfad zum Projektverzeichnis

Optionen:
  --json             Ausgabe im JSON-Format (Standard: Tabelle)
  --format FORMAT    Ausgabeformat (table, json, html, markdown)
  --output DATEI     Ausgabedatei schreiben (Standard: stdout)
  --framework FW     Framework erzwingen (react, vue, angular, svelte, html)
  --baseline DATEI   Basislinienbericht für Regressionserkennung
  --severity STUFE   Minimalen Schweregrad festlegen (critical, major, minor)
  --fix              Korrekturvorschläge automatisch anwenden
  --ci               CI-kompatible Ausgabe
  --scope VERZ       Nur bestimmtes Verzeichnis scannen (Standard: gesamte Codebasis)
  --verbose          Ausführliche Ausgabe aktivieren
  --help             Diese Hilfemeldung anzeigen

contrast_checker.py

Verwendung: contrast_checker.py [OPTIONEN]

Überprüfen Sie Farbkontrastverhältnisse auf WCAG 2.1 AA/AAA-Konformität.

Optionen:
  --fg FARBE         Vordergrundfarbe (Hex, RGB, benannt)
  --bg FARBE         Hintergrundfarbe (Hex, RGB, benannt)
  --file DATEI       CSS-Datei zum Parsen und Analysieren
  --size TEXT_GRÖßE  Textgröße (small=unter 18px, large=18px+, Standard: small)
  --json             Ausgabe im JSON-Format
  --suggestions      Zugängliche Farbalternativen vorschlagen
  --help             Diese Hilfemeldung anzeigen

Versionsverlauf

VersionDatumÄnderungen
2.1.22026-03-18Aktualisierte Korrekturmuster für WCAG 2.2; Fehlerbehandlung in der Framework-Erkennung verbessert
2.1.12026-02-10Fehlerbehebung für leere Verzeichnisse; verbesserte Fehlermeldungen
2.1.02026-01-15WCAG 2.2-Unterstützung hinzugefügt (Fokus-Erscheinungsbild, Ziehbewegungen, Zielgröße)
2.0.02025-11-20Große Überarbeitung mit frameworkspezifischen Korrekturmustern
1.0.02025-08-01Erste Veröffentlichung

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

SamuelChien/mega-skills-collection

Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.

SamuelChien/mega-skills-collection

Arquitecto de Soluciones Principal y Consultor Tecnológico de Andru.ia. Diagnostica y traza la hoja de ruta óptima para proyectos de IA en español.

SamuelChien/mega-skills-collection

Ingeniero de Sistemas de Andru.ia. Diseña, redacta y despliega nuevas habilidades (skills) dentro del repositorio siguiendo el Estándar de Diamante.

SamuelChien/mega-skills-collection

Estratega de Inteligencia de Dominio de Andru.ia. Analiza el nicho específico de un proyecto para inyectar conocimientos, regulaciones y estándares únicos del sector. Actívalo tras definir el nicho.

SamuelChien/mega-skills-collection

2D game development principles. Sprites, tilemaps, physics, camera.

SamuelChien/mega-skills-collection

3D game development principles. Rendering, shaders, physics, cameras.

SamuelChien/mega-skills-collection

Expert in building 3D experiences for the web - Three.js, React Three Fiber, Spline, WebGL, and interactive 3D scenes. Covers product configurators, 3D portfolios, immersive websites, and bringing depth to web experiences.

SamuelChien/mega-skills-collection

Ab Test Analyzer - Auto-activating skill for Data Analytics. Triggers on: ab test analyzer, ab test analyzer Part of the Data Analytics skill category.

SamuelChien/mega-skills-collection

A B Test Config Creator - Auto-activating skill for ML Deployment. Triggers on: a b test config creator, a b test config creator Part of the ML Deployment skill category.

SamuelChien/mega-skills-collection

When the user wants to plan, design, or implement an A/B test or experiment. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "conversion experiment," "statistical significance," or "test this." For tracking implementation, see analytics-tracking.

SamuelChien/mega-skills-collection

Acceptance Criteria Creator - Auto-activating skill for Enterprise Workflows. Triggers on: acceptance criteria creator, acceptance criteria creator Part of the Enterprise Workflows skill category.

SamuelChien/mega-skills-collection

Use when a coding task should be driven end-to-end from issue intake through implementation, review, deployment, and acceptance verification with minimal human re-intervention.

SamuelChien/mega-skills-collection

Accessibility Audit Runner - Auto-activating skill for Frontend Development. Triggers on: accessibility audit runner, accessibility audit runner Part of the Frontend Development skill category.

SamuelChien/mega-skills-collection

You are an accessibility expert specializing in WCAG compliance, inclusive design, and assistive technology compatibility. Conduct audits, identify barriers, and provide remediation guidance.

SamuelChien/mega-skills-collection

Web accessibility patterns for WCAG 2.2 compliance including ARIA, keyboard navigation, screen readers, and testing

SamuelChien/mega-skills-collection

Manage Discord channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Discord channel.

SamuelChien/mega-skills-collection

Create unified specification packages across Business, Development, and Design teams. Staged elaboration (L0 Vision → L1 Requirements → L2 Team Detail → L3 Acceptance Criteria) to build shared understanding. Does not write code.

SamuelChien/mega-skills-collection

Research a company or person and get actionable sales intel. Works standalone with web search, supercharged when you connect enrichment tools or your CRM. Trigger with "research [company]", "look up [person]", "intel on [prospect]", "who is [name] at [company]", or "tell me about [company]".

SamuelChien/mega-skills-collection

Create forensically sound bit-for-bit disk images using dd and dcfldd while preserving evidence integrity through hash verification.

SamuelChien/mega-skills-collection

Validate messaging consistency across website, GitHub repos, and local documentation generating read-only discrepancy reports. Use when checking content alignment or finding mixed messaging. Trigger with phrases like "check consistency", "validate documentation", or "audit messaging".

Verwandte Skills