B2B Lead Generation
minhnv0807/ai-business-skills
Plans B2B pipeline work from ICP definition and prospecting through lead scoring, outbound sequences, sales assets and MQL to SQL handoff, aiming at qualified pipeline.
A skill your agent uses when building and qualifying a prospect list before anyone reaches out — a falsifiable ICP, named accounts/contacts from Apollo/ZoomInfo/Clay, deduped against the CRM, tiered…
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ericrisco/rsc-harness lead-gen --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/lead-gen .claude/skills/lead-gen && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .claude/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-genType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ericrisco/rsc-harness lead-gen --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/lead-gen .agents/skills/lead-gen && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .agents/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ericrisco/rsc-harness lead-gen --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/lead-gen .cursor/skills/lead-gen && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .cursor/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ericrisco/rsc-harness.git --path skills/lead-gen--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ericrisco/rsc-harness lead-gen --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/lead-gen .gemini/skills/lead-gen && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .gemini/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ericrisco/rsc-harness lead-genInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/lead-gen .github/skills/lead-gen && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .github/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ericrisco/rsc-harness --skill lead-gen -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ericrisco/rsc-harness lead-gen --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ericrisco/rsc-harness.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/lead-gen .opencode/skills/lead-gen && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "lead-gen" agent skill from https://github.com/ericrisco/rsc-harness/tree/main/skills/lead-gen into .opencode/skills/lead-gen/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lead-gen", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
lead-genA skill your agent uses when building and qualifying a prospect list before anyone reaches out — a falsifiable ICP, named accounts/contacts from Apollo/ZoomInfo/Clay, deduped against the CRM, tiered…
Lead Gen is an agent skill from ericrisco/rsc-harness. Use when building and qualifying a prospect list before anyone reaches out — a falsifiable ICP, named accounts/contacts from Apollo/ZoomInfo/Clay, deduped against the CRM, tiered by fit+intent+engagement. NOT writing or sending the outreach (that is cold-outreach), NOT tracking the deal after first contact (that is sales-pipeline).
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including scripts and reference files (for example `evals/README.md`, `evals/cases.yaml` and `references/data-sources.md`).
It sits in Sales & Support, covering Lead generation, CRM management and GraphQL. The repository describes itself as: Your agent invents things because it has no memory, and can't touch your database because it has no arms. rsc is the meta-harness that gives it both, plus the trade to know the… The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 92fde8f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Lead Gen loads about 2.6k tokens when it runs, and up to ~4.8k if it reads all its reference files. Until then it costs about 86 tokens; SKILL.md has 1,244 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from ericrisco/rsc-harness at commit 92fde8f, republished under its MIT licence (© ericrisco). 1,244 words, ~2,643 tokens.
.claude/skills/lead-gen/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.You turn "we sell X to Y" into a deduplicated, scored, compliance-cleared roster of named accounts and people. You define the target, you build the list, you rank it — then you stop. What you produce is a prioritized roster plus the rationale that ranked it; the hand-off is the finish line, not the campaign.
Run these in order. Each gate is a hard stop: do not advance until the prior phase produced its artifact.
Between phase 2 and the handoff sits the compliance gate (GDPR LIA + CAN-SPAM). Run it before you hand anything off, never after the first send.
An ICP is falsifiable when you can look at any company and answer "in or out?" with no judgement call. Write three blocks:
disqualify if… list. This is the half everyone skips and the half that saves the most rep time.Then write the buyer persona(s) inside the account: title, seniority, the pain they own, the trigger that makes now the moment.
BAD ICP (un-falsifiable — every company "kind of" fits):
"Mid-market SaaS companies that could use better analytics."
GOOD ICP (any company resolves to in/out):
Firmographic: 50–500 employees · $5M–$50M ARR · US + EU · B2B SaaS
Technographic: runs Snowflake OR BigQuery · hiring a "Data Analyst" now
Negative: DISQUALIFY IF <50 employees · agency/reseller · no data team
Persona: Head of Data / VP Eng · owns dashboard sprawl · triggered by
a recent funding round (new headcount to equip)Do not default to BANT. The framework must match the deal's size and cycle, or you qualify on the wrong signals. (leadsatscale.com / callingagency.com qualification guides, accessed 2026-06-02.)
| Framework | Stands for | Use when |
|---|---|---|
| BANT | Budget · Authority · Need · Timeline | High-velocity SMB, deals under ~$50K ARR, short cycle, 1–2 stakeholders |
| CHAMP | Challenges · Authority · Money · Prioritization | Consultative selling — lead with the prospect's problem, not your budget question |
| MEDDIC | Metrics · Economic-buyer · Decision-criteria · Decision-process · Identify-pain · Champion | Enterprise, deals over ~$100K, 5+ stakeholders, long cycle |
The framework you pick becomes the qualification fields on every row — so choose it before you score, not after.
Source selection. No single database wins, so the 2025 norm is a waterfall: layer providers and stop at the first verified hit. (starnus.com / cleanlist.ai provider comparisons, accessed 2026-06-02.)
| Provider | Rough coverage | Note |
|---|---|---|
| Apollo | ~200M contacts | Search is free + credit-free; enrichment costs credits; ~78% email accuracy |
| ZoomInfo | 321M+ contacts / 104M+ companies | ~84% email accuracy; strongest firmographics |
| People Data Labs | Broad person/company graph | Good as a waterfall fill layer |
| Clay | Orchestrates 100+ sources | The waterfall engine — runs the layering for you |
The waterfall rule: order providers by accuracy-per-dollar, query the next layer only for rows the previous one missed or could not verify, and stop at the first verified hit. You pay once per contact, not once per provider.
Apollo People Search → Enrichment flow. Search and enrichment are two different endpoints — search finds people but returns no emails/phones; enrichment (credit-consuming) returns the contact data. (docs.apollo.io, accessed 2026-06-02.)
1. POST /api/v1/mixed_people/api_search (free, no credits)
filters: person_titles, person_seniorities, organization_locations,
organization_num_employees_ranges, q_organization_keyword_tags,
currently_using_any_of_technology_uids, q_organization_job_titles
→ returns up to 50,000 records (100/page × 500 pages) — IDs + firmographics,
NO email/phone.
2. POST /api/v1/people/bulk_match (consumes credits)
→ enriches the IDs you actually want with email + phone.Search broad and free first, then spend credits enriching only the rows that survive your ICP filter and dedupe.
Dedupe against the CRM. Before enriching, strip rows that already exist in the CRM (match on company domain + person email/LinkedIn). You do not pay to re-source a known account, and you do not want a rep cold-touching an active opportunity.
Verify — mandatory, not optional. Apollo (~78%) and ZoomInfo (~84%) email accuracy both sit at the edge of the high-volume-sender red-flag line. (cleanlist.ai / fundraiseinsider.com, accessed 2026-06-02.) Run a verification pass (bounce-check the address) before any row is handed off — a stale list is a lead-gen defect, not a copy or deliverability problem.
Full provider comparison, the waterfall ordering heuristic, and the provenance/compliance field spec each row must carry → references/data-sources.md.
Use a composite 100-point model. Single-signal scoring fails; the proven split is ~30 fit + ~50 engagement + ~20 intent. (houseofmartech.com / theinsightcollective.com intent-scoring guides, accessed 2026-06-02.)
The load-bearing rule: intent without fit is noise. A 10-person company surging on "enterprise CRM" is not your buyer — fit gates the score. Never let an intent spike alone tier a row up.
Tier on the total:
| Tier | Score | SLA |
|---|---|---|
| A | 90–100 | Route now, first contact within 24h |
| B | 75–89 | 48h SLA |
| C | 60–74 | Nurture, no rep time yet |
The full 100-pt rubric, negative scoring, score decay, the tier→SLA map, and the scored-list CSV schema → references/scoring-model.md.
Handoff packet (what leaves this skill): the tiered CSV, the ICP + persona it was built against, per-row provenance, and the scoring rationale for the A tier. Nothing more — no message, no pipeline stage.
A list that ships without these fields is not done. Run both checklists; the strictest applicable jurisdiction wins.
GDPR (EU B2B). Cold B2B email runs on legitimate interest, Art. 6(1)(f) — not consent — but only if you have done the paperwork. (derrick-app.com / instantly.ai GDPR-B2B guides, accessed 2026-06-02.)
CAN-SPAM (US). (ftc.gov CAN-SPAM compliance guide, accessed 2026-06-02.)
To lint a produced list file for the required columns, score-range sanity, provenance presence, and a compliance flag, run scripts/verify.sh path/to/list.csv (read-only).
| Anti-pattern | Why it fails | Do instead |
|---|---|---|
| Buying/scraping a list and emailing it | No GDPR lawful basis; CAN-SPAM exposure up to $53,088/email | Source + verify + document the LIA + provenance per row |
| Scoring on intent alone | Intent without fit is noise — surge ≠ buyer | Composite fit+intent+engagement; fit gates the tier |
| One ICP/framework for every deal size | BANT on a MEDDIC deal qualifies on the wrong signals | Pick the framework by deal size/cycle first |
| Skipping email verification | 78–84% accuracy = bounces + domain reputation damage | Waterfall + a verify pass before handoff |
| Enriching before deduping against the CRM | You pay to re-source known accounts and risk touching live deals | Dedupe on domain/email first, enrich the survivors |
| Handing reps a raw, unsorted list | Reps work easy-to-reach names, not the right ones | Tier A/B/C with SLAs and an A-tier rationale |
| Treating the list as the goal | A list is not a pipeline and not a campaign | Hand A/B to cold-outreach, accepted leads to sales-pipeline |
This skill stops at a scored, compliance-cleared list. From there:
../cold-outreach/SKILL.md — that skill writes the message and the cadence; you do not.../sales-pipeline/SKILL.md — that skill tracks stages, forecasts, and manages the deal; you do not.../market-research/SKILL.md, not this skill.© ericrisco, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in skills/lead-gen of ericrisco/rsc-harness.
Open the folder on GitHubat commit 92fde8f
Lead Gen next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Lead Gen this skillericrisco/rsc-harness | 156 | — | ~2.6k | Automated safety check: Pass | MIT | |
| B2B Lead Generationminhnv0807/ai-business-skills | 608 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Suede RevopsJasonColapietro/suede-creator-skills | 127 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Lead Gen Tool Builderexplorium-ai/gtm-skills | 160 | — | ~1.8k | Automated safety check: Notes | MIT | |
| AI SDR Deploymenttech-leads-club/agent-skills | 7k | — | ~4.4k | Automated safety check: Pass | Custom licence | |
| RevopsAvdLee/RocketSimApp | 802 | 5 repos | ~3.7k | Automated safety check: Pass | Custom licence |
minhnv0807/ai-business-skills
Plans B2B pipeline work from ICP definition and prospecting through lead scoring, outbound sequences, sales assets and MQL to SQL handoff, aiming at qualified pipeline.
JasonColapietro/suede-creator-skills
Suede-owned revenue-operations discipline. An agent skill from JasonColapietro/suede-creator-skills.
explorium-ai/gtm-skills
Lead generation tool builder skill for Claude Code and Codex: scaffolds a complete, self-hostable, ZoomInfo-style B2B lead-generation web app — company & contact search UI, firmographic and…
tech-leads-club/agent-skills
Guides founders and sales teams through choosing, deploying and tuning AI sales development reps, from signal-based targeting to human handoff.
AvdLee/RocketSimApp
When the user wants help with revenue operations, lead lifecycle management, or marketing-to-sales handoff processes.
zubair-trabzada/geo-seo-claude
Tracks GEO agency leads and clients through a sales pipeline in a local JSON file, with notes, audit scores, deal values and a pipeline summary.
ericrisco/rsc-harness
A skill your agent uses when designing or analyzing a controlled experiment — falsifiable hypothesis, sample size from an MDE, reading significance/CI/power, CUPED, or rescuing tests that won't go…
ericrisco/rsc-harness
A skill your agent uses when making a web UI conform to WCAG 2.2 Level AA — axe-core or Lighthouse a11y violations, keyboard operability, focus management, ARIA roles/names/live regions, contrast…
ericrisco/rsc-harness
A skill your agent uses when running or fixing paid acquisition on Google or Meta — campaign structure (Performance Max, Demand Gen, Search, Advantage+), platform-fit creative, budget/scaling rules…
ericrisco/rsc-harness
A skill your agent uses when measuring whether an LLM or agent system actually got better and gating merges on it: golden sets, fixing an inflated LLM-as-judge, scoring RAG (faithfulness, contextual…
ericrisco/rsc-harness
A skill your agent uses when a creative goal must become a finished media file: pick and order generative-media models per modality — AI voiceover, image-to-video clips, score — then glue them with…
ericrisco/rsc-harness
A skill your agent uses when instrumenting product or web analytics — GA4/PostHog SDK wiring, event taxonomy, funnels, double-counted events, consent gating, PII scrubbing.
Categories
A skill your agent uses when building and qualifying a prospect list before anyone reaches out — a falsifiable ICP, named accounts/contacts from Apollo/ZoomInfo/Clay, deduped against the CRM, tiered…. Lead Gen is an agent skill from ericrisco/rsc-harness. Use when building and qualifying a prospect list before anyone reaches out — a falsifiable ICP, named accounts/contacts from Apollo/ZoomInfo/Clay, deduped against the CRM, tiered by fit+intent+engagement.
Lead Gen fits situations like: building and qualifying a prospect list before anyone reaches out — a falsifiable ICP; named accounts/contacts from Apollo/ZoomInfo/Clay; deduped against the CRM; tiered by fit+intent+engagement.
Run `npx skills add ericrisco/rsc-harness --skill lead-gen -a claude-code`. Or copy the skill folder (skills/lead-gen in ericrisco/rsc-harness) into .claude/skills/lead-gen in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ericrisco/rsc-harness --skill lead-gen -a codex`. Or copy the skill folder (skills/lead-gen in ericrisco/rsc-harness) into .agents/skills/lead-gen in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ericrisco/rsc-harness --skill lead-gen -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lead-gen, .gemini/skills/lead-gen, .github/skills/lead-gen and .opencode/skills/lead-gen in your project.
Going by SKILL.md and its folder, Lead Gen needs a shell for the scripts in its folder. Our summary lists: A Bash shell.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Lead Gen is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Lead Gen: B2B Lead Generation (minhnv0807/ai-business-skills, 608 stars), Suede Revops (JasonColapietro/suede-creator-skills, 127 stars), Lead Gen Tool Builder (explorium-ai/gtm-skills, 160 stars) and AI SDR Deployment (tech-leads-club/agent-skills, 7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ericrisco (a GitHub user) maintains it in ericrisco/rsc-harness, which has 156 GitHub stars. The repository holds 229 skills in this directory. The repository was last updated on October 6, 2026.
Source: ericrisco/rsc-harness on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.