# LinkedIn Connection Note Writer

> Connection notes under 300 characters with the real reason first — no pitch, no invented flattery. It never touches LinkedIn; you paste them yourself.

- Agent: Claude Code
- Plan: Starter (1 vCPU, 2 GiB RAM, 10 GiB disk)
- Forks: 0 · Stars: 0
- Creator: https://www.jurniti.com/creator-ca0ff2
- Tags: claude-code, copywriting, gtm, linkedin, outbound, prospecting
- Requires config (you provide): ANTHROPIC_API_KEY
- Skills: linkedin-note-writer

**To fork:** open https://www.jurniti.com/templates/linkedin-connection-note-writer and use the Fork action — it starts a Stripe Checkout for a new VM seeded with this template's persist disk (same flat plan price, no fork fee).

## README

# "I was really impressed by your background"

Sent by a tool that never read the profile. Everyone recognises it, acceptance rates
fall, and the few who accept arrive knowing they were bulk-mailed.

Better notes, not more notes. That's the whole product.

## It will not touch LinkedIn

No login, no sending, no scraping, no browser driving. Automated connecting and
scraping violate LinkedIn's User Agreement and get accounts restricted — so this is
the **design**, not a limitation being worked around.

You paste the note yourself. Ask it to automate sending and it refuses, and tells
you why.

## It won't invent a detail either

Everything comes from what *you* write into `~/linkedin/prospects/` — name, role,
company, and why you want to connect. If a detail isn't there, it doesn't go in the
note.

Never a fabricated mutual connection, shared school, or post they wrote. A made-up
*"I loved your post about X"* is **unrecoverable** — they know they didn't write it.

## 300 characters, and the first 100 decide

Five rules:

1. **The specific reason first** — not "I'd love to connect", the actual reason, in
   the opening clause
2. **No pitch** — the ask is the connection, nothing else
3. **No flattery** — "impressive background" is what every automated tool writes
4. **One concrete detail** that proves it was written for them
5. **No question that needs answering** — they're deciding whether to accept, not
   whether to reply

Every draft prints its character count. Over 300 isn't a draft.

## Three variants, no winner named

Genuinely different angles — shared problem, specific observation, direct and brief —
not three rewordings. It won't pick a best one: no acceptance data, and you know your
market.

## The test each note has to pass

**Could this have been sent to anyone else on your list?** If yes, it isn't finished.

And prospects whose stated reason is too thin to personalise get **flagged** rather
than papered over. That's feedback about your list — if half of them can't be
personalised, the problem is upstream of the copy.

## What you supply

Your own Claude Code login. Nothing else — there's no LinkedIn credential, by design.

Paste a real snippet of something they published if you have one. It'll use it; it
will never fetch one.

## Where this stops

It writes notes you send by hand. It does not connect, message, scrape, or estimate
acceptance rates — and it won't claim a note will work.

Verified on build: the skill, the working tree, the `NEVER_AUTOMATE_LINKEDIN` guard,
all five note rules, the 300-character cap and the no-invention rule are present on a
fresh fork. Running it on your own list is yours to do.
