Skip to main content

atomic-message

Draft ONE cold-outreach message from a signal + persona + channel: a single cold email, a LinkedIn note, or a follow-up. Generates one primary draft plus 1-2 variants, then runs a self-check lint. Reads voice, sender identity, positioning, proof, and banned words from the company context file. This is the single-message craft engine; it does NOT build sequences, cadences, or multi-touch arcs (email-prompt-building owns sequencing). Triggers on: "write a message", "draft a message", "atomic message", "write a single email", "one-off email", "write a linkedin message", "linkedin note", "linkedin dm", "write a follow-up", "follow-up message", "draft outreach", "rewrite this message", "write a cold email" (one message, not a sequence).

Source facts

Repository
extruct-ai/gtm-skills
Last source activity
June 16, 2026 at 19:58
Detected SKILL.md language
English
Stars
109
Forks
24

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
atomic-message
description
Draft ONE cold-outreach message from a signal + persona + channel: a single cold email, a LinkedIn note, or a follow-up. Generates one primary draft plus 1-2 variants, then runs a self-check lint. Reads voice, sender identity, positioning, proof, and banned words from the company context file. This is the single-message craft engine; it does NOT build sequences, cadences, or multi-touch arcs (email-prompt-building owns sequencing). Triggers on: "write a message", "draft a message", "atomic message", "write a single email", "one-off email", "write a linkedin message", "linkedin note", "linkedin dm", "write a follow-up", "follow-up message", "draft outreach", "rewrite this message", "write a cold email" (one message, not a sequence).
# Atomic Message Draft one outreach message at a time: a cold email, a LinkedIn note, or a follow-up. Generate a primary draft plus 1-2 variants, then lint against the craft rules before emitting. This skill writes ONE message. It does NOT design multi-touch sequences, cadences, or step arcs, and it does not decide send timing. That is `email-prompt-building`'s job. When a sequence needs each touch written, that skill calls this one per touch. ## Inputs | Input | Required | Source | |-------|----------|--------| | Signal | yes | the reason to reach out now: job change, hiring JD, event, post engagement, funding, or a specific observation. From upstream enrichment, the user, or research. | | Persona | yes | the recipient's role cluster (e.g. founder, revops, sales leadership, IC). Shapes which pain and proof to lead with. | | Channel | yes | one of: `cold email`, `linkedin`, `follow-up`. Sets length, format, casing, and CTA style. | | Recipient context | no | name, company, role facts. Used to make the message relevant, never recited back. | | Company context file | yes | voice, sender identity, what-we-do, positioning, proof library, CTA options, banned words. Read at runtime. | ## Workflow ### Step 1: Read the context file Read the company context file's Voice, What We Do, Proof, CTA, and banned-words sections. The skill supplies the craft (how to make an atomic message good); the context file supplies the company's voice and facts. **If the context file's Voice section defines a per-channel spec, it overrides the generic channel defaults** in `references/craft.md`. ### Step 2: Pick the angle From the signal + persona, choose exactly one of each: - the ONE thing to open on: the signal, or a sharp problem line that does not repeat the solution - the ONE capability framing relevant to that persona (from What We Do) - the ONE proof point relevant to that persona (from Proof; never stack more than one) - the ONE CTA (from the context file's CTA options; one per message, never stacked) One signal, one framing, one proof, one ask. If you have three angles, that is three candidate messages, not one crammed message. ### Step 3: Draft for the channel Follow the channel's structure and length in `references/craft.md`, applying the context file's voice. Produce: - 1 primary draft - 1-2 variants that change the ANGLE (a different signal framing or a different proof), not just reworded synonyms ### Step 4: Self-check (lint) Run every draft through the self-check in `references/craft.md` before emitting. Read each line aloud in your head first. Fix anything it flags. ### Step 5: Emit Output the primary draft and variants as plain text (no markdown blockquotes). For cold email, include subject-line options. Label what each variant changes so the user can choose. ## Reference See [references/craft.md](references/craft.md) for the universal copy mechanics, the per-channel structure (cold email / linkedin / follow-up), and the self-check lint.
View on GitHub