The contract: the recipient must be able to read it in 15 seconds and decide whether to act. Every word that doesn't earn that 15 seconds is a tax.
Use this skill when the user is writing:
- a first-touch outreach (founder → VC, candidate → recruiter, writer → editor, partner → partner)
- a follow-up to a non-response
- an intro request through a mutual connection
- a warm-intro template (the "forwardable" email)
- a re-engagement after a long pause
This skill does NOT:
- write viral posts (use
viral-text)
- write long-form essays (use
essay-write)
- shift register of existing content (use
tone-shifter)
- write fiction outreach (DM to an author, fan letter) — those need a different voice.
ROLE
Read context (who is the recipient, what's the ask, what's the proof) → assemble the email with the 5-block structure → respect the length budget → run the banned-patterns check → final pass through writer.
PIPELINE
Gather intent. Ask if not provided: (a) who is the recipient (role + context), (b) what is the one ask, (c) what is the proof / hook / why-now, (d) is this first-touch, follow-up, intro request, or re-engagement.
Pick structure. See references/structure.md for the 5-block template adapted to the email type. First-touch and follow-up have different leads.
Length-budget check. See references/length-budget.md. Hard cap: 200 words. Target: ≤120 words for first-touch. If draft exceeds budget, cut — see the cut-list in length-budget.md.
Banned-patterns check. See references/banned-patterns.md. Strip ceremony, hedges, vague intros, "I hope this email finds you well", "Hope you're doing great", "Just checking in".
Final writer pass. 4-layer cleanup. Even more strict than usual: cold email has no slack for slop.
Delete the water, not the function. The ask, the easy-yes, the proof link and the sign-off are the email's working parts. Writer's default treatment is deletion; applied here it produces a polished note that requests nothing. Treat them by replacement or simplification. After the pass, verify the ask is still present and still specific. See forbidden-substitutions.md in the writer skill.
Output. Subject line + body. Subject line follows its own rules (see references/structure.md section 6).
MODES
cold-email first-touch <recipient> --ask <ask> --proof <proof> — initial outreach
cold-email follow-up <previous> — write a follow-up that doesn't repeat the original
cold-email intro-request <intro-via> --asking-for <intro-to> --why <reason> — ask a mutual contact
cold-email forwardable <recipient-context> --ask <ask> — the "forwardable" template designed to be pasted by the intro-giver into a separate thread
cold-email re-engage <last-context> — re-open after silence
REFERENCES (load on demand)
| File |
When to load |
| references/structure.md |
When assembling the email — 5-block template per type, subject-line rules |
| references/banned-patterns.md |
After draft is assembled — the strip pass |
| references/length-budget.md |
When the draft exceeds 120/200 words — the cut-list |
EXAMPLES
See examples/ — three calibration emails (first-touch, follow-up, intro-request).
CONSTRAINTS
- One ask per email. If the user wants two asks, write two emails.
- No multi-paragraph windups. The first sentence must contain a hook or be the hook. No "I'm reaching out because I've been a longtime admirer of your work in X."
- Proof must be specific. "We grew 4x in 6 months" beats "We've grown significantly." "I wrote the iOS chapter of Y" beats "I have experience in mobile."
- Subject line must NOT include "Quick question", "Touching base", "Hi", or the recipient's name as a desperate hook. See structure.md section 6.
- Sign-off plain. "Best, Name" or "Thanks, Name". Not "Cheers, Name" unless it matches your voice. Not "Warm regards" unless you genuinely use it.
INVOCATION HINTS
When the user says any of:
- "write a cold email / outreach / pitch / intro request"
- "help me email this [VC / recruiter / journalist / founder]"
- "draft an outreach to ..."
- "write a follow-up to ..."
- "intro me to X via Y"
- "warm intro template"
RU triggers (use the skill when the user writes any of):
- "холодное письмо / холодный аутрич / письмо инвестору / письмо рекрутёру"
- "напиши outreach / напиши письмо ..."
- "фоллоу-ап / фолоуап / follow-up к ..."
- "интро через X к Y / попроси Y представить меня"
- "переоткрыть переписку / re-engage"
- "перепиши это письмо короче и без воды"
Use this skill. If the message is internal (manager, team, peer who already knows you), use tone-shifter with target friendly-professional instead.
For RU outreach (formal register, отчества, обращение «вы»), see references/structure-ru.md — it overrides a few defaults from structure.md (greeting, sign-off, ceremony bans).
1---2name: cold-email3description: Write or rewrite cold outreach emails to founders, VCs, recruiters, journalists, partners. 5-block structure (hook/value/ask/easy-yes/sign-off), ≤120-word budget, banned ceremony, anti-template subjects. Wraps `writer`. Use for first-touch, follow-up, intro request, warm-intro forwardable, re-engage.4license: MIT5---67<objective>8Write a cold email that gets read and responded to. Not viral content (use `viral-text`). Not formal corporate (use `tone-shifter --to business-formal`). A direct, one-to-one message with a specific ask.910The contract: the recipient must be able to read it in 15 seconds and decide whether to act. Every word that doesn't earn that 15 seconds is a tax.1112Use this skill when the user is writing:13- a first-touch outreach (founder → VC, candidate → recruiter, writer → editor, partner → partner)14- a follow-up to a non-response15- an intro request through a mutual connection16- a warm-intro template (the "forwardable" email)17- a re-engagement after a long pause1819This skill does NOT:20- write viral posts (use `viral-text`)21- write long-form essays (use `essay-write`)22- shift register of existing content (use `tone-shifter`)23- write fiction outreach (DM to an author, fan letter) — those need a different voice.24</objective>2526## ROLE2728Read context (who is the recipient, what's the ask, what's the proof) → assemble the email with the 5-block structure → respect the length budget → run the banned-patterns check → final pass through `writer`.2930## PIPELINE31321. **Gather intent.** Ask if not provided: (a) who is the recipient (role + context), (b) what is the one ask, (c) what is the proof / hook / why-now, (d) is this first-touch, follow-up, intro request, or re-engagement.33342. **Pick structure.** See `references/structure.md` for the 5-block template adapted to the email type. First-touch and follow-up have different leads.35363. **Length-budget check.** See `references/length-budget.md`. Hard cap: 200 words. Target: ≤120 words for first-touch. If draft exceeds budget, cut — see the cut-list in length-budget.md.37384. **Banned-patterns check.** See `references/banned-patterns.md`. Strip ceremony, hedges, vague intros, "I hope this email finds you well", "Hope you're doing great", "Just checking in".39405. **Final `writer` pass.** 4-layer cleanup. Even more strict than usual: cold email has no slack for slop.4142 **Delete the water, not the function.** The ask, the easy-yes, the proof link and the sign-off are the email's working parts. Writer's default treatment is deletion; applied here it produces a polished note that requests nothing. Treat them by replacement or simplification. After the pass, verify the ask is still present and still specific. See `forbidden-substitutions.md` in the `writer` skill.43446. **Output.** Subject line + body. Subject line follows its own rules (see `references/structure.md` section 6).4546## MODES4748- `cold-email first-touch <recipient> --ask <ask> --proof <proof>` — initial outreach49- `cold-email follow-up <previous>` — write a follow-up that doesn't repeat the original50- `cold-email intro-request <intro-via> --asking-for <intro-to> --why <reason>` — ask a mutual contact51- `cold-email forwardable <recipient-context> --ask <ask>` — the "forwardable" template designed to be pasted by the intro-giver into a separate thread52- `cold-email re-engage <last-context>` — re-open after silence5354## REFERENCES (load on demand)5556| File | When to load |57|---|---|58| [references/structure.md](references/structure.md) | When assembling the email — 5-block template per type, subject-line rules |59| [references/banned-patterns.md](references/banned-patterns.md) | After draft is assembled — the strip pass |60| [references/length-budget.md](references/length-budget.md) | When the draft exceeds 120/200 words — the cut-list |6162## EXAMPLES6364See [examples/](examples/) — three calibration emails (first-touch, follow-up, intro-request).6566## CONSTRAINTS6768- **One ask per email.** If the user wants two asks, write two emails.69- **No multi-paragraph windups.** The first sentence must contain a hook or be the hook. No "I'm reaching out because I've been a longtime admirer of your work in X."70- **Proof must be specific.** "We grew 4x in 6 months" beats "We've grown significantly." "I wrote the iOS chapter of Y" beats "I have experience in mobile."71- **Subject line must NOT include "Quick question", "Touching base", "Hi", or the recipient's name as a desperate hook.** See structure.md section 6.72- **Sign-off plain.** "Best, Name" or "Thanks, Name". Not "Cheers, Name" unless it matches your voice. Not "Warm regards" unless you genuinely use it.7374## INVOCATION HINTS7576When the user says any of:77- "write a cold email / outreach / pitch / intro request"78- "help me email this [VC / recruiter / journalist / founder]"79- "draft an outreach to ..."80- "write a follow-up to ..."81- "intro me to X via Y"82- "warm intro template"8384RU triggers (use the skill when the user writes any of):85- "холодное письмо / холодный аутрич / письмо инвестору / письмо рекрутёру"86- "напиши outreach / напиши письмо ..."87- "фоллоу-ап / фолоуап / follow-up к ..."88- "интро через X к Y / попроси Y представить меня"89- "переоткрыть переписку / re-engage"90- "перепиши это письмо короче и без воды"9192Use this skill. If the message is internal (manager, team, peer who already knows you), use `tone-shifter` with target `friendly-professional` instead.9394For RU outreach (formal register, отчества, обращение «вы»), see [`references/structure-ru.md`](references/structure-ru.md) — it overrides a few defaults from `structure.md` (greeting, sign-off, ceremony bans).