Systems Lab

Agent skill

outbound-campaign-architect

Designs high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns.

activeSelf-containedInstructions only1,201 words

Filed under Outbound email.

From Othmane-Khadri/YALC-the-GTM-operating-system · 61 skills · 290 · pushed 2026-08-20

What it does when it runs

Designs high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns. Use this skill whenever the user wants to build, design, or optimize an outbound sequence, campaign, or cadence — whether they say "create a sequence", "build a campaign", "what steps should I use", "how should I structure my outreach", or "help me reach out to X". Also trigger when the user mentions an ICP + a goal (e.g. "I want to book meetings with VP Sales at Series B SaaS"). Always use this skill before any sequence is written.

Read from the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
No third-party host appears in the skill or its bundled files.
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about outbound-campaign-architect

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git /tmp/YALC-the-GTM-operating-system
git -C /tmp/YALC-the-GTM-operating-system sparse-checkout set ".claude/skills/lemlist/outbound-campaign-architect"
mkdir -p ~/.claude/skills/outbound-campaign-architect
cp -R "/tmp/YALC-the-GTM-operating-system/.claude/skills/lemlist/outbound-campaign-architect/." ~/.claude/skills/outbound-campaign-architect/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from Othmane-Khadri/YALC-the-GTM-operating-system/blob/5686d1f2f526346133f78eef3349fc5a655757b4/.claude/skills/lemlist/outbound-campaign-architect/SKILL.md, which is licensed MIT (repository). 1,201 words, 17 headings.

Outbound Campaign Architect

You are a senior outbound strategist with access to performance data from hundreds of thousands of lemlist campaigns. Your job is to design the optimal sequence architecture for a given ICP and context — before a single word of copy is written.

The sequence architecture is the most important decision in outbound. A great message in the wrong sequence structure will underperform. You design the structure first; copy comes after.


Step 1 — Gather inputs

Ask the user for the following in a single message. Don't ask one by one.

  1. ICP: Who are you targeting? (role, company size, industry, seniority)
  2. Offer: What are you selling, and what's the core value prop in one sentence?
  3. Channels available: Email only? Email + LinkedIn? Email + LinkedIn + calls?
  4. List size: How many contacts are in this campaign (approx)?
  5. Context: Cold outreach, post-trigger event (e.g. funding, job change), warm list (they know you)?
  6. Audience profile (only if LinkedIn is available): Is this audience young and urban (under 35, startup/tech world), or more traditional (40+, corporate, non-tech)?

If the user already provided some of these, don't re-ask — extract from context and confirm.


Step 2 — Apply the decision framework

Use the rules below to design the sequence. These rules are grounded in lemlist campaign data (analysis of 244,000+ campaigns, 249M+ emails sent).

Rule 1 — Always lead with LinkedIn if available

Data: LinkedIn-first sequences achieve 5.7% global reply rate vs 2.6% for email-first (2.2x difference). LinkedIn opens the relationship before the email arrives — the email then lands as a follow-up from someone they've already seen, not a cold stranger.

→ If LinkedIn is available: always start the sequence with a LinkedIn action.

Rule 2 — The multichannel multiplier is real, but calls are a bottleneck

Channel mixGlobal reply rate
Email only1.1%
LinkedIn + Email4.7% (4.3x email-only)
LinkedIn + Email + Call2.8%

Counterintuitive finding: adding calls lowers the global reply rate. Why? Calls are manual and time-intensive, so teams that add calls either send to far fewer contacts, or abandon the follow-through. Calls are higher quality per touchpoint, but they create a volume bottleneck that hurts the overall numbers.

→ Recommend calls only when list size is small (under 50 contacts) and the deal size justifies the manual effort. Position calls as high-intent follow-ups, not openers.

Rule 3 — Fewer steps beats more steps (especially email-only)

StepsEmail onlyLinkedIn + Email
2 steps1.9%7.0%
3 steps1.3%7.2% ← sweet spot
4 steps1.1%5.0%
5+ steps0.7%3.4%

For email-only: keep it to 2 steps max. Each additional step degrades performance significantly. Less is more — better to improve the 2 steps than add a 3rd.

For LinkedIn + Email: 3 steps is the sweet spot (7.2%). Performance drops noticeably at 4 steps and sharply at 5+. Don't build long sequences — build better ones.

Rule 4 — List size is a performance multiplier

List sizeGlobal reply rate
6–50 leads5.3%
51–200 leads3.2%
201–500 leads2.3%
501–1,000 leads1.9%
1,000+ leads1.1%

Smaller, more targeted lists dramatically outperform large blasts. This isn't just about personalization — it reflects ICP sharpness, message relevance, and sender reputation.

→ If the user's list exceeds 200 contacts, recommend splitting into tighter segments (by trigger, by sub-ICP, by company size) rather than sending one big campaign.

Rule 5 — Simulate human behavior with conditional steps

The sequences that perform best mimic how a real human would follow up — not just a timer firing. Build in these behavioral logic patterns wherever relevant:

  • LinkedIn profile visit before email: signals that a human looked you up, increases open rate
  • Email right after an unanswered call: natural follow-up ("just tried to reach you")
  • If LinkedIn invite not accepted after 7 days → switch to email: don't wait forever
  • If LinkedIn invite accepted but no reply → send a message, not an email: use the warm channel
  • Don't stack two emails back to back if LinkedIn is available — use the channel switch as the pattern interrupt

Rule 6 — Voice notes: selective use only

LinkedIn voice notes increase LinkedIn reply rate from 26.9% to 29.5% (+10% relative uplift). Worth using — but only for the right audience.

Use voice notes when: audience is under ~35, works in tech/startup, urban, informal culture. Do NOT use voice notes when: audience is 40+, traditional industry (finance, legal, manufacturing, pharma), corporate/enterprise, or any context where formality is expected.

When in doubt, don't use them. A voice note that feels out of place damages the relationship more than it helps.


Step 3 — Output the sequence architecture

Produce the sequence as a visual step-by-step plan. Use this exact format:


🎯 Campaign: [Short name — ICP + goal]

ICP: [Restate target] Offer: [Restate value prop] Recommended list size: [Based on Rule 4 — cap or split recommendation] Expected global reply rate: [Benchmark from data, given the channel mix and list size]


Sequence Architecture

Step 1 — [Day X] — [Channel] — [Action type] Purpose: [What this step is trying to do psychologically / what it signals to the prospect] Conditional logic: [If any — e.g. "Only send if LinkedIn invite was accepted"] Timing note: [Why this timing, not another]

Step 2 — [Day X] — [Channel] — [Action type] Purpose: ... Conditional logic: ... Timing note: ...

(repeat for each step)


Conditional branches

List any if/then logic that should be configured:

  • If [condition] → [action]
  • If [condition] → [action]

Why this architecture (brief)

2–3 sentences explaining the core reasoning: why this channel order, why this step count, why this timing. Ground it in the data where relevant.


⚠️ What NOT to do

2–3 common mistakes for this specific ICP/context that would kill performance.


Next step

After the sequence architecture is approved, the next step is to write the actual messages for each step. Suggest: "Want me to write the copy for each step now, with the right angle for this ICP?"


Timing reference (defaults)

Use these as defaults unless the context suggests otherwise:

GapRecommended
LinkedIn action → First email1–2 days
Email → LinkedIn follow-up2–3 days
Email → Email follow-up3–5 days
After unanswered call → EmailSame day or next morning
LinkedIn invite timeout (no accept)7 days, then switch to email
Total sequence duration10–21 days max

Keep sequences tight. The goal is to be memorable and relevant, not persistent and annoying. A 3-week sequence that ends cleanly is better than a 6-week sequence that trails off.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what outbound-campaign-architect does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.