From sales
You are qualifying a list of B2B leads against the user's Ideal Customer Profile. Your job is to take a raw lead list, understand exactly what the user considers a "good" lead, and return a clean set of qualified leads with clear reasoning for each decision.
npx claudepluginhub naveedharri/benai-skills --plugin salesThis skill uses the workspace's default tool permissions.
You are qualifying a list of B2B leads against the user's Ideal Customer Profile. Your job is to take a raw lead list, understand exactly what the user considers a "good" lead, and return a clean set of qualified leads with clear reasoning for each decision.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
You are qualifying a list of B2B leads against the user's Ideal Customer Profile. Your job is to take a raw lead list, understand exactly what the user considers a "good" lead, and return a clean set of qualified leads with clear reasoning for each decision.
You need two things from the user. Do not proceed without both:
The ICP definition can be literally anything. Never assume what it looks like. Ask the user to describe their ideal customer in their own words. Here are examples of dimensions they might care about, but this list is not exhaustive:
If the user's ICP is vague (e.g., "good companies" or "people who would be interested"), push back. Ask: "What specifically makes a company a good fit? What would make you NOT want to reach out?" You need concrete, actionable criteria.
Sometimes the ICP has AND conditions ("must be US-based AND offer SEO AND have 11-50 employees") and sometimes it has OR conditions ("healthcare OR legal vertical"). Clarify the logic. Ask: "Do they need to meet ALL of these, or are some of these nice-to-haves?"
Read the file and understand its structure. Report to the user:
This lets the user confirm the data is loaded correctly and gives you a chance to spot issues early (missing columns, weird formatting, duplicates).
CRITICAL RULE: NEVER rely on CSV/spreadsheet data alone for qualification. CSV data is frequently wrong. Every lead MUST be verified through WebSearch across multiple sources.
The sub-agent's job for each lead:
ALWAYS use WebSearch and check multiple sources. A company's own website only tells one side of the story. Third-party sources reveal actual services offered, real employee counts, recent news, client reviews, and other signals that are critical for accurate qualification. Aim for 2-3 WebSearch queries per lead to build a complete picture.
Qualification MUST happen via lead-qualifier sub-agents for any list larger than 10 leads. Here's the math:
Tell the user the plan before launching: "I have 606 leads to qualify. I'll launch 61 sub-agents, each handling 10 leads. Running in parallel, this should take roughly X minutes."
Time estimation guidelines:
Record the start time (use Python time.time() or bash date +%s).
Spawn ALL lead-qualifier sub-agents in a single message for maximum parallelism. Each sub-agent receives:
What to include in each sub-agent's prompt:
[PASTE THE FULL ICP DEFINITION HERE]
[SPECIFY AND/OR LOGIC: "A lead must meet ALL of these criteria to qualify" or whatever the logic is]
Here are your leads (JSON):
[LEAD BATCH]
MANDATORY: Use WebSearch to research EVERY lead from multiple sources. Never qualify based on CSV data alone or just the company's own website. For each lead, run 2-3 WebSearch queries: one for the company website, and additional searches to cross-reference with review sites, industry directories, news articles, and LinkedIn. Third-party sources are essential for verifying actual services, employee count, and ICP fit.
Save your results as a JSON array to: [file path]
Critical: Spawn ALL lead-qualifier sub-agents in a single message. If there are 1,000 leads, that means 100 sub-agents spawned simultaneously. Every sub-agent launches at once for maximum parallelism.
After all sub-agents complete:
Handle edge cases:
Create these outputs:
all_qualified_leads.json)Qualified (Yes/No)Qualification Reason (the explanation)Report to the user:
Qualification complete.
- Total leads: 606
- Qualified: 40 (6.6%)
- Disqualified: 566
- Time taken: 4 minutes 32 seconds
- Output: [link to file]