Linkedin Repurposer logo

Linkedin Repurposer

CommunityPopular
sergebulaev
linkedin-repurposer

Repurpose existing content into a native LinkedIn post. Take a tweet, thread, YouTube video, blog, or newsletter and rebuild it for LinkedIn: re-hook before the fold, expand to the 900 to 1300 char sweet spot, add whitespace and a CTA, move links to the first comment, run the humanizer, publish via Publora on approval. Not for writing from scratch (use linkedin-post-writer), not for auditing a draft (use linkedin-humanizer --mode audit).

Overview

Publishersergebulaev
Repositorylinkedin-skills
Skill namelinkedin-repurposer
Stars
2.6K
Forks
456
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by sergebulaev on GitHub. Read the source before you install it.

Installation

Install the Linkedin Repurposer AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git /tmp/linkedin-skills
mkdir -p .claude/skills
cp -r /tmp/linkedin-skills/skills/linkedin-repurposer .claude/skills/linkedin-repurposer
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Linkedin Repurposer in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Linkedin Repurposer on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Linkedin Repurposer is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

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. If ../../references/story-bank.md has filled: yes, load it too and take concrete details (numbers, dates, named projects) from there instead of asking mid-draft. Never invent a figure that is not in it; if the bank has nothing that fits, ask the user or offer linkedin-interviewer.

  1. 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.
  2. 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.
  3. 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 20 formulas in ../../references/hook-formulas.md, picked by the goal.
  4. 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.
  5. 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.
  6. 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.
  7. 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.
  8. 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.
  9. 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. If the user reconsiders after approving, call lib.unpublish(post_group_id=<postGroupId from the response>) to cancel it before it goes out. On the publora tier the post is already queued, so the dashboard is otherwise the only way back.

Native-fit rules (source -> LinkedIn)

  • Tweet -> LinkedIn: expand, do not paste. One tweet is a hook; grow the argument underneath it with whitespace.
  • X thread -> LinkedIn: unroll into one flowing post, not a numbered list. Keep the best line as the hook.
  • YouTube video / script -> LinkedIn: lead with the payoff, then the story of how you got there. Link the video in the first comment.
  • Blog / newsletter -> LinkedIn: pick the single most quotable claim as the hook, then the one story that proves it. Do not summarize the whole piece.
  • Instagram / TikTok caption -> LinkedIn: strip emoji density and hashtag blocks; add the professional stakes LinkedIn rewards.

Hard rules

Global voice rules: see root SKILL.md §Voice rules. Additional skill-specific rules:

  • Keep the source's claim and facts intact. Repurposing changes the delivery, never the meaning or the numbers.
  • The hook must land in the first 210 characters, before the fold.
  • Never paste the source and trim. Rebuild the hook, length, and rhythm from the spine.
  • No external link in the post body. Offer to put it in the first comment.
  • Include at least one moment of real stakes or vulnerability. Keep the source's real numbers and named entities.
  • Do not name-drop the user's product as self-promo. One natural mention max.

Anti-patterns (skill will refuse)

  • Copy-pasting the source with light edits (that is not repurposing).
  • Keeping the source platform's artifacts ("link in bio", "smash subscribe", hashtag walls).
  • Shipping a tweet-length post with no whitespace or expansion.
  • All-caps first line ("THIS CHANGED EVERYTHING").
  • Em dashes above the cap (more than about one per 100 words), or an em dash swapped for a period.
  • Rule-of-three lists without receipts.
  • "leverage", "fundamentally", "game-changer", "deep dive".
  • External links in the body.
  • Meta throat-clearing ("I originally posted this on...").

Resources

  • ../../references/hook-formulas.md - the 20 formula skeletons to re-hook with
  • ../../references/algorithm-heuristics.md - 2026 posting rules (timing, format, length)

Related skills

  • linkedin-post-writer - write a fresh post from scratch
  • linkedin-humanizer - scrub AI tells, plus --mode audit to review the result
  • linkedin-hook-extractor - reverse-engineer a hook from a post you admire

Frequently asked questions

What does the Linkedin Repurposer AI skill do?

Repurpose existing content into a native LinkedIn post. Take a tweet, thread, YouTube video, blog, or newsletter and rebuild it for LinkedIn: re-hook before the fold, expand to the 900 to 1300 char sweet spot, add whitespace and a CTA, move links to the first comment, run the humanizer, publish via Publora on approval. Not for writing from scratch (use linkedin-post-writer), not for auditing a draft (use linkedin-humanizer --mode audit).

Why use Linkedin Repurposer on TypingMind?

Because you install it once and use it with any model. Linkedin Repurposer is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Linkedin Repurposer in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-repurposer. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Linkedin Repurposer?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Linkedin Repurposer?

As many as you like. As long as a model supports skills, you can use Linkedin Repurposer with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Linkedin Repurposer AI skill free?

Yes. It is published on GitHub by sergebulaev under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇