@nifinet: https://x.com/nifinet/status/2066933179169329303

X AI KOLs Timeline 工具

摘要

一份关于在2026年构建基于信号的销售分发外呼引擎的详细指南,包含六个阶段和可复制提示,用于利用AI自动化潜在客户开发。

https://t.co/7QajEThKEb
查看原文
查看缓存全文

缓存时间: 2026/06/17 01:45

如何在2026年赢得分销

2026年的分销归结为一个系统,而不是一堆渠道。**这是一个基于信号的主动外呼引擎:**它实时监控某家公司进入你市场的时刻,判断该时刻是否值得发送一条消息,根据真实触发事件撰写内容,自我检查,并从反馈中学习。

我在Sortlist为14个代理运行这样一个引擎,每月花费约400美元。昨晚,它监控了融资轮次、我们目标客户的招聘动态,以及提及我们解决问题的账户。今早,生成了一份简短的排名列表,列出了该联系谁以及为什么。

这就是全部构建。

每个阶段都有一个你可以复制的提示,它们不是六个独立的技巧。每个阶段将其输出传递给下一个阶段,它们作为一个循环运行。末尾的代码仓库将它们连接起来,你可以克隆并运行。

结构

一个循环,六个阶段,以及它们共享的一条记录。

javascriptICP -> 提取 -> 评分 -> 撰写 -> 检查 -> 发送/记录 ^ | |________ 学习 (每周) __________|

引擎循环:ICP、提取、评分、撰写、检查、发送和记录,每周进行一次学习

**你只需编写一次ICP。提取将原始活动转化为清晰的信号。

**评分将这些信号与你对该账户已知的所有信息进行对比,并决定谁值得发送消息。根据触发事件撰写草稿。检查阶段在发送前捕获任何错误。每次接触都记录到每个公司的记录中,每周一次的学习步骤会读取结果并重新调整引擎追逐的权重。每个阶段的输出是下一阶段的输入。中间记录是使整个系统不仅仅是邮件合并的关键。

以下是每个阶段及其提示。

阶段0:锐化ICP

一切都取决于你试图接触的对象,而大多数ICP都很模糊。将粗略的描述转化为引擎可以评分的格式。你运行一次,并在各处复用输出。

javascript你将粗略的公司描述转化为引擎可以评分的紧凑ICP。

输入

  • 几句关于我们销售给谁以及不销售给谁的话。

编写

  • fit:优质账户具备的3-5个公司和行为特征。
  • not_fit:使账户不合格的2-3个特征。
  • strongest_signal:表示“今天联系”的一个信号组合。

输出(仅JSON) { “fit”: [“…”], “not_fit”: [“…”], “strongest_signal”: “…” }

它返回一个紧凑的fit、not-fit和strongest-signal块。评分阶段在评估每个账户时读取它。

阶段1:将活动转化为信号

检测不是“监控一切”。而是读取原始活动流(职位发布、融资新闻、社交动态、网络提及),并提取出少数真正的公司动向。这一步将噪音转化为结构化信号,供循环的其余部分使用。

提取:原始活动变成几个带标签的信号

提取:原始活动变成几个带标签的信号

javascript你读取原始活动并提取购买信号。忽略任何不是真正公司动向的内容。

输入

  • text:一块原始活动文本。职位发布、融资新闻、社交动态、网络提及。

对于每个真实信号

  • account:公司名称
  • bucket:funding、job、company、social、first_party之一
  • summary:一个事实性句子,引用具体细节(金额、角色、日期)
  • source:来源

规则

  • 一个公司可能产生多个信号。分别保留。
  • 跳过模糊噪音。信号是具体、可追溯的动向,而不是一般提及或观点。

输出(仅JSON) { “signals”: [ { “account”: “…”, “bucket”: “…”, “summary”: “…”, “source”: “…” } ] }

它输出一个信号列表,每个信号带有账户、桶(bucket)和一行事实性摘要。在进入下一步之前,先按公司分组,因为一周内同一账户的两个动向胜过任何地方的一个动向。

然后信号直接输入评分。

阶段2:决定谁值得发送消息

现在是判断。信号不是发送的理由,而是一个问题:这个账户现在值得发送消息吗?为什么是这周?使用哪种策略?评分步骤根据新信号加上该账户的全部历史(我稍后会提到的记录)来回答。对于一个你从未接触过的公司,第三次融资信号意味着一件事;而对于你已经发过两次邮件但从未收到回复的公司,则意味着相反。

这就是我们交给Claude的调用。

在我们的LinkedIn引擎上,它会监控谁与帖子互动,交叉引用其他信号,并且只给那些已经表现出意图的人发送消息。我们停止联系人们,而是开始先倾听。

javascript你为一个基于信号的主动外呼引擎对一个账户进行评分。决定它当前是否值得发送一条消息。

输入

  • icp:来自阶段0的fit/not-fit/strongest-signal块
  • new_signals:该账户刚刚发生的动向
  • history:过去的每个信号、消息、回复和结果,或“无”
  • days_since_last_touch:一个数字,或“从未”

评分 80-100 强匹配和高意图信号:融资、预算负责人招聘,或一周内两个信号 50-79 良好匹配,一个可靠信号 1-49 弱匹配,或单个软信号(如一个点赞)

规则

  • 如果days_since_last_touch小于7,优先选择“培育”或“跳过”,绝不做首次接触。
  • “why_now”必须引用真实信号,而不是通用价值主张。
  • “跳过”是正常答案。大多数账户都是跳过。

输出(仅JSON) { “score”: 0-100, “why_now”: “一句话引用触发事件”, “play”: “first_touch | follow_up | nurture | skip” }

它返回一个分数、一个引用真实触发事件的why_now,以及一个策略。跳过是常见答案。why_now成为下一阶段的种子。

阶段3:根据触发事件撰写

撰写步骤接收why_now和策略,起草一条消息:以账户实际做了什么开头,将其联系到你解决的一个问题,并请求一件小事。

javascript你为基于信号的主动外呼引擎撰写第一条消息。

输入

  • trigger:账户实际做的具体事情
  • why_now:来自评分步骤的一行原因
  • play:first_touch | follow_up | nurture
  • problem:一句话描述你解决的问题

撰写

  • 第一行点名他们刚刚做了什么。永远不要用“嗨{{firstName}}”,永远不要用模板开头。
  • 一句话将该触发事件与你解决的问题联系起来。
  • 一个小的请求:15分钟,或一份单页。
  • 三到五句话,平实语言,混合长度。不要虚假紧迫感,不要“只是跟一下”,不要用破折号。

输出(仅JSON) { “subject”: “6-9个词”, “body”: “3-5个句子” }

如果同样的消息一个月前也能发送,说明信号被忽略了。草稿直接进入检查。

阶段4:发送前检查

这是大多数人跳过的阶段,也是防止自主引擎向整个列表发送自信但错误的主张的关键。一个独立的步骤以怀疑的态度阅读草稿:每个主张是否可追溯到真实触发事件?开头是否真实?是否正好有一个低摩擦的请求?

javascript你是消息发送前的最后检查。假设它是错误的,直到它证明是正确的。

输入

  • trigger:账户实际做的真实事情
  • draft:{ subject, body }

检查

  • 草稿中的每个主张都有触发事件支持。没有捏造的事实,没有猜测的指标。
  • 第一行命名真实触发事件。没有“嗨{{firstName}}”,没有模板开头。
  • 一个请求,低摩擦。没有虚假紧迫感,没有“只是跟一下”。
  • 平实语言,混合长度,没有破折号。

如果通过,原样返回。如果没有,修复它并说明哪里错了。

输出(仅JSON) { “pass”: true, “reason”: “哪里错了,或‘干净’”, “subject”: “…”, “body”: “…” }

它返回消息,如果需要则修复,如果无法挽救则标记。只有干净的草稿才会到达人类或发送。

阶段5:记住并学习

这里有两个关键部分:

记录是每个公司级别的记忆,每个阶段都会读写:看到的每个信号、发送的每条消息、每个回复、每个结果。保留它,否则引擎会把一个温暖的账户当作冷账户,并像跟踪狂一样读取。

学习步骤每周运行一次,而不是每条消息。它读取结果并重新调整哪些信号值得追逐,并指出获胜的文案。我们的系统甚至在足够多次发送后重写自己的外呼文案:尝试一个版本,评分回复,保留或丢弃。

javascript你根据实际发生的情况调整引擎。每周运行一次,而不是每条消息。

输入

  • outcomes:一个列表,包含 { bucket, copy_variant, result },其中result为replied(已回复)| meeting(会议)| no_reply(无回复)| bounced(退信)
  • current_weights:当前每个信号桶的权重

决定

  • 根据每个桶的胜率(会议和回复占总接触数的比例)重新加权。保持最低值,以防某个桶降为零。
  • 如果存在有效样本,指出回复率最高的文案变体。

输出(仅JSON) { “weights”: { “funding”: 0.0, “job”: 0.0, “company”: 0.0, “social”: 0.0, “first_party”: 0.0 }, “best_variant”: “…” }

新权重反馈到阶段2的下一次运行中。这种反馈就是不断改进的引擎与僵化脚本之间的区别。

一起运行

以下是连接方式。循环的一次完整执行,按顺序:

  • 从阶段0加载缓存的ICP块。
  • 拉取最近一天的活动并运行提取。得到信号列表。
  • 按公司对信号进行分组。
  • 对于每个账户,读取其记录并运行评分。丢弃跳过的。
  • 对于每个存活的账户,运行撰写,然后检查。
  • 打印干净的草稿作为排名的短名单,或发送它们,并将每次接触记录到记录中。
  • 每周一次,运行学习步骤处理结果并保存新权重。

阶段之间的握手是纯JSON。

提取输出信号,评分消耗信号并输出why_now,撰写消耗why_now并输出草稿,检查消耗草稿并输出干净的草稿。记录是中间的共享状态,每次接触写入,每次评分读取。将其安排在定时任务上:

javascript0 8 * * * cd distribution-engine && python run.py

当你打开笔记本电脑时,已经有一个排名的短名单,每个名字旁边都有一个理由。无需构建列表,无需猜测主题行。

克隆并运行

我把整个东西放在一个仓库里:六个提示、记录以及串联它们的脚本。它开箱即用,附带示例活动和存根模型,因此你可以在接入真实数据之前观察整个循环从端到端运行。然后将其指向你自己的活动,将你的Claude调用插入一个函数,并设定定时任务。评论“GTM”以获取它。

注意,它不会去重十个来源或管理你的送达率。它足以运行一个真实的基于信号的动作,并感受与基于列表发送的差异。

或者使用完整版

仓库是简化版。完整版是yourmax.ai,我们在Sortlist构建的代理。它为你运行同样的循环:它了解你的最佳买家,监控信号,起草带有真实原因附件的LinkedIn和电子邮件消息,并在发送前等待你的批准。

你连接你已经在使用的工具,并在聊天中描述你想要的常规。它现已上线,提供有限演示。

为什么我押注这个

十年来,我一直在观察公司在决定招聘某人的那一刻敲入什么。教训从未改变:搜索是最后一步,而不是第一步。当一家公司开始搜索时,预算已经在几周前转移,短名单上已经有了名字。搜索之前的一切——重新开放的角色、他们开始关注的竞争对手——如果你构建去看到它,它更早可见。

构建这些都不难。

它不引人注目,这正是为什么大多数团队继续为量付费。这正是为什么现在构建它的人会得到回报。

相似文章

@nifinet: https://x.com/nifinet/status/2064397495036440907

X AI KOLs Timeline

一份关于使用Claude Code构建AI驱动的GTM(上市策略)大脑的详细指南,涵盖五个核心组成部分——Sense、Remember、Judge、Act、Learn——以实现有判断力的基于客户的主动 outreach,而不仅仅是数量。