Prospecting
coreyhaines31/marketingskills
When the user wants to find, qualify, and build a list of prospects to reach out to, across B2B SaaS, general B2B, or local small businesses.
Agent skill
by Othmane-Khadri in Othmane-Khadri/YALC-the-GTM-operating-system
Designs high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns.
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architect --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/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .claude/skills/outbound-campaign-architect && 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 "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .claude/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architectType 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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architect --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .agents/skills/outbound-campaign-architect && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .agents/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architect --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .cursor/skills/outbound-campaign-architect && 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 "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .cursor/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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/Othmane-Khadri/YALC-the-GTM-operating-system.git --path .claude/skills/lemlist/outbound-campaign-architect--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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architect --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .gemini/skills/outbound-campaign-architect && 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 "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .gemini/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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 Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architectInstalls 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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .github/skills/outbound-campaign-architect && 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 "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .github/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system outbound-campaign-architect --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/lemlist/outbound-campaign-architect .opencode/skills/outbound-campaign-architect && 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 "outbound-campaign-architect" agent skill from https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system/tree/main/.claude/skills/lemlist/outbound-campaign-architect into .opencode/skills/outbound-campaign-architect/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "outbound-campaign-architect", 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.
outbound-campaign-architectDesigns high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns.
Outbound Campaign Architect is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. 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…
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Sales & Support, covering Cold outreach. It works with LinkedIn. The repository describes itself as: YALC 1.0, the open-source Clay alternative. MIT, CLI-first, self-hosted, runs in Claude Code. Yalc today is an intelligent orchestration layer that runs pre configured GTM agents…. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5686d1f. 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.
No scripts in the folder and no shell commands in SKILL.md.
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.
Outbound Campaign Architect loads about 1.9k tokens when it runs. Until then it costs about 153 tokens; SKILL.md has 1,038 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); files beside SKILL.md are not scanned.
The full file from Othmane-Khadri/YALC-the-GTM-operating-system at commit 5686d1f, republished under its MIT licence (© Othmane-Khadri). 1,038 words, ~1,942 tokens.
.claude/skills/outbound-campaign-architect/SKILL.md (or your agent's skills folder).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.
Ask the user for the following in a single message. Don't ask one by one.
If the user already provided some of these, don't re-ask — extract from context and confirm.
Use the rules below to design the sequence. These rules are grounded in lemlist campaign data (analysis of 244,000+ campaigns, 249M+ emails sent).
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.
| Channel mix | Global reply rate |
|---|---|
| Email only | 1.1% |
| LinkedIn + Email | 4.7% (4.3x email-only) |
| LinkedIn + Email + Call | 2.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.
| Steps | Email only | LinkedIn + Email |
|---|---|---|
| 2 steps | 1.9% | 7.0% |
| 3 steps | 1.3% | 7.2% ← sweet spot |
| 4 steps | 1.1% | 5.0% |
| 5+ steps | 0.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.
| List size | Global reply rate |
|---|---|
| 6–50 leads | 5.3% |
| 51–200 leads | 3.2% |
| 201–500 leads | 2.3% |
| 501–1,000 leads | 1.9% |
| 1,000+ leads | 1.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.
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 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.
Produce the sequence as a visual step-by-step plan. Use this exact format:
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]
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)
List any if/then logic that should be configured:
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.
2–3 common mistakes for this specific ICP/context that would kill performance.
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?"
Use these as defaults unless the context suggests otherwise:
| Gap | Recommended |
|---|---|
| LinkedIn action → First email | 1–2 days |
| Email → LinkedIn follow-up | 2–3 days |
| Email → Email follow-up | 3–5 days |
| After unanswered call → Email | Same day or next morning |
| LinkedIn invite timeout (no accept) | 7 days, then switch to email |
| Total sequence duration | 10–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.
© Othmane-Khadri, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/lemlist/outbound-campaign-architect of Othmane-Khadri/YALC-the-GTM-operating-system.
Open the folder on GitHubat commit 5686d1f
Outbound Campaign Architect 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 |
|---|---|---|---|---|---|---|
| Outbound Campaign Architect this skillOthmane-Khadri/YALC-the-GTM-operating-system | 318 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Prospectingcoreyhaines31/marketingskills | 54k | — | ~5k | Automated safety check: Pass | MIT | |
| Sales OsromangojiberryAI/gojiberryai-sales-os | 139 | — | ~2k | Automated safety check: Pass | MIT | |
| Cold Outreach Personalizeraiskilloftheweek/claude-ai-skill-of-the-week | 149 | — | ~2.6k | Automated safety check: Pass | None | |
| B2B Lead Generationminhnv0807/ai-business-skills | 609 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Cold Emailcoreyhaines31/marketingskills | 54k | — | ~3.1k | Automated safety check: Pass | MIT |
coreyhaines31/marketingskills
When the user wants to find, qualify, and build a list of prospects to reach out to, across B2B SaaS, general B2B, or local small businesses.
romangojiberryAI/gojiberryai-sales-os
A complete outbound sales department in one skill. An agent skill from romangojiberryAI/gojiberryai-sales-os.
aiskilloftheweek/claude-ai-skill-of-the-week
Generates hyper-personalized cold outreach messages (email, LinkedIn DM, connection request) from raw prospect research.
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.
coreyhaines31/marketingskills
Write and run B2B cold outbound that gets replies, from cold emails and follow-ups to sending setup, LinkedIn, multichannel cadences, and reply handling.
BrianRWagner/ai-marketing-claude-code-skills
Builds researched LinkedIn and email outreach for prospects, from a single message to a multi-prospect system, with personalization graded by the signals found.
Othmane-Khadri/YALC-the-GTM-operating-system
Turns a week of Claap-recorded sales calls into action items and focus blocks on a Notion Kanban, delivered with a Slack summary.
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "set up FullEnrich reverse lookup for trial signups", "PLG enrichment webhook", "identify free trial signups via FullEnrich", "reverse email lookup for…
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "enrich people who engaged with this post", "qualify post engagers with FullEnrich", "scrape and enrich LinkedIn post {URL}", "engagers from this post into…
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "enrich this LinkedIn event", "enrich attendees of this event", "enrich this attendees CSV", "scrape and enrich LinkedIn event {URL}", "FullEnrich event…
Othmane-Khadri/YALC-the-GTM-operating-system
Reply to comments on a LinkedIn post via Unipile — drafts thread-aware replies grounded in the user's voice and the conversation context, then sends on approval.
Othmane-Khadri/YALC-the-GTM-operating-system
A skill your agent uses when the user says "activate co-founder network with FullEnrich", "enrich LinkedIn connections export", "qualify my LinkedIn connections CSV", "turn Connections.csv into a…
Works with
Categories
Designs high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns. Outbound Campaign Architect is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. Designs high-performance outbound sequences based on ICP, available channels, and empirical lemlist data from hundreds of thousands of campaigns.
Outbound Campaign Architect fits situations like: the user wants to build; optimize an outbound sequence; cadence — whether they say create a sequence; build a campaign.
Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a claude-code`. Or copy the skill folder (.claude/skills/lemlist/outbound-campaign-architect in Othmane-Khadri/YALC-the-GTM-operating-system) into .claude/skills/outbound-campaign-architect in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a codex`. Or copy the skill folder (.claude/skills/lemlist/outbound-campaign-architect in Othmane-Khadri/YALC-the-GTM-operating-system) into .agents/skills/outbound-campaign-architect 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 Othmane-Khadri/YALC-the-GTM-operating-system --skill outbound-campaign-architect -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/outbound-campaign-architect, .gemini/skills/outbound-campaign-architect, .github/skills/outbound-campaign-architect and .opencode/skills/outbound-campaign-architect in your project.
SKILL.md names no scripts, command-line tools or credentials: Outbound Campaign Architect is instructions for the agent only.
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. Review the folder before installing.
Outbound Campaign Architect is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Outbound Campaign Architect: Prospecting (coreyhaines31/marketingskills, 54k stars), Sales Os (romangojiberryAI/gojiberryai-sales-os, 139 stars), Cold Outreach Personalizer (aiskilloftheweek/claude-ai-skill-of-the-week, 149 stars) and B2B Lead Generation (minhnv0807/ai-business-skills, 609 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Othmane-Khadri (a GitHub user) maintains it in Othmane-Khadri/YALC-the-GTM-operating-system, which has 318 GitHub stars. The repository holds 57 skills in this directory. The repository was last updated on August 20, 2026.
Source: Othmane-Khadri/YALC-the-GTM-operating-system on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.