# Outreach

Draft personalized outreach messages for LinkedIn connections, hiring managers, or...

- Repository: https://github.com/andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2- (508 stars)
- Category: Writing
- License: MIT
- Last updated: 2026-07-23
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2- --skill outreach -g -a claude-code -y`
Codex: `npx skills add andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2- --skill outreach -g -a codex -y`
Cursor: `npx skills add andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2- --skill outreach -g -a cursor -y`
Gemini CLI: `npx skills add andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2- --skill outreach -g -a gemini-cli -y`

## Description

Draft personalized outreach messages for LinkedIn connections, hiring managers, or recruiters. Creates targeted messages using a hook + proof + proposal structure. Under 300 characters for connection requests. Use when someone says 'draft outreach', 'message the recruiter', 'reach out to', or 'write a LinkedIn message'.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Draft Outreach

Create personalized outreach messages for job search networking.

## Step 0: Load Context

1. Read `data/profile.yml`
2. Check `data/research/{company}.md` for company intelligence
3. Check `data/evaluations/` for any evaluation at this company

If no company research exists:
> "I don't have research on {company} yet. Better outreach comes from
> better intel. Want me to research them first, or should I draft
> something with what I know?"

## Step 1: Identify the Contact

Parse user input for: contact name, title, company, platform.

If no specific contact named, suggest based on research file:
> "Based on my research, here are contacts at {company}:
> {list from research}
> Who would you like to reach out to?"

## Step 2: Determine Message Type

| Type | When | Length |
|---|---|---|
| LinkedIn connection request | No existing connection | Under 300 characters |
| LinkedIn message | Already connected | 100-200 words |
| Cold email | Have their email | 100-150 words |
| Follow-up | Already reached out, no response 5+ days | 50-75 words |

Ask the user which type if not clear from context.

## Step 3: Generate Using 3-Part Structure

### Part 1: Hook (about THEM, not you)

Reference something specific about the company, their work, or a recent event.

Bad: "I'm really interested in your company" (about you)
Bad: "I'd love to connect" (generic)
Good: "Your team's work on {specific project/launch} caught my attention"
Good: "I noticed {company} just {recent event from research}"

### Part 2: Proof (one quantifiable thing about you)

One sentence. One number. Directly relevant to their world.

Bad: "I have 10 years of experience in marketing"
Good: "I grew organic traffic 3x at {Company} in 8 months"
Good: "I managed a $2M portfolio with 98% client retention"

Pull the most relevant proof point from the user's profile that connects
to the target company's needs.

### Part 3: Proposal (low-pressure ask)

The rest: https://github.com/andrew-shwetzer/career-ops-plugin-do-not-fork-currently-updating-v2-/blob/HEAD/skills/outreach/SKILL.md
