Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot official · Anthropic

contact-research — Claude Code skill: what it does, how to install

Retrieves enriched contact profiles from Common Room by email, social handle, or name. Helps assess buyer engagement and uncover relevant conversation starters.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add anthropics/knowledge-work-plugins --skill contact-research -a claude-code
Open on GitHub

What contact-research does

The skill looks up individuals in Common Room using an email address, a social handle, or a name combined with a company domain. It pulls raw engagement metrics, account-level context, site visits across the past 12 weeks, and Contact Initiated actions from the last 60 days.

Processing adapts to the returned payload. When Spark data is present, the skill classifies the contact into roles such as Champion, Technical Evaluator, or Economic Buyer. If Spark and activity records are absent, it assigns an Unknown status because guessing personas from job titles alone is forbidden. Any contact with no actions in the last 30 days gets flagged as stale.

You need an active Common Room dataset for this workflow to return meaningful signals. Without rich records, the skill intentionally refuses to draft conversation openers and limits output to verified attributes.

What it helps with

  • look up contact records in Common Room using emails, handles, or names
  • evaluate lead activity from recent site visits and 60-day action history
  • classify buying personas using Spark enrichment signals
  • generate outreach conversation starters based on verifiable account data

Example prompts for the agent

  • Who is Jane Miller at Acme Corp in Common Room?
  • Look up [email protected] and show recent contact-initiated activity
  • Research the contact handle @johndoe on GitHub and check if they are a warm lead

How to install contact-research

1Skills CLI (Vercel)

npx skills add anthropics/knowledge-work-plugins --skill contact-research -a claude-code

2Manually: put the files in place

~/.claude/skills/contact-research/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/contact-research/

From the same set89

The whole set →
data-visualization official anthropics Selects chart types based on data structure and produces Python visualization code in matplotlib, seaborn, and plotly. Useful for reports and research figures. Claude Code CX Codex Cursor +1 13,700installs documentation official anthropics A skill for technical writing that drafts READMEs, API references, runbooks, architecture docs and onboarding guides. Useful when the code exists but the description does not. Claude Code CX Codex Cursor +1 10,300installs build-dashboard official anthropics Builds a self-contained HTML dashboard with Chart.js charts, KPI cards, and filterable tables. Useful for turning raw data or queries into a standalone browser report. Claude Code CX Codex Cursor +1 9,100installs memory-management official anthropics This skill organizes workplace shorthand, names, and project details into files an agent can consult. It fits projects where requests rely on an internal vocabulary and shared context. Claude Code CX Codex Cursor +1 7,400installs task-management official anthropics Tracks commitments, active work, and follow-ups in a local TASKS.md file. Useful when managing project to-dos directly from the AI coding chat. Claude Code CX Codex Cursor +1 7,200installs architecture official anthropics Writes an Architecture Decision Record or reviews a system design: options, trade-offs, consequences. Useful when you have to pick between technologies. Claude Code CX Codex Cursor +1 6,700installs knowledge-synthesis official anthropics Merges search results across chats, emails, and documents into deduplicated answers with source attribution. Flags conflicting facts and scores source reliability. Claude Code CX Codex Cursor +1 6,400installs testing-strategy official anthropics This skill designs testing strategies and test plans for a project. Use it when you need test types, coverage goals, or gaps in existing checks. Claude Code CX Codex Cursor +1 6,400installs

Similar

node-connect openclaw Troubleshoots OpenClaw Control UI browser and native mobile node connection failures. Guides the assistant through routing, auth, QR pairing, and reconnect states. Claude Code CX Codex Cursor +1 793installs skill-creator langchain-ai Guides agents in scaffolding, validating, and structuring custom skills. It cuts token overhead by separating scripts, docs, and assets. Claude Code CX Codex Cursor +1 1,300installs paseo-advisor getpaseo Spins up a separate agent to analyse your current task and give a judgment — read-only, no edits. Call it when you need a second opinion before committing a decision. Claude Code CX Codex Cursor +1 3,600installs iii-error-handling iii-hq Skill teaches agents to read iii engine and SDK error codes, tell network failures from access denials, know when it is safe to retry. Use it when calling remote functions from Node, Python, Rust, or browser code. Claude Code CX Codex Cursor +1 4,000installs reference-compiler-cli angular A skill explaining how Angular Compiler (ngtsc) works internally: decorator compilation, the traits system, and code transformation. Use it when working with packages/compiler-cli. Claude Code CX Codex Cursor +1 909installs creative-director nexu-io This skill takes a creative concept from brief to presentation and checks it on three axes. Use it for campaign ideas and creative critique. Claude Code CX Codex Cursor +1 3,400installs setup-matt-pocock-skills Matt Pocock This skill configures a repository for Matt Pocock's engineering skills by setting its issue tracker, triage labels, and domain docs layout. Run it before using the other skills. Claude Code 1,052,851installs to-tickets Matt Pocock Turns a plan, spec, or conversation into small end-to-end tickets with explicit blockers. Use it to agree on the work breakdown before tickets go to a tracker. Claude Code 711,230installs

Questions about contact-research

How to install contact-research in Claude Code?

Run npx skills add anthropics/knowledge-work-plugins --skill contact-research -a claude-code in your terminal. You can also place the skill file directly at ~/.claude/skills/contact-research/SKILL.md.

What does the contact-research skill do?

It retrieves person profiles from Common Room by email, social handle, or name, pulling interaction history, site visits, and data-backed conversation openers.

How does the skill handle contacts with sparse Common Room data?

It outputs only the verified fields returned by the platform, marks the persona as Unknown, and refuses to fabricate conversation starters without real activity signals.

Source text

SKILL.md · Apache-2.0
---
name: contact-research
description: "Research a specific person using Common Room data. Triggers on 'who is [name]', 'look up [email]', 'research [contact]', 'is [name] a warm lead', or any contact-level question."
---

# Contact Research

Retrieve a comprehensive contact profile from Common Room. Supports lookup by email, social handle, or name + company. Returns enriched data including activity history, Spark, scores, website visits, and CRM fields.

## Step 1: Locate the Contact

Common Room supports multiple lookup methods — use whichever the user has provided:

| What the user gives | Lookup method |
|---------------------|--------------|
| Email address | Look up by email (most reliable) |
| LinkedIn, Twitter/X, or GitHub handle | Look up by social handle — specify handle type explicitly |
| Name + company | Identity resolution by name + org domain; present matches if ambiguous |
| Name only | Search by name; if multiple matches, show a brief list and ask the user to confirm |

If no match is found, respond: "Common Room doesn't have a record for this person." Do not speculate or fabricate profile data.

## Step 2: Fetch Contact Fields

Use the Common Room object catalog to see available field groups and their contents. For full profiles, request all groups. For targeted questions, request only what's relevant.

**Key field groups to know about:**
- **Scores** — always return as raw values or percentiles, never labels
- **Recent activity** — use `Contact Initiated` filter (last 60 days) for their actions, not your team's
- **Website visits** — total count + specific pages (last 12 weeks)
- **Spark** — retrieve all Sparks when tracking engagement evolution over time

## Step 3: Run Spark Enrichment (If Available)

If Spark is available, use it. Spark provides:
- Professional background and job history
- Social presence and influence signals
- Persona classification: Champion, Economic Buyer, Technical Evaluator, End User, or Gatekeeper
- Inferred role in the buying process

If Spark is unavailable but real activity data exists (recent actions, website visits, community engagement), infer a persona from those signals. If neither Spark nor activity data is available, classify as Unknown — do not guess a persona from title alone.

Retrieve **all Sparks** (not just the most recent) when the user wants to understand how this contact's engagement has evolved over time.

## Step 4: Assess Account Context

Pull an abbreviated account snapshot for this contact's parent company. Note:
- Open opportunities, expansion signals, or churn risk at the account level
- Whether other contacts at this company are also active
- How this person's engagement compares to their colleagues

## Step 5: Identify Conversation Angles

Based on activity and signals, surface the strongest 2–3 hooks:
- A recent `Contact Initiated` activity (community post, product event, support ticket)
- A specific web page they visited recently — especially if it signals evaluation intent
- A job change, promotion, or company news
- Their Spark persona and what that suggests about communication style
- Their role in a known active deal

## Output Format

Only include sections where data was actually returned. Omit sections with no data rather than filling them with guesses.

**When data is rich:**

```
## [Contact Name] — Profile

**Overview**
[2 sentences: who they are, their role, and relationship status]

**Details**
- Title: [title]
- Company: [company]
- Email: [email]
- LinkedIn: [URL]
- Other profiles: [Twitter/X, GitHub, CRM link if available]

**Scores** [If scores returned]
[All scores as raw values or percentiles]

**Recent Activity** (last 60 days) [If activity returned]
[3–5 bullets with dates]

**Website Visits** (last 12 weeks) [If visit data exists]
[Total visit count + list of pages visited]

**Spark Profile** [If Spark data is non-null]
[Persona type, background summary, influence signals]

**Segments** [If segments returned]
[List of segment names this contact belongs to]

**Account Context**
[1–2 sentences on their company's status]

**Conversation Starters**
[2–3 specific, signal-backed openers]
```

**When data is sparse (e.g., only name, title, email, tags returned; sparkSummary is null):**

```
## [Contact Name] — Profile (Limited Data)

**Data available:** [List exactly what Common Room returned]

[Present only the returned fields]

**Web Search**
[Any findings from searching their name + company]

**Note:** Common Room has limited data on this contact. No activity history, scores, or Spark profile available. I can run deeper web searches or look up their company for additional context.
```

Do not generate conversation starters, persona inferences, or engagement assessments from sparse data. These require real signals.

## Quality Standards

- Lookup must use the correct method for the input type — don't guess on email vs. handle
- Scores as raw/percentile only — never labels
- `Contact Initiated` activity (last 60 days) is the primary engagement signal — lead with it
- If Spark is unavailable, say so — don't fabricate a persona from title alone
- Flag any contact where the most recent activity is older than 30 days

## Reference Files

- **`references/contact-signals-guide.md`** — full field descriptions, Spark persona guide, and conversation starter principles

© anthropics · Apache-2.0 · anthropics/knowledge-work-plugins

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor