mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-04-12 20:53:34 +08:00
refactor: fold social graph ranking into lead intelligence
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# Everything Claude Code (ECC) — Agent Instructions
|
# Everything Claude Code (ECC) — Agent Instructions
|
||||||
|
|
||||||
This is a **production-ready AI coding plugin** providing 30 specialized agents, 140 skills, 60 commands, and automated hook workflows for software development.
|
This is a **production-ready AI coding plugin** providing 36 specialized agents, 142 skills, 68 commands, and automated hook workflows for software development.
|
||||||
|
|
||||||
**Version:** 1.9.0
|
**Version:** 1.9.0
|
||||||
|
|
||||||
@@ -139,9 +139,9 @@ Troubleshoot failures: check test isolation → verify mocks → fix implementat
|
|||||||
## Project Structure
|
## Project Structure
|
||||||
|
|
||||||
```
|
```
|
||||||
agents/ — 30 specialized subagents
|
agents/ — 36 specialized subagents
|
||||||
skills/ — 140 workflow skills and domain knowledge
|
skills/ — 142 workflow skills and domain knowledge
|
||||||
commands/ — 60 slash commands
|
commands/ — 68 slash commands
|
||||||
hooks/ — Trigger-based automations
|
hooks/ — Trigger-based automations
|
||||||
rules/ — Always-follow guidelines (common + per-language)
|
rules/ — Always-follow guidelines (common + per-language)
|
||||||
scripts/ — Cross-platform Node.js utilities
|
scripts/ — Cross-platform Node.js utilities
|
||||||
|
|||||||
10
README.md
10
README.md
@@ -220,7 +220,7 @@ For manual install instructions see the README in the `rules/` folder. When copy
|
|||||||
/plugin list everything-claude-code@everything-claude-code
|
/plugin list everything-claude-code@everything-claude-code
|
||||||
```
|
```
|
||||||
|
|
||||||
**That's it!** You now have access to 30 agents, 140 skills, and 60 commands.
|
**That's it!** You now have access to 36 agents, 142 skills, and 68 commands.
|
||||||
|
|
||||||
### Multi-model commands require additional setup
|
### Multi-model commands require additional setup
|
||||||
|
|
||||||
@@ -295,7 +295,7 @@ everything-claude-code/
|
|||||||
| |-- plugin.json # Plugin metadata and component paths
|
| |-- plugin.json # Plugin metadata and component paths
|
||||||
| |-- marketplace.json # Marketplace catalog for /plugin marketplace add
|
| |-- marketplace.json # Marketplace catalog for /plugin marketplace add
|
||||||
|
|
|
|
||||||
|-- agents/ # 30 specialized subagents for delegation
|
|-- agents/ # 36 specialized subagents for delegation
|
||||||
| |-- planner.md # Feature implementation planning
|
| |-- planner.md # Feature implementation planning
|
||||||
| |-- architect.md # System design decisions
|
| |-- architect.md # System design decisions
|
||||||
| |-- tdd-guide.md # Test-driven development
|
| |-- tdd-guide.md # Test-driven development
|
||||||
@@ -1109,9 +1109,9 @@ The configuration is automatically detected from `.opencode/opencode.json`.
|
|||||||
|
|
||||||
| Feature | Claude Code | OpenCode | Status |
|
| Feature | Claude Code | OpenCode | Status |
|
||||||
|---------|-------------|----------|--------|
|
|---------|-------------|----------|--------|
|
||||||
| Agents | PASS: 30 agents | PASS: 12 agents | **Claude Code leads** |
|
| Agents | PASS: 36 agents | PASS: 12 agents | **Claude Code leads** |
|
||||||
| Commands | PASS: 60 commands | PASS: 31 commands | **Claude Code leads** |
|
| Commands | PASS: 68 commands | PASS: 31 commands | **Claude Code leads** |
|
||||||
| Skills | PASS: 140 skills | PASS: 37 skills | **Claude Code leads** |
|
| Skills | PASS: 142 skills | PASS: 37 skills | **Claude Code leads** |
|
||||||
| Hooks | PASS: 8 event types | PASS: 11 events | **OpenCode has more!** |
|
| Hooks | PASS: 8 event types | PASS: 11 events | **OpenCode has more!** |
|
||||||
| Rules | PASS: 29 rules | PASS: 13 instructions | **Claude Code leads** |
|
| Rules | PASS: 29 rules | PASS: 13 instructions | **Claude Code leads** |
|
||||||
| MCP Servers | PASS: 14 servers | PASS: Full | **Full parity** |
|
| MCP Servers | PASS: 14 servers | PASS: Full | **Full parity** |
|
||||||
|
|||||||
@@ -284,8 +284,7 @@
|
|||||||
"skills/investor-materials",
|
"skills/investor-materials",
|
||||||
"skills/investor-outreach",
|
"skills/investor-outreach",
|
||||||
"skills/lead-intelligence",
|
"skills/lead-intelligence",
|
||||||
"skills/market-research",
|
"skills/market-research"
|
||||||
"skills/social-graph-ranker"
|
|
||||||
],
|
],
|
||||||
"targets": [
|
"targets": [
|
||||||
"claude",
|
"claude",
|
||||||
|
|||||||
@@ -93,6 +93,52 @@ For each scored target, analyze the user's social graph to find the warmest path
|
|||||||
| Industry alignment | 15% — same vertical = natural intro |
|
| Industry alignment | 15% — same vertical = natural intro |
|
||||||
| Mutual's X handle / LinkedIn | 10% — identifiability for outreach |
|
| Mutual's X handle / LinkedIn | 10% — identifiability for outreach |
|
||||||
|
|
||||||
|
### Weighted Bridge Ranking
|
||||||
|
|
||||||
|
Treat this as the canonical network-ranking stage for lead intelligence. Do not run a separate graph skill when this stage is enough.
|
||||||
|
|
||||||
|
Given:
|
||||||
|
- `T` = target leads
|
||||||
|
- `M` = your mutuals / existing connections
|
||||||
|
- `d(m, t)` = shortest hop distance from mutual `m` to target `t`
|
||||||
|
- `w(t)` = target weight from signal scoring
|
||||||
|
|
||||||
|
Compute the base bridge score for each mutual:
|
||||||
|
|
||||||
|
```text
|
||||||
|
B(m) = Σ_{t ∈ T} w(t) · λ^(d(m,t) - 1)
|
||||||
|
```
|
||||||
|
|
||||||
|
Where:
|
||||||
|
- `λ` is the decay factor, usually `0.5`
|
||||||
|
- a direct connection contributes full value
|
||||||
|
- each extra hop halves the contribution
|
||||||
|
|
||||||
|
For second-order reach, expand one level into the mutual's own network:
|
||||||
|
|
||||||
|
```text
|
||||||
|
B_ext(m) = B(m) + α · Σ_{m' ∈ N(m) \\ M} Σ_{t ∈ T} w(t) · λ^(d(m',t))
|
||||||
|
```
|
||||||
|
|
||||||
|
Where:
|
||||||
|
- `N(m) \\ M` is the set of people the mutual knows that you do not
|
||||||
|
- `α` is the second-order discount, usually `0.3`
|
||||||
|
|
||||||
|
Then rank by response-adjusted bridge value:
|
||||||
|
|
||||||
|
```text
|
||||||
|
R(m) = B_ext(m) · (1 + β · engagement(m))
|
||||||
|
```
|
||||||
|
|
||||||
|
Where:
|
||||||
|
- `engagement(m)` is a normalized responsiveness score
|
||||||
|
- `β` is the engagement bonus, usually `0.2`
|
||||||
|
|
||||||
|
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
|
### Output Format
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -1,199 +0,0 @@
|
|||||||
---
|
|
||||||
name: social-graph-ranker
|
|
||||||
description: Weighted social graph traversal that ranks your network connections by proximity to target leads. Uses exponential decay across hops, parallel execution with lead-intelligence skill, and API-driven outreach prioritization. Replaces Apollo, Clay, and manual networking.
|
|
||||||
metadata:
|
|
||||||
tags: networking, outreach, leads, graph-theory, x-api, linkedin, exa
|
|
||||||
---
|
|
||||||
|
|
||||||
## When to Use
|
|
||||||
|
|
||||||
Use this skill when you need to:
|
|
||||||
- Find warm intro paths to specific people or companies
|
|
||||||
- Rank your existing connections by networking value
|
|
||||||
- Identify which mutuals to ask for introductions
|
|
||||||
- Prioritize outbound outreach by warmth and proximity
|
|
||||||
- Map your social graph against a target lead list
|
|
||||||
|
|
||||||
## How It Works
|
|
||||||
|
|
||||||
### Architecture
|
|
||||||
|
|
||||||
Two parallel pipelines feed a unified ranking engine:
|
|
||||||
|
|
||||||
```
|
|
||||||
┌─────────────────────────────────────────────────────────┐
|
|
||||||
│ SOCIAL GRAPH RANKER │
|
|
||||||
├──────────────────────┬──────────────────────────────────┤
|
|
||||||
│ INBOUND PIPELINE │ OUTBOUND PIPELINE │
|
|
||||||
│ │ │
|
|
||||||
│ Your Connections │ Target Lead List (ICP) │
|
|
||||||
│ ┌──────────────┐ │ ┌──────────────────┐ │
|
|
||||||
│ │ X Mutuals │ │ │ lead-intelligence │ │
|
|
||||||
│ │ X Followers │ │ │ skill (parallel) │ │
|
|
||||||
│ │ LI Connections│ │ │ Exa + X API + │ │
|
|
||||||
│ └──────┬───────┘ │ │ enrichment agents │ │
|
|
||||||
│ │ │ └────────┬─────────┘ │
|
|
||||||
│ ▼ │ ▼ │
|
|
||||||
│ ┌──────────────┐ │ ┌──────────────────┐ │
|
|
||||||
│ │ Connection │ │ │ Ranked Lead List │ │
|
|
||||||
│ │ Graph Build │ │ │ (scored by ICP │ │
|
|
||||||
│ │ (adjacency) │ │ │ fit + response │ │
|
|
||||||
│ └──────┬───────┘ │ │ probability) │ │
|
|
||||||
│ │ │ └────────┬─────────┘ │
|
|
||||||
│ └────────────┼──────────────┘ │
|
|
||||||
│ ▼ │
|
|
||||||
│ ┌──────────────────────┐ │
|
|
||||||
│ │ GRAPH INTERSECTION │ │
|
|
||||||
│ │ Match connections │ │
|
|
||||||
│ │ against targets │ │
|
|
||||||
│ └──────────┬───────────┘ │
|
|
||||||
│ ▼ │
|
|
||||||
│ ┌──────────────────────┐ │
|
|
||||||
│ │ WEIGHTED RANKING │ │
|
|
||||||
│ │ Exponential decay │ │
|
|
||||||
│ │ across hops │ │
|
|
||||||
│ └──────────┬───────────┘ │
|
|
||||||
│ ▼ │
|
|
||||||
│ ┌──────────────────────┐ │
|
|
||||||
│ │ PRIORITIZED OUTPUT │ │
|
|
||||||
│ │ 1. Warm intro asks │ │
|
|
||||||
│ │ 2. Direct outreach │ │
|
|
||||||
│ │ 3. Network gaps │ │
|
|
||||||
│ └──────────────────────┘ │
|
|
||||||
└─────────────────────────────────────────────────────────┘
|
|
||||||
```
|
|
||||||
|
|
||||||
### The Math: Weighted Graph Proximity Score
|
|
||||||
|
|
||||||
Given:
|
|
||||||
- **T** = set of target leads you want to reach
|
|
||||||
- **M** = set of your mutuals/connections
|
|
||||||
- **G** = social graph (adjacency)
|
|
||||||
- **d(m, t)** = shortest path distance from mutual m to target t
|
|
||||||
|
|
||||||
For each mutual m, compute:
|
|
||||||
|
|
||||||
**Bridge Score:**
|
|
||||||
|
|
||||||
```
|
|
||||||
B(m) = Σ_{t ∈ T} w(t) · λ^{d(m,t) - 1}
|
|
||||||
```
|
|
||||||
|
|
||||||
Where:
|
|
||||||
- `w(t)` = target weight (from lead-intelligence signal score: role 30%, industry 25%, activity 20%, influence 10%, location 10%, engagement 5%)
|
|
||||||
- `λ` = decay factor, typically 0.5 (halves value each hop)
|
|
||||||
- `d(m,t)` = hop distance (1 = direct connection, 2 = mutual-of-mutual, etc.)
|
|
||||||
- Convention: `d(m,t) = 1` for direct connection, so `λ^0 = 1` (full value)
|
|
||||||
|
|
||||||
**Properties:**
|
|
||||||
- Direct connection to target: contributes `w(t) · 1.0`
|
|
||||||
- One hop away: contributes `w(t) · 0.5`
|
|
||||||
- Two hops: contributes `w(t) · 0.25`
|
|
||||||
- Three hops: contributes `w(t) · 0.125`
|
|
||||||
- Effectively zero beyond ~6 hops (Gaussian/exponential decay → 0)
|
|
||||||
|
|
||||||
**Extended Score (second-order network value):**
|
|
||||||
|
|
||||||
For deeper traversal, also consider the mutual's own network reach:
|
|
||||||
|
|
||||||
```
|
|
||||||
B_ext(m) = B(m) + α · Σ_{m' ∈ N(m) \ M} Σ_{t ∈ T} w(t) · λ^{d(m',t)}
|
|
||||||
```
|
|
||||||
|
|
||||||
Where:
|
|
||||||
- `N(m) \ M` = connections of m that you DON'T already have
|
|
||||||
- `α` = second-order discount (typically 0.3)
|
|
||||||
- This captures: "even if m doesn't know my targets directly, m knows people I don't, who might"
|
|
||||||
|
|
||||||
**Final Ranking:**
|
|
||||||
|
|
||||||
```
|
|
||||||
R(m) = B_ext(m) · (1 + β · engagement(m))
|
|
||||||
```
|
|
||||||
|
|
||||||
Where:
|
|
||||||
- `engagement(m)` = normalized score of how responsive m is (reply rate, interaction frequency)
|
|
||||||
- `β` = engagement bonus weight (typically 0.2)
|
|
||||||
|
|
||||||
### Execution Steps
|
|
||||||
|
|
||||||
1. **Build Target List**
|
|
||||||
- Run lead-intelligence skill in parallel to generate scored ICP leads
|
|
||||||
- Or provide manual target list with names/handles
|
|
||||||
|
|
||||||
2. **Harvest Your Graph**
|
|
||||||
- X API: `GET /2/users/:id/following` and `GET /2/users/:id/followers`
|
|
||||||
- LinkedIn: connection export CSV or browser-use scraping
|
|
||||||
- Build adjacency map: `mutual → [their connections]`
|
|
||||||
|
|
||||||
3. **Intersect and Score**
|
|
||||||
- For each mutual, check which targets they follow/connect with
|
|
||||||
- Compute B(m) with decay
|
|
||||||
- For top-k mutuals, expand one more hop and compute B_ext(m)
|
|
||||||
|
|
||||||
4. **Generate Output**
|
|
||||||
- Tier 1: Mutuals with B(m) > threshold → warm intro requests
|
|
||||||
- Tier 2: Targets with no warm path → direct cold outreach via lead-intelligence
|
|
||||||
- Tier 3: Network gaps → suggest who to follow/connect with to build bridges
|
|
||||||
|
|
||||||
5. **Draft Messages**
|
|
||||||
- Warm intro: "Hey [mutual], I saw you're connected to [target]. I'm working on [context]. Would you be open to making an intro?"
|
|
||||||
- Uses outreach-drafter agent from lead-intelligence for personalization
|
|
||||||
|
|
||||||
### Configuration
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
# Target definition
|
|
||||||
targets:
|
|
||||||
- handle: "@targetperson"
|
|
||||||
platform: x
|
|
||||||
weight: 0.9 # override signal score
|
|
||||||
|
|
||||||
# Decay parameters
|
|
||||||
decay_factor: 0.5 # λ — halve value per hop
|
|
||||||
max_depth: 3 # don't traverse beyond 3 hops
|
|
||||||
second_order_discount: 0.3 # α — discount for network-of-network
|
|
||||||
engagement_bonus: 0.2 # β — bonus for responsive mutuals
|
|
||||||
|
|
||||||
# API configuration
|
|
||||||
x_api:
|
|
||||||
bearer_token: $X_BEARER_TOKEN
|
|
||||||
rate_limit_delay: 1.1 # seconds between API calls
|
|
||||||
linkedin:
|
|
||||||
method: csv_export # or browser_use
|
|
||||||
csv_path: ~/Downloads/Connections.csv
|
|
||||||
```
|
|
||||||
|
|
||||||
### Integration with lead-intelligence
|
|
||||||
|
|
||||||
This skill runs IN PARALLEL with lead-intelligence:
|
|
||||||
- lead-intelligence generates the target list (T) with signal scores
|
|
||||||
- social-graph-ranker maps your network against those targets
|
|
||||||
- Combined output: prioritized outreach plan with warm paths where available
|
|
||||||
|
|
||||||
### Example Output
|
|
||||||
|
|
||||||
```
|
|
||||||
BRIDGE RANKING — Top 10 Mutuals by Network Value
|
|
||||||
═══════════════════════════════════════════════════
|
|
||||||
|
|
||||||
#1 @alex_quant (B=4.72)
|
|
||||||
Direct → @kalshi_ceo (w=0.9), @polymarket_shayne (w=0.85)
|
|
||||||
1-hop → @a16z_crypto (w=0.7, via @defi_mike)
|
|
||||||
Action: Ask for intros to Kalshi + Polymarket
|
|
||||||
|
|
||||||
#2 @sarah_vc (B=3.15)
|
|
||||||
Direct → @sequoia_partner (w=0.95)
|
|
||||||
1-hop → @yc_gustaf (w=0.8, via @batch_founder)
|
|
||||||
Action: Ask for Sequoia intro
|
|
||||||
|
|
||||||
#3 @dev_community (B=2.88)
|
|
||||||
Direct → @cursor_ceo (w=0.6), @vercel_guillermo (w=0.6)
|
|
||||||
2-hop → @anthropic_dario (w=0.95, via @cursor_ceo → @anthropic_team)
|
|
||||||
Action: Ask for Cursor intro, mention Anthropic angle
|
|
||||||
|
|
||||||
NETWORK GAPS — No warm path exists
|
|
||||||
═══════════════════════════════════
|
|
||||||
@target_x — Suggest following @bridge_person_1, @bridge_person_2
|
|
||||||
@target_y — Direct cold outreach recommended (lead-intelligence draft ready)
|
|
||||||
```
|
|
||||||
Reference in New Issue
Block a user