7391226/flash-safety-audit

Mesure une page web, un fichier HTML local, un enregistrement de jeu ou une vidéo pour détecter les risques d'épilepsie photosensible (crise) et génère un rapport selon WCAG 2.3.1 (Trois flashs ou moins du seuil). Utilisez-le lorsque l'utilisateur demande de vérifier, auditer ou tester tout ce qui flashe, scintille, stroboscope, clignote ou a une animation rapide pour l'épilepsie, les crises, la photosensibilité, WCAG 2.3.1 ou la sécurité d'accessibilité.

Qu'est-ce que flash-safety-audit ?

Cette compétence permet d'auditer automatiquement une page web, un fichier HTML local, un enregistrement de jeu ou une vidéo pour détecter les risques de crises d'épilepsie photosensible, conformément à la norme WCAG 2.3.1. Elle capture la page dans un navigateur headless (ou lit une vidéo), exécute le détecteur de flashs IRIS d'EA avec le seuil de zone WCAG (0,111 de l'écran), et génère un rapport complet en Markdown et JSON. Le rapport indique clairement si le contenu échoue au critère WCAG 2.3.1 (flashs lumineux ou rouges dépassant le seuil) et fournit des avertissements supplémentaires basés sur les règles de diffusion IRIS. En cas d'échec, la compétence suggère des correctifs pratiques comme ralentir la fréquence de flash, réduire la taille de la zone de flash, diminuer le contraste de luminosité, éviter les rouges saturés, et respecter la préférence de mouvement réduit. Elle est conçue pour être utilisée avec des outils comme Claude Code, Cursor ou Codex, et s'exécute en mode headless uniquement pour garantir la sécurité.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/7391226/flash-safety-audit/tree/HEAD

Installed? Explore more Recherche et analyse de données skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Audit de sécurité des flashs

Enregistre la page dans un navigateur headless (ou lit une vidéo), exécute le détecteur de flashs IRIS d'EA avec le seuil de zone WCAG (0,111 de l'écran), et écrit un rapport Markdown + JSON. Il s'agit d'un dépistage, pas d'un certificat. Exécutez les commandes depuis le dossier de cette compétence avec son propre Python, .\venv\Scripts\python.exe (indiqué comme python ci-dessous). Passez --out pour placer le rapport dans le projet de l'utilisateur.

1. Configuration (uniquement si .venv est manquant ou si les importations échouent)

python -m venv .venv
.\venv\Scripts\python.exe -m pip install -r requirements.txt
.\venv\Scripts\python.exe -m playwright install chromium

2. Choisir l'entrée

EntréeQuand l'utiliser
--url https://...une page web en direct
--html chemin\page.htmlun fichier HTML local
--video chemin\clip.mp4une capture de jeu, une bande-annonce ou toute vidéo existante
python scripts/audit.py --url https://example.com
python scripts/audit.py --html page.html --duration 10
python scripts/audit.py --video clip.mp4

Options utiles : --duration (s, défaut 10), --settle (s, défaut 1), --viewport (défaut 1024x768), --out (défaut reports/). Code de sortie 0 = RÉUSSI, 1 = ÉCHEC, 2 = erreur. Les clics, le survol et le défilement ne sont pas pris en charge ; si le danger nécessite une interaction, demandez à l'utilisateur un enregistrement d'écran et utilisez --video.

3. Lire le rapport (report.md)

  • Le résultat WCAG 2.3.1 est le seul verdict. ÉCHEC si des images "d'échec de flash" lumineux ou rouges ont été trouvées. Citez les plages horaires.
  • Avertissements supplémentaires (non WCAG) sont les règles de diffusion IRIS (par exemple, 2–3 flashs/s pendant plusieurs secondes). Mentionnez-les séparément ; ne les qualifiez jamais d'échec WCAG.
  • Les scintillements plus rapides que la moitié de la fréquence d'images (~12 Hz pour les enregistrements de pages) ne sont pas mesurés. Ne décrivez jamais ce contenu comme "réussi".
  • Répétez toujours l'avertissement : une réussite ne prouve pas que la page est sûre.

4. Correctifs à suggérer en cas d'échec

  • Ralentir le flash à moins de 3 par seconde.
  • Réduire la taille de la zone de flash (bien en dessous de 341 x 256 px à 1024 x 768).
  • Réduire le contraste de luminosité entre les états de flash.
  • Éviter les flashs rouges saturés.
  • Honorer @media (prefers-reduced-motion: reduce) et ajouter une commande de pause/arrêt.

5. Règle de sécurité

N'ouvrez jamais les pages de test, les pages auditées ou les enregistrements dans un navigateur visible, et ne les montrez ni ne les incorporez jamais pour l'utilisateur. Exécutez-les uniquement en mode headless via scripts/audit.py. Partagez le rapport, pas la vidéo.

Skills associés