opção
LarLar Skill Outros lead-intelligence

lead-intelligence

affaan-m/ECC affaan-m/ECC

Identifica, avalia e alcança contatos de alto valor por meio da análise do gráfico social e da descoberta de caminhos promissores, gerando rascunhos personalizados de contato para e-mail, LinkedIn e X.

...Expandir tudo
9
Tempo atualizado 11 de Outubro de 2026

Inteligência de Leads

Funil de inteligência de leads impulsionado por agentes que identifica, classifica e alcança contatos de alto valor por meio da análise de grafos sociais e da descoberta de caminhos de contato já estabelecidos.

Quando ativar

  • O usuário deseja encontrar leads ou clientes potenciais em um setor específico
  • Criação de uma lista de contatos para parcerias, vendas ou captação de recursos
  • Pesquisar quem contatar e o melhor caminho para chegar até essas pessoas
  • O usuário diz “encontrar leads”, “lista de contatos”, “com quem devo entrar em contato”, “apresentações em contatos já estabelecidos”
  • Precisa pontuar ou classificar uma lista de contatos por relevância
  • Deseja mapear conexões mútuas para encontrar caminhos de apresentações favoráveis

Requisitos da ferramenta

Obrigatórios

  • Exa MCP — Pesquisa na deep web por pessoas, empresas e sinais (web_search_exa)
  • X API — Gráfico de seguidores/seguidos, análise de conexões mútuas, atividades recentes (X_BEARER_TOKEN, além de credenciais de contexto de gravação, como X_CONSUMER_KEY, X_CONSUMER_SECRET, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET)

Opcional (para aprimorar os resultados)

  • LinkedIn — API direta, se disponível; caso contrário, controle do navegador para pesquisa, inspeção de perfil e elaboração de rascunhos
  • API do Apollo/Clay — Para enriquecimento e referência cruzada, caso o usuário tenha acesso
  • GitHub MCP — Para qualificação de leads com foco em desenvolvedores
  • Apple Mail / Mail.app — Elabore rascunhos de e-mails “a frio” ou “a quente” sem enviá-los automaticamente
  • Controle do navegador — Para o LinkedIn e o X quando a cobertura da API estiver ausente ou limitada

Visão geral do funil

┌─────────────┐     ┌──────────────┐     ┌─────────────────┐     ┌──────────────┐     ┌─────────────────┐
│ 1. Signal   │────>│ 2. Mutual    │────>│ 3. Warm Path    │────>│ 4. Enrich    │────>│ 5. Outreach     │
│    Scoring  │     │    Ranking   │     │    Discovery    │     │              │     │    Draft        │
└─────────────┘     └──────────────┘     └─────────────────┘     └──────────────┘     └─────────────────┘

Comunicação por voz antes do contato

Não redija mensagens de saída com base em modelos genéricos de vendas.

Execute brand-voice primeiro sempre que a voz do usuário for importante. Reutilize-a VOICE PROFILE em vez de criar um estilo ad hoc dentro desta skill.

Se houver acesso ao X em tempo real, recupere as postagens originais recentes antes de redigir. Caso contrário, use os exemplos fornecidos ou o melhor material disponível no repositório/site.

Etapa 1: Pontuação de sinais

Procure pessoas com alto sinal nos setores-alvo. Atribua um peso a cada uma com base em:

Sinal Ponderação Fonte
Alinhamento de função/cargo 30% Exa, LinkedIn
Correspondência com o setor 25% Pesquisa de empresas no Exa
Atividade recente sobre o tema 20% Pesquisa na API X, Exa
Número de seguidores / influência 10% API X
Proximidade geográfica 10% Exa, LinkedIn
Engajamento com seu conteúdo 5% X Interações com a API

Abordagem de pesquisa por sinais

# 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

Etapa 2: Classificação mútua

Para cada alvo pontuado, analise o gráfico social do usuário para encontrar o caminho mais promissor.

Modelo de classificação

  1. Recupere a lista de seguidores do usuário no X e suas conexões no LinkedIn
  2. Para cada alvo de alto sinal, verifique se há conexões em comum
  3. Aplique o social-graph-ranker modelo para pontuar o valor de ponte
  4. Classifique os contatos mútuos por:
Fator Peso
Número de conexões com os alvos 40% — maior peso: quanto mais conexões, maior a classificação
Função atual/empresa do contato 20% — tomador de decisão x colaborador individual
Localização do contato 15% — mesma cidade = apresentação mais fácil
Alinhamento setorial 15% — mesmo setor = apresentação natural
Nome de usuário no X / LinkedIn da pessoa em questão 10% — facilidade de identificação para contato

Regra canônica:

Use social-graph-ranker when the user wants the graph math itself,
the bridge ranking as a standalone report, or explicit decay-model tuning.

Dentro desta habilidade, use o mesmo modelo de ponte ponderada:

B(m) = Σ_{t ∈ T} w(t) · λ^(d(m,t) - 1)
R(m) = B_ext(m) · (1 + β · engagement(m))

Interpretação:

  • Nível 1: alta R(m) e caminhos diretos de ponte -> solicitações de apresentação por contato prévio
  • Nível 2: médio R(m) e caminhos de ponte de um salto -> solicitações de contato condicionais
  • Nível 3: sem ponte viável -> contato direto a frio usando o mesmo registro de lead

Formato de saída


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

Etapa 3: Descoberta de caminhos “quentes”

Para cada alvo, encontre a cadeia de introdução mais curta:

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

Tipos de caminhos (ordenados por grau de proximidade)

  1. Mútuo direto — Vocês dois seguem/conhecem a mesma pessoa
  2. Conexão de portfólio — Ambos investiram ou prestam consultoria à empresa do alvo
  3. Colega de trabalho/ex-aluno — Ambos trabalharam na mesma empresa ou estudaram na mesma instituição
  4. Sobreposição de eventos — Ambos participaram da mesma conferência/programa
  5. Engajamento com conteúdo — O alvo interagiu com o conteúdo do contato em comum ou vice-versa

Etapa 4: Enriquecimento

Para cada lead qualificado, obtenha:

  • Nome completo, cargo atual, empresa
  • Tamanho da empresa, estágio de financiamento, notícias recentes
  • Últimas X publicações (últimos 30 dias) — tópicos, tom, interesses
  • Interesses em comum com o usuário (seguidores compartilhados, conteúdo semelhante)
  • Eventos recentes da empresa (lançamento de produto, rodada de financiamento, contratações)

Fontes de enriquecimento

  • Ex.: dados da empresa, notícias, publicações no blog
  • API do X: tweets recentes, biografia, seguidores
  • GitHub: contribuições em código aberto (para leads voltados para desenvolvedores)
  • LinkedIn (via navegador): perfil completo, experiência profissional, formação acadêmica

Etapa 5: Rascunho da abordagem

Crie uma abordagem personalizada para cada lead. O rascunho deve corresponder ao perfil de tom de voz derivado da fonte e ao canal de destino.

Regras do canal

E-mail

  • Utilize para abordagens frias de maior valor, apresentações em ambiente familiar, contato com investidores e solicitações de parceria
  • Por padrão, redija no Apple Mail / Mail.app quando o controle local do desktop estiver disponível
  • Crie rascunhos primeiro; não envie automaticamente, a menos que o usuário solicite explicitamente
  • O assunto deve ser simples e específico, sem tentativas de ser engraçado

LinkedIn

  • Use quando o destinatário estiver ativo na plataforma, quando o contexto de conexões mútuas for mais forte no LinkedIn ou quando a confiança no e-mail for baixa
  • Prefira o acesso à API, se disponível
  • Caso contrário, use o controle do navegador para inspecionar perfis, atividades recentes e redigir a mensagem
  • Mantenha a mensagem mais curta do que um e-mail e evite demonstrar cordialidade profissional forçada

X

  • Use para abordagens de operadores, desenvolvedores ou investidores em contextos complexos, onde o comportamento nas publicações públicas é relevante
  • Dê preferência ao acesso à API para análises de pesquisa, linha do tempo e engajamento
  • Recorra ao controle do navegador quando necessário
  • Mensagens diretas e respostas públicas devem ser bem mais concisas do que e-mails e devem fazer referência a algo real da linha do tempo do destinatário

Heurística de seleção de canal

Escolha um canal principal nesta ordem:

  1. apresentação informal por e-mail
  2. e-mail direto
  3. mensagem direta no LinkedIn
  4. Mensagem direta no X ou resposta

Use o abordagem multicanal somente quando houver um motivo forte e a frequência não pareça spam.

Solicitação de apresentação amigável (a um contato em comum)

Objetivo:

  • um pedido claro
  • um motivo concreto pelo qual essa apresentação faz sentido
  • texto curto e fácil de encaminhar, se necessário

Evite:

  • explicar demais sobre sua empresa
  • acumular provas sociais
  • parecer um modelo de campanha de arrecadação de fundos

Abordagem direta a clientes em potencial (para o público-alvo)

Objetivo:

  • começar com algo específico e recente
  • explicar por que a combinação é real
  • fazer um pedido sem pressão

Evite:

  • admiração genérica
  • enumerar características
  • pedidos genéricos como “adoraria entrar em contato”
  • perguntas retóricas forçadas

Padrão de execução

Para cada alvo, produza:

  1. o canal recomendado
  2. o motivo pelo qual esse canal é o melhor
  3. o rascunho da mensagem
  4. rascunho opcional de acompanhamento
  5. se o e-mail for o canal escolhido e o Apple Mail estiver disponível, crie um rascunho em vez de apenas enviar o texto

Se o controle do navegador estiver disponível:

  • LinkedIn: analise o perfil de destino, as atividades recentes e o contexto mútuo; em seguida, redija ou prepare a mensagem
  • X: analise as postagens ou respostas recentes e, em seguida, elabore um rascunho para uma mensagem direta ou uma resposta pública

Se a automação no desktop estiver disponível:

  • Apple Mail: crie um rascunho de e-mail com assunto, corpo e destinatário

Não envie mensagens automaticamente sem a aprovação explícita do usuário.

Antipadrões

  • modelos genéricos sem personalização
  • parágrafos longos explicando toda a sua empresa
  • vários pedidos em uma única mensagem
  • falsa familiaridade sem detalhes
  • mensagens enviadas em massa com campos de fusão visíveis
  • texto idêntico reutilizado em e-mail, LinkedIn e X
  • texto genérico, moldado pela plataforma, em vez da voz autêntica do autor

Configuração

Os usuários devem definir estas variáveis de ambiente:

# 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

Agentes

Esta skill inclui agentes especializados no agents/ subdiretório:

  • signal-scorer — Pesquisa e classifica clientes potenciais com base em sinais de relevância
  • mutual-mapper — Mapeia conexões no grafo social e identifica caminhos promissores
  • enrichment-agent — Obtém dados detalhados de perfis e empresas
  • outreach-drafter — Gera mensagens personalizadas

Exemplo de uso

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

Habilidades relacionadas

  • brand-voice para captura canônica de voz
  • connections-optimizer para poda e expansão da rede com foco na revisão antes da abordagem
Ver no GitHub
---
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

Instalar lead-intelligence

Baixe e extraia os arquivos de habilidades para o diretório .claude/skills/.

Baixar ZIP

Clone o repositório e copie os arquivos da habilidade para o seu projeto.

git clone https://github.com/affaan-m/ECC/tree/main/skills/lead-intelligence # Copy SKILL.md to your .claude/skills/ directory

Copiar Copiar
Configuração rápida: Copie a pasta da habilidade para .claude/skills/ O Claude detectará e utilizará automaticamente a habilidade
Repositório affaan-m/ECC

Habilidades relacionadas

v4-new-features
Tempo atualizado 4 de Agosto de 2026
multica-creating-agents
Tempo atualizado 12 de Agosto de 2026
pixijs-application
Tempo atualizado 4 de Agosto de 2026
tilemaps
Tempo atualizado 4 de Agosto de 2026
OR