outreach-write

Solid

Writes the copy of a cold outreach sequence: the angle, the subject lines, the opening line, the proof, the ask, the follow-ups and the break-up. Picks between one message written per person and pushed into a custom variable, and two A/B variants that test genuinely different approaches. Prices the generation before it starts, because a thousand per contact messages do not fit in a Claude Code subscription. Holds two house prompts that write those per contact messages, one for email and a separate one for LinkedIn, where you do not sign, you end on a question, you drop the closing formula and you barely introduce yourself because the profile is one click away. Asks the four questions it needs first: the language, the formal or informal you for languages that make the distinction, the gender of the person signing because the grammar agrees in French and it is never guessed from a first name, and the rules for that language. Lays out the step body the way Emelia actually sends it: the message, then the signatur

AI & Automation 12 stars 2 forks Updated 2 days ago MIT

Install

View on GitHub

Quality Score: 82/100

Stars 20%
37
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Write the sequence ## What this does Turns a target and an offer into the actual text of a 3 or 4 step outbound sequence, written around the prospect's problem rather than around your product, on email, on LinkedIn, or on both with a different prompt for each. It decides first whether the campaign is one message per person or two A/B variants for everybody, says what generating it will cost, writes `outreach/sequence.md` in the shape Emelia sends, then runs a checker over that file and reports every finding. Copy with a blocking finding does not go to the launch step. ## When to use it Use it after the list exists and before the flow is designed ([outreach-sequence](../outreach-sequence/SKILL.md) needs approved copy to build the tree). Use it again when a running campaign gets opens and no replies, which is a copy problem, not a deliverability one. Use it for LinkedIn as well as for email: the invitation note, the messages and the InMail are written here, with the prompt in section 1 under "Mode A on LinkedIn", not by adapting the email copy. Use a different skill when: you want per contact icebreakers at scale ([outreach-personalize](../outreach-personalize/SKILL.md)), the step tree, delays and A/B split ([outreach-sequence](../outreach-sequence/SKILL.md)), or answers to people who replied (`outreach-replies`). ## Inputs | Input | Where it comes from | If it is missing | |---|---|---| | Segment, titles, pain, trigger | `outreach/icp.json` | Ask for the four angle qu...

Details

Author
emelia-io
Repository
emelia-io/claude-outreach
Created
3 days ago
Last Updated
2 days ago
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

outreach-sequence

Designs the multichannel flow of a campaign, starting from one of Emelia's five real campaign templates (Pure Cold Email, Pure Linkedin basic, Pure Linkedin Premium with InMail, LinkedIn then Email, Email then LinkedIn) rather than from a blank tree, and picking the template mechanically from the email and LinkedIn coverage the enrichment actually produced. Then: which steps exist in Emelia (email, LinkedIn visit, invitation, message, InMail, manual call task), how conditions and branches work (invitation accepted, email bounced, link clicked, reply received, contact fields such as the email and the LinkedIn profile URL), the delays that work and why, a clean A/B test with a sample size that makes the result mean something, what goes in the body of an email step (the message or its custom variable, then the signature, then a real unsubscribe link from step 2 on), and the conditions that stop a contact or stop the campaign. Produces outreach/campaign.json, the spec that outreach-campaign turns into a real camp

12 Updated 2 days ago
emelia-io
AI & Automation Solid

outreach-campaign

Creates the campaign in Emelia and gets it launched: finds or creates the contact list, loads the contacts in bulk with their custom variables, creates the email or LinkedIn campaign, attaches the list so new contacts flow in automatically, sets the cadence, the sending window and the sending accounts, runs a pre-flight checklist (deliverability green, list verified, unsubscribe link present, every variable resolved, test email read), asks for an explicit yes, then starts it. Writes outreach/campaign.json with the real Emelia identifiers. Triggers on: campaign, launch, launch campaign, create campaign, start sending, send the sequence, go live, attach list, contact list, cadence, daily limit, sending accounts, identities, schedule, pre-flight, sequence steps, multichannel campaign.

12 Updated 2 days ago
emelia-io
AI & Automation Solid

outreach-personalize

Personalizes a sequence at scale without inventing anything. Handles both shapes: a personalized opening line inside written copy, and a whole message written per person and pushed into a custom variable. Decides what can genuinely vary row by row and what must stay a segment, ranks the sources (role and company, recent LinkedIn content, company news, technology used), writes AI variables with fallbacks that cannot break when the data is missing, refuses fabricated personalization, states what the generation costs and where it runs before starting it, and forces a quality review on a 20 row sample before generating the other thousand. Also covers spintax and when it actually helps. Produces the personalization columns in outreach/leads.csv with their source and date. Triggers on: personalize, personalization, personalisation, icebreaker, ice breaker, first line, AI variable, custom variable, merge tag, merge field, fallback, spintax, variables, mass personalization, personalization at scale, accroche, message

12 Updated 2 days ago
emelia-io