---
id: daily-lead-intelligence
name: "lead-intelligence"
url: https://skills.yangsir.net/skill/daily-lead-intelligence
author: affaan-m
domain: sales
tags: ["lead-generation", "sales-intelligence", "social-analysis", "crm", "b2b-sales"]
install_count: 3400
rating: 4.40 (16 reviews)
github: https://github.com/affaan-m/everything-claude-code
---

# lead-intelligence

> 通过社交图谱分析自动发现和评分高价值潜在客户，识别最佳联系路径并建立触达列表

**Stats**: 3,400 installs · 4.4/5 (16 reviews)

## Before / After 对比

### 潜在客户开发

**Before**:

人工搜索LinkedIn、公司官网等平台收集目标公司决策人信息，手动分析关系网络，一天整理10个联系人，转化率低

**After**:

自动分析社交图谱发现高价值联系人，评分排序并推荐最佳触达路径，1小时生成50个精准潜客列表，转化率提升3倍

| Metric | Before | After | Change |
|---|---|---|---|
| 开发效率 | 10人/天 | 50人/天 | +400% |

## Readme

# lead-intelligence

# 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

```
# 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

- Pull user's X following list and LinkedIn connections

- For each high-signal target, check for shared connections

- Apply the `social-graph-ranker` model to score bridge value

- 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:

```
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:

```
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)

- **Direct mutual** — You both follow/know the same person

- **Portfolio connection** — Mutual invested in or advises target's company

- **Co-worker/alumni** — Mutual worked at same company or attended same school

- **Event overlap** — Both attended same conference/program

- **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:

- warm intro by email

- direct email

- LinkedIn DM

- 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:

- the recommended channel

- the reason that channel is best

- the message draft

- optional follow-up draft

- 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:

```
# 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

Weekly Installs574Repository[affaan-m/everyt…ude-code](https://github.com/affaan-m/everything-claude-code)GitHub Stars152.8KFirst Seen13 days agoSecurity Audits[Gen Agent Trust HubPass](/affaan-m/everything-claude-code/lead-intelligence/security/agent-trust-hub)[SocketWarn](/affaan-m/everything-claude-code/lead-intelligence/security/socket)[SnykWarn](/affaan-m/everything-claude-code/lead-intelligence/security/snyk)Installed oncodex536opencode512antigravity507gemini-cli507cursor507kimi-cli506

---
*Source: https://skills.yangsir.net/skill/daily-lead-intelligence*
*Markdown mirror: https://skills.yangsir.net/api/skill/daily-lead-intelligence/markdown*