07Vocal FlowEn production

« ils interrompent le cours pour répondre au téléphone, et dire à chaque fois exactement la même chose »

moi, pendant un cours de poterie

Une voix qui décroche, et prend le rendez-vous pendant l'appel.

Le professionnel renvoie ses appels vers un numéro dédié. Une voix répond à toute heure, renseigne, fixe le rendez-vous dans l'agenda, transfère quand c'est urgent, puis envoie le résumé par SMS. Si le moteur de la voix tombe, sa doublure prend l'appel sur un second moteur.

Du premier fichier au premier appel décroché
2 jours
Ce qui en reste aujourd'hui
Décroche 24h/24, prend le rendez-vous pendant l'appel
Premier appel réel
15 mars 2026

Vitrine et démonstration en ligne · conception, code, mise en production, en solo

une vraie conversation, écoutez-la

Aria, assistante du Salon Camille
Appel en cours, 21h07
AriaSalon Camille, bonsoir ! Je suis Aria, l'assistante du salon. Qu'est-ce que je peux faire pour vous ?
ClientBonsoir... euh, je voudrais une coupe demain, plutôt en fin de journée si possible ?
AriaBien sûr. Demain je peux vous proposer 17h30 ou 18h15, qu'est-ce qui vous arrange ?
Client18h15, parfait.
AriaC'est noté pour demain 18h15. À demain, et bonne soirée !
RDV noté · SMS envoyé
La voix d'Aria est celle du moteur, en conditions téléphone. Le client est une voix de démonstration.
La carte « appel du soir » de la vitrine, reprise de son code. Les cinq répliques sont les fichiers audio de la démonstration : Aria est la voix du moteur Grok, en qualité téléphone ; le client, une voix de synthèse. Le tampon tombe quand le rendez-vous est posé. Le salon est inventé.

Ce que la phrase voulait dire

Un atelier de poterie. Les fours sont en panne, les cuissons des pièces déposées par les clients ont pris des semaines de retard, et chaque personne qui attend la sienne appelle pour savoir où elle en est. Le cours que je suis s'arrête à chaque sonnerie : on décroche, on explique, on raccroche, on reprend. La même explication, mot pour mot, dix fois dans la soirée.

Ce que je voyais, c'étaient des gens dont le métier est la terre, transformés en répondeurs par une tâche qui n'est pas la leur. J'ai eu envie de construire ça pour eux : quelque chose qui dit ce qu'il y a à dire, et qui laisse les mains dans l'argile.

Pendant l'appel

Ce qui se passe quand ça sonne

Le professionnel renvoie ses appels vers un numéro dédié. Quand ça sonne, la voix décroche avec une annonce d'accueil déjà rendue dans son timbre, puis mène l'échange en temps réel : elle renseigne, propose des créneaux, prend le rendez-vous, et passe la main à un humain quand il le faut. Deux outils, pas plus, et une règle écrite en capitales dans sa consigne.

L'APPELANT appelle, à toute heure LA VOIX A Aria la voix du moteur annonce d'accueil déjà rendue, aucun blanc écoute, répond en temps réel, une seule voix décroche et mène l'échange un seul modèle, en temps réel SES DEUX OUTILS L'AGENDA check_availability, book_appointment créneau posé dans Google Agenda LE TRANSFERT transfer_call urgence, ou demande : vers le gérant le rendez-vous est pris pendant l'appel, ou l'appel passe à un humain APRÈS L'APPEL résumé en 2 ou 3 phrases intention, urgence, actions SMS au gérant URGENT en tête si l'urgence est haute une fois raccroché, quelques secondes plus tard
Le fil d'un appel, lu dans le code du serveur : pipeline-realtime.js, calendar-tools.js, opening-audio.js, post-call.js, sms-notifier.js.

Il lui est interdit de dire « c'est réservé » ou « c'est noté » tant que l'agenda n'a pas confirmé. La règle est écrite en capitales dans sa consigne : le tampon de la carte ne tombe que quand le rendez-vous existe vraiment.

Quelques secondes après avoir raccroché, un modèle relit la transcription et écrit un résumé en deux ou trois phrases, « pour un gérant qui lit entre deux clients » : l'objet de l'appel, le résultat, l'intention, l'urgence, et jusqu'à trois actions à faire. Le résumé part par SMS. Si l'urgence est haute, le message commence par URGENT et part sans attendre.

Les appels de moins de dix secondes ne produisent rien : c'est presque toujours un robot.

SMS · au gérant du salon

Salon Camille : appel reçu Une personne souhaitait une coupe demain en fin de journée. Rendez-vous fixé demain à 18h15, confirmé pendant l'appel. Rien à rappeler. Intent: reservation

Le SMS tel que le gabarit le compose : le nom du commerce, le résumé, l'intention. Reconstitué ici pour l'appel du soir ; dans le produit, le résumé est écrit par le modèle après chaque appel.
Les voix

Écoutez qui va décrocher

cliquez, elles parlent vraiment

Ces extraits sont ceux de la vitrine : rendus par le moteur qui répond vraiment, en qualité téléphone, pas en studio. Quatre des voix proposées. Le catalogue en compte six au téléphone, retenues après l'audition de 34 voix et un sondage, plus une voix dédiée au site web.

Un seul extrait à la fois. Les barres suivent l'amplitude réelle du son, comme sur la vitrine ; sans WebAudio, elles battent en cadence ; en mouvement réduit, elles restent immobiles. Nathan est la voix du canal web, rendue par un autre moteur ; Aria porte le seul portrait livré à ce jour.

La doublure

Chaque voix a une doublure chez l'autre moteur : Aria, chez Grok, est doublée par Marine, chez OpenAI ; Marine par Aria ; Sacha par Romain. Si le moteur préféré ne répond pas dans les cinq secondes, la doublure prend l'appel au vol, dans le même appel. Après deux échecs consécutifs, le circuit s'ouvre pendant soixante secondes : les appels suivants partent directement sur la doublure, sans faire payer l'attente à l'appelant. Aucune sonde, aucun ping payant : la santé des moteurs se déduit des vrais appels.

L'APPEL circuit ouvert : en direct LE MOTEUR PRÉFÉRÉ Aria, chez Grok connexion en 5 s maximum 2 échecs : circuit ouvert 60 s la session s'établit échec : bascule au vol, dans le même appel LA DOUBLURE Marine, chez OpenAI même caractère, autre moteur l'appel est pris quand même l'appelant n'entend jamais le silence
voice-health.js (2 échecs, 60 secondes, session morte avant 15 secondes) et pipeline-realtime.js (moteur préféré, puis doublure). Si aucun moteur ne répond, l'appelant entend un message d'excuse, jamais le silence.
La latence

En temps réel, et on peut lui couper la parole

Depuis juillet 2026, un seul modèle écoute, pense et parle. La chaîne précédente, transcription puis modèle de langage puis synthèse, mettait environ deux secondes à répondre. Le silence entre la fin de la question et le premier son de la réponse est mesuré à 0,85 seconde chez OpenAI ; Grok annonce 0,78 seconde. C'est perceptible, ce n'est pas rédhibitoire, et ce n'est pas l'argument du produit : la fiabilité l'est.

ENTRE LA FIN DE LA QUESTION ET LE PREMIER SON DE LA RÉPONSE l'appelant parle la voix répond 0,85 s mesuré chez OpenAI 0,78 s annoncé par Grok ~2 s : l'ancienne chaîne en trois étages
Mesure interne du 3 août 2026 (docs/strategy) ; l'ancienne chaîne, mesurée sur la même infrastructure, est retirée le 6 juillet 2026 (docs/decisions).

On peut lui couper la parole comme à quelqu'un. Dès que l'appelant parle, la voix se tait, et ce qu'elle n'a pas fini de dire est retiré de sa mémoire : elle ne croit pas avoir dit ce que personne n'a entendu.

L'APPELANT PEUT COUPER LA PAROLE la voix parle jamais entendu, retiré de sa mémoire l'appelant coupe : la voix se tait en quelques dizaines de millisecondes parole détectée
realtime.js : interrupt_response, speech_started, response.cancel, conversation.item.truncate. OpenAI honore la troncature ; Grok l'ignore sans dommage.
La consigne

Configurée en langage naturel

Le gérant ne règle pas des paramètres : il décrit son activité en quelques phrases. Un compilateur traduit la description en une consigne machine courte, quinze lignes et neuf cents caractères au plus, parce qu'une consigne longue ralentit la voix, puis la reformule en français courant pour validation. Cette couche vient se glisser entre un bouclier que personne ne modifie, voix, tours de parole, outils, limites, fin d'appel, et les données brutes : horaires, adresse, tarifs, questions fréquentes.

le gérant écrit en français courant 3 · LE BOUCLIER voix, tours, outils, limites, fin : jamais modifiable par le client 2 · LE COMPORTEMENT la description, compilée : 15 lignes, 900 caractères au plus 1 · LES DONNÉES horaires, adresse, tarifs, questions fréquentes, tels quels A le prompt compilé recompilé seulement quand la configuration change
prompt-compiler.js (les trois couches, le script de prise de rendez-vous) et behavior-compiler.js (15 lignes, 900 caractères, reformulation à valider).

Le bouclier impose aussi le ton : chaleureux, vif, une ou deux phrases par tour, une seule question à la fois, jamais un numéro répété en entier, jamais une donnée bancaire. Face à un démarcheur ou un robot : « je ne suis pas intéressé, au revoir », et elle raccroche. Et si on le lui demande, la voix dit qu'elle est un assistant numérique, sans s'excuser, et enchaîne.

Le champ de configuration propose un exemple, et ce n'est pas un salon de coiffure.

Comportement de l'assistant

Décrivez en quelques phrases ce que votre assistant doit faire : son objectif principal, son ton, vos règles métier. L'IA traduit votre description en instructions précises, et vous validez le résultat avant qu'il soit actif.

Ex : Je tiens une école de surf. L'assistant doit prendre les réservations de cours, demander le niveau (débutant ou confirmé) avant de proposer un créneau, et être décontracté : on tutoie tout le monde. Si quelqu'un parle de blessure, prendre son numéro pour que je rappelle en urgence.

0 caractères

Le champ du produit, avec l'exemple qu'il propose quand il est vide (BehaviorSection.jsx). Ici, il ne compile rien.

La confirmation, par la mer

Le besoin s'est confirmé depuis un tout autre métier. Un prof de surf passe des heures dans l'eau, sans téléphone. S'il ne répond pas, la personne qui voulait réserver compose le numéro suivant et finit chez la concurrence. Pour lui, une voix qui décroche n'est pas un confort : c'est la différence entre un client et un appel manqué.

L'école de surf est restée dans le produit, comme exemple : prendre les réservations, demander le niveau avant de proposer un créneau, tutoyer tout le monde, et si quelqu'un parle de blessure, noter son numéro pour un rappel en urgence.

En ligne

La vitrine

La vitrine vit sur app.antton-brunel.com depuis le 17 juillet 2026 : papier crème, encre espresso, tampons inclinés, boutons qui s'enfoncent. Elle fait entendre une voix en moins de dix secondes ; c'est la page dont cette fiche reprend la matière.

La vitrine de Vocal Flow sur ordinateur : le titre Vous travaillez. On décroche., les boutons Essayer gratuitement et Écouter les voix, et à droite la carte de l'appel du soir, Aria, assistante du Salon Camille, avec ses bulles et le bouton Écouter l'appel.
La vitrine, telle qu'elle est servie le 29 août 2026, à 1600 pixels de large.
La section Écoutez qui va décrocher de la vitrine : quatre cartes, Nathan, Aria, Marine et Sacha, chacune avec son avatar, ses barres d'onde et son bouton Écouter.
Les voix, sur la vitrine : les quatre cartes que cette page reprend.
La vitrine de Vocal Flow sur téléphone : le logo, le titre Vous travaillez. On décroche. et le bouton Essayer gratuitement.
La même page, à 390 pixels de large.

Le tarif tient sur un reçu : 79 euros par mois, 150 minutes incluses, 99 euros de mise en service, sans engagement. Il est réel et vit à un seul endroit du code. L'activation en libre-service, elle, est encore fermée : on entre sur rendez-vous.

· Vocal Flow ·

Abonnement mensuel, 150 min incluses79 €

Mise en service, une seule fois99 €

Au-delà des minutes incluses0,25 €/min

Par mois
79 € /mois
Sans engagement · résiliable à tout moment
Le reçu de la vitrine, repris de son code : les trois lignes, le total, le cachet.

Ce que la voix ne fait pas

Cette page décrit une capacité, pas un usage : aucun volume d'appels, aucun nombre de clients n'y figure. Le salon Camille, l'appel du soir et le SMS sont une démonstration.

Le résultat

« Dire à chaque fois exactement la même chose » est devenu : une voix qui décroche à toute heure, prend le rendez-vous dans l'agenda pendant l'appel, transfère l'urgence, et envoie le résumé par SMS. Premier appel réel décroché le 15 mars 2026, deux jours après le premier fichier. Le silence avant sa réponse : 0,85 seconde, mesurée.