Guide · 15 min de lecture

Construis ton agent de prospection en 1h

Le pas-à-pas pour monter un agent qui lit ta liste de leads, en analyse un pour de vrai et te pose son verdict dans Slack. Trois parties minutées, les compétences à glisser dans son dossier, et à chaque étape l'erreur qu'on a payée dessus en six mois de production.

Avec

Achille Morin-Lemoine

Mis à jour le

Six mois qu’un agent tourne sur notre prospection. Il s’appelle Melvin, il a analysé 937 leads un par un, et il ne nous a jamais envoyé un message sans qu’on lui réponde un mot.

Ce guide monte le tien. Pas le nôtre en entier, celui-là a demandé des mois. La version qui tourne au bout d’une heure, et qui fait déjà le travail qui compte.

Tu préfères déléguer le montage à ton IA ?

Tout ce guide existe aussi en un bloc à coller dans Claude ou ChatGPT. Tu lui donnes, tu lui décris ton marché, elle applique nos décisions et nos chiffres à ton système à toi.

Aller au bloc à coller →

Avant de lancer quoi que ce soit

Ce que tu auras dans une heure, et ce que tu n’auras pas

C’est la première chose à poser, parce que la plupart des guides de ce genre promettent un système complet et laissent le lecteur en plan à la quarantième minute.

Au bout de l’heure

Un agent qui tourne chez toi. Il lit ta liste de leads, en analyse un pour de vrai (le profil, l’entreprise, le site, l’actualité), et te pose son verdict motivé dans Slack. Tu réponds un mot.

Pas encore

L’ingestion automatique des signaux, le filtre déterministe en amont, l’enrichissement payant, les tâches planifiées, la boucle de calibration. La partie 5 dit dans quel ordre les brancher, et lequel on a eu tort de garder pour la fin.

Ce qu’il te faut ouvrir

Quatre choses, et trois sont gratuites.

QuoiPourquoiCoût
DockerL’agent tourne dans un conteneur, chez toigratuit
Une clé de modèleLe jugement. Passe par une passerelle multi-modèles plutôt qu’un fournisseur en directquelques euros suffisent pour la première heure
Un espace SlackL’interface. C’est là que le verdict arrive et que tu répondsgratuit
Une liste de leadsUn fichier. Nom, entreprise, et surtout la taille de l’entreprisela tienne

Hermès est open source, sous licence MIT. Tu le fais tourner où tu veux, et pour cette heure-ci ce sera sur ta machine.

Une précision honnête, parce qu’elle change ce que tu obtiens. Un agent sur ton portable s’arrête quand tu fermes le portable. Pour la première heure c’est sans importance : tu veux le voir marcher. Pour un agent qui tourne vraiment, il lui faut une machine qui ne dort pas. Le nôtre tourne sur Railway, à partir de la même image, avec un volume monté sur /opt/data qui garde tout son état. La partie 5 dit quand faire ce déménagement, et il ne change pas une ligne de tes compétences.

La décision à comprendre avant la première commande

Ce qu’on a tranché

Le traitement en volume s’écrit en code déterministe. Le jugement par unité va au modèle. Les deux moitiés ne se mélangent jamais.

C’est la décision la plus structurante de tout le système, et elle explique la forme de ce guide. Ta liste de leads, tu la construis et tu la filtres avec des règles bêtes, gratuites, qui tournent sur des milliers de lignes. L’agent, lui, ne travaille qu’un lead à la fois, parce que chaque lead qu’il touche coûte quelques dizaines de centimes.

L’image qu’on utilise entre nous : l’infrastructure pose les rails et amène le train à quai, l’agent est le contrôleur qui conduit le train, et il ne touche pas aux rails.

Partie 1. L’agent tourne chez toi (15 min)

Étape 1. Installer

Deux commandes. La première crée le dossier où vivra tout l’état de ton agent, la seconde lance l’assistant de configuration.

mkdir -p ~/.hermes

docker run -it --rm \
  -v ~/.hermes:/opt/data \
  nousresearch/hermes-agent setup

L’assistant te demande tes clés d’API et les écrit dans ~/.hermes/.env.

Il te proposera aussi de configurer un canal de discussion. Tu peux passer cette question, on la traite en partie 3 avec Slack : les deux jetons se rajoutent dans le même .env, à la main, et c’est plus simple que de les chercher en pleine installation.

Un détail qui fait perdre une demi-heure : si tu travailles sur un serveur, connecte-toi en SSH plutôt que par la console web de ton hébergeur. Les consoles dans le navigateur abîment les caractères spéciaux au collage, et une clé d’API tronquée ne dit pas son nom.

Étape 2. Comprendre où vivent les choses

Une seule idée à retenir, et tout le reste du guide en découle : tout ce qui est modifiable vit sous ~/.hermes. La configuration, le .env, les profils, les compétences, les mémoires, les sessions, les journaux.

Concrètement : tu n’éditeras jamais de code. Tu déposeras des fichiers dans un dossier.

Pour ouvrir une session et vérifier que l’agent te répond :

docker run -it --rm \
  -v ~/.hermes:/opt/data \
  nousresearch/hermes-agent

Étape 3. Choisir le modèle

Passe par une passerelle multi-modèles plutôt que par un fournisseur en direct. Deux raisons pratiques : tu changes de modèle sans toucher à ta configuration, et tu peux comparer un coût par lead entre deux modèles sur la même tâche. Chez nous c’est Sonnet, avec un effort de raisonnement bas et un plafond de jetons en sortie.

L’erreur qu’on a payée ici

On a démarré à 560 000 jetons par lead, soit une dizaine de dollars par jour pour une vingtaine de leads. L’agent rechargeait sa procédure entière à chaque tour de boucle. Sur un agent multi-tours, chaque mot de procédure est repayé à chaque tour. Un outil de plus dans la boucle coûte moins cher qu’une procédure de mille mots de plus. Après correction, on est à 0,20 ou 0,40 dollar par lead.


Partie 2. L’agent sait juger un lead (20 min)

Étape 1. Déposer les compétences

Une compétence Hermès est un dossier contenant un fichier SKILL.md, rangé sous ~/.hermes/skills/. Le format suit un standard ouvert, et une compétence devient automatiquement une commande : un dossier analyser-un-lead te donne /analyser-un-lead.

L’arborescence :

~/.hermes/skills/
└── prospection/
    └── analyser-un-lead/
        ├── SKILL.md          ← obligatoire
        └── references/       ← optionnel

Et la tête d’un SKILL.md. Seuls name et description sont obligatoires :

---
name: analyser-un-lead
description: Juge un lead et rend un verdict motivé
---

# Analyser un lead

## Quand l'utiliser
Quand une fiche de lead arrive et qu'il faut décider s'il mérite un message.

## Procédure
1. Lis la fiche, repère ce qui manque.
2. Va chercher le site de l'entreprise et son actualité.
3. Rends un verdict : oui, non, et la raison en une phrase.

## Vérification
Le verdict cite au moins un fait qui ne figurait pas dans la fiche.

Les trois compétences, prêtes à glisser

Analyser un lead, écrire le message, poster le verdict. Plus un modèle de .env et quatre lignes de leads pour tester, dont une qui doit se faire écarter. Décompresse, puis cp -r prospection ~/.hermes/skills/.

Télécharger le paquet →

Ce ne sont pas les compétences de notre agent en production. Ce sont des versions écrites pour toi, dérivées de six mois d’exploitation, sans notre logique de ciblage ni nos prompts réels. Elles marchent telles quelles et elles sont faites pour être réécrites.

Étape 2. Donner la liste de leads

Un fichier, quelques colonnes. La personne, son intitulé, l’entreprise, et la taille de l’entreprise.

Dépose-le dans ~/.hermes/, avec le reste. C’est le seul dossier que le conteneur voit : un fichier laissé sur ton bureau est invisible pour l’agent, et c’est le blocage le plus bête de cette heure.

cp mes-leads.csv ~/.hermes/

Cette dernière colonne n’a l’air de rien. C’est la plus importante du fichier.

L’erreur qu’on a payée ici, et c’est la plus chère

Quand la taille de l’entreprise est connue, 34 % de nos analyses ressortent en verdict positif. Quand elle manque, 5 %. Sept fois moins. Et elle manquait sur 52 % de nos analyses : on a donc payé un jugement fin sur la moitié du volume en sachant qu’il tomberait à plat. Fais de la taille une condition d’entrée dans l’analyse, pas une donnée d’agrément. Si tu ne l’as pas, va la chercher avant, ou mets le lead en file d’attente.

Étape 3. Lancer la première analyse

Ouvre une session, appelle ta compétence sur un lead de ta liste, et lis ce qui sort.

C’est le moment du guide où tu vois ton agent travailler pour la première fois. Il ne se contente pas de reformuler ta fiche : il va chercher ce qui n’y est pas, et il te dit pourquoi il tranche.

Si le verdict te déplaît, la tentation est de durcir les instructions. Attention à ce qui suit.

L’erreur qu’on a payée ici

Trois durcissements successifs des consignes ont fini par paralyser l’agent : trois cycles de réponse vide, puis plus rien. Il tournait avec un effort de raisonnement au minimum, et une règle du type « ta sortie doit être rigoureusement vide avant l’appel d’outil » a été comprise comme « ne fais rien ». Préfère une règle permissive avec une friction résiduelle à une règle parfaite qui bloque tout. Et teste chaque durcissement sur un cas réel avant de l’empiler sur le précédent : une instruction est du code, elle a seulement l’air d’une phrase.

Tu veux déployer ces agents chez toi ?

Prendre rendez-vous →

Partie 3. Le verdict arrive dans Slack (15 min)

Étape 1. Créer l’application Slack

Hermès génère le manifeste à ta place. Tu n’as pas de commande hermes sur ta machine, seulement l’image Docker : toute sous-commande se passe donc à l’image, qui la transmet.

docker run --rm \
  -v ~/.hermes:/opt/data \
  nousresearch/hermes-agent slack manifest --agent-view --write

Tu obtiens un manifeste à coller dans Slack au moment de créer l’application, puis tu l’installes dans ton espace.

Étape 2. Les deux jetons

C’est l’étape où les gens se trompent, parce que Slack en demande deux et ne dit pas clairement lequel sert à quoi.

JetonOù le générerÀ quoi il sert
Jeton d’application, préfixe xapp-Réglages, Socket Mode, avec la portée connections:writeAuthentifie la connexion WebSocket
Jeton de bot, préfixe xoxb-Réglages, Install AppLit les messages et poste les réponses

Socket Mode passe par un WebSocket au lieu d’un point d’entrée HTTP public. Ça veut dire que ton agent fonctionne derrière un pare-feu, sur ton portable ou sur un serveur privé, sans ouvrir le moindre port.

Les deux jetons vont dans ~/.hermes/.env, avant de démarrer la passerelle. Elle les lit au boot et ne les redemande pas.

cat >> ~/.hermes/.env <<'FIN'
SLACK_APP_TOKEN=xapp-ton-jeton
SLACK_BOT_TOKEN=xoxb-ton-jeton
FIN

Note le >> et pas > : tu complètes le fichier que l’assistant a écrit, tu ne le remplaces pas. Une commande qui remplace un fichier de secrets au lieu de le compléter nous a coûté une nuit de production.

Étape 3. Démarrer la passerelle

docker run -d \
  --name hermes \
  --restart unless-stopped \
  -v ~/.hermes:/opt/data \
  -p 8642:8642 \
  nousresearch/hermes-agent gateway run

Invite le bot dans un canal, écris-lui, et prouve un aller-retour réel avant d’aller plus loin. Tant que ça ne répond pas, rien de ce qui suit ne sert.

Étape 4. Valider en un mot

Ton agent poste maintenant son verdict dans le canal. Tu réponds envoie, ou tu réécris la phrase qui ne va pas.

Étape 5. Vérifier que ça marche vraiment

Trois contrôles, dans cet ordre. Si l’un échoue, le suivant ne veut rien dire.

Ce que tu vérifiesCommentSi ça échoue
La passerelle tournedocker logs hermes ne boucle pas sur une erreurUn jeton est absent ou tronqué dans le .env
Le bot répondTu l’écris dans le canal, il répondIl n’est pas invité dans le canal, ou Socket Mode est resté désactivé
La compétence se déclencheTu demandes d’analyser une ligne de ton fichier, le verdict cite un fait absent du fichierLa compétence n’est pas dans ~/.hermes/skills/, ou sa description ne décrit pas la situation

Le troisième est le seul qui prouve quelque chose. Un agent qui reformule ta fiche sans rien y ajouter n’a pas cherché : il a répondu.

Ce qu’on a tranché, et jamais assoupli

L’agent écrit et poste un verdict. Il n’envoie jamais un message de lui-même. Le geste coûte deux secondes et il te met devant chaque lead : c’est là que tu vois un ciblage qui dérive ou une formulation qui revient trop souvent. Le jour où tu ne lis plus, tu perds le seul endroit du système où quelqu’un regarde encore la matière.

Le jour où tu brancheras l’envoi réel, pose trois garde-fous dès le premier message : la fenêtre horaire locale du destinataire, un plafond quotidien par compte, et une protection anti double-envoi. Un message préparé hors fenêtre part en file et se dépile tout seul.


Partie 4. Le raccourci : le prompt (5 min)

Le pas-à-pas ci-dessus, tu le déroules à la main. Le bloc ci-dessous le fait faire par ton IA, à côté de toi.

Il contient le montage complet (les commandes, le format d’une compétence, le branchement du canal, les contrôles de fin) et les règles mesurées qui vont avec. Tu le colles dans Claude ou ChatGPT, et elle commence par te demander ce que tu vises et ce que tu as déjà, puis elle déroule une étape à la fois en attendant que chacune marche avant de passer à la suivante.

Elle te contredira aussi quand ta demande entre en conflit avec une règle mesurée, en citant le chiffre avant d’obéir. C’est délibéré.

Contexte opérationnel, agent de prospection

288 lignes · 2 314 mots · texte brut

Télécharger
# CONSTRUIRE UN AGENT DE PROSPECTION : CONTEXTE ET MARCHE À SUIVRE

Tu vas m'accompagner pas à pas pour monter un agent de prospection qui tourne
chez moi. Ce document contient le montage complet et les règles issues de six
mois d'exploitation d'un système réel, avec les chiffres mesurés qui les
fondent.

## COMMENT TU TRAVAILLES AVEC MOI

Tu ne me rends pas un plan d'un bloc. Tu m'accompagnes :

1. Demande-moi d'abord ce que je vise, ce que j'ai déjà (une liste de leads ?
   un canal de discussion ? une clé de modèle ?) et sur quel marché je vends.
2. Déroule la section B étape par étape. Une étape à la fois. À chaque étape,
   donne-moi la commande ou le fichier exact, adapté à mon cas, puis
   **attends que je te dise que ça a marché** avant de passer à la suivante.
3. Quand une étape échoue, diagnostique avant de proposer autre chose. Les
   pannes fréquentes sont listées à la fin de chaque étape.
4. Les sections D à F sont des contraintes, pas des suggestions. Si une de mes
   demandes en contredit une, dis-le moi et cite le chiffre qui la fonde avant
   de faire ce que je demande.

Système de référence : 937 leads analysés un par un entre mai et août 2026, pour
179 verdicts positifs, soit 19,1 %. Tous les taux cités sont des taux de verdict
positif mesurés sur cette population.

## A. LE PÉRIMÈTRE : CE QU'ON MONTE, ET CE QU'ON NE MONTE PAS

CE QU'ON MONTE EN UNE HEURE.
Un agent qui tourne chez moi, lit une liste de leads dans un fichier, en analyse
un pour de vrai (profil, entreprise, site, actualité), et pose son verdict
motivé dans un canal de discussion où je réponds un mot.

CE QU'ON NE MONTE PAS AUJOURD'HUI.
L'ingestion automatique des signaux, le filtre déterministe en amont,
l'enrichissement payant, les tâches planifiées, la boucle de calibration. C'est
la section G, et elle vient après.

Ne me propose pas de construire tout le système d'un coup. Un agent qui juge un
lead et me le pose sous les yeux vaut mieux qu'un pipeline complet qui ne tourne
pas.

## B. LE MONTAGE, ÉTAPE PAR ÉTAPE

B1. INSTALLER LE RUNTIME.
L'agent tourne sur Hermès (NousResearch), open source, licence MIT, dans un
conteneur Docker. Deux commandes :

    mkdir -p ~/.hermes
    docker run -it --rm -v ~/.hermes:/opt/data nousresearch/hermes-agent setup

L'assistant interactif demande les clés d'API et les écrit dans ~/.hermes/.env.
Il propose aussi de configurer un canal de discussion : on peut passer, on le
traite en B5.
Panne fréquente : sur un serveur, se connecter en SSH et pas par la console web
de l'hébergeur, qui abîme les caractères spéciaux au collage. Une clé tronquée
ne dit pas son nom.

B2. COMPRENDRE OÙ VIT L'ÉTAT.
Tout ce qui est modifiable vit sous ~/.hermes : config, .env, profils, skills,
mémoires, sessions, journaux. C'est le seul dossier que le conteneur voit.
Conséquence pratique : on n'édite jamais de code, on dépose des fichiers.
Pour ouvrir une session et vérifier que l'agent répond :

    docker run -it --rm -v ~/.hermes:/opt/data nousresearch/hermes-agent

B3. CHOISIR LE MODÈLE.
Passer par une passerelle multi-modèles plutôt qu'un fournisseur en direct :
on change de modèle sans toucher à la configuration, et on peut comparer un coût
par lead entre deux modèles sur la même tâche.
Règle de coût, voir F1 : plafonner les jetons en sortie dès maintenant.

B4. ÉCRIRE LES COMPÉTENCES.
Voir la section C pour le format, qui est l'endroit où presque tout le monde se
trompe. Trois compétences suffisent pour l'heure 1 :
  - analyser-un-lead : juge et rend un verdict motivé
  - ecrire-le-message : rédige le premier message à partir du verdict
  - poster-le-verdict : met en forme la carte et attend la réponse humaine

B5. BRANCHER LE CANAL DE DISCUSSION.
Sur Slack, Hermès génère le manifeste. Il n'y a pas de commande `hermes` sur la
machine, seulement l'image : toute sous-commande se passe à l'image.

    docker run --rm -v ~/.hermes:/opt/data \
      nousresearch/hermes-agent slack manifest --agent-view --write

Puis, dans Slack : créer l'application avec ce manifeste, activer Socket Mode et
générer un jeton d'application (préfixe xapp-, portée connections:write),
installer l'application pour obtenir le jeton de bot (préfixe xoxb-).
Socket Mode passe par un WebSocket, donc ça marche derrière un pare-feu sans
ouvrir de port.
Les deux jetons vont dans ~/.hermes/.env AVANT de démarrer la passerelle, en
mode ajout et pas en écrasement :

    cat >> ~/.hermes/.env <<'FIN'
    SLACK_APP_TOKEN=xapp-...
    SLACK_BOT_TOKEN=xoxb-...
    FIN

Panne fréquente : écraser le .env au lieu de le compléter. Une commande qui
remplace un fichier de secrets sans le dire nous a coûté une nuit de production.

B6. DÉMARRER LA PASSERELLE.

    docker run -d --name hermes --restart unless-stopped \
      -v ~/.hermes:/opt/data -p 8642:8642 \
      nousresearch/hermes-agent gateway run

Puis inviter le bot dans un canal et prouver un aller-retour réel.

B7. DONNER LA LISTE DE LEADS.
Un fichier avec, au minimum : la personne, son intitulé, l'entreprise, et LA
TAILLE DE L'ENTREPRISE (voir E1, c'est la donnée qui décide de tout).
Le déposer dans ~/.hermes/, seul dossier visible du conteneur. Un fichier laissé
ailleurs est invisible pour l'agent, et c'est le blocage le plus fréquent.

B8. VÉRIFIER QUE ÇA MARCHE VRAIMENT.
Trois contrôles dans l'ordre, chacun inutile si le précédent échoue :
  1. La passerelle tourne : `docker logs hermes` ne boucle pas sur une erreur.
     Si elle échoue, un jeton est absent ou tronqué.
  2. Le bot répond dans le canal. Sinon il n'y est pas invité, ou Socket Mode
     est resté désactivé.
  3. La compétence se déclenche et LE VERDICT CITE UN FAIT ABSENT DU FICHIER.
     C'est le seul contrôle qui prouve quelque chose : un agent qui reformule la
     fiche n'a pas cherché, il a répondu.

## C. LE FORMAT D'UNE COMPÉTENCE, ET LE PIÈGE

Une compétence est UN DOSSIER contenant un fichier SKILL.md, rangé sous
~/.hermes/skills/<catégorie>/<nom>/. Elle devient automatiquement une commande :
un dossier `analyser-un-lead` donne `/analyser-un-lead`.

Le frontmatter n'a que DEUX champs obligatoires, `name` et `description`. Les six
compétences du système de référence n'en portent aucun autre : ni version, ni
catégorie, ni métadonnées.

LE PIÈGE, ET IL EST COÛTEUX. La description n'est pas un résumé, c'est le
ROUTAGE. C'est tout ce que l'agent voit pour décider s'il charge la compétence :
il liste les noms et les descriptions, puis il ouvre celle qui correspond. Une
description d'une ligne produit un agent qui n'appelle jamais la bonne
compétence au bon moment, et aucun test ne le montre.

Une bonne description fait 400 à 900 caractères et dit, dans cet ordre : ce que
la compétence fait, ce qu'elle exige en entrée, ce qu'elle refuse de faire, puis
une phrase « Use when » qui décrit la situation de déclenchement.

Squelette :

    ---
    name: analyser-un-lead
    description: [400 à 900 caractères, voir ci-dessus]
    ---

    # Titre

    ## Quand l'utiliser
    ## Procédure
    (étapes numérotées, chacune disant ce qu'elle coûte)
    ## Vérification
    (comment savoir que la sortie est bonne)

Quand tu m'aides à écrire une compétence, écris la description EN DERNIER, une
fois le corps connu, et vérifie qu'elle fait bien 400 caractères au moins.

## D. LES QUATRE DÉCISIONS D'ARCHITECTURE

D1. SÉPARER LE VOLUME DU JUGEMENT.
Deux moitiés qui ne se mélangent jamais. Une infrastructure déterministe qui
ingère, enrichit et disqualifie en masse. Un agent qui juge, cherche et rédige,
un lead à la fois. Le traitement en volume s'écrit en code ; le jugement par
unité va au modèle. Un modèle local sans coût par appel est acceptable dans une
boucle ; une API facturée par ligne ne l'est jamais.
Point de jonction unique entre les deux moitiés : la base de données.

D2. DISQUALIFIER LARGE AU LIEU DE QUALIFIER SERRÉ.
Le filtre amont ne sélectionne pas les bons leads : il tue les certitudes
négatives et laisse passer tout le reste. Raison : un bon lead écarté par une
règle serrée ne se manifeste jamais, donc son coût est invisible. Chaque règle
doit répondre à « qu'est-ce que je suis certain de ne pas vouloir ».
Mesure : sur 170 décideurs correctement rattachés, 150 sont écartés avant
l'agent, dont 108 pour une structure de trois salariés ou moins.

D3. L'HUMAIN VALIDE, L'AGENT ENVOIE.
L'agent écrit et poste un verdict. Il n'envoie jamais de lui-même. Trois
garde-fous obligatoires dès le premier message : fenêtre horaire locale du
destinataire, plafond quotidien par compte, protection anti double-envoi.
Ne propose pas de validation par emoji : elle ne permet pas de corriger le
brouillon, donc elle pousse à valider des messages qu'on aurait réécrits.

D4. FERMER LA BOUCLE SUR LES RETOURS.
Stocker chaque retour humain avec sa raison, en texte libre, dès le premier
jour. Un retour non consigné au moment du verdict est définitivement perdu :
c'est la seule matière qui ne se rattrape pas rétroactivement.

## E. LES RÈGLES MESURÉES, CIBLAGE ET MESSAGE

E1. SANS LA TAILLE DE L'ENTREPRISE, L'ANALYSE NE SERT À RIEN.
34 % de verdicts positifs quand la firmographie est connue, 5 % quand elle
manque, et elle manquait sur 52 % des analyses. La taille est une condition
d'entrée dans l'analyse, pas une donnée d'agrément. Si elle manque : aller la
chercher, ou mettre le lead en file d'attente.

E2. TOUTES LES PORTES D'ENTRÉE NE SE VALENT PAS.
Signal d'achat externe (une PME qui recrute un profil IA) : 70,0 % sur 20
analyses. Visite de profil : 23,3 % sur 103. Engagement sur le contenu : 17,5 %
sur 773. Réacteur d'un leader suivi : 12,0 % sur 25.
Conserver l'origine du signal sur chaque fiche dès le départ, sinon ce découpage
est impossible rétroactivement. Citer tout taux avec son échantillon.

E3. UNE DONNÉE MANQUANTE COÛTE MOINS CHER QU'UNE DONNÉE FAUSSE.
Entre un trou et un rattachement douteux, choisir le trou : un faux rattachement
fait entrer le lead avec un mauvais effectif et un mauvais secteur, et personne
ne le verra jamais.

E4. UN FILTRE EN SOUS-CHAÎNE TUE LE MEILLEUR SEGMENT.
Un motif de disqualification se pose en début de mot, jamais en sous-chaîne. Le
motif « formation » touchait 97 intitulés, dont 68 où le mot était
« transformation », qui pesaient 20 verdicts positifs. Avant de brancher un
filtre, sortir la liste des intitulés qu'il tue et la lire.

E5. LE COMMENTAIRE PRÉDIT UN PEU MIEUX QUE LA RÉACTION.
18,9 % contre 13,5 %, à porte d'entrée égale. Un tiers de mieux en relatif, et
l'écart reste dans le bruit de l'échantillon. Séparer les deux signaux dans la
priorisation, ne pas construire de règle dure dessus.

E6. UNE INVITATION DE CONNEXION NE FAIT PAS OFFICE DE PREMIER MESSAGE.
Le message direct à une relation de premier degré tourne autour de 12 % de
réponses ; la note d'invitation, envoyée avant acceptation, n'en a produit
aucune. Dissocier : invitation sans note, message après acceptation.

E7. CE QUE DISENT LES RÉPONDANTS NE DÉCRIT PAS LA POPULATION.
Biais du survivant. Un quart des répondants déclaraient avoir quitté leur
entreprise ; sur un échantillon de ceux qui n'avaient rien dit, environ 1 %.
Avant de dimensionner une correction sur ce que disent les répondants, mesurer
la même chose sur un échantillon silencieux.

## F. LES GARDE-FOUS AVANT DE LAISSER TOURNER

F1. LE COÛT SUIT LE CONTEXTE MULTIPLIÉ PAR LES TOURS.
560 000 jetons par lead au départ, ramenés à 0,20 ou 0,40 dollar après avoir
remplacé trois requêtes par une jointure, plafonné les jetons en sortie et
compressé la procédure. Un outil de plus dans la boucle coûte moins cher qu'une
procédure de mille mots de plus.

F2. UNE INSTRUCTION DURCIE PEUT PARALYSER L'AGENT.
Trois durcissements successifs ont produit trois cycles de réponse vide puis
l'abandon. Préférer une règle permissive avec une friction résiduelle à une
règle parfaite qui bloque tout, et tester chaque durcissement sur un cas réel
avant de l'empiler sur le précédent.

F3. LE MONITORING SE POSE AVANT LE PREMIER CRON.
13 planifications sur 13 étaient sans gestionnaire d'erreur, et l'alerte n'avait
jamais été déclenchée en conditions réelles. Poser une sentinelle indépendante
qui détecte les ABSENCES autant que les échecs : une tâche qui échoue est
visible, une tâche qui ne part pas ne laisse aucune trace.
Doctrine associée : jamais de réessai automatique sur un appel facturé.

F4. MESURER LE RENDEMENT AVANT DE CÂBLER.
Chiffrer une brique payante sur un petit lot avant de la mettre dans une boucle.
Un rattrapage testé sur 20 sociétés pour 0,186 dollar a résolu 5 identités et
récupéré zéro effectif : le code est livré, testé, et volontairement pas branché.

## G. LA SUITE, UNE FOIS L'AGENT DEBOUT

G1. La mesure, AVANT tout enrichissement : combien entrent, combien deviennent
    des verdicts positifs, et d'où ils viennent. Fini quand un chiffre s'affiche
    et qu'on sait quelle requête le produit. C'est l'étape le plus souvent faite
    en dernier, et la plus coûteuse à retarder.
G2. L'ingestion automatique, une seule porte pour commencer, celle où la donnée
    est déjà propre. Les suivantes se branchent sur le même calcul.
G3. Le filtre déterministe en amont, écrit en négatif (D2).
G4. La boucle sur les retours (D4).
G5. L'hébergement : un agent sur un portable s'arrête avec le portable. Pour
    qu'il tourne vraiment il lui faut une machine qui ne dort pas, à partir de
    la même image, avec un volume monté sur /opt/data qui garde tout l'état.

## H. CE QUE TU FAIS MAINTENANT

Commence par me poser tes questions de la section « Comment tu travailles avec
moi ». Ne déroule pas B1 avant d'avoir mes réponses.

Et sache ce que tu ne peux pas savoir : si ces chiffres valent pour mon marché.
Ils viennent d'un seul système, sur six mois, sur des dirigeants de PME
françaises. Traite-les comme un point de départ, et propose-moi la mesure qui me
dirait s'ils tiennent chez moi.

MA DEMANDE :
[écris ta demande ici, ou laisse vide pour qu'il commence par ses questions]

Tu peux le coller tel quel : la dernière ligne lui dit de commencer par ses questions. Si tu préfères cadrer d’entrée, voici trois demandes à mettre à la place :

Pour monter l’agent. Je pars de zéro, accompagne-moi sur la section B. Mon marché est le mien, je te le décris, et j’ai une liste de leads dans un fichier. Commence par l’étape B1 et attends que je te confirme avant la suivante.

Pour écrire les compétences. Je veux les trois compétences de la section B4, adaptées à mon marché. Écris-les une par une, et pour chacune la description en dernier, en vérifiant qu’elle fait bien 400 caractères au moins.

Pour auditer un agent existant. J’ai déjà un agent de prospection qui tourne, voici comment il fonctionne. Passe-le au crible des sections D à F et rends-moi la liste des écarts, classée par ce que ça me coûte, avec le correctif de chacun.

Ce qu’il ne peut pas savoir : si nos chiffres valent pour ton marché. Ils viennent d’un seul système, sur six mois, sur des dirigeants de PME françaises. Traite-les comme un point de départ à vérifier chez toi, et refais la mesure sur tes cent premiers contacts.


Partie 5. Ce qui vient après l’heure

Ton agent tourne et juge. Il attend encore que tu lui donnes du travail. Voilà les quatre chantiers qui le rendent autonome, dans l’ordre où je les ferais si je recommençais. Ce n’est pas l’ordre qu’on a suivi.

1. La mesure, avant tout enrichissement

Combien de leads entrent, combien deviennent des verdicts positifs, et d’où ils viennent. C’est l’étape qu’on a faite en dernier, et celle qui nous a coûté le plus cher : six mois sans savoir ce que le système produisait.

Tu passes à la suite quand un chiffre s’affiche quelque part et que tu sais exactement quelle requête le produit.

2. L’ingestion automatique

Une seule porte pour commencer, celle où ta donnée est déjà propre. Les suivantes se branchent sur le même calcul, jamais en dupliquant le pipeline. Attention : le rendement des portes est très inégal, et la meilleure n’est pas toujours la plus grosse.

Tu passes à la suite quand une requête répond à « qui a interagi avec nous les 30 derniers jours, et sur quoi ».

3. Le filtre déterministe, écrit en négatif

Uniquement des règles qui répondent à « qu’est-ce que je suis certain de ne pas vouloir ». Jamais « qu’est-ce que je veux » : une règle de qualification serrée écarte des bons leads qui ne se manifesteront jamais, et tu ne sauras pas combien.

Tu passes à la suite quand tu peux lister, par motif, ce que ton filtre a écarté cette semaine.

4. La boucle sur tes retours

L’agent relit tes validations et tes refus passés avant chaque analyse. C’est la seule chose qu’un enchaînement d’outils classique ne fait pas, et c’est la seule raison valable de construire un agent plutôt que d’acheter une stack.

Il n’y a pas de sortie. C’est l’étape où tu restes.

L’erreur qu’on a payée sur l’étape 2

Notre plus gros chiffre rouge était 1 230 personnes invisibles du filtre, faute d’entreprise rattachée. Un chantier évident et lourd. En les découpant par intitulé, 26 seulement portaient un titre de direction. Le trou était réel et il touchait massivement des gens qu’on n’aurait jamais contactés. Avant d’ouvrir un chantier technique, découpe la population qu’il concerne par ton critère de valeur : un grand nombre n’est pas une priorité tant que tu n’as pas montré ce qu’il contient.

L’erreur à ne pas refaire avant ton premier cron

Une collecte quotidienne est tombée deux fois dans le mois sans que personne le sache. En allant vérifier, la mesure était pire que la panne : 13 planifications sur 13 étaient sans gestionnaire d’erreur, et l’alerte n’avait jamais été déclenchée en conditions réelles depuis sa création. Pose une sentinelle avant le premier cron, et fais-la détecter les absences autant que les échecs. Une tâche qui échoue est visible, une tâche qui ne part pas ne laisse aucune trace.


Où j’en suis

Six mois, 937 leads analysés un par un, et zéro message parti sans qu’un humain ait répondu un mot.

Ce que je referais autrement tient en une ligne : je poserais la mesure avant d’enrichir quoi que ce soit. Les apprentissages les plus rentables de ce guide dormaient dans notre base depuis le premier jour, et il a fallu six mois et deux journées de relecture à la main pour les voir.

Tu veux la même stack, sans les six mois de réglage ?

Prendre rendez-vous →

Tu veux le même système, sans les six mois

Ce guide monte la première heure. On construit le reste pour des PME, sur leur donnée et leurs signaux à elles. Si tu veux en parler, le calendrier est ouvert.

Prendre rendez-vous →

Guide écrit par Achille Morin-Lemoine (Forward). Le système décrit ici tourne en production. Les chiffres viennent de notre base, mesurés le 8 septembre 2026, sur la période du 19 mai au 29 août.

Vous voulez avancer ?

On construit les systèmes IA
que vos équipes pilotent.

Deux praticiens IA-natifs. Des résultats tangibles, chaque semaine.