Greg Gargiulo
M’écrire
Retour

Nexus.

Année : 2026

Un assistant IA pour les PME, qui repère les affaires à relancer et crée des automatisations à la demande

L’accueil du dirigeant : ce que Nexus a repéré seul, classé par enjeu, avec une action pour chaque ligne.

Fiche

Rôle
Cofondateur technique
Équipe
Équipe de cofondateurs, chacun responsable de ses chantiers
Période
Depuis mars 2026
Statut
En développement, démonstration prévue en février 2027
Code
Privé, démonstration en entretien
Captures
Client de démonstration fictif. Rapport et tableau de bord : captures fournies par l’équipe, données anonymisées.

En bref

Nexus est un assistant IA pour les PME : branché sur l’ensemble des outils de l’entreprise, il signale de lui-même ce qui demande une action. Cofondateur technique, j’y ai pris en charge la détection et la notation des alertes, les automatisations demandées en une phrase dans le chat, l’audit du CRM et les tableaux de bord.

Point de départ

Dans une PME, les données commerciales sont réparties entre le CRM, la messagerie, l’agenda et la facturation. Une affaire qui dort passe inaperçue, une facture impayée attend, et personne n’a le temps d’écrire les automatisations qui éviteraient ces oublis.

Contraintes

  • Aucun chiffre inventé par le modèle : chaque montant vient des données.
  • Le code détecte, classe et plafonne ; le modèle de langage ne fait qu’expliquer.
  • Pas d’apprentissage automatique dans la notation avant d’avoir 500 à 1 000 décisions réelles pour la calibrer.
  • Uniquement des modèles européens (Mistral), et une installation possible chez le client.
  • Rien n’est écrit dans les outils du client sans sa confirmation.

Livrables

  • La détection proactive : une tâche de fond qui analyse les données connectées et prépare une action pour chaque signal.
  • La notation des alertes et l’étage qui décide de ce qui est montré, et de ce qui ne l’est pas.
  • Le moteur d’automatisation : planification, déclenchement par webhook signé, exécution reprenable et historique de chaque lancement.
  • La création d’automatisations en langage naturel, depuis le chat.
  • Le suivi des automatisations elles-mêmes : celle qui échoue ou ne se lance plus devient une alerte.
  • L’audit du CRM, ses rapports PDF, et le banc qui note ces rapports.
  • Les tableaux de bord et leurs widgets : indicateurs, graphiques et tableaux.

Architecture

Un backend Python (FastAPI) orchestre des agents LangGraph qui s’appuient sur Mistral. Les données des clients sont dans Supabase ; ChromaDB sert à la recherche sémantique, Neo4j et Graphiti à la mémoire des relations dans le temps. Le front est en React avec TanStack Start, et chaque appel au modèle est tracé dans Langfuse.

Mes chantiers vivent dans ce backend, en environ 9 000 lignes de Python : le module de détection (règles, notation, délivrance, audit), le moteur d’automatisation (planificateur, webhooks, exécuteur) et le nœud LangGraph qui cadre une automatisation en conversation.

Stack technique

Langages
  • Python
  • TypeScript
Interface
  • React
  • TanStack Start
  • TanStack Query
  • Tailwind CSS
  • Radix UI
  • ECharts
Serveur
  • FastAPI
  • LangGraph
  • LangChain
Bases de données
  • Supabase (PostgreSQL)
  • ChromaDB
  • Neo4j
  • Graphiti
  • DuckDB
IA
  • Mistral
  • Langfuse
Connecteurs
  • Pipedrive
  • Gmail
  • Google Agenda
  • Google Drive
  • Google Docs
  • Google Sheets
  • Notion
  • Slack
  • Airtable
  • Stripe
Infrastructure
  • Docker
  • Sentry
Tests
  • pytest
  • Playwright

Décisions

  1. Nexus prépare la journée du dirigeant

    Une tâche de fond parcourt les outils connectés des entreprises qui l’ont activée, sous un plafond d’analyses par jour. Six règles y guettent ce qui touche au chiffre d’affaires : une affaire sans mise à jour depuis 21 jours, une date de clôture dépassée, une échéance à moins de 14 jours sans action prévue, un paiement échoué, un abonnement impayé, une facture ouverte.

    Les règles ne citent que des identifiants et des libellés tronqués, jamais de données personnelles. Un montant n’est retenu que s’il est en euros : aucun taux de change n’est inventé.

  2. Un score calculé en code, puis un filtre contre le bruit

    Chaque alerte reçoit un score qui pondère l’urgence (60 %) et la valeur (40 %), plafonnée à 50 000 € : au-delà, c’est l’urgence qui départage. Ce calcul est fait en code ; le modèle de langage explique, il ne note pas. Les signaux liés au chiffre d’affaires occupent une bande de score à part, toujours au-dessus des constats d’hygiène du CRM : une affaire passe avant un champ mal rempli.

    Un dernier étage décide de ce qui est montré : trois alertes par jour au plus pour chaque entreprise ; une alerte écartée par l’utilisateur ne revient jamais d’elle-même ; une alerte retirée parce que la situation avait disparu attend 24 heures avant de revenir, pour ne pas clignoter. Chaque alerte non montrée est enregistrée avec sa raison, pour qu’on puisse mesurer ce que ce filtre écarte.

  3. Une alerte devient une relance prête à envoyer

    Nexus rédige l’e-mail de relance, avec signature et pièces jointes. L’utilisateur le relit, le modifie s’il le souhaite, et l’envoie lui-même.

    Une affaire en fin de contrat : la relance est rédigée, modifiable, et ne part qu’après relecture.
  4. Une automatisation se demande en une phrase

    L’utilisateur décrit ce qu’il veut dans le chat. À chaque tour, un modèle à sortie structurée choisit entre quatre actions : poser une question avec des réponses à cliquer, présenter le brouillon complet, créer l’automatisation, ou abandonner.

    Le modèle ne voit que les connexions réelles et les outils disponibles de l’entreprise : il ne peut donc pas proposer une source qui n’est pas branchée.

    « Chaque vendredi à 16 h » : la demande est reformulée en six étapes avant d’être créée.
  5. Un moteur d’automatisation maison à la place d’Activepieces

    Nexus exécutait d’abord ses automatisations dans Activepieces, un outil d’automatisation tiers, caché derrière l’agent. Le 18 juin 2026, nous l’avons remplacé par un moteur Python natif, repris d’Onyx, mon agent IA personnel : plus de connexions à synchroniser entre deux systèmes, et un service de moins à exploiter.

    Une étape d’approbation humaine met l’exécution en pause ; à la reprise, les étapes déjà faites sont sautées, et aucune action n’est exécutée deux fois. Le planificateur tourne dans le backend et réserve chaque exécution, pour qu’elle ne parte jamais en double. Les webhooks sont signés (HMAC-SHA256) et refusés si leur horodatage s’écarte de plus de cinq minutes, ce qui empêche de rejouer un ancien appel ; tout refus reçoit la même réponse, qui ne révèle pas si l’automatisation existe. Une automatisation qui échoue trois fois de suite, ou dont le lancement prévu a plus d’une heure de retard, devient une alerte.

  6. Un audit du CRM noté par des règles

    Quinze règles écrites en code examinent le CRM : complétude, doublons (repérés par e-mail, téléphone, ou nom et organisation), hygiène, cohérence des dates, conventions de saisie. Un constat n’est retenu qu’à partir de trois occurrences : un ou deux oublis ne font pas une habitude. La note vient de ces règles, et chaque rapport PDF est figé à sa date.

    Un rapport d’audit : la note, l’échelle, et ce qui fausse la prévision.
  7. Un banc qui note les rapports eux-mêmes

    Le rapport est rédigé par le modèle à partir des constats. Pour le contrôler, j’ai écrit un banc de notation déterministe : 85 points vérifiables (exactitude des montants et des comptages, cohérence, structure, honnêteté, langage), ramenés à une note sur 100. Chacune de ses règles est née d’une erreur que le modèle a réellement commise.

    Le premier audit d’un vrai CRM de PME (1 350 affaires dont 907 ouvertes) a obtenu 39 sur 100. Le banc y a révélé trois défauts invisibles sur le jeu de test de 19 affaires, dont un montant d’exemple écrit en dur dans le prompt et recopié tel quel dans le rapport. Ces défauts corrigés, le même audit a obtenu 100 sur 100.

  8. Des tableaux de bord demandés dans le chat

    L’utilisateur demande un indicateur, un graphique ou un tableau. L’agent interroge la source connectée en SQL, en un nombre d’étapes plafonné, puis propose un widget, dont la structure est validée avant qu’il rejoigne le tableau de bord. À chaque accès à un widget, le serveur vérifie d’abord que son tableau de bord appartient bien à l’entreprise de l’utilisateur.

    Un tableau de bord construit depuis le chat, sur les données du CRM.

Résultats

100/100
note du premier audit d’un vrai CRM sur le banc de notation, contre 39 au départ
1 350
affaires dans le CRM réel utilisé pour les essais
354
commits à mon nom, sur les 614 du dépôt créé en mai 2026
Fév. 2027
première démonstration prévue

Pour mesurer leur effet, les alertes sont suivies jusqu’à l’action qu’elles déclenchent, et la valeur de celles qui sont acceptées est comptée en euros.