Conversational intake for cold email campaigns. An agent skill from growthenginenowoslawski/coldoutboundskills.

MITAuto-check passedSales & Support

Install Icp Onboarding

skills CLI
$ npx skills add growthenginenowoslawski/coldoutboundskills --skill icp-onboarding -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install growthenginenowoslawski/coldoutboundskills icp-onboarding --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/growthenginenowoslawski/coldoutboundskills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/icp-onboarding .claude/skills/icp-onboarding && rm -rf skills-src

Use ~/.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/

Facts

Skill name
icp-onboarding
GitHub stars
753
Token cost
~1.9k tokens
SKILL.md length
906 words
Files
3 (incl. scripts, references)
Skills in repo
49
Repo updated
First seen
Licence
MIT

At a glance

Conversational intake for cold email campaigns. An agent skill from growthenginenowoslawski/coldoutboundskills.

  • Works in 6 steps: Ask for the website URL FIRST (required) → Interview the user (using scraped context) → Translate into Prospeo filters → …
  • New business intake
  • SKILL.md covers Why this exists, Inputs, Outputs and Steps, plus 3 more sections
  • Runs TypeScript scripts from its folder; calls npx

What it does

Icp Onboarding is an agent skill from growthenginenowoslawski/coldoutboundskills. Conversational intake for cold email campaigns. Interviews the user about their business, ICP (Ideal Customer Profile), offer, lead magnets, and hard vs soft filters. Outputs a structured client-profile.yaml that every other skill in the repo reads from. Use at the very start of a new campaign or when onboarding a new business. Triggers on "onboard me", "set up my ICP", "new client", "new business intake", "help me define my ICP".

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts and reference files (for example `references/prospeo-industries.md` and `scripts/scrape-website.ts`).

It sits in Sales & Support, covering Cold outreach, Positioning and messaging and Content marketing. The repository describes itself as: Open-source Claude Code skills for cold email and outbound sales. Grade campaigns, export Prospeo searches, scrape Google Maps — all from Claude Code. The licence is MIT.

When your agent uses it

  • New business intake
  • Help me define my ICP

Example prompts

  • “onboard me”
  • “set up my ICP”
  • “new client”
  • “/icp-onboarding”

Requirements

  • Node.js

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Ask for the website URL FIRST (required)
  2. Interview the user (using scraped context)
  3. Translate into Prospeo filters
  4. Split hard vs soft
  5. Write client-profile.yaml
  6. Save + confirm

What it can do on your machine

Read from SKILL.md and the folder at commit 25c5d85. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 1 file in scripts/ (TypeScript), which the agent can run.

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Icp Onboarding loads about 1.9k tokens when it runs, and up to ~4.1k if it reads all its reference files. Until then it costs about 113 tokens; SKILL.md has 906 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~113
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.1k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from growthenginenowoslawski/coldoutboundskills at commit 25c5d85, republished under its MIT licence (© growthenginenowoslawski). 906 words, ~1,925 tokens.

Download SKILL.mdSave it as .claude/skills/icp-onboarding/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
icp-onboarding
description
Conversational intake for cold email campaigns. Interviews the user about their business, ICP (Ideal Customer Profile), offer, lead magnets, and hard vs soft filters. Outputs a structured `client-profile.yaml` that every other skill in the repo reads from. Use at the very start of a new campaign or when onboarding a new business. Triggers on "onboard me", "set up my ICP", "new client", "new business intake", "help me define my ICP".

ICP Onboarding

Conversational intake. The user arrives with a business; this skill produces a client-profile.yaml every other skill in the repo consumes. Without it, downstream skills guess at targeting and write generic copy.

Why this exists

Most cold email fails because the sender didn't define the ICP tightly enough. "B2B SaaS founders" is not an ICP. "VP of RevOps at 50-500 person B2B SaaS companies in the US that raised Series B in the last 12 months" is an ICP — you can put it into Prospeo and get a list.

This skill forces that precision up front. It also separates hard filters (must match) from soft preferences (nice-to-have), because the #1 mistake beginners make is treating every ICP criterion as required, ending up with a list of 200 leads instead of 5,000.

Inputs

Either:

  • Website URL of the user's business (skill will scrape + infer a lot)
  • Plain description ("I sell X to Y") if no website

Outputs

A single file: ~/cold-email-ai-skills/profiles/<business-slug>/client-profile.yaml

Steps

1. Ask for the website URL FIRST (required)

Before any interview questions, ask:

"What's the website of the business you're running cold email for?"

If the user provides a URL:

bash
npx tsx scripts/scrape-website.ts --url=https://example.com --out=/tmp/scrape.json

Then READ the scraped JSON and immediately produce a one-paragraph summary for the user:

"Based on your website, here's what I understand about your business:

<Company name> sells <product/service in one sentence> to <who they sell to, based on case studies + homepage>. Their core value proposition appears to be <summary>. Notable social proof: <logos, metrics, awards>. Pricing signal: <free tier / self-serve / enterprise / unclear>.

Proposed ICP starting point: <titles + industries + size inferred from case studies>.

Does that sound right? Any corrections before I start the interview?"

This summary is NOT the final ICP — it's the anchor. The user's corrections here save 5+ minutes in the interview.

If the user has no website:

"OK, no website. Give me a two-sentence description of what you sell and to whom. I'll use that as the anchor for the rest of the interview."

2. Interview the user (using scraped context)

Ask these questions in order. Do NOT batch them — wait for each answer before asking the next. Keep answers short. Use the scraped content to PRE-FILL proposed answers where possible, and ask the user to confirm or correct.

  1. What do you sell in one sentence? Pre-fill: "Based on your site, you sell <X>. Confirm or correct?"
  2. Who is your single best customer — name them. (Helps anchor everything else. If they hesitate, ask for the last 3 customers by revenue or fit. If case studies on the website name customers, propose those.)
  3. What job title buys this? (Push back if they say "CEO" for anything >50 employees. Probably not true.)
  4. Headcount range — hard minimum and hard maximum? (E.g. 20-500. Not "enterprise" — actual numbers.)
  5. Industries — in or out? (Use the Prospeo industry taxonomy: see references/prospeo-industries.md. Mark IN or OUT — no fuzzy.)
  6. Geography — countries only, or specific states/regions?
  7. Any triggers that matter? (Recent fundraise, new hires in a role, tech on website, recent product launch, specific Google Ads spend.)
  8. Any disqualifiers? (Competitors, existing customers, partners — domains to exclude.)
  9. Your offer / hook — what are you asking them to do? (E.g. "book a 15-min call", "try our free audit", "reply with a Y and I'll send details".)
  10. Lead magnet — what can you legally give away for free? (If they don't have one, invoke /lead-magnet-brainstorm skill.)
  11. Tone — casual or formal? Peer-to-peer or vendor-to-buyer?
  12. Banned words / legal constraints (any industries that restrict language, e.g. healthcare, finance, crypto).
Show full SKILL.md (317 more words)Show less
3. Translate into Prospeo filters

Take the answers and draft Prospeo-compatible filters:

  • Job titles → exact titles + common synonyms (VP of Sales = VP Sales = Head of Sales = SVP Sales)
  • Industries → match the 256 valid Prospeo industry names. See references/prospeo-industries.md.
  • Headcount → map to Prospeo buckets (1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+)
  • Geography → country codes or state lists
4. Split hard vs soft

For each criterion, explicitly ask: "If you find someone who matches everything except this, do you reach out anyway — yes or no?"

  • YES → soft preference (log it, but don't filter on it)
  • NO → hard filter (must match)

Common answers:

  • Job title: usually HARD
  • Industry: usually HARD (if targeting a vertical)
  • Headcount: usually SOFT on the edges (one person above the cap is often fine)
  • Trigger (funded, hired, etc): ALMOST ALWAYS SOFT — it's a personalization signal, not a filter
5. Write client-profile.yaml

Use this schema:

yaml
business:
  name: <business name>
  website: <url>
  one_liner: <what they sell>
  tone: <casual|formal|peer-to-peer>

offer:
  primary_cta: <what you ask the lead to do>
  lead_magnet: <free thing you can give>
  value_prop: <why they should care, one sentence>

icp_hard_filters:
  job_titles:
    - <exact title>
    - <synonym>
  industries_in:
    - <prospeo industry>
  industries_out:
    - <prospeo industry>
  headcount_min: <int>
  headcount_max: <int>
  countries:
    - <country code>
  states: []  # US only, optional
  excluded_domains:
    - <competitor.com>
    - <existing-customer.com>

icp_soft_preferences:
  triggers:
    - recent_fundraise
    - new_hire_in_role
    - tech_installed: <tech>
  personas_to_prioritize:
    - <e.g. "Director-level over VP-level at <200 headcount">

legal:
  banned_words: []
  regulated_industry: false

created_at: <YYYY-MM-DD>
6. Save + confirm

Save to ~/cold-email-ai-skills/profiles/<business-slug>/client-profile.yaml. Print the yaml back to the user and ask "look right?" before ending the conversation.

Common gotchas

  • Don't accept "SMBs" as an answer. Ask for headcount numbers.
  • "Our ICP is anyone who needs X" = they don't have an ICP. Push for a named-customer example.
  • Titles: always include synonyms. "VP of Talent" without "VP of People", "Head of Talent", "Chief People Officer" will miss 60% of matches.
  • Prospeo industries: exact match required. "Manufacturing" is not a valid Prospeo industry. "General Manufacturing" is. See references/prospeo-industries.md.
  • Triggers are NEVER hard filters. If you make "must have raised in last 6 months" a hard filter, your list shrinks 20x and most of those companies are already getting pitched by everyone.

What to do next

With client-profile.yaml in hand, the user's next skill is /cold-email-starter-kit (manual first campaign) or /auto-research-public (automated daily campaigns).

Files

  • references/prospeo-industries.md — full list of 256 valid Prospeo industry names
  • references/example-profiles/ — 3 example client-profile.yaml files (B2B SaaS, local SMB, agency)
  • scripts/scrape-website.ts — minimal website scraper (homepage + linked pages)

© growthenginenowoslawski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (scripts, references) in skills/icp-onboarding of growthenginenowoslawski/coldoutboundskills.

  • SKILL.md
  • references/prospeo-industries.md
  • scripts/scrape-website.ts

Open the folder on GitHubat commit 25c5d85

Compare with similar skills

Icp Onboarding 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.

Icp Onboarding compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Icp Onboarding this skillgrowthenginenowoslawski/coldoutboundskills753—~1.9kAutomated safety check: PassMIT
Messaging Ab Testergooseworks-ai/goose-skills1.2k1 repos~2.3kAutomated safety check: PassMIT
Customer Segment Slicinghashgraph-online/awesome-codex-plugins1.3k—~807Automated safety check: PassMIT
Customer Finderbuildfastwithai/gen-ai-experiments785—~1.4kAutomated safety check: PassMIT
Linkedin Outbound AngleOthmane-Khadri/YALC-the-GTM-operating-system318—~3.5kAutomated safety check: PassMIT
Offer DefinerOthmane-Khadri/YALC-the-GTM-operating-system318—~1kAutomated safety check: PassMIT

Similar skills

  • Messaging Ab Tester

    gooseworks-ai/goose-skills

    Generate 3-5 messaging variants for a value proposition, design structured A/B tests, and analyze results to determine which framing resonates most with ICP.

    1.2k GitHub starsUsed in 1 repo~2.3k tokens
    Sales & SupportAuto-check passed
  • Customer Segment Slicing

    hashgraph-online/awesome-codex-plugins

    Narrow broad customer categories into specific, reachable who-where segments for customer discovery, positioning, traction tests, sales outreach, or SEO personas.

    1.3k GitHub stars~807 tokensUpdated yesterday
    Sales & SupportAuto-check passed
  • Customer Finder

    buildfastwithai/gen-ai-experiments

    Find and qualify evidence-backed potential first customers, early adopters, design partners, or beta users for a startup using recent public pain and buying signals.

    785 GitHub stars~1.4k tokensUpdated 19 days ago
    Sales & SupportAuto-check passed
  • Linkedin Outbound Angle

    Othmane-Khadri/YALC-the-GTM-operating-system

    Analyzes a LinkedIn profile and identifies the perfect outbound attack angle for personalized outreach.

    318 GitHub stars~3.5k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check passed
  • Offer Definer

    Othmane-Khadri/YALC-the-GTM-operating-system

    Transform product descriptions and feature lists into compelling, outcome-focused offers for cold outreach.

    318 GitHub stars~1k tokensUpdated 1 mo ago
    Sales & SupportAuto-check passed
  • Atomic Message

    extruct-ai/gtm-skills

    Draft ONE cold-outreach message from a signal + persona + channel: a single cold email, a LinkedIn note, or a follow-up.

    109 GitHub stars~952 tokensUpdated 13 days ago
    Sales & SupportAuto-check passed

More from growthenginenowoslawski/coldoutboundskills

All 49 skills in this repo
  • Email Deliverability Audit

    growthenginenowoslawski/coldoutboundskills

    Diagnostic audit for a running cold email program. An agent skill from growthenginenowoslawski/coldoutboundskills.

    753 GitHub stars~3.4k tokensUpdated 5 days ago
    Auto-check passed
  • List Builder

    growthenginenowoslawski/coldoutboundskills

    META skill — build the largest possible qualified lead list for any request, end to end.

    753 GitHub stars~4.7k tokensUpdated 5 days ago
    Auto-check: notes
  • Auto Research Public

    growthenginenowoslawski/coldoutboundskills

    Autonomous cold email campaign launcher. An agent skill from growthenginenowoslawski/coldoutboundskills.

    753 GitHub stars~2.9k tokensUpdated 5 days ago
    Auto-check passed
  • Blitz List Builder

    growthenginenowoslawski/coldoutboundskills

    Use the Blitz API to find decision-makers at specific companies when you already have a list of company domains.

    753 GitHub stars~2k tokensUpdated 5 days ago
    Auto-check passed
  • Deliverability Test Public

    growthenginenowoslawski/coldoutboundskills

    Compare reply rates, bounce rates, and positive reply rates broken down by inbox type (SMTP / Gmail / Outlook) for a Smartlead account.

    753 GitHub stars~1k tokensUpdated 5 days ago
    Auto-check passed
  • Disco Like

    growthenginenowoslawski/coldoutboundskills

    Find lookalike companies via DiscoLike's 65M+ business domain database.

    753 GitHub stars~1.7k tokensUpdated 5 days ago
    Auto-check passed

Questions about Icp Onboarding

What does Icp Onboarding do?

Conversational intake for cold email campaigns. An agent skill from growthenginenowoslawski/coldoutboundskills. Icp Onboarding is an agent skill from growthenginenowoslawski/coldoutboundskills. Conversational intake for cold email campaigns.

When should I use Icp Onboarding?

Icp Onboarding fits situations like: new business intake; help me define my ICP.

How do I install Icp Onboarding in Claude Code?

Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill icp-onboarding -a claude-code`. Or copy the skill folder (skills/icp-onboarding in growthenginenowoslawski/coldoutboundskills) into .claude/skills/icp-onboarding in your project. Claude Code loads it when a task matches its description.

How do I install Icp Onboarding in Codex?

Run `npx skills add growthenginenowoslawski/coldoutboundskills --skill icp-onboarding -a codex`. Or copy the skill folder (skills/icp-onboarding in growthenginenowoslawski/coldoutboundskills) into .agents/skills/icp-onboarding in your project. Codex loads it when a task matches its description.

Can I use Icp Onboarding in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add growthenginenowoslawski/coldoutboundskills --skill icp-onboarding -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/icp-onboarding, .gemini/skills/icp-onboarding, .github/skills/icp-onboarding and .opencode/skills/icp-onboarding in your project.

What does Icp Onboarding need to run?

Going by SKILL.md and its folder, Icp Onboarding needs TypeScript for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Node.js.

Does Icp Onboarding access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Icp Onboarding safe to install?

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.

What licence does Icp Onboarding use?

Icp Onboarding is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Icp Onboarding use?

About 1.9k tokens (SKILL.md is roughly 7.7k 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.2k tokens, read only when the agent opens those files.

What are the alternatives to Icp Onboarding?

Skills that share tags, products or a category with Icp Onboarding: Messaging Ab Tester (gooseworks-ai/goose-skills, 1.2k stars), Customer Segment Slicing (hashgraph-online/awesome-codex-plugins, 1.3k stars), Customer Finder (buildfastwithai/gen-ai-experiments, 785 stars) and Linkedin Outbound Angle (Othmane-Khadri/YALC-the-GTM-operating-system, 318 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Icp Onboarding?

growthenginenowoslawski (a GitHub user) maintains it in growthenginenowoslawski/coldoutboundskills, which has 753 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on October 5, 2026.

Source: growthenginenowoslawski/coldoutboundskills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.