Relationship Intelligence for the Warm Intro
Build a relationship graph across CRM, email, calendar, and prior deals; score intro paths, draft the ask, route it to the right human, and write outcomes back to memory.
Connect the graph sources and write the intro playbook
Connect the systems that hold your relationships: Attio or HubSpot for the CRM graph, Apollo for enrichment and contact validation, and Gmail for message history. Opulent reads these to build a scored map of who knows whom.
The judgment lives in a playbook, a reusable, named set of steps Opulent follows every run. It defines what counts as a relationship, how to score it, and the threshold for asking a connector to make an intro.
Playbook: !warm-intro Given a target company and, when known, a target person: 1. Resolve the target in Apollo: confirm current company, role, and any mutual contacts already in our graph. 2. Search Attio/HubSpot for people and companies tied to the target: colleagues, investors, portfolio companies, advisors, past deals, shared events, or prior speakers. 3. Search Gmail for threads between our team and each connector in the last 24 months; score each path by recency and frequency. 4. Score every path 0-100: strength = recency × frequency × type weight (warm intro > shared investor > same event > weak link). 5. Draft a personalized intro request for the top path, with context on why the connector is the right person and what the target cares about right now. 6. Route the draft to the connector via Gmail with a one-click approve option. If no path scores above 70, flag for manual research.
Give Opulent read access to calendar history if your org stores meeting data in a searchable source. A meeting in the last six months usually beats a cold email thread from two years ago.
Arm the trigger: on-demand ask or weekly refresh
Send the initial prompt with the target company or person filled in. Opulent runs the graph query and returns a ranked set of paths with the draft ask for the top one.
For a standing target list, schedule the playbook to refresh weekly: it rescans the CRM and Gmail, updates scores as relationships evolve, and flags new warm paths before you start cold outreach.
The sharp edge: scoring depends on clean CRM data. A duplicate contact or stale employer breaks the path. Run a one-time dedup and employer-refresh before you trust the scores.
Run one concrete intro request end to end
Take a target like Finch AI, a Series B fintech you want to meet. The playbook resolves the company in Apollo, finds three possible paths in the CRM, and checks Gmail for recent conversation.
Opulent ranks the paths: your former colleague Sarah (now at a Finch AI investor) scores highest because she emailed you last month; a shared advisor scores lower because the thread is two years old; a weak LinkedIn connection scores lowest.
Opulent drafts the ask for Sarah: a short paragraph naming the target, why the intro matters, and the one-line proof point Sarah can forward. It sends the draft to you, not the target, so a human approves before any outreach.
Target: Finch AI, business development lead Top path found: - Connector: Sarah Chen (ex-our company, now principal at the lead investor in Finch AI) - Evidence: 6 email threads in the last 18 months; last contact 3 weeks ago. - Draft ask: "Hi Sarah, would you be open to introducing me to the BD lead at Finch AI? We're seeing the same embedded-finance pattern they solve, and I think they'd value a 15-min swap." Route: sent to your inbox for one-click approval or edit.
What exists when the run finishes
A real run produces three things you can verify against this list: a ranked intro-path table in Attio/HubSpot with each connector, score, evidence, and relationship type; a draft ask message in Gmail ready for the connector to send; and a flag list for any target with no path above the threshold.
If the intro is approved and sent, Opulent records the outcome in the CRM: intro requested, intro completed, or no response after follow-up. That history feeds the next run's scores.
Sharpen the graph over time
When Opulent keeps proposing a connector who never responds, lower the type weight for that relationship or add a rule to the playbook: 'exclude connectors with no reply in the last 90 days.'
Write the outcomes back into memory (the notes a run recalls next time): 'Sarah made the Finch intro; it converted to a demo.' That history raises Sarah's score for future targets in the same space.
The natural chain: once the warm intro opens the conversation, hand the account to Background Account Triage for ongoing research, or feed qualified targets into Self-Evolving Pipeline Operations so the deal stays in motion.