lead-intelligence
affaan-m/ECC
通过社交图谱分析和暖路径发现,寻找、筛选并触达高价值联系人,并为电子邮件、LinkedIn和X生成个性化的外联草稿。
...展开全部潜在客户情报
基于智能代理的潜在客户智能处理流程,通过社交图谱分析和暖路径发现,精准定位、评估并触达高价值联系人。
何时启动
- 用户希望在特定行业中寻找潜在客户或目标客户
- 为建立合作伙伴关系、销售或筹款而构建外联名单
- 研究应联系哪些对象以及最佳的联系途径
- 用户提及“寻找潜在客户”、“外联名单”、“我应该联系谁”、“暖场引荐”
- 需要根据相关性对联系人列表进行评分或排序
- 希望通过映射共同联系人来寻找暖场引荐路径
工具需求
必备
- Exa MCP — 针对个人、公司及信号的深网搜索(
web_search_exa) - X API — 关注者/被关注者关系图、共同关注分析、近期动态(
X_BEARER_TOKEN,以及写入上下文凭证,例如X_CONSUMER_KEY,X_CONSUMER_SECRET,X_ACCESS_TOKEN,X_ACCESS_TOKEN_SECRET)
可选(增强搜索结果)
- LinkedIn — 如有可用,则使用直接 API;否则使用浏览器控件进行搜索、个人资料查看和草稿编写
- Apollo/Clay API — 若用户具备访问权限,则用于数据增强和交叉引用
- GitHub MCP — 用于以开发者为中心的潜在客户筛选
- Apple Mail / Mail.app — 起草冷邮件或温邮件,但不自动发送
- 浏览器控件 — 当API覆盖范围缺失或受限时,用于LinkedIn和X
销售管道概述
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐ ┌──────────────┐ ┌─────────────────┐
│ 1. Signal │────>│ 2. Mutual │────>│ 3. Warm Path │────>│ 4. Enrich │────>│ 5. Outreach │
│ Scoring │ │ Ranking │ │ Discovery │ │ │ │ Draft │
└─────────────┘ └──────────────┘ └─────────────────┘ └──────────────┘ └─────────────────┘
外联前的语音沟通
切勿直接套用通用销售话术来起草外联邮件。
在 brand-voice ,当用户的语气至关重要时,应优先使用该技能。复用其 VOICE PROFILE ,而不是在该技能中临时重新设计风格。
如果可访问实时 X 数据,请在起草前提取最近的原始帖子。如果不可用,请使用提供的示例或现有的最佳仓库/网站素材。
第一阶段:信号评分
在目标垂直领域中搜索信号值较高的人士。根据以下标准为每个人分配权重:
| 信号 | 权重 | 来源 |
|---|---|---|
| 职位/头衔匹配度 | 30% | Exa、LinkedIn |
| 行业匹配度 | 25% | Exa公司搜索 |
| 该主题的近期动态 | 20% | X API搜索,Exa |
| 关注者数量 / 影响力 | 10% | X API |
| 地理位置邻近度 | 10% | Exa、LinkedIn |
| 与您内容的互动 | 5% | X API交互 |
Signal 搜索方法
# Step 1: Define target parameters
target_verticals = ["prediction markets", "AI tooling", "developer tools"]
target_roles = ["founder", "CEO", "CTO", "VP Engineering", "investor", "partner"]
target_locations = ["San Francisco", "New York", "London", "remote"]
# Step 2: Exa deep search for people
for vertical in target_verticals:
results = web_search_exa(
query=f"{vertical} {role} founder CEO",
category="company",
numResults=20
)
# Score each result
# Step 3: X API search for active voices
x_search = search_recent_tweets(
query="prediction markets OR AI tooling OR developer tools",
max_results=100
)
# Extract and score unique authors
第二阶段:双向排名
针对每个已打分的目标,分析用户的社交图谱以找出最热络的路径。
排序模型
- 提取用户的 X 关注列表和 LinkedIn 联系人
- 针对每个高信号目标,检查是否有共同联系人
- 应用
social-graph-ranker模型来评估桥梁价值 - 按以下因素对互相关联者进行排序:
| 因素 | 权重 |
|---|---|
| 与目标的连接数 | 40% — 权重最高,连接数最多 = 排名最高 |
| 互相关联者的当前职位/公司 | 20% — 决策者 vs 个人贡献者 |
| 共同联系人的所在地 | 15% — 同一城市 = 更容易引荐 |
| 行业契合度 | 15% — 同一垂直领域 = 自然引荐 |
| 对方的X账号/领英 | 10% — 便于外联时识别 |
基本规则:
Use social-graph-ranker when the user wants the graph math itself,
the bridge ranking as a standalone report, or explicit decay-model tuning.
在此技能中,使用相同的加权桥梁模型:
B(m) = Σ_{t ∈ T} w(t) · λ^(d(m,t) - 1)
R(m) = B_ext(m) · (1 + β · engagement(m))
解读:
- 第一层:高
R(m)且直接的桥梁路径 → 温和的引荐请求 - 第2层:中等
R(m)且为单跳桥梁路径 → 条件性引荐请求 - 第三级:无可行的桥梁 -> 使用相同的潜在客户记录进行直接冷接触
输出格式
If the user explicitly wants the ranking engine broken out, the math visualized, or the network scored outside the full lead workflow, run `social-graph-ranker` as a standalone pass first and feed the result back into this pipeline.
MUTUAL RANKING REPORT
=====================
#1 @mutual_handle (Score: 92)
Name: Jane Smith
Role: Partner @ Acme Ventures
Location: San Francisco
Connections to targets: 7
Connected to: @target1, @target2, @target3, @target4, @target5, @target6, @target7
Best intro path: Jane invested in Target1's company
#2 @mutual_handle2 (Score: 85)
...
第三阶段:暖路径发现
针对每个目标,找出最短的引荐链:
You ──[follows]──> Mutual A ──[invested in]──> Target Company
You ──[follows]──> Mutual B ──[co-founded with]──> Target Person
You ──[met at]──> Event ──[also attended]──> Target Person
路径类型(按亲密度排序)
- 直接共同联系人 — 双方都关注或认识同一个人
- 投资组合关联 — 双方均投资于或担任目标公司的顾问
- 同事/校友——双方曾在同一公司工作或就读于同一所学校
- 活动重叠 — 双方都参加了同一场会议/项目
- 内容互动——目标对象与共同联系人互动过,或反之
第4阶段:信息丰富
针对每条合格线索,提取:
- 全名、当前职位、公司
- 公司规模、融资阶段、近期新闻
- 最近的X平台帖子(过去30天)——主题、语气、兴趣
- 与用户的共同兴趣(共同关注的对象、相似的内容)
- 公司近期动态(产品发布、融资轮次、招聘)
数据补充来源
- 示例:公司数据、新闻、博客文章
- X API:近期推文、个人简介、关注者
- GitHub:开源贡献(针对以开发者为中心的潜在客户)
- LinkedIn(通过浏览器访问):完整个人资料、工作经历、教育背景
第 5 阶段:外联草稿
为每位潜在客户生成个性化的外联内容。草稿应符合根据来源信息生成的语气特征,并适配目标渠道。
渠道规则
电子邮件
- 适用于最高价值的冷门触达、暖场引荐、投资者联络及合作伙伴邀约
- 当本地桌面控制可用时,默认在 Apple Mail / Mail.app 中起草
- 先创建草稿,除非用户明确要求,否则不要自动发送
- 主题行应简洁具体,避免花哨
- 当目标对象在该平台活跃时、在 LinkedIn 上双方人脉关联度更高时,或通过电子邮件联系的把握度较低时使用
- 如果可用,优先使用 API 访问
- 否则,请使用浏览器控件查看个人资料、近期活动并起草消息
- 内容应比电子邮件更简短,并避免虚假的职业热情
X
- 适用于需要高度语境化的运营人员、建设者或投资者外联,此时公开发帖行为至关重要
- 搜索、时间线及互动分析时,优先使用API访问
- 必要时可退而求其次使用浏览器控制
- 私信和公开回复应比电子邮件更为精炼,并应引用目标对象时间轴上的真实内容
渠道选择准则
按以下顺序选择一个主要渠道:
- 通过电子邮件进行暖场介绍
- 直接发送电子邮件
- LinkedIn私信
- X 私信或回复
仅在有充分理由且发送频率不会让人感觉像垃圾邮件时,才使用多渠道沟通。
暖场引荐请求(发给共同联系人)
目标:
- 一个明确的请求
- 一个说明此次引荐合理性的具体理由
- 如有需要,附上便于转发的简介
避免:
- 对公司进行过度解释
- 堆砌社会证明
- 听起来像募捐模板
直接冷门外联(针对目标受众)
目标:
- 从具体且近期的事例切入
- 阐明双方契合度确有其事
- 提出一个低门槛的请求
避免:
- 泛泛的赞美
- 罗列个人特质
- 诸如“希望能建立联系”之类的笼统请求
- 生硬的修辞问句
执行模式
针对每个目标,生成:
- 推荐的沟通渠道
- 选择该渠道的最佳理由
- 信息草稿
- 可选的后续草稿
- 如果选择电子邮件作为沟通渠道且可使用 Apple Mail,请创建邮件草稿,而非仅返回纯文本
如果可以使用浏览器控制功能:
- LinkedIn:查看目标个人资料、近期动态及双方背景信息,然后起草或准备消息
- X:查看近期帖子或回复,然后起草私信或公开回复内容
如果支持桌面自动化:
- Apple Mail:创建包含主题、正文和收件人的邮件草稿
未经用户明确批准,请勿自动发送消息。
反模式
- 缺乏个性化的通用模板
- 用冗长的段落介绍整个公司
- 在一封邮件中提出多项请求
- 缺乏具体细节的虚假亲切感
- 批量发送且合并字段显露的邮件
- 在电子邮件、领英和X平台上重复使用完全相同的文案
- 充斥着平台模板化的生硬内容,而非作者真实的语气
配置
用户应设置以下环境变量:
# Required
export X_BEARER_TOKEN="..."
export X_ACCESS_TOKEN="..."
export X_ACCESS_TOKEN_SECRET="..."
export X_CONSUMER_KEY="..."
export X_CONSUMER_SECRET="..."
export EXA_API_KEY="..."
# Optional
export LINKEDIN_COOKIE="..." # For browser-use LinkedIn access
export APOLLO_API_KEY="..." # For Apollo enrichment
代理
该技能包含位于 agents/ 子目录中包含专用代理:
- signal-scorer — 根据相关性信号搜索并排序潜在客户
- mutual-mapper — 映射社交图谱连接并查找潜在合作路径
- enrichment-agent — 提取详细的个人资料和公司数据
- outreach-drafter — 生成个性化消息
使用示例
User: find me the top 20 people in prediction markets I should reach out to
Agent workflow:
1. signal-scorer searches Exa and X for prediction market leaders
2. mutual-mapper checks user's X graph for shared connections
3. enrichment-agent pulls company data and recent activity
4. outreach-drafter generates personalized messages for top ranked leads
Output: Ranked list with warm paths, voice profile summary, and channel-specific outreach drafts or drafts-in-app
相关技能
brand-voice用于规范化语音采集connections-optimizer用于外联前的“先审核”式网络修剪与扩展
---
name: lead-intelligence
description: Finds, scores, and reaches high-value contacts through social graph analysis and warm path discovery, generating personalized outreach drafts for email, LinkedIn, and X.
---
# Lead Intelligence
Agent-powered lead intelligence pipeline that finds, scores, and reaches high-value contacts through social graph analysis and warm path discovery.
## When to Activate
- User wants to find leads or prospects in a specific industry
- Building an outreach list for partnerships, sales, or fundraising
- Researching who to reach out to and the best path to reach them
- User says "find leads", "outreach list", "who should I reach out to", "warm intros"
- Needs to score or rank a list of contacts by relevance
- Wants to map mutual connections to find warm introduction paths
## Tool Requirements
### Required
- **Exa MCP** — Deep web search for people, companies, and signals (`web_search_exa`)
- **X API** — Follower/following graph, mutual analysis, recent activity (`X_BEARER_TOKEN`, plus write-context credentials such as `X_CONSUMER_KEY`, `X_CONSUMER_SECRET`, `X_ACCESS_TOKEN`, `X_ACCESS_TOKEN_SECRET`)
### Optional (enhance results)
- **LinkedIn** — Direct API if available, otherwise browser control for search, profile inspection, and drafting
- **Apollo/Clay API** — For enrichment cross-reference if user has access
- **GitHub MCP** — For developer-centric lead qualification
- **Apple Mail / Mail.app** — Draft cold or warm email without sending automatically
- **Browser control** — For LinkedIn and X when API coverage is missing or constrained
## Pipeline Overview
```
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐ ┌──────────────┐ ┌─────────────────┐
│ 1. Signal │────>│ 2. Mutual │────>│ 3. Warm Path │────>│ 4. Enrich │────>│ 5. Outreach │
│ Scoring │ │ Ranking │ │ Discovery │ │ │ │ Draft │
└─────────────┘ └──────────────┘ └─────────────────┘ └──────────────┘ └─────────────────┘
```
## Voice Before Outreach
Do not draft outbound from generic sales copy.
Run `brand-voice` first whenever the user's voice matters. Reuse its `VOICE PROFILE` instead of re-deriving style ad hoc inside this skill.
If live X access is available, pull recent original posts before drafting. If not, use supplied examples or the best repo/site material available.
## Stage 1: Signal Scoring
Search for high-signal people in target verticals. Assign a weight to each based on:
| Signal | Weight | Source |
|--------|--------|--------|
| Role/title alignment | 30% | Exa, LinkedIn |
| Industry match | 25% | Exa company search |
| Recent activity on topic | 20% | X API search, Exa |
| Follower count / influence | 10% | X API |
| Location proximity | 10% | Exa, LinkedIn |
| Engagement with your content | 5% | X API interactions |
### Signal Search Approach
```python
# Step 1: Define target parameters
target_verticals = ["prediction markets", "AI tooling", "developer tools"]
target_roles = ["founder", "CEO", "CTO", "VP Engineering", "investor", "partner"]
target_locations = ["San Francisco", "New York", "London", "remote"]
# Step 2: Exa deep search for people
for vertical in target_verticals:
results = web_search_exa(
query=f"{vertical} {role} founder CEO",
category="company",
numResults=20
)
# Score each result
# Step 3: X API search for active voices
x_search = search_recent_tweets(
query="prediction markets OR AI tooling OR developer tools",
max_results=100
)
# Extract and score unique authors
```
## Stage 2: Mutual Ranking
For each scored target, analyze the user's social graph to find the warmest path.
### Ranking Model
1. Pull user's X following list and LinkedIn connections
2. For each high-signal target, check for shared connections
3. Apply the `social-graph-ranker` model to score bridge value
4. Rank mutuals by:
| Factor | Weight |
|--------|--------|
| Number of connections to targets | 40% — highest weight, most connections = highest rank |
| Mutual's current role/company | 20% — decision maker vs individual contributor |
| Mutual's location | 15% — same city = easier intro |
| Industry alignment | 15% — same vertical = natural intro |
| Mutual's X handle / LinkedIn | 10% — identifiability for outreach |
Canonical rule:
```text
Use social-graph-ranker when the user wants the graph math itself,
the bridge ranking as a standalone report, or explicit decay-model tuning.
```
Inside this skill, use the same weighted bridge model:
```text
B(m) = Σ_{t ∈ T} w(t) · λ^(d(m,t) - 1)
R(m) = B_ext(m) · (1 + β · engagement(m))
```
Interpretation:
- Tier 1: high `R(m)` and direct bridge paths -> warm intro asks
- Tier 2: medium `R(m)` and one-hop bridge paths -> conditional intro asks
- Tier 3: no viable bridge -> direct cold outreach using the same lead record
### Output Format
```
If the user explicitly wants the ranking engine broken out, the math visualized, or the network scored outside the full lead workflow, run `social-graph-ranker` as a standalone pass first and feed the result back into this pipeline.
MUTUAL RANKING REPORT
=====================
#1 @mutual_handle (Score: 92)
Name: Jane Smith
Role: Partner @ Acme Ventures
Location: San Francisco
Connections to targets: 7
Connected to: @target1, @target2, @target3, @target4, @target5, @target6, @target7
Best intro path: Jane invested in Target1's company
#2 @mutual_handle2 (Score: 85)
...
```
## Stage 3: Warm Path Discovery
For each target, find the shortest introduction chain:
```
You ──[follows]──> Mutual A ──[invested in]──> Target Company
You ──[follows]──> Mutual B ──[co-founded with]──> Target Person
You ──[met at]──> Event ──[also attended]──> Target Person
```
### Path Types (ordered by warmth)
1. **Direct mutual** — You both follow/know the same person
2. **Portfolio connection** — Mutual invested in or advises target's company
3. **Co-worker/alumni** — Mutual worked at same company or attended same school
4. **Event overlap** — Both attended same conference/program
5. **Content engagement** — Target engaged with mutual's content or vice versa
## Stage 4: Enrichment
For each qualified lead, pull:
- Full name, current title, company
- Company size, funding stage, recent news
- Recent X posts (last 30 days) — topics, tone, interests
- Mutual interests with user (shared follows, similar content)
- Recent company events (product launch, funding round, hiring)
### Enrichment Sources
- Exa: company data, news, blog posts
- X API: recent tweets, bio, followers
- GitHub: open source contributions (for developer-centric leads)
- LinkedIn (via browser-use): full profile, experience, education
## Stage 5: Outreach Draft
Generate personalized outreach for each lead. The draft should match the source-derived voice profile and the target channel.
### Channel Rules
#### Email
- Use for the highest-value cold outreach, warm intros, investor outreach, and partnership asks
- Default to drafting in Apple Mail / Mail.app when local desktop control is available
- Create drafts first, do not send automatically unless the user explicitly asks
- Subject line should be plain and specific, not clever
#### LinkedIn
- Use when the target is active there, when mutual graph context is stronger on LinkedIn, or when email confidence is low
- Prefer API access if available
- Otherwise use browser control to inspect profiles, recent activity, and draft the message
- Keep it shorter than email and avoid fake professional warmth
#### X
- Use for high-context operator, builder, or investor outreach where public posting behavior matters
- Prefer API access for search, timeline, and engagement analysis
- Fall back to browser control when needed
- DMs and public replies should be much tighter than email and should reference something real from the target's timeline
#### Channel Selection Heuristic
Pick one primary channel in this order:
1. warm intro by email
2. direct email
3. LinkedIn DM
4. X DM or reply
Use multi-channel only when there is a strong reason and the cadence will not feel spammy.
### Warm Intro Request (to mutual)
Goal:
- one clear ask
- one concrete reason this intro makes sense
- easy-to-forward blurb if needed
Avoid:
- overexplaining your company
- social-proof stacking
- sounding like a fundraiser template
### Direct Cold Outreach (to target)
Goal:
- open from something specific and recent
- explain why the fit is real
- make one low-friction ask
Avoid:
- generic admiration
- feature dumping
- broad asks like "would love to connect"
- forced rhetorical questions
### Execution Pattern
For each target, produce:
1. the recommended channel
2. the reason that channel is best
3. the message draft
4. optional follow-up draft
5. if email is the chosen channel and Apple Mail is available, create a draft instead of only returning text
If browser control is available:
- LinkedIn: inspect target profile, recent activity, and mutual context, then draft or prepare the message
- X: inspect recent posts or replies, then draft DM or public reply language
If desktop automation is available:
- Apple Mail: create draft email with subject, body, and recipient
Do not send messages automatically without explicit user approval.
### Anti-Patterns
- generic templates with no personalization
- long paragraphs explaining your whole company
- multiple asks in one message
- fake familiarity without specifics
- bulk-sent messages with visible merge fields
- identical copy reused for email, LinkedIn, and X
- platform-shaped slop instead of the author's actual voice
## Configuration
Users should set these environment variables:
```bash
# Required
export X_BEARER_TOKEN="..."
export X_ACCESS_TOKEN="..."
export X_ACCESS_TOKEN_SECRET="..."
export X_CONSUMER_KEY="..."
export X_CONSUMER_SECRET="..."
export EXA_API_KEY="..."
# Optional
export LINKEDIN_COOKIE="..." # For browser-use LinkedIn access
export APOLLO_API_KEY="..." # For Apollo enrichment
```
## Agents
This skill includes specialized agents in the `agents/` subdirectory:
- **signal-scorer** — Searches and ranks prospects by relevance signals
- **mutual-mapper** — Maps social graph connections and finds warm paths
- **enrichment-agent** — Pulls detailed profile and company data
- **outreach-drafter** — Generates personalized messages
## Example Usage
```
User: find me the top 20 people in prediction markets I should reach out to
Agent workflow:
1. signal-scorer searches Exa and X for prediction market leaders
2. mutual-mapper checks user's X graph for shared connections
3. enrichment-agent pulls company data and recent activity
4. outreach-drafter generates personalized messages for top ranked leads
Output: Ranked list with warm paths, voice profile summary, and channel-specific outreach drafts or drafts-in-app
```
## Related Skills
- `brand-voice` for canonical voice capture
- `connections-optimizer` for review-first network pruning and expansion before outreach
所有文件
5 个文件安装 lead-intelligence
下载技能文件并将其解压到 .claude/skills/ 目录中。
下载ZIP克隆仓库并复制技能文件到您的项目中。
git clone https://github.com/affaan-m/ECC/tree/main/skills/lead-intelligence # Copy SKILL.md to your .claude/skills/ directory
复制





首页
