05Toul'BarzEn chantier

« on a vu qu'il y a plein de trucs de fou qui se font niveau automatisation. toi qui connais, tu penses que ça peut nous aider pour la gestion de l'asso ? »

le bureau d'une association de street workout, à Toulouse

Une asso pilotée depuis les LLM qu'elle utilise déjà.

Le bureau écrit à Claude ou à ChatGPT, comme il le fait déjà. Derrière, une passerelle reconnaît l'asso et refuse ce qui dépasse ; un tableau de bord monochrome tient les événements, les adhésions et les envois. Rien ne part sans passer par le goulot, rien ne se perd en silence.

Du premier fichier aux modules en service
6 semaines
Ce qui en reste aujourd'hui
233 membres, 76 événements sortis des tableurs
Socle en production
3 juin 2026

tbEntrer Plateforme privée de l'asso · conception, code, mise en production, en solo

WhatsApp programme du lundi · envoyé Mail relance · partie par mail Push notification push · envoyée Événements En préparation → Prêt Membres relance de renouvellement Programme programme du lundi · composé le bureau · dans son assistant
Le bureau de l'asso dans son assistant, et six bras vers ce que l'assistant fait pour elle : WhatsApp, mail, push, événements, membres, programme.

Ce que la phrase voulait dire

Un bureau bénévole qui passe ses soirées dans des tableurs et du papier : événements, adhésions, relances, communications de groupe. Ce bureau utilise déjà Claude et ChatGPT pour l'asso, et voit passer « plein de trucs de fou niveau automatisation ». Personne ne demandait une plateforme. La question posée était : est-ce que ça peut nous rendre du temps.

Ne pas leur apprendre un nouvel outil : brancher leurs LLM, par MCP, sur une passerelle qui sait qui parle et ce qu'elle a le droit d'envoyer. Et sortir des tableurs ce qui se répète : les événements suivis en cinq états, les adhésions HelloAsso traitées à l'arrivée, les relances envoyées à l'heure, les groupes WhatsApp servis le lundi matin.

Ce qui a été construit

Un tableau de bord argent et encre derrière un seuil ; une API sur un serveur, avec un planificateur en heure de Paris ; une passerelle d'envoi commune à tous les projets de la maison ; et un accès MCP pour que le bureau pilote depuis ses LLM.

Piloté depuis leurs LLM, par MCP

L'asso n'a pas de nouvel outil à apprendre. Ses LLM se connectent à la passerelle d'envoi par MCP ; le jeton porte l'identité de l'asso, et chaque appel passe par le même goulot que tous les envois de la plateforme. Ce que le LLM demande, le serveur le vérifie : un refus revient lisible, avec la raison et le délai exact avant la prochaine fenêtre.

LE BUREAU Claude, ChatGPT les LLM déjà utilisés pour l'asso depuis leurs propres outils MCP jeton au nom de l'asso LA PASSERELLE ENVOI LE GOULOT kill switch, suspension quotas et débit consentement liste de suppression anti-ban WhatsApp garde-fous de contenu côté serveur, jamais dans le prompt admis CE QUI PART E-mail contact@admin.toulbarz.fr WhatsApp le numéro de l'asso Notification push sur le téléphone · à venir refus lisible : quota, consentement, délai exact avant la prochaine fenêtre la clé, échangée une fois, n'entre jamais dans le contexte du LLM
L'accès client de la passerelle (spec 1 de la plateforme, ADR-020 et ADR-021 d'envoi) : la clé de projet sert de credential OAuth une seule fois, le jeton porte le tenant, et les outils lisent cette identité. Aucun repli sur un projet par défaut : à la moindre ambiguïté, refus.

La sécurité ne repose pas sur le modèle de langage. Elle est dans le serveur, et elle s'applique avant lui : un modèle qui demanderait un envoi interdit se fait refuser, quoi qu'on lui ait écrit.

Les e-mails de l'asso partent de contact@admin.toulbarz.fr, avec leur propre plafond et leur propre domaine.

La limite, côté serveur

Mécanique. Rien ici ne dépend de ce qu'on écrit au modèle ; l'ensemble est vérifié de bout en bout à deux associations.

  • identité par jeton : l'appel porte l'association, pas le modèle
  • cloisonnement : aucune donnée d'une autre association n'est atteignable
  • quotas et débit, réglés en dessous des politiques d'usage des messageries et de WhatsApp
  • consentement et liste de suppression, vérifiés à chaque envoi
  • propriété du numéro WhatsApp, et cadence anti-blocage
  • coupe-circuit et révocation, immédiats

La consigne, côté modèle

Un extrait. Indicative : elle ne protège rien, elle évite de buter sur des portes déjà fermées.

Tu agis pour Toul'Barz, association de street workout de Toulouse. Tu envoies au nom de l'asso, jamais en ton nom propre.

DESTINATAIRES PERMIS : membres et adhérents de l'asso, personnes qui ont écrit d'elles-mêmes, référents et partenaires d'événements. RIEN d'autre.

INTERDITS, sans exception : démarchage à froid ; envoi de masse non sollicité ; contourner un désabonnement en changeant de canal. Le serveur refusera de toute façon.

AVANT D'ENVOYER : fais relire tout message à un humain de l'asso. En cas de refus du serveur, lis le code renvoyé et l'outil limits ; ne boucle jamais sur un refus.

Ce qui tourne tout seul

La plateforme n'attend pas qu'on pense à elle. Un planificateur dans l'API se réveille chaque minute, en heure de Paris, et déclenche les automatismes à heure fixe. Chaque envoi se règle en trois positions : éteint, préparé et validé à la main, ou automatique. Il naît éteint.

chaque minute, en heure de Paris 04:10chaque nuit, nettoyage des journaux techniquesentretien, sans réglage 07:30chaque matin, rappels au référentau référent, seul 08:00le lundi, programme de la semaine sur WhatsAppaux groupes abonnés 08:05le 1er du mois, débrief de l'activitéau bureau 08:15chaque matin, relances de renouvellementéteint, à valider ou auto 15 mintoute la journée, veille et mail d'incidentau bureau, si incident
Les horaires sont déclarés par les modules eux-mêmes.

Un nouvel adhérent arrive

Quelqu'un paie son adhésion sur HelloAsso. On la reçoit tout de suite. Plus personne n'a rien à saisir : la fiche complète du membre existe dans la minute dans le système de l'asso, il rejoint seul la liste de diffusion des adhérents, et le message de bienvenue, avec la prise en main, part si le bureau l'a activé.

DÉCLENCHEUR Adhésion payée sur HelloAsso, webhook signé AUSSITÔT Fiche du membre créée adhésion valable un an 7 fiches créées seules du 6 au 12 août 2026 PUIS Rejoint la liste Adhérents entretenue toute seule ENFIN Message de bienvenue une seule fois au choix du bureau : éteint, à valider, ou auto jamais deux fois, même si HelloAsso notifie deux fois
En production depuis le 13 juillet 2026.

Le message part à la première adhésion, jamais aux renouvellements. Et une seule fois : si HelloAsso annonce deux fois la même adhésion, la personne ne reçoit qu'un message.

Toul'Barz

Objet : Bienvenue chez Toul'Barz

Bienvenue dans l'asso

Bonjour Camille,

Ton adhésion à Toul'Barz est bien enregistrée. Bienvenue dans l'asso.

Les entraînements, les événements et les infos pratiques arrivent dans les groupes WhatsApp : si tu n'y es pas encore, réponds à ce message.

L'équipe Toul'Barz

Toul'Barz, message automatique.

Un exemple de mail, personnalisable à 100 %.

L'adhésion arrive à échéance

Chaque matin à 08h15, la plateforme regarde qui arrive au bout de son année et prépare la relance.

une seule relance par échéance : la plus urgente qui s'applique J-30 J-7 ÉCHÉANCE SOIXANTE JOURS APRÈS un mois avant,une alerte douce une semaine avant,dernière ligne droite le jour même,adhésion expirée les relances automatiquess'arrêtent, le bureau reprend la vérification tourne chaque matin l'envoi se règle : éteint, à valider, ou auto

Un paiement est refusé

La banque refuse un paiement d'adhésion. Plutôt que d'écrire dans le dos du bureau, la plateforme prépare le dossier et laisse décider qui relancer. Ce mode « sur validation » est celui en service ; le mode automatique existe, avec au plus une relance par jour et par personne.

DÉCLENCHEUR Paiement refusé signalé par HelloAsso AUSSITÔT Le cas entre dans la file montant, lien de régularisation VOUS Vous cochez qui relancer mode en service : sur validation RÉSULTAT Le message part le cas passe en relancé au plus une relance par jour et par personne le seul message signé par des personnes : « À vite aux barres, L'équipe Toul'Barz »
HelloAsso renotifie parfois le même refus : le cas reste marqué relancé au lieu de repartir.

Le référent est rappelé, seul

Chaque événement a un référent. La plateforme suit le calendrier à sa place et le relance aux quatre moments qui comptent, chaque matin à 07h30. Le rappel s'arrête dès que c'est fait ; un jalon relancé n'est jamais rejoué.

le référent relancé à 07:30 J-15 J-7 JOUR J J+5 J+10 le templateà remplir l'équipeà confirmer l'événementa lieu le compte-rendupas commencé le compte-renduen retard le rappel s'arrête dès que c'est fait ; un jalon relancé n'est jamais rejoué envoi impossible : inscrit sur la fiche, à faire à la main
Les jalons sont calculés depuis la fiche, jamais stockés (events/services/milestones.ts). Les événements importés de l'historique n'en ont aucun : on ne relance personne pour un événement de 2024.

L'événement se range seul

Créer un événement dans le tableau de bord suffit. Dès qu'il passe en préparation ou en prêt, la plateforme le publie dans le bon agenda, lui ouvre un dossier et réserve le matériel.

Événements

Le cœur de l'asso, de l'idée jusqu'au bilan.

Prochain programme WhatsApp (lundi)

Le cycle de vie d'un événement, repris du code du tableau de bord (StatusStepper.vue, ADR 0020) : cinq états, de l'idée au bilan. Cliquez un état pour y passer, ou annulez : les règles, les délais et le message de confirmation sont ceux du produit. Rien n'est enregistré ici. Copier prend le programme du lundi reproduit plus bas.
DÉCLENCHEUR L'événement passe en préparation ou en prêt annulé : retiré, matériel libéré visibilité changée : autre agenda terminé : reste dans l'agenda TROIS EFFETS, EN CHAÎNE Agenda public ou adhérents, selon la visibilité Dossier Drive au nom de l'événement, créé une fois Matériel chaque matériel réservé sur son agenda
Un événement créé une fois se retrouve dans le bon agenda, avec son dossier et son matériel réservé. Rien à recopier ailleurs, rien à tenir à jour à la main.

WhatsApp, sans y penser

Deux automatismes : le programme de la semaine part tout seul le lundi matin dans les groupes abonnés, et n'importe quel événement s'annonce en un clic depuis sa fiche, vers le canal choisi.

TOUS LES LUNDIS À 08H00 08:00, le lundi le planificateur se réveille Programme composé les événements de la semaine UNE ANNONCE, EN UN CLIC La fiche de l'événement un bouton, un clic Canal choisi Annonces, Séances d'essai, Adhérents UNE SEULE PASSERELLE Passerelle envoi quotas, cadence, consentement, journal TROIS SORTIES WhatsApp les groupes abonnés E-mail la liste concernée Notification push sur le téléphone · à venir semaine sans événement : rien ne part chaque tentative inscrite au journal, avec sa raison

Le même moteur donne, sur chaque fiche, un texte prêt à coller pour Instagram, derrière un bouton Copier. L'étape d'après est écrite : que la story parte toute seule, par la même passerelle, avec les mêmes garde-fous.

Programme de la semaine (du 20/07/2026 au 26/07/2026)

- mercredi 22/07/2026, 18h30 : Entrainement barres - Parc Compans (adherents)
- samedi 25/07/2026, 14h30 : Show Capitole - Place du Capitole
Le programme tel que le compose events/services/texts.ts, sans accents pour WhatsApp. Les deux événements sont les exemples du livret de processus de l'asso.

Ouvrir un accès à quelqu'un

Personne ne crée de compte tout seul, et personne ne choisit un mot de passe à la place d'un autre. Le bureau invite ; la personne choisit son mot de passe elle-même, et voit ce que son rôle lui permet de voir.

VOUS Vous créez le compte adresse, nom, rôle AUSSITÔT Un lien à usage unique valable une heure LA PERSONNE Elle choisit son mot de passe RÉSULTAT Elle voit ce que son rôle permet Retrait d'un accès déconnectée dans la seconde, sur tous ses appareils ; réversible Trois garde-fous ni se retirer admin, ni se désactiver, ni retirer le dernier admin

Le seuil, et la matière

Avant d'écrire une ligne, j'ai passé du temps dans leur univers : leurs photos, leurs vidéos, ce qu'ils publient, ce qu'ils ne publient pas. Le street workout, vu de près, c'est de la performance et du show, mais c'est surtout une sensation, celle d'être suspendu, en défiant la gravité. C'est ça que je voulais qu'on ressente en arrivant.

D'où une page d'accueil qui ne vend rien et n'explique rien : un athlète en drapeau sous l'oculus d'une coupole. Pas de menu, pas d'argumentaire. On clique n'importe où et on entre. Le noir et blanc n'est pas une coquetterie : c'est leur regard, quelque chose de classe qui n'a rien à prouver. Toute couleur ajoutée depuis demande une décision écrite, pour que personne ne l'abîme par accident.

La vitrine de la plateforme : un athlète en drapeau sur une barre, sous l'oculus lumineux d'une coupole, en noir et blanc ; en bas à gauche, le monogramme, le mot Entrer et Mentions légales.
La même vitrine sur un téléphone : la scène recadrée sur l'athlète et l'oculus, la pile monogramme, Entrer, Mentions légales en bas à gauche.
Sur téléphone, la scène se recadre ; la pile reste au même endroit.
La même scène, en profondeur. Une seule image et une carte de profondeur de 22 Ko : un shader WebGL2 déplace chaque pixel selon sa distance, sans découper de calques. L'athlète reste immobile, la structure du premier plan tourne autour. Plein écran, avec les réglages.
Un athlète en équilibre sur une barre, bras tendus, dans un cosmos filaire monochrome : des méridiens tracés au trait, une galaxie lumineuse à droite, un grain argentique dense.
Le seuil ouvert : la scène s'est assombrie et rapprochée, et un formulaire de connexion naît dans la lumière de l'oculus, avec le monogramme, les champs E-mail et Mot de passe, le bouton Se connecter et un lien Retour.
Le seuil. Une connexion réussie fait plonger la scène à travers l'oculus (échelle 8 en 1,75 s), et le tableau de bord se condense depuis la matière argentée qu'il y a derrière, avec trois portes.

Fraunces pour les titres, Archivo pour l'interface, JetBrains Mono pour ce qui se copie ; toutes trois auto-hébergées. Aucun radius sur les primitives, aucune ombre : la profondeur vient d'aplats superposés, de halos, et d'un grain argentique qui est le seul bruit autorisé.

  • VisiteurLe visage public de l'asso.
  • MembreL'espace des adhérents.
  • AdminLe poste de pilotage.

Ce que la plateforme fait, par usage

Quatre familles, dans l'ordre où le bureau les rencontre.

Les adhésions
  • Création des membres à l'arrivée du paiement HelloAsso, sans saisie
  • Liste Adhérents entretenue toute seule
  • Message de bienvenue, une seule fois, jamais aux renouvellements
  • Relances de renouvellement à J-30, J-7 et le jour même
  • Paiements refusés : le dossier est préparé, le bureau choisit qui relancer
Les événements
  • Cinq états, du brouillon au terminé, sur un même fil
  • Rappels au référent, quatre jalons autour du jour J
  • Agenda et dossier ouverts tout seuls quand l'événement passe en préparation
  • Réservation du matériel sur son propre agenda
La communication
  • Programme de la semaine le lundi à 08h00, composé depuis les événements
  • Annonce en un clic depuis la fiche, vers le canal choisi
  • Campagnes e-mail, dix gabarits, compte d'envoi dédié
  • Texte Instagram prêt à coller, story automatique à venir
  • Notification push sur le téléphone, à venir
Le pilotage
  • MCP : tout ce qui précède se demande depuis les LLM que le bureau utilise déjà
  • Accès et rôles : invitation, mot de passe choisi par la personne, désactivation réversible
  • Veille toutes les quinze minutes, mail d'incident, débrief le premier du mois
  • Journal : chaque envoi, réussi ou refusé, avec sa raison

Rien ne part par surprise. Un échec silencieux est un bug (ADR 0022) : tout ce qui ne part pas le dit, avec la raison, et se rejoue.

Et la plateforme se surveille elle-même : toutes les quinze minutes elle vérifie qu'elle va bien et écrit un mail en cas d'incident ; le premier du mois elle envoie un résumé de son activité ; chaque nuit elle nettoie ses journaux techniques, sans toucher à l'historique de l'asso (ADR 0025).

Le résultat

« Tu penses que ça peut nous aider ? » est devenu : un socle en production le 3 juin 2026, des modules en service le 13 juillet ; le 20 juillet, 216 membres et 76 événements sortis des tableurs ; en août, sept adhésions traitées sans que personne n'y touche ; et depuis le 20 août, une passerelle qui reconnaît l'asso quand son LLM frappe à la porte.