Pokled
📌 Épinglé ⭐ À la une

OctoGuard : la modération automatique, éthique et sur-mesure pour Nodyx

Pokled · May 18, 2026, 12:18 PM
485 vues
1 réponses
May 18, 2026, 12:18 PM (modifié) #1
Octoguard-Nodyx_Discxord_Alternatif

Version 2.1 : admin-freedom
Un outil puissant que vous contrôlez, une philosophie que nous défendons.

Chez Nodyx, nous croyons que la liberté technique va de pair avec la responsabilité. Héberger sa propre communauté, c’est merveilleux, mais cela soulève aussi des questions légitimes : comment modérer sans censurer ? Comment automatiser sans imposer ? Comment se protéger sans enfermer ses membres ?

Aujourd’hui, nous levons le voile sur OctoGuard, notre nouveau système natif de modération automatique. Baptisé ainsi en hommage à la pieuvre, créature intelligente, flexible et dotée d’un bouclier ,OctoGuard est votre allié, pas votre gardien.


🧭 Une boussole, pas une loi

La particularité d’OctoGuard ? Il n’impose aucune politique de contenu par défaut.

  • Par défaut, OctoGuard est désactivé. Votre instance continue de fonctionner comme avant.

  • C’est vous, admin, qui décidez quelles règles activer, quels comportements sanctionner, et à quel degré.

  • OctoGuard est une surcouche à l’infrastructure de modération existante de Nodyx (bans, logs, rate-limits). Il ne réinvente pas la roue : il l’équipe de pneus neige, de GPS et d’un klaxon optionnel.

Nous appelons cela l’architecture éthique à deux niveaux :

  1. Niveau instance : liberté totale. Vous êtes maître à bord, avec les responsabilités légales que cela implique (LCEN, DSA…).

  2. Niveau annuaire : le réseau Nodyx se réserve le droit de ne pas référencer les instances qui hébergent des contenus inhumains. Cette décision appartient à l’annuaire, pas au code d’OctoGuard.

Le projet Nodyx (AGPL-3.0) fournit des outils. Leur usage relève de votre seule responsabilité. Nous plaidons pour un web humain et sain , mais nous refusons de l’imposer par le code.


octoguard_admin_panel

🔧 Ce qu’OctoGuard va vous permettre de faire (quand vous l’activerez)

OctoGuard est découpé en modules indépendants, déployables en moins de deux semaines. Voici un aperçu de ce qui vous attend dès la Phase 1.

1. Auto-modération paramétrable

Créez vos propres règles à base de :

  • Regex (expressions régulières)

  • Caps lock excessif

  • Triages de domaines (liste blanche ou noire)

  • Spam de mentions ou de liens

Pour chaque règle, choisissez l’action :

  • delete : supprime le message silencieusement

  • warn : avertit l’utilisateur + enregistre un « avertissement »

  • mute : l’empêche d’écrire pendant une durée que vous définissez (ex: 1h, 3d)

  • ban_temp : bannissement temporaire (réutilise le système de community_bans)

  • notify_only : vous alerte (log + webhook) sans toucher à l’utilisateur

  • report_only : mode « dry-run » pour tester une règle sans action réelle

Escalade automatique : après 3 warns en 7 jours → mute 1h, etc. Vous fixez les seuils.

2. Welcome personnalisé

À l’arrivée d’un nouveau membre :

  • Message public dans un salon de votre choix

  • Message privé système (avec badge [Système]) optionnel

  • Attribution automatique d’un grade

Variables disponibles : {user}, {userMention}, {communityName}, {rulesUrl}.

3. Commandes custom

Créez vos propres commandes !regles, !bienvenue, !carte, etc.

  • Réponse en markdown (pas d’embed, pour rester léger)

  • Cooldown paramétrable

  • Canal ou rôle autorisé

4. Mute / timeout (enfin !)

Jusqu’ici, Nodyx ne permettait pas de restreindre la parole d’un membre sans le bannir. OctoGuard ajoute une table chat_mutes :

  • Mute global (tous les salons) ou par canal

  • Durée libre (15m, 2h, 1w, permanent)

  • Purge automatique des expirations

5. Système de reports (signalements)

Un membre peut signaler un message ou un utilisateur.

  • Formulaire rapide (catégorie + raison)

  • Page inbox admin : traitez les reports, mutez, supprimez, ou classez sans suite

  • Anti-abuse paramétrable : limite de reports par heure, cooldown par cible

6. Logs unifiés & UNDO

Toutes les actions d’OctoGuard sont inscrites dans la table admin_audit_log existante. Chaque événement porte un event_id unique.

  • Undo possible : vous pouvez annuler une suppression ou un mute depuis l’interface.

  • Filtrage par type d’action, utilisateur, date.

7. Webhook sortant (optionnel)

Recevez chaque action de modération en temps réel sur votre outil préféré (Slack, Discord, serveur HTTP perso). Signature HMAC-SHA256 pour sécuriser la liaison.


⚡ Performances et fiabilité

Nous avons construit OctoGuard avec deux exigences non-négociables :

  • Ne jamais bloquer le chat. Le pipeline de modération est limité à 50 ms. Au-delà, le système est court-circuité (fail‑open) : le message passe, seul un avertissement est loggé.

  • ReDoS protection renforcée. Les expressions régulières sont exécutées via re2 (moteur à temps linéaire, sans risque d’attaque par déni de service). Sur les architectures exotiques, un fallback avec safe-regex filtre les patterns catastrophiques.

Benchmark cible : p95 < 5ms par message sur une machine standard. Nous fournirons un script de benchmark pour que vous puissiez tester votre propre instance.


🧩 Un système éthique, même dans les détails

Le filtre de symboles haineux

Nodyx intègre depuis toujours un filtre bloquant les symboles nazis (swastika, runes SS). Ce filtre est activé par défaut mais vous pouvez le désactiver en admin. Une modale explicite vous rappellera les risques légaux (en France, apologie de crime contre l’humanité est punie par la loi). Un clic, et c’est votre responsabilité. Pas de blocage, pas de jugement. Juste de l’information.

L’anti-flood

Il existe déjà dans Nodyx sous la forme d’un rate‑limiter Socket.IO (5 messages / 3s, 15 / 15s). OctoGuard n’en recrée pas un : il se contente d’ajouter une couche contenu par‑dessus. Pas de doublon, pas de confusion.

Durées libres

Pas de menus déroulants imposant 15m, 1h, 1j. Vous tapez 45m, 3d, 2w , c’est accepté. Parce que la modération n’a pas à être rigide.


🛡️ Âge et contenus sensibles : une autre voie est possible

L’Europe commence à durcir le ton sur les contenus réservés aux adultes. Certaines plateformes vous demanderont bientôt une carte d’identité, une reconnaissance faciale, ou la transmission de données sensibles à des tiers. Chez Nodyx, nous refusons cette logique.

Nous ne voulons pas de base de données biométriques, pas de selfie à l’appui, pas de document d’identité scanné. Parce que la vie privée n’est pas négociable, et parce que l’auto-hébergement doit rester un sanctuaire.

Mais comment protéger les mineurs sans violer leurs droits ? La réponse ne viendra pas d’une injonction légale aveugle, mais d’outils techniques choisis par l’admin.

🧠 L’approche OctoGuard pour le NSFW

Nous allons intégrer un module complémentaire (désactivable par défaut) permettant de :

  • Détecter automatiquement les médias sensibles (images, vidéos, fichiers) à l’aide de modèles locaux légers (ex : nsfw-detector ou CLIP exécutés en local, sans appel externe).

  • Flouter / masquer le contenu avec un clic pour révélation (« click to reveal »).

  • Laisser l’utilisateur s’auto-déclarer majeur (une simple case à cocher, aucune preuve stockée). L’admin peut choisir de faire confiance ou d’ajouter une validation manuelle pour les cas douteux.

  • Proposer un filtrage par communauté : un canal #nsfw peut être restreint aux membres ayant coché « +18 » dans leurs préférences.

Aucune donnée biométrique. Aucune transmission à l’État ou à un prestataire externe. Juste des algorithmes locaux, libres, et une responsabilité assumée par l’admin.

🔁 Et la loi ?

Nous ne contournons pas la loi, nous l’interprétons avec bon sens. Le Digital Services Act (DSA) exige des « mesures appropriées » pour protéger les mineurs, pas des solutions précises. Un admin qui active le floutage automatique + auto-déclaration se conforme déjà raisonnablement à l’esprit du texte, sans tomber dans la surveillance de masse.

Si la régulation évolue vers une obligation de vérification d’âge infaillible, alors le problème deviendra politique, pas technique. Nodyx s’opposera toujours à l’imposition d’une identité numérique centralisée. Mais en attendant, nous donnons des alternatives concrètes : filtrage local, auto-attestation, et modération humaine.

En clair : vous pourrez, si vous le souhaitez, rendre votre instance « friendly » pour les mineurs sans avoir à exiger leur pièce d’identité. Et si vous gérez une communauté réservée aux adultes, vous n’aurez pas non plus à collecter des fichiers sensibles.

Comme tout OctoGuard, ce module sera désactivé par défaut et configurable à volonté. Parce que c’est votre instance, votre responsabilité… et votre liberté.

Une musique qui fait comprendre ce que je ressens et je peux vous dire que c'est un film d'horreur.


🗺️ Roadmap (premières étapes)

Phase

Contenu

Délai estimé

Phase 1 (cet article)

Auto-mod, Welcome, Commandes, Mute, Reports, Webhook, Logs unifiés

≤ 2 semaines

Phase 2

XP / niveaux / leaderboard (SQLite isolée)

+2 semaines

Phase 3

Modération forums, messages programmés, réactions automatiques, métadonnées vocales (sans audio)

+3 semaines

Phase 4

Bot API externe (REST + Socket.IO + SDK Python)

non daté


🚀 Comment préparer votre instance ?

En attendant la sortie effective (≤ 2 semaines) :

  1. Mettez à jour Nodyx vers la dernière version dev.

  2. Passez en revue votre politique de modération : quelles règles souhaitez‑vous automatiser ?

  3. Réfléchissez à vos durées de mute, de ban temporaire, et à vos seuils d’escalade.

  4. Identifiez vos commandes utiles (un !guide ou !faq peut remplacer des dizaines de réponses manuelles).

Aucune action bloquante n’est demandée. OctoGuard arrivera désactivé . Vous ne serez pas surpris.


🙏 Un mot sur la responsabilité

Nodyx est un outil. OctoGuard est un outil. Le code est fourni sous licence AGPL-3.0. Vous, administrateur, êtes seul responsable de l’usage que vous faites de votre instance. Nous vous encourageons à consulter le droit applicable à votre pays.

Le projet Nodyx s’engage à :

  • Ne jamais cacher une option de modération derrière une « politique interne ».

  • Rendre l’interface d’administration claire et documentée.

  • Protéger le réseau via l’annuaire (refus de référencer les instances clairement inhumaines).

Le reste vous appartient. Et c’est très bien ainsi.


🐙 OctoGuard arrive bientôt sur votre instance.

Liberté, responsabilité, et un bouclier.

L’équipe Nodyx


Des questions ? Des suggestions ? Le fil de discussion est ouvert ci-dessous (et bientôt, vous pourrez signaler les messages indésirables en un clic 😉).

Vous devez être connecté pour répondre.

Se connecter