Logo Dispatchdispatch
‹ Opérations de vente et de revenus
Rédaction de documents de sensibilisation · enchaîné

Automatisez toute la matinée.
Ou n'importe quelle partie de celle-ci.

Une fois le rapport sur les comptes inactifs terminé, un deuxième processus se lance : chaque compte de la liste est analysé, un message de suivi est rédigé pour chaque contact, puis transmis. Le moment où un représentant reprend le contrôle — après la liste, après le brouillon ou pas du tout — est un paramètre de sa propre copie, et non un produit différent.

Étapes 12 Génératif 2 sur 12 Coût par course : 0 $ Débute sur la fin du rapport
Pipeline 1 · 08:00

Rapport sur les comptes dormants

Identifie les opportunités bloquées de chaque commercial, ouvre le site de chaque client dans un véritable navigateur et écrit le fichier CSV.

Pipeline 2 · à l'achèvement

Rédaction de sensibilisation

Il lit ce même fichier CSV, effectue des recherches sur chaque compte, le résume, regroupe les données par contact et rédige les e-mails.

Le représentant

Lire, modifier, envoyer

Ou prenez la liste brute et écrivez-les vous-même. Ou laissez-le envoyer. Le même processus dans les deux cas.

01

Le deuxième pipeline démarre parce que le premier est terminé.

déclencheur · workflow.succeeded, limité à un workflow en amont par id

La méthode évidente, et pourquoi elle est erronée.

Deux tâches cron. Rapport à 08:00 , en train de rédiger à 08:15 .

Quinze minutes, c'est une estimation. Par une matinée calme, le rapport continue de tourner et la tâche de rédaction lit le fichier de la veille, ou rien du tout, et rédige des courriels confiants à propos de données obsolètes. Personne ne s'en aperçoit, car un pipeline fonctionnant avec des données d'entrée incorrectes aboutit quand même.

Que se passe-t-il réellement ?

Le processus de rédaction s'engage à ce que le rapport soit finalisé.

Pas de minuteur, pas de devinettes. Le rapport déclenche un événement lorsqu'il est terminé ; le processus de rédaction démarre à partir de cet événement. Si la rédaction du rapport prend une heure, la rédaction proprement dite attend une heure. Si le rapport échoue, la rédaction n'est jamais lancée – ce qui est le comportement normal et celui qu'un planning ne peut pas exprimer.

L'abonnement est limité à un seul flux de travail par identifiant, de sorte qu'une chaîne attend son flux en amont plutôt que de se réveiller à chaque pipeline qui se termine. Et un flux de travail n'est jamais redémarré par sa propre fin — une protection évidente a posteriori, sans laquelle un pipeline abonné à cet événement fonctionnerait indéfiniment.
02

Douze étapes, dont deux impliquent un modèle

01✓

Lisez le rapport que le premier pipeline vient de rédiger

actifs.lire · comptes-dormants-{{date}} .csv

Il ne s'agit pas d'une nouvelle requête. La lecture des données issues du processus en amont signifie que les brouillons et le rapport décrivent le même instantané, jusqu'aux vérifications sur site — ils ne peuvent pas être en contradiction.

déterministe
02✓

Voici les cinq comptes les plus importants de ce représentant.

utils.csv_to_json → utils.jq_query

Filtrer à une seule représentation, trier par valeur, limiter à cinq. Un tableau analysé et un tri, et non un modèle décidant qui compte aujourd'hui.

déterministe
03✓

Extraire l'historique complet pour chaque

foreach · six recherches CRM par compte

Notes de suivi, état du plan et des paiements, fiche de contact, historique de facturation, revenus cumulés, complexité de la migration. Six appels par compte, deux comptes à la fois.

∥ pour chaque déterministe
04✓

Résumez chaque compte individuellement

foreach · agent · transformer

Un seul appel modèle par compte, visible uniquement par ce compte. Elle détermine l'angle d'approche à partir d'une règle de date fixe — expiré, en cours de renouvellement ou en cours de renouvellement après l'arrêt de la plateforme — et sélectionne le seul fait pertinent à exploiter. Contexte restreint, décision unique : c'est là qu'un modèle local se révèle fiable.

∥ pour chaque génératif
05✓

Regroupez les dossiers par contact

utils.jq_query · group_by(email)

Les agences gèrent plusieurs sites sous une seule adresse. Cinq comptes se réduisent généralement à deux personnes — et à deux adresses e-mail, et non cinq.

déterministe
06✓

Rédigez un courriel par personne

foreach · agent · transformer

Le deuxième et dernier appel à mannequins. Il traite des rapports finalisés, jamais de données brutes, il ne peut donc pas inventer de chiffre. Lorsque les comptes d'une personne présentent des incohérences — un renouvelé, trois expirés —, il faut le préciser plutôt que de les regrouper en une seule réclamation.

∥ pour chaque génératif
07✓

Remettez-le et conservez-en une copie.

slack.send_message · assets.write

Les brouillons arrivent sur le lieu de travail du représentant, formatés et prêts à l'emploi, et le set du jour est archivé au format JSON afin que la méthode de livraison puisse être modifiée sans toucher au pipeline.

écrire · auto
03

Les représentants ne sont pas d'accord sur l'automatisation. Ils n'y sont pas obligés.

Le même pipeline, interrompu à trois endroits différents. Pas trois produits, pas de déploiement, pas de politique à l'échelle de l'entreprise — une copie du flux de travail par représentant, chaque étape se terminant là où ce représentant le souhaite.

Celui qui ne le fera pas

Donnez-moi simplement la liste

S'arrête après le premier pipeline. Chaque matin, un fichier CSV classé des comptes bloqués est généré, le site étant déjà vérifié et chaque mot étant rédigé par les auteurs eux-mêmes. Les recherches qu'ils auraient effectuées manuellement sont terminées ; la relation leur appartient entièrement.

s'arrête après le pipeline 1
La plupart des gens

Rédigez-le, je déciderai.

La chaîne complète, qui se termine par les brouillons qu'ils lisent, corrigent et envoient. Le jugement reste du ressort du représentant, mais pas l'heure passée à consulter les dossiers et à scruter les dates de renouvellement. C'est celui qui est en service aujourd'hui.

s'arrête avant l'envoi
Celui qui le ferait

Il suffit de leur envoyer.

Une dernière étape avant la fin. L'envoi peut être soumis à une approbation (un clic sur le téléphone, par message) ou s'exécuter sans surveillance une fois cette approbation obtenue. Le pipeline ne change pas de forme ; la dernière étape cesse simplement d'attendre.

ajoute une étape d'envoi
Voici ce qu'un DAG achète et qu'un agent n'achète pas. Chaque étape constitue une limite nommée et inspectable, donc « Où est la place de l'humain ? » Il s'agit d'une question à laquelle vous répondez par représentant, dans la configuration. — et changer d'avis pour la semaine prochaine. Avec un agent autonome, les réponses honnêtes sont « à la fin » ou « en observant l'ensemble du processus », et aucune des deux n'est un cadran.
04

Personne ne spécifie cela correctement du premier coup

Le premier test a généré des courriels que vous n'enverriez jamais. Le deuxième aussi. L'obtention d'un résultat non édité se fait par le biais d'une boucle, et la seule chose qui compte est la précision de cette boucle.

01Exécuter

Sur des données réelles, à la demande — depuis la même fenêtre de discussion que vous utiliseriez pour poser vos questions sur ces données.

›
02Lisez ce que cela a fait

Les entrées et sorties de chaque étape sont conservées. Mauvais terrain, mauvais pas — vous pouvez voir lequel.

›
03Changer une étape

Décrit en une phrase au-dessus du MCP. Une ligne dans la base de données de votre box, mise à jour lors de la sauvegarde.

›
↻Relancez-le

Environ deux minutes d'un bout à l'autre. Modèles locaux, de sorte que la vingtième tentative coûte autant que la première : rien.

source erronée

Les résultats affichés ne correspondaient pas au rapport ayant déclenché l'exécution ; le pipeline interrogeait à nouveau le CRM, ce qui pouvait expliquer la divergence entre les deux instantanés.

Qu'est-ce qui a changé ? Une reliure. Lisez le fichier déjà produit par le premier pipeline. Une seule capture d'écran, une seule série de vérifications sur site, aucune dérive.

forme incorrecte

Ce qui est ressorti : Chaque courriel, d'une seule voix. Un seul modèle d'appel consistait à les rédiger tous en même temps, et des récits distincts se retrouvaient aplatis en trois phrases identiques.

Ce qui a changé : La division en deux étapes – un briefing par compte, puis la rédaction à partir des briefings. Chaque appel reçoit le contexte d'un seul compte au lieu de douze.

raisonnement erroné

Ce qui est ressorti, ce sont les dates de renouvellement, déjà annoncées il y a plusieurs mois, décrites comme à venir. Sommé de raisonner sur des dates, il a raisonné mal et avec assurance.

Qu'est-ce qui a changé ? Arrête de demander. Un tableau de décision explicite concernant cette compétence : étant donné la situation actuelle, quelle branche s’applique ? Le modèle lit la ligne, il n'effectue pas les calculs.

données erronées

Le résultat fut un prix de 0 dollars communiqué au client comme s'il s'agissait du prix réel.

Ce qui a changé : Une règle : zéro représente des données manquantes, et non un prix. Ne le dites jamais explicitement, signalez-le plutôt.

mauvais public

Résultat : Évaluation interne dans les textes destinés aux clients — une évaluation de la complexité de la migration, dans le corps de l’e-mail.

Qu'est-ce qui a changé ? Deux champs au lieu d'un. L'e-mail est ce que le client lit ; tout le reste est destiné au représentant commercial.

format incorrect

Ce qui en est sorti : un mur de texte ininterrompu. Avant d'incriminer le moteur de rendu, il convient de vérifier : il n'y avait absolument aucun saut de ligne dans le résultat.

Qu'est-ce qui a changé ? Une consigne exigeant des sauts de paragraphe, avec un exemple détaillé. Il ne s'agit pas d'un problème de formatage, mais d'une instruction manquante.

Aucun de ces éléments n'était visible sur le dessin. Les six étaient visibles dans le premier résultat concret — c’est pourquoi la précision de vos spécifications importe moins que la rapidité avec laquelle vous pouvez examiner le résultat obtenu et modifier un seul élément. Chaque correction ci-dessus correspondait à une phrase saisie dans une fenêtre de chat, suivie d'une nouvelle exécution. et chacune d'elles est une configuration : une liaison, une limite d'étape, une ligne dans un fichier de compétences. Avec un agent autonome, il s'agit d'une même invite réécrite six fois, sans aucun moyen de déterminer quelle instruction a provoqué quel symptôme. Chacun avait une adresse.
05

Ce que la plateforme vous offre — et ce que vous connectez

La construction de ce système consistait à composer des primitives, et non à écrire du code. Il est intéressant de voir où se situe la limite lorsque vous évaluez votre propre situation.

Dispatch fournit

Fonctionnalité intégrée — disponible pour chaque flux de travail, sur chaque appareil.

  • déclencheurs d'achèvement entre les flux de travail
  • le type d'étape foreach
  • Transformations CSV, JSON et jq
  • compétences, approbations, historique d'exécution

✓ Vous effectuez le câblage

Une ligne dans la base de données de votre boîte. Vivez pleinement l'instant où vous l'enregistrez — pas de déploiement, pas de reconstruction.

  • quel pipeline alimente lequel
  • de qui ces comptes, et combien ?
  • les deux agents invitent
  • où cela s'arrête, par représentant
Rien à gauche ne concerne spécifiquement la sensibilisation. Un déclencheur d'achèvement enchaîne deux pipelines quelconques ; foreach exécute tout travail par élément. C’est ce qui fait de la colonne de droite une activité d’après-midi plutôt qu’un projet. — et ce qui fait d'une variante par représentation une duplication et une modification plutôt qu'une bifurcation.
Ce qu'il faut retenir

Le passage de relais est un outil, c'est donc vous qui décidez où il s'arrête.

Expédition aujourd'hui · commence à la fin du rapport du matin