What it does
This skill writes cold outbound emails that lead with a specific, verifiable reason for reaching out instead of a flattering opener anyone could send to anyone. You give it a snippet about the prospect, a job posting, a LinkedIn post, a product launch, a 10-K line, a podcast quote, plus your single clearest value prop, and it produces a tight primary email, two subject-line variants, a body variant with a different angle, and a follow-up. The whole thing is built around one belief: relevance is the only personalization that moves reply rates, and everything else is decoration.
The difference between a good and bad version of this tool is whether it will lie. A bad cold-email generator happily writes "I loved your recent post about scaling" whether or not such a post exists, because it's optimizing for a finished email. That email gets the rep caught and burns the prospect. A good one treats the relevance snippet as the load-bearing input: if the snippet is thin or generic, it stops and asks for a real signal rather than papering over the gap with invented specifics. This skill is the second kind. It will refuse to fabricate a detail about the prospect, their company, or their results, and it uses a clearly-marked placeholder when you haven't given it a real proof point.
It also carries a voice block. You paste two or three of your best existing emails once; the skill captures the patterns that actually define a voice, average sentence length, formality, contraction habits, greeting and sign-off style, whether you use lowercase or em-dashes, restates the voice it detected in one line so you can correct it, and then matches that voice on every email after. This is the part that's tedious to do by hand and easy for a model: keeping fifty emails consistent in tone without sounding like a template.
Where it beats doing it manually: speed on the relevance-to-angle step, and consistency of the rules. Most reps know the rules (one idea, under 90 words, soft CTA, no walls of text) but break them under time pressure, especially on email 30 of the day. The skill encodes the rules so they hold at volume. Where it does not help: it is not a sequencer and not a deliverability tool. It writes the words; you still own the targeting, the sending infrastructure, and the one human edit that keeps the email from reading as machine-made.
Inputs & outputs
Inputs
- A relevance snippet about the prospect, a job post, LinkedIn post, news item, site copy, earnings line, required
- Your single clearest value prop and the outcome you drive, required
- 2-3 sample emails that represent your brand voice (paste once per session/Project)
- Optional: the persona/title and the specific call to action you want
- Optional: a real proof point (customer name, metric) you're allowed to cite
Outputs
- A primary cold email, subject plus body, under about 90 words
- Two subject-line variants and one body variant built on a different angle
- A short follow-up email for 3-4 days later that adds a NEW angle rather than nagging
- A one-line note on which signal each version leans on, so you can pick by angle
How to set it up
Set it up as a Project or a Skill
The voice calibration is what makes this worth setting up properly. If you use claude.ai, create a Project called "Cold Email" and paste the full SKILL.md body below into the Project's custom instructions, this is the recommended path, because the voice you teach it persists across every chat in the Project. If you use the Claude skills feature, save the content as a folder cold-email-writer/SKILL.md and load it. The throwaway option (paste SKILL.md as the first message of a chat) works but you'll re-teach the voice every time.
Calibrate the voice once
On first use, paste two or three of your best-performing real emails and say "this is our voice." The skill will reply with a one-line summary of the voice it detected ("short sentences, lowercase subject lines, no greeting, sign off with just your first name"). Read that line and correct anything wrong before you proceed, this is the calibration step and it pays for itself across every later email. After this, you only need to supply the signal and the value prop.
Feed it a real signal
Give it something specific and checkable: "They posted a Director of Demand Gen role last week" or "Their CEO posted about cutting CAC in half." Vague inputs ("they're a growing SaaS company") produce vague emails, and the skill is built to push back, if the signal is weak or generic, it will say so and ask you for a better one rather than guessing. Honor that; the ask is the feature.
Pick a variant and make one human edit
Read the signal note, choose the variant whose angle fits the prospect, then change one thing by hand, a word, the CTA phrasing, a cut line. That single edit is what keeps the email from pattern-matching as automated when it lands next to ten others. Send the follow-up only if there's no reply; the skill writes it to introduce a new angle, not to say "just bumping this."
The SKILL.md
Save this as SKILL.md in a folder named cold-email-writer, or paste the body into a Claude Project. Calibrate the voice once, then give it a signal and a value prop.
---
name: cold-email-writer
description: Use when a rep needs a relevance-first cold email. Writes short cold emails in the team's brand voice from a specific, verifiable prospect signal and one clear value prop. Captures the team's voice from sample emails. Refuses to fabricate personalization and asks for a better signal when the input is weak.
---
# Cold Email Writer
You write cold outbound emails that get replies because they open with a specific, real reason for reaching out and connect it to one outcome the rep drives. You write in the team's established voice. You optimize for replies, not for producing a finished email at any cost.
## Voice calibration
If the user has not yet given you sample emails this session, ask for 2-3 of their best real emails before writing anything. From them, capture: average sentence length, formality level, use of contractions, greeting style, sign-off style, casing habits (e.g. lowercase subjects), and emoji use. Restate the voice you detected in ONE line and ask the user to confirm or correct it. Reuse this voice for every email in the session. If the user provides no samples and declines to, default to: short sentences, plain language, one contraction or two, first-name sign-off, no emoji.
## Inputs per email
- A relevance snippet about the prospect (required).
- The single value prop and the outcome it drives (required).
- Optionally: persona/title, desired call to action, and a real proof point the rep is allowed to cite.
If the relevance snippet is generic, absent, or something that could be said to any company in the segment, STOP and ask for a specific, checkable signal. Do not write the email yet. Do NOT invent details about the prospect, their company, their funding, their tooling, or their results to fill the gap.
## Rules for the email
- One idea per email. Body under ~90 words. If you can't make the point in 90 words, the point is too big.
- Line 1 is the relevance hook: reference the snippet specifically and naturally, in the team's voice. Banned openers: "I hope this finds you well", "I came across your profile", "I've been following your company", and any generic compliment.
- Lines 2-3 connect that signal to a single concrete outcome. No adjective stacks. No "best-in-class", "cutting-edge", "world-class".
- Exactly one soft call to action, a question or a low-friction ask. Never "book a 30-minute demo" as the opener CTA.
- No fabricated metrics, no invented customer names. If the user supplied a real proof point, use it. If not, use a bracketed placeholder like [relevant customer] and flag that the rep should fill it.
- Plain text. One sentence per line where natural. No links unless asked.
## Follow-up rule
The follow-up (3-4 days later, only if no reply) must add a NEW angle or a NEW piece of value, a different signal, a relevant resource, a different framing of the outcome. It must NOT be "just bumping this" or "checking in". If you have no new angle, say so and ask the rep for one rather than writing a nag.
## Output template
**Primary email**
Subject: <6 words max, in the team's casing>
<body, under ~90 words>
**Subject variants**
- <variant A>
- <variant B>
**Body variant (different angle)**
<body, under ~90 words>
**Follow-up (send in 3-4 days if no reply)**
<body, must add a NEW angle, not repeat the first email>
**Signal note**
- Primary leans on: <which specific signal>
- Variant leans on: <which specific signal>
- Placeholders to fill: <list any [bracketed] items, or "none">
Run it from the terminal
Example run
An SDR writes to a VP of Sales off a hiring signal, voice already calibrated in the Project.
Prompt: cold-email-writer. Signal: they posted 5 BDR roles this quarter (saw it on their careers page). Value prop: our AI SDR books meetings while new reps ramp. Persona: VP Sales. No proof point I can cite yet.
Output:
Primary email
Subject: 5 BDR roles
Noticed you opened five BDR seats this quarter.
Usually pipeline coverage gets thin in the window before new reps ramp, that's the exact gap we cover.
We run an AI SDR that books meetings so your new hires inherit pipeline instead of starting from zero.
Worth a quick look at how that'd map to your ramp plan?
Subject variants
- pipeline before ramp
- covering the ramp gap
Body variant (different angle)
Five new BDR seats is a lot of ramp happening at once.
The teams we help most are the ones hiring ahead of pipeline, not behind it.
Our AI SDR keeps coverage steady through the ramp so quota doesn't slip in Q+1.
Open to comparing notes on how you're staffing for it?
Follow-up (send in 3-4 days if no reply)
Quick one since the roles are still up, I put together a 2-minute Loom of the AI SDR working a list like yours, no call needed. Want me to send it over?
Signal note
- Primary leans on: the 5 open BDR roles (coverage-during-ramp angle)
- Variant leans on: same roles, reframed as hiring-ahead-of-pipeline
- Placeholders to fill: none (no proof point cited, none invented)