The dm-writer skill: one short message to one real person
TL;DR
Tell dm-writer who you're messaging, how well you know them, and your one reason for reaching out. You get back a two to five sentence message in your voice plus the single follow-up line to send if they go quiet, saved to ~/dm-drafts.md. It's free, and installing it is three copy-paste lines.
You've got the person's name. You've had the message box open for eleven minutes. Everything you type sounds either desperate or like a marketing email, so you close the app and tell yourself you'll do it tomorrow.
The message feels impossible because you're trying to do three jobs at once: catch up, explain what you're building, and ask for something. Pick one reason for sending it and the whole thing gets short.
The dm-writer skill is one of the 55 free skills in our freeskills repo. It takes the person, the relationship, and your one goal, then writes a short message that sounds like you texting someone you respect. It also gives you the single follow-up line to send if they go quiet, and saves both to a running swipe file on your machine.
The three things it asks for, how the register shifts with warmth, and the rules that keep it from reading pushy.
Install the dm-writer skill
A skill is a folder Claude Code reads and turns into a slash command. Three lines copy it in, and then it's available in every project.
bashgit clone https://github.com/duncan-buildroom/freeskills.git
mkdir -p ~/.claude/skills
cp -r freeskills/dm-writer ~/.claude/skills/Restart Claude Code or open a new session and you're done installing. No API keys, no config.
Run it the first time
Type /dm-writer. It asks for three things: who the person is, how well you know them and when you last spoke, and your one goal. The goal is a choice of three: start a conversation with no ask, share your offer because they've shown a fit, or follow up on a message you already sent. If you only give it a name, it'll ask the one or two questions that actually change the message.
The register shifts with how warm the relationship is, not with what you want. Close friends get casual and short. People you've lost touch with get a real reconnect before you mention what you're building. It writes two to five sentences, adds one follow-up line for a few days later, and appends both to ~/dm-drafts.md under the person's name and the date. A good first result reads like something you'd send without editing.
Write the message you've been putting off
Give it the three things up front and you'll get a sendable draft on the first pass.
/dm-writer
Who: [name, what they do, one real detail about them]
How I know them: [close / warm but haven't spoken in a while / barely know them / mutual connection]
Last contact: [when, roughly]
Goal: [start a conversation, share my offer, or follow up]
Write it short enough that I'd actually send it.Fix a message you already drafted
If you've written something and it feels off, hand it over instead of starting again.
Here's the DM I drafted: [paste it]
Context: [who they are and how well I know them]. Tell me what's making it feel salesy, then rewrite it. Cut anything that isn't about them or my one reason for messaging.Get the follow-up right when they go quiet
Silence is normal and it usually isn't a no. The skill gives you one follow-up, not a sequence.
I sent this four days ago and got nothing back: [paste your message]. Here's what I know about their situation right now: [anything new, or nothing].
Give me the one follow-up line. No guilt, no bumping this, and if the honest move is to let it go gracefully, write that version instead.The 60-second version
Here's the spoken version, what the skill does with a message and why people reply to it.
- 1Hook: there's a brand new free Claude skill that takes you from staring at an empty message box for ten minutes to a short DM you'd actually send.
- 2Mechanism: you tell it who you're messaging, how well you know them, and the one goal for the message, because three reasons in one DM is why it sounds weird. It sets the tone from the relationship rather than the goal, so an old friend and a mutual connection get different messages. Then it writes something short that leads with them instead of your offer, ends on a question that's easy to answer, and adds a one-line follow-up for later.
- 3Transformation: you send the message today instead of thinking about it all week, and it starts a conversation because it reads like a person wrote it.
- 4Close: it's free and it sits in a repo with 54 others. Having something worth messaging people about is the work inside Claude Code Club, $9 a month. Link's below.
Tonight: install it, run it on the one person you've been avoiding messaging, and send what it gives you. One message, one person.
Common questions
Do I need to know how to code?
No. Three copy-paste lines install the folder. After that you're answering three questions about a person you know.
Is it really free?
Yes. Public repo, no API keys, no accounts, no paid tools. Claude Code Club is the separate thing for when you want the whole path.
Will it write a whole outreach sequence for me?
No, and that's on purpose. One message, one follow-up, then you stop. If you want a list of people to contact and who to start with, that's the warm-outreach skill in the same repo.
What if I barely know the person?
It writes a shorter message that names the connection or the specific reason they came to mind up front, and makes the ask tiny. If your goal was to pitch and there's no real fit signal, it'll tell you to start a conversation instead.
Can it make up a shared memory to warm things up?
No. The skill never fabricates a shared moment or a result. If you can't fill the personal detail truthfully, it drops the message to a lighter register.
Keep going
Want the whole outreach and closing system?
Get 650+ plug-and-play skills, MCPs & prompts, plus 7,000+ members - $9/mo, cancel anytime.
Join the Club