skills/linkedin-outreach/SKILL.md
Draft personalized LinkedIn outreach messages by researching the person/company from a LinkedIn post URL. Generates short, high-response-rate messages tailored for job seekers reaching out to hiring managers.
npx skillsauth add khetansarvesh/ai_skills_repo linkedin-outreachInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Draft personalized LinkedIn outreach messages that maximize response rates. Takes a LinkedIn post URL, researches the person and company, then generates a concise 3-paragraph message.
Read the user's profile from these files before drafting:
Notion (fetch via python3 scripts/notion/page_reader.py resume) — personal info, experience, skillsNotion (fetch via python3 scripts/notion/page_reader.py projects) — project summaries for matching relevanceUse WebFetch on the LinkedIn post URL to extract:
If the post doesn't have enough info, use WebSearch to research:
Determine who you're messaging — this changes the message framework:
| Type | Who | Message Focus | | ------------------ | ------------------------------------------- | ------------------------------------------------- | | Recruiter | Talent acquisition, sourcing | Fit criteria → screening answers → CTA | | Hiring Manager | Team lead who's hiring | Specific challenge → quantified achievement → ask | | Peer | Someone in a similar role on the team | Genuine interest → shared problem → soft ask | | Interviewer | Someone who will interview you (date known) | Research signal → connection → looking forward |
Key rule for Peer outreach: Do NOT ask for a job. The referral happens naturally if the conversation flows. Lead with genuine interest in their work.
Key rule for Interviewer outreach: Keep it light. The goal is they know you prepared, not that you're desperate.
From the user's profile, identify the single strongest overlap between:
Pick ONE specific thing — not a laundry list.
Write a 3-paragraph LinkedIn message following these rules:
For Recruiters (3 sentences):
For Hiring Managers (3 sentences):
For Peers — referral (3 sentences):
For Interviewers — pre-interview (3 sentences):
Generic (when type is unclear):
Sentence 1 — Hook + About Me
Sentence 2 — Why I'm a Fit
Sentence 3 — Soft Ask
BAD: "Hi! I came across your post and was really impressed by SmarterDx's work in healthcare AI. I'm a passionate ML engineer with 3+ years of experience in NLP, RAG, LLMs, and deep learning..."
GOOD: "Hi [Name] — saw your post about the Staff ML Engineer role at SmarterDx. I've been building production AI agents at Sentient, most recently a search agent that beat SOTA by 10% on hierarchical tasks."
Write all results to an output markdown file (e.g., outreach_messages.md or a name the user specifies).
The file must have:
# LinkedIn Outreach Messages
Generated: [date]
## Summary
The summary table must be comprehensive — it should contain ALL context (post link, location, who to message, why I'm a fit, flags) so the user can understand everything from the table alone without reading individual sections.
| # | Company | Role | Location | Person to Message | Post | Why I'm a Fit | Flags |
| --- | ----------------------------- | ------ | ------------- | ----------------- | ----------- | --------------------------------------------- | --------------- |
| 1 | [[Company]](#1-company--role) | [Role] | [City/Remote] | [Name, Title] | [post](url) | [specific match — reference projects/metrics] | [concerns or —] |
| 2 | ... | ... | ... | ... | ... | ... | ... |
The Company column links to the message section below (anchor format: `#1-company--role` using lowercase, hyphens, no special chars).
---
## 1. [Company] — [Role]
> Hi [Name] — saw your post about the [Role] at [Company]. I'm currently building
> [specific thing] at [Company], where I [specific result with metric].
>
> [Company]'s work on [specific thing from post] is close to what I did at [previous
>
> > company] — I [specific achievement that maps to their need].
>
> Would you be open to a quick chat about the role?
---
## 2. [Company] — [Role]
...
Individual message sections contain ONLY the heading and the quoted message — no post link, match, or flags (those are already in the summary table).
If a post should be skipped (e.g., wrong location, unrelated role), still include it in the summary table with the reason in the Flags column, and write "Skipped — [reason]" in the message section.
| Post Type | Approach | | -------------------------- | -------------------------------------------------------------------- | | Job posting | Reference the specific role, match your skills to their requirements | | Company news/milestone | Congratulate briefly, connect your work to their growth area | | Thought leadership | Reference their specific point, share a related experience | | Product launch | Connect your experience to the problem their product solves |
documentation
Translate visa application documents (images) to English and create a bilingual PDF with original and translation
development
A comprehensive verification system for Claude Code sessions.
development
Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.
tools
SwiftUI architecture patterns, state management with @Observable, view composition, navigation, performance optimization, and modern iOS/macOS UI best practices.