Cold email kickoff skill

Single "start here" orchestrator for new cold email operators.

by growthenginenowoslawski·MIT license·★ 730 Stars on the repo·GitHub ↗

Use now

Files of Cold email kickoff

growthenginenowoslawski/main1 file shown
SKILL.md
Show the full text174 lines

Cold Email Kickoff

The single entry point for a fresh user. Replaces "stare at 29 skills and guess which to run first."

When to use

  • First-time cold email operator on this repo
  • New client/business being onboarded (fresh profiles/<slug>/ directory)
  • Experienced operator starting a new campaign for a new business
  • Anyone who asks "where do I start?"

What this skill produces

  • A populated profiles/<business-slug>/client-profile.yaml (from /icp-onboarding)
  • A profiles/<business-slug>/lead-magnets.md with the chosen free offer
  • A profiles/<business-slug>/campaign-strategy.md with 15-25 campaign ideas
  • A consolidated profiles/<business-slug>/campaign-plan.md — a single-page summary you can show stakeholders
  • An interactive menu pointing at the right next skill based on your infrastructure status

Flow

Step 1 (asked FIRST): Infrastructure status

Before touching any business context, ask:

  1. "Do you already have sending domains + inboxes set up on Smartlead?" (yes / no / not sure)
  2. "At least 20 inboxes that have been warming for 2+ weeks?" (yes / no)
  3. "Do you have API keys for Smartlead + Prospeo + MillionVerifier in your .env?" (yes / partial / no)

These answers determine the next-step menu at Step 6. Save them as infrastructure_status in the profile.

Step 2: Load or create the business profile

Check for profiles/<business-slug>/client-profile.yaml:

  • Exists → load it. Ask: "Use this existing profile (answer: use) or start fresh (answer: new)?"
  • Doesn't exist → invoke /icp-onboarding. This scrapes the user's website first, then interviews them. Produces the profile.
Step 3: Ensure lead magnet is chosen

Check the loaded/created profile for a lead_magnet field:

  • Empty → invoke /lead-magnet-brainstorm. It asks 4 intake questions, scores 10 magnet archetypes, picks a top 2-3, updates the profile.
  • Already set → confirm with the user: "Using <chosen magnet> as your free offer. OK?" — if they want to change it, re-invoke /lead-magnet-brainstorm.
Step 4: Generate campaign strategy

Invoke /campaign-strategy. It takes the profile + website + any case studies it can scrape and produces 15-25 campaign ideas ranging from broad to niche, with AI personalization + value-prop + campaign-overview per idea.

Saved to profiles/<slug>/campaign-strategy.md.

Step 5: Synthesize campaign-plan.md

Pull from all three artifacts above. Write profiles/<slug>/campaign-plan.md:

# Campaign Plan — <business name>
Generated: YYYY-MM-DD

## Business
<one-liner from profile>
Website: <url>

## ICP
- Titles: <titles>
- Industries: <industries>
- Headcount: X-Y
- Geography: <countries/states>
- Hard filters: <list>
- Excluded industries: <list>

## Offer & Lead Magnet
- Primary CTA: <cta>
- Free hook: <lead magnet name>
- Delivery: <how you deliver it>

## Top 3 Recommended Campaigns (from /campaign-strategy)
1. **<name>** — <one-line why + value prop>
2. **<name>** — <one-line why + value prop>
3. **<name>** — <one-line why + value prop>

Full strategy in: profiles/<slug>/campaign-strategy.md

## Infrastructure Readiness
Based on your Step 1 answers:
- [ ] SMARTLEAD_API_KEY in .env: <yes/no>
- [ ] PROSPEO_API_KEY in .env: <yes/no>
- [ ] MILLIONVERIFIER_API_KEY in .env: <yes/no>
- [ ] Domains purchased: <yes/no>
- [ ] Inboxes warmed 2+ weeks: <yes/no>

## Next Steps
<branched — see Step 6 below>
Step 6: Interactive next-skill menu

Branch on Step 1 answers.

If NO infrastructure (or "not sure"):

Your next step is provisioning domains + inboxes. This takes ~2 weeks (because inboxes need
to warm). Menu:

[A] Start the domain + inbox setup NOW  → /zapmail-domain-setup-public then /smartlead-inbox-manager
[B] Save the plan and come back after I have infra
[C] I want to build my list FIRST (warning: risky — without warmed inboxes, you can't send safely)

Pick A / B / C:

If A: orient the user, then invoke /zapmail-domain-setup-public. After that skill completes, invoke /smartlead-inbox-manager for config. Remind the user to wait 2 weeks for warmup before launching.

If INFRASTRUCTURE READY (warmed inboxes + API keys present):

Look at the ICP type in the profile and recommend a list-building skill:

Your infra is ready. Time to build your list. Based on your ICP (<summary>), the best fit is:

[A] /prospeo-full-export       → title-first search (best for: VP/Director/Head roles in specific industries)
[B] /disco-like                → lookalike discovery (best for: "more companies like <seed domains>")
[C] /google-maps-list-builder  → local SMBs (best for: restaurants, clinics, contractors, etc.)
[D] /blitz-list-builder        → domain-first (best for: named-account ABM, specific company list)
[E] /competitor-engagers       → LinkedIn engagement (best for: people actively engaged with competitors)

Recommendation: <one of A-E based on ICP>. Pick A / B / C / D / E:

Invoke the picked skill. After it completes, remind user: /icp-prompt-builder runs inside that skill (required step), then /list-quality-scorecard, then /campaign-copywriting, then /smartlead-campaign-upload-public.

Step 7: Offer to open the plan

Print the campaign-plan.md path. Offer open <path> if macOS.

Safeguards

  • Don't re-run /icp-onboarding blindly. If a profile exists, ASK before overwriting.
  • Don't auto-invoke /zapmail-domain-setup-public. It spends real money. Always confirm first.
  • Don't skip the 2-week warmup warning. Make it loud if the user picks option [C] of the no-infra menu.

Why this skill exists

Without kickoff, a new user opens the repo, sees 29 skills, and has no idea which to run first. Every single new operator asks the same question ("where do I start?") and the answer is identical. This skill is that answer, codified.

Also: putting the infrastructure question FIRST prevents the most common failure mode — someone writes beautiful copy, builds a great list, then realizes they can't send because they have no warmed inboxes.

What to do next

Follow whichever branch your Step 6 menu selected. The skill hands you off cleanly to the right next step.

Or wait: if you picked [B] from the no-infra menu (save plan, come back later), return to this skill after your domains have warmed for 2 weeks. Load the existing profile and skip to Step 6.

  • /icp-onboarding — invoked in step 2 (scrapes website + interviews)
  • /lead-magnet-brainstorm — invoked in step 3 (picks free offer)
  • /campaign-strategy — invoked in step 4 (15-25 campaign ideas)
  • /zapmail-domain-setup-public — offered in step 6 if no infra
  • /smartlead-inbox-manager — offered in step 6 after domain setup
  • /prospeo-full-export, /disco-like, /google-maps-list-builder, /blitz-list-builder, /competitor-engagers — offered in step 6 if infra ready

References

  • references/example-campaign-plans/b2b-saas.md — sample campaign plan for a B2B SaaS client
  • references/example-campaign-plans/smb-restaurant.md — sample for a local restaurant chain
  • references/example-campaign-plans/agency.md — sample for a marketing agency
1---
2name: cold-email-kickoff
3description: Single "start here" orchestrator for new cold email operators. Asks infrastructure-status questions first, then runs /icp-onboarding → /lead-magnet-brainstorm → /campaign-strategy in sequence, producing a consolidated campaign-plan.md. Ends with an interactive menu of next skills branched on whether the user already has domains/inboxes. Use as the very first invocation on any new repo checkout or when onboarding someone to cold email from zero.
4---
5 
6# Cold Email Kickoff
7 
8The single entry point for a fresh user. Replaces "stare at 29 skills and guess which to run first."
9 
10## When to use
11 
12- First-time cold email operator on this repo
13- New client/business being onboarded (fresh `profiles/<slug>/` directory)
14- Experienced operator starting a new campaign for a new business
15- Anyone who asks "where do I start?"
16 
17## What this skill produces
18 
19- A populated `profiles/<business-slug>/client-profile.yaml` (from `/icp-onboarding`)
20- A `profiles/<business-slug>/lead-magnets.md` with the chosen free offer
21- A `profiles/<business-slug>/campaign-strategy.md` with 15-25 campaign ideas
22- A consolidated `profiles/<business-slug>/campaign-plan.md` — a single-page summary you can show stakeholders
23- An interactive menu pointing at the right next skill based on your infrastructure status
24 
25## Flow
26 
27### Step 1 (asked FIRST): Infrastructure status
28 
29Before touching any business context, ask:
30 
311. **"Do you already have sending domains + inboxes set up on Smartlead?"** (yes / no / not sure)
322. **"At least 20 inboxes that have been warming for 2+ weeks?"** (yes / no)
333. **"Do you have API keys for Smartlead + Prospeo + MillionVerifier in your `.env`?"** (yes / partial / no)
34 
35These answers determine the next-step menu at Step 6. Save them as `infrastructure_status` in the profile.
36 
37### Step 2: Load or create the business profile
38 
39Check for `profiles/<business-slug>/client-profile.yaml`:
40 
41- **Exists** → load it. Ask: "Use this existing profile (answer: `use`) or start fresh (answer: `new`)?"
42- **Doesn't exist** → invoke `/icp-onboarding`. This scrapes the user's website first, then interviews them. Produces the profile.
43 
44### Step 3: Ensure lead magnet is chosen
45 
46Check the loaded/created profile for a `lead_magnet` field:
47 
48- **Empty** → invoke `/lead-magnet-brainstorm`. It asks 4 intake questions, scores 10 magnet archetypes, picks a top 2-3, updates the profile.
49- **Already set** → confirm with the user: "Using `<chosen magnet>` as your free offer. OK?" — if they want to change it, re-invoke `/lead-magnet-brainstorm`.
50 
51### Step 4: Generate campaign strategy
52 
53Invoke `/campaign-strategy`. It takes the profile + website + any case studies it can scrape and produces 15-25 campaign ideas ranging from broad to niche, with AI personalization + value-prop + campaign-overview per idea.
54 
55Saved to `profiles/<slug>/campaign-strategy.md`.
56 
57### Step 5: Synthesize campaign-plan.md
58 
59Pull from all three artifacts above. Write `profiles/<slug>/campaign-plan.md`:
60 
61```markdown
62# Campaign Plan — <business name>
63Generated: YYYY-MM-DD
64 
65## Business
66<one-liner from profile>
67Website: <url>
68 
69## ICP
70- Titles: <titles>
71- Industries: <industries>
72- Headcount: X-Y
73- Geography: <countries/states>
74- Hard filters: <list>
75- Excluded industries: <list>
76 
77## Offer & Lead Magnet
78- Primary CTA: <cta>
79- Free hook: <lead magnet name>
80- Delivery: <how you deliver it>
81 
82## Top 3 Recommended Campaigns (from /campaign-strategy)
831. **<name>** — <one-line why + value prop>
842. **<name>** — <one-line why + value prop>
853. **<name>** — <one-line why + value prop>
86 
87Full strategy in: profiles/<slug>/campaign-strategy.md
88 
89## Infrastructure Readiness
90Based on your Step 1 answers:
91- [ ] SMARTLEAD_API_KEY in .env: <yes/no>
92- [ ] PROSPEO_API_KEY in .env: <yes/no>
93- [ ] MILLIONVERIFIER_API_KEY in .env: <yes/no>
94- [ ] Domains purchased: <yes/no>
95- [ ] Inboxes warmed 2+ weeks: <yes/no>
96 
97## Next Steps
98<branched — see Step 6 below>
99```
100 
101### Step 6: Interactive next-skill menu
102 
103Branch on Step 1 answers.
104 
105**If NO infrastructure (or "not sure"):**
106 
107```
108Your next step is provisioning domains + inboxes. This takes ~2 weeks (because inboxes need
109to warm). Menu:
110 
111[A] Start the domain + inbox setup NOW → /zapmail-domain-setup-public then /smartlead-inbox-manager
112[B] Save the plan and come back after I have infra
113[C] I want to build my list FIRST (warning: risky — without warmed inboxes, you can't send safely)
114 
115Pick A / B / C:
116```
117 
118If A: orient the user, then invoke `/zapmail-domain-setup-public`. After that skill completes, invoke `/smartlead-inbox-manager` for config. Remind the user to wait 2 weeks for warmup before launching.
119 
120**If INFRASTRUCTURE READY (warmed inboxes + API keys present):**
121 
122Look at the ICP type in the profile and recommend a list-building skill:
123 
124```
125Your infra is ready. Time to build your list. Based on your ICP (<summary>), the best fit is:
126 
127[A] /prospeo-full-export → title-first search (best for: VP/Director/Head roles in specific industries)
128[B] /disco-like → lookalike discovery (best for: "more companies like <seed domains>")
129[C] /google-maps-list-builder → local SMBs (best for: restaurants, clinics, contractors, etc.)
130[D] /blitz-list-builder → domain-first (best for: named-account ABM, specific company list)
131[E] /competitor-engagers → LinkedIn engagement (best for: people actively engaged with competitors)
132 
133Recommendation: <one of A-E based on ICP>. Pick A / B / C / D / E:
134```
135 
136Invoke the picked skill. After it completes, remind user: `/icp-prompt-builder` runs inside that skill (required step), then `/list-quality-scorecard`, then `/campaign-copywriting`, then `/smartlead-campaign-upload-public`.
137 
138### Step 7: Offer to open the plan
139 
140Print the `campaign-plan.md` path. Offer `open <path>` if macOS.
141 
142## Safeguards
143 
144- **Don't re-run `/icp-onboarding` blindly.** If a profile exists, ASK before overwriting.
145- **Don't auto-invoke `/zapmail-domain-setup-public`.** It spends real money. Always confirm first.
146- **Don't skip the 2-week warmup warning.** Make it loud if the user picks option [C] of the no-infra menu.
147 
148## Why this skill exists
149 
150Without kickoff, a new user opens the repo, sees 29 skills, and has no idea which to run first. Every single new operator asks the same question ("where do I start?") and the answer is identical. This skill is that answer, codified.
151 
152Also: putting the infrastructure question FIRST prevents the most common failure mode — someone writes beautiful copy, builds a great list, then realizes they can't send because they have no warmed inboxes.
153 
154## What to do next
155 
156Follow whichever branch your Step 6 menu selected. The skill hands you off cleanly to the right next step.
157 
158**Or wait:** if you picked [B] from the no-infra menu (save plan, come back later), return to this skill after your domains have warmed for 2 weeks. Load the existing profile and skip to Step 6.
159 
160## Related skills
161 
162- `/icp-onboarding` — invoked in step 2 (scrapes website + interviews)
163- `/lead-magnet-brainstorm` — invoked in step 3 (picks free offer)
164- `/campaign-strategy` — invoked in step 4 (15-25 campaign ideas)
165- `/zapmail-domain-setup-public` — offered in step 6 if no infra
166- `/smartlead-inbox-manager` — offered in step 6 after domain setup
167- `/prospeo-full-export`, `/disco-like`, `/google-maps-list-builder`, `/blitz-list-builder`, `/competitor-engagers` — offered in step 6 if infra ready
168 
169## References
170 
171- `references/example-campaign-plans/b2b-saas.md` — sample campaign plan for a B2B SaaS client
172- `references/example-campaign-plans/smb-restaurant.md` — sample for a local restaurant chain
173- `references/example-campaign-plans/agency.md` — sample for a marketing agency
174 

Discussion

Alternatives