linkedin-skills is a collection of Claude Code and Codex skills for creating and managing LinkedIn content from a terminal. It helps users draft posts, comments, and replies, review their feeds, and plan a publishing cadence while requiring approval before publication. The catalogue entries are the project's skills, instructions, and plugin for using these workflows with coding agents.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add sergebulaev/linkedin-skills --skill linkedin-repurposergit clone --depth 1 https://github.com/sergebulaev/linkedin-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sergebulaev/linkedin-skills/linkedin-repurposer)<a href="https://agentmods.dev/skills/sergebulaev/linkedin-skills/linkedin-repurposer"><img src="https://agentmods.dev/badge/skills/sergebulaev/linkedin-skills/linkedin-repurposer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sergebulaev/linkedin-skills/linkedin-repurposer"><img src="https://agentmods.dev/badge/skills/sergebulaev/linkedin-skills/linkedin-repurposer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00107 | $0.01467 |
| Opus 5 | $0.00053 | $0.00733 |
| Sonnet 5 | $0.00021 | $0.00293 |
| Haiku 4.5 | $0.00011 | $0.00147 |
Grade A, and why
linkedin-repurposer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 76 lines — stays where its author put it; the contents beside it link to each section on GitHub.
LinkedIn Repurposer
Turn something you already made into a post that reads like it was written for LinkedIn. Repurposing is not copy-paste. A tweet that flew on X will flop pasted into LinkedIn: too short, no whitespace, wrong rhythm, and a link in the body that tanks your reach.
This skill transforms, it does not generate. It reads your source, keeps the idea, and rebuilds the delivery for LinkedIn's 2026 algorithm.
When to use
- "Turn this tweet / thread into a LinkedIn post"
- "Repurpose my YouTube video / blog / newsletter for LinkedIn"
- "This worked on Threads, adapt it for LinkedIn"
- "I have a rough idea in another format, make it native here"
Not for a blank-page draft (use linkedin-post-writer) and not for reviewing a finished LinkedIn draft (use linkedin-humanizer --mode audit).
How it works
Voice profile first (all drafts). If ../../references/voice-profile.md has filled: yes, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that linkedin-humanizer --mode profile can learn their voice from a few posts, then proceed with the generic voice rules.
- Take the source. Any format: a tweet or thread, a video or script, a blog paragraph, a caption, a transcript, a bullet list, a link to read. Ask for the source and the goal (comments / reposts / likes / saves) if not given.
- Extract the spine. Strip the source platform's shell and pull out the one claim, story, or number worth keeping. Repurposing fails when it keeps the words instead of the point.
- Re-hook for LinkedIn. The hook must land in the first 210 characters, before the "...see more" fold. The source's hook rarely survives; write a new first line using one of the 16 formulas in
../../references/hook-formulas.md, picked by the goal. - Expand to LinkedIn length. X compresses; LinkedIn breathes. Grow the spine into the 900 to 1300 char sweet spot: short paragraphs, double line breaks between ideas, one concrete detail per beat. A dense tweet becomes 4 to 6 short paragraphs, not a wall.
- Add the LinkedIn shape. Whitespace between ideas, a moment of real stakes or vulnerability (pure-insight posts do not land in 2026), and one clear closing question or CTA.
- Fix links and artifacts. Move any external link to the first comment (in-body links suppress reach). Strip off-platform artifacts: hashtag walls, "link in bio", "smash subscribe", X @-handles, "as I tweeted" throat-clearing. 0 to 2 hashtags at the end.
- Humanizer pass. Run the scrub: 2026 AI vocab by density, em dashes above the cap (about one per 100 words), stacked rule-of-three triads, generic openers and reveal bridges. Keep the user's real numbers and named entities from the source.
- Approval card. Show: source -> LinkedIn mapping (what became what), formula used, char count, suggested posting window (Tue/Wed/Thu 7:30 to 9:00 AM local), the link-in-first-comment note.
- On approval. Publish via
lib.publish(kind="post", draft_text=<approved>, target_url="https://www.linkedin.com/post/new/", platforms=[{"platform":"linkedin","platformId":<id>}], scheduled_time=<iso_or_None>). The wrapper handles Publora / manual / diy routing.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed 736fddc15fce
- 4d ago Changed 9dfcd4b91c1b
- 5d ago Changed · +107 tokens per session fbc47f8ee061
- 11d ago First seen · 76 lines · 0 tokens per session scan A 33d08fd0c48d
linkedin-repurposer is a skill published in the GitHub repository sergebulaev/linkedin-skills (1,489 stars, last pushed yesterday), licensed MIT. It adds 107 tokens to every session and 1,467 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
linkedin-analytics-interpreter
Translate raw LinkedIn analytics (impressions, engagement rate, profile visits, follower growth, top posts) into a clear diagnosis : what is working, what is not, and 3 specific actions to take next month. Use when the user has numbers but does not know what they mean or what to do about them. Requires the Taplio MCP…
linkedin-content-calendar-planner
Generate a 4-week LinkedIn content calendar tuned to the user's pillars, posting cadence, and audience. Returns a day-by-day plan with topic, format, hook angle, and CTA per post. Use when the user wants a system for the next month instead of inventing content every morning. Once the plan is confirmed it writes a…
linkedin-content-pillars-builder
Define 3 to 5 LinkedIn content pillars consistent with the user's positioning, plus 5 to 10 post topics for each pillar. Pillars are the recurring themes that make a creator recognizable. Use after the user has defined their niche, or when their content feels random and they want a system. Requires the Taplio MCP…
linkedin-niche-definer
Help the user define (or sharpen) their LinkedIn niche : audience, problem they solve, unique angle, and one-line positioning. The skill walks the user through a 7-question diagnostic, then synthesizes a positioning statement they can use across headline, About, and posts. Use when the user says "I do not know what to…
linkedin-swipe-file-builder
Help the user assemble a personal swipe file of high-performing LinkedIn posts, organized by hook pattern, format, and angle. The skill defines the structure, asks for inputs, turns saved posts into a usable reference library, then drafts the user's own post for every reference in the file (reusing structure, not…
linkedin-audience-persona-builder
Build a sharp, post-ready persona of the user's target LinkedIn audience : role, pains, jobs to be done, vocabulary, aspirations, what content they consume, what objections they raise. Use when the user is starting on LinkedIn or when their content does not resonate (low comments, no DMs, traffic without conversion).…