调度标志dispatch
‹ 销售与收入运营
外联草稿 · 连锁

将整个上午的工作自动化。
或者其中的任何一部分。

当休眠账户报告完成后,它会启动第二个流程:研究列表上的每个账户,为每个联系人撰写一份后续跟进邮件,然后将其移交给对方。 销售代表何时重新掌控局面——是在列出清单之后、草稿之后,还是根本不掌控——这是他们自己文案的设置,而不是不同的产品。

步骤12 生成式2/ 12 每次运行成本0 美元 报告 完成阶段开始
管道 1 · 08:00

休眠账户报告

找出每个销售代表停滞不前的机会,在真实浏览器中打开每个客户的网站,并写入 CSV 文件。

管道 2 · 完工

外联工作草拟

读取相同的 CSV 文件,研究每个帐户,进行简要介绍,按联系人分组,撰写电子邮件。

代表

阅读、编辑、发送

或者直接使用原始列表,自己编写。 或者让它发送。 两种方式都一样。

01

第二条管道启动是因为第一条管道已经完工。

触发器 · 工作流成功,范围限定为按 ID 划分的一个上游工作流

显而易见的方法,以及它为何是错误的

两个定时任务。 报告 08:00起草 08:15。

十五分钟只是个估计。 在一个清闲的早晨,报告仍在运行,草稿程序读取昨天的文件,或者什么也不读,然后自信地写出关于过时数据的电子邮件。 因为即使输入错误,管道仍然成功运行,所以没有人发现这个问题。

实际发生了什么

起草流程遵循报告完成的流程。

没有时间限制,无需猜测。 报告完成后会发出一个事件;草稿运行从该事件开始。 如果报告撰写需要一个小时,那么草稿撰写就需要等待一个小时。 如果报告生成失败,则根本不会进行草稿生成——这是正确的行为,也是进度表无法表达的行为。

订阅范围限定于一个工作流(按 ID),因此链会等待 其 上游完成,而不是在每个管道完成时都唤醒。 工作流永远不会因为自身的完成而重新启动——事后看来这是一个显而易见的保护措施,如果没有它,订阅此事件的管道将永远运行下去。
02

十二个步骤,其中两个步骤涉及模型

01✓

阅读第一条管道刚刚撰写的报告

资产.读取 · 休眠账户-{{date}} .csv

这不是新查询。 阅读上游管道自身的输出意味着草案和报告描述的是同一情况,甚至包括现场检查——它们之间不可能存在分歧。

确定性
02✓

以这位销售代表的五个最高价值客户为例

utils.csv_to_json → utils.jq_query

筛选出单个重复项,按数值排序,最多五个。 解析后的表格和排序,而不是决定当今谁重要的模型。

确定性
03✓

提取每个项目的完整历史记录

每个帐户进行六次 CRM 查询

外联记录、计划和付款状态、联系人记录、账单历史、终身收入、迁移复杂性。 每个账户最多可拨打六个电话,每次最多可同时拨打两个账户。

∥ 对于每个确定性
04✓

请分别简要介绍每个账户。

foreach · agent · transform

每个账户只能调用一次模型,并且只能看到该账户。 它根据固定的日期规则(过期、续订或在平台关闭后续订)来决定角度,并挑选出值得展开讨论的单一事实。 小范围情境,单一决策,这时本地模型就比较可靠了。

∥ foreach生成
05✓

按联系人对简报进行分组

utils.jq_query · group_by(email)

代理机构使用同一个地址管理多个网站。 五个账户通常会合并成两个人——以及两个电子邮件,而不是五个。

确定性
06✓

每人写一封电子邮件

foreach · agent · transform

第二次也是最后一次模型调用。 它看到的是最终的简报,而不是原始数据,所以它无法捏造数字。 当某人的账户出现不一致的情况(一个账户续期,三个账户过期)时,系统必须明确说明,而不是将它们合并成一个方便的说法。

∥ foreach生成
07✓

交付并保留一份副本

slack.send_message · assets.write

草稿会以格式化且可直接使用的形式发送到代表的工作地点,当天的节目内容会以 JSON 格式存档,这样就可以在不影响流程的情况下更改交付方式。

写入·自动
03

销售代表们对自动化问题意见不一。 他们不必这样做。

同一条输油管道,在三个不同的点被截停。 不是三个产品,不是推广,也不是公司范围内的政策——而是每个销售代表的工作流程副本,每个副本都可以在该销售代表希望的地方结束。

那个不会

把清单给我就行了。

在第一条管道后停止。 每天早上都会生成一个按排名排列的停滞帐户的 CSV 文件,网站已经过检查,而且他们自己会写出每一个字。 他们原本需要手工完成的研究已经完成;这段关系完全属于他们自己。

管道 1之后停止
大多数人

先起草,我来决定

完整的流程,最终形成他们阅读、编辑和发送的草稿。 判决结果由代表保留,而查阅记录和盯着续约日期所花费的时间则由代表保留。 这是今天运行的那台。

发送前停止
那个人

直接发给他们就行了。

距离终点还有一步。 发送功能可以设置审批门槛(例如,用户需要点击手机上的按钮才能发送一条消息),或者在获得批准后自动运行。 管道的形状没有改变;只是最后一步停止了等待。

增加 发送 步骤
这是DAG购买而代理不购买的东西。 每一步都是一个已命名、可检查的边界,因此 “人类究竟属于哪里?” 这是每个代表在配置中需要回答的问题。 ——然后改变你下周的想法。 对于自主代理来说,诚实的答案要么是“在最后”,要么是“观察整个过程”,而两者都不是拨号选项。
04

没有人第一次就能正确地进行规格制定。

第一次运行生成的邮件你永远不会发送。 第二个也是如此。 得到未经编辑即可输出的内容是一个循环,而唯一重要的是这个循环有多紧密。

01运行它

真实数据,按需获取——就在你用来询问数据的同一个聊天窗口中。

›
02看看它做了什么

每一步的输入和输出都会被保留。 场地不好,步子迈得不好——一目了然。

›
03改变一步

用一句话描述MCP。 您盒子数据库中的一行数据,保存后生效。

›
↻再运行一次

从头到尾大约两分钟。 本地模型,因此第二十次尝试的成本与第一次相同:零成本。

错误来源

结果显示,有些账户与触发运行的报告不匹配——管道再次查询 CRM,因此两个快照可能不一致。

是什么改变了One绑定? 读取第一个流水线已生成的文件。 一次快照,一次现场检查,无偏差。

错误的形状

所有邮件都用同一种声音写成。 一次模型调用将它们全部写入,不同的描述被简化为相同的三个句子。

将拆分分为两个步骤——每个客户撰写一份简报,然后根据简报撰写内容。 每次调用都会获取一个帐户的上下文信息,而不是十二个。

错误的推理

几个月前就公布了续订日期,当时称之为即将到来。 当被要求对日期进行推理时,它给出了错误但自信的推理结果。

发生了什么变化?别再问了。 该技能中存在一个明确的决策表:给定今天的情况,适用哪个分支。 该模型读取行数据,但不进行算术运算。

错误数据

结果显示,报价为 0 美元,并当作真实价格报给了客户。

规则改变:零表示数据缺失,而不是价格缺失。 不要直接说出来,而是标记出来。

错误的受众

内部评分结果显示,面向客户的文案中包含迁移复杂性评级,该评级位于电子邮件正文中。

是什么改变了?从原来的一个字段变成了两个字段。 邮件是客户阅读的内容;其他所有内容都放在销售代表阅读的地方。

格式错误

结果出来是一整段文字。 在责怪渲染器之前,值得检查一下:输出中根本没有换行符。

变化之处在于:新增了一条需要段落分隔的指令,并提供了一个示例。 不是格式错误——而是缺少一条指令。

这些在设计中都没有体现出来。 在第一个实际输出中,所有六个都可见一斑——这就是为什么你的规格制定得多么完善并不重要,重要的是你能多快地查看它实际生成的内容并只改变一件事。 上述每个修复方案都是在聊天窗口中输入一句话并重新运行一次。它们中的每一个都是配置:绑定、步骤边界、技能文件中的一行。 对于自主代理来说,同一个提示会被重写六次,无法分辨哪个指令导致了哪个症状。 这里每个人都有一个地址。
05

平台为你提供什么——以及你需要连接什么

构建这个东西的过程就是组合基本元素,而不是编写代码。 值得在自行测量时看看这条线在哪里。

调度提供

内置功能——适用于每个工作流程,每个设备。

  • 工作流之间的完成触发器
  • foreach 步骤类型
  • CSV、JSON 和 jq 转换
  • 技能、审批、运行历史

✓ 你接线

你邮箱数据库中的一行数据。 保存后即可立即使用——无需部署,无需重建。

  • 哪条管道向哪条管道供水
  • 哪些账户,以及有多少个账户
  • 两个代理提示
  • 每次重复动作的停止位置
左翼阵营中没有任何内容是专门针对对外宣传的。 完成触发器可以连接任意两个管道; foreach 循环 可以运行任何针对每个项目的工作。 这就是为什么右栏的写作只需一个下午就能完成,而不是一个项目。 — 以及是什么使得每次重复的变体成为复制和编辑而不是分支。
要点

交接只是一种工具,所以 你可以选择它的终点。

今日发货 · 从晨报结束后开始