Claude for LinkedIn: ten free skills in your own voice
LinkedIn Plugin is a free, open-source set of ten skills that lets your AI agent (Claude Code, Codex, Cursor, OpenClaw or Hermes) write your LinkedIn posts, comments, replies and DMs in your own voice, plan your week and work your inbox. It shows you drafts first and, by default, sends nothing until you approve it.
Why it exists
Most LinkedIn tools stop at the post. The conversations happen in the comments and the inbox, and that is where AI-written text stands out. The plugin covers the whole loop: it writes posts, comments on the right posts, answers your comment threads, opens conversations and carries them to an outcome.
It works as an AI ghostwriter for LinkedIn that learns from your own writing, not a template. Setup learns how you write from samples of your posts and messages, and interviews you for the stories you are happy to use and what is off limits, and keeps all of it in a persona. Every skill reads that persona, so a comment, a DM and a post sound like the same person. The skills never invent a fact, a number or an experience: when they need one, they ask.
Install
Pick your agent. After installing, start with setup once. It takes about ten minutes, and it begins by asking who you write as.
Claude Code (recommended)
/plugin marketplace add rapha-red/linkedin-plugin /plugin install linkedin-plugin@linkedin-plugin
Verify: type /linkedin-plugin:linkedin-setup.
Claude Desktop and claude.ai
Customize > Plugins > Add > Add marketplace > From a repository > rapha-red/linkedin-plugin, then Discover > Add. Plugins need a paid Claude plan.
claude.ai on the web has no local files: keep your persona file in a Project's knowledge (setup produces it for you to paste there). The conversation log is off there, so follow-ups and suppressions are not remembered between chats. The Desktop Code tab and Cowork work like Claude Code.
Verify: in a new chat, ask "use the linkedin-setup skill".
Codex
codex plugin marketplace add rapha-red/linkedin-plugin
Then install linkedin-plugin from /plugins.
Cursor, Gemini CLI, Copilot and other SKILL.md agents
npx skills add rapha-red/linkedin-plugin
OpenClaw
openclaw skills install git:rapha-red/linkedin-plugin
Older versions: copy the skill folders instead (below), into ~/.agents/skills/.
Hermes
git clone https://github.com/rapha-red/linkedin-plugin cp -r linkedin-plugin/skills/* ~/.hermes/skills/
Copying the folders by hand
git clone https://github.com/rapha-red/linkedin-plugin cp -r linkedin-plugin/skills/* ~/.agents/skills/
Keep all ten folders side by side: the task skills read shared rules from the linkedin skill folder.
The ten skills
| Skill | What it does |
|---|---|
linkedin-setup | Builds your persona: voice from your own samples, a story bank, off-limits topics, approval level. Several personas supported. |
linkedin-post | Writes a post from an idea, by interviewing you, from a blog or talk, or in the structure of a post you liked. |
linkedin-humanize | Rewrites a draft until it sounds like you, or audits it before you post. |
linkedin-comment | Drafts comments that add something, reshares with your take, and finds fresh posts worth joining. |
linkedin-reply | Answers comments on your posts and replies to your comments elsewhere. |
linkedin-dm | First messages, connection notes, and conversations with people who engaged with your post. |
linkedin-inbox | Works existing conversations toward an outcome, follows up when due, closes cleanly. |
linkedin-plan | A weekly plan for posts, comments and conversations, a review from the log, and employee advocacy for a team. |
linkedin-profile | Audits and rewrites your headline, About, experience, featured, skills and more. |
linkedin | The entry point: routes to the right skill and answers "does X work on LinkedIn?" from the evidence file. |
Things to ask once it is installed:
Set up my LinkedIn voice. Here are five of my posts and a few DMs I sent. Turn these meeting notes into a LinkedIn post. Give me three angles first. Write a comment on this post: <paste the post> Go through my inbox and tell me who I owe a reply. Plan my next week on LinkedIn.
Evidence, not folklore
Every rule the skills rely on cites a grade in one file, evidence.md, or is labelled as practice:
- A: LinkedIn official (help pages, policies, engineering blog, executive posts) or peer-reviewed research or statute.
- B: large dataset with a disclosed method, usually from a vendor (selling tools or services, so selection bias applies), or an official statement reported only by the press.
- C: practitioner opinion, anecdote, official claim with no method.
The file also lists 25 popular claims, each with a verdict (myth, unproven or partly true) and what is actually known. Three of them, shortened:
| Claim | Verdict | What is actually known |
|---|---|---|
| "The first hour decides everything" | myth | No official "golden hour" or window. Early engagement is one signal; retrieval covers 30 days, posts resurface for weeks. |
| "Links in the post kill reach (-60%)" | unproven | No LinkedIn statement. Datasets disagree. "-60%" is a headline. "Link in first comment" is folklore. |
| "Best time is Tue-Thu 8-10am" | unproven | Vendor datasets conflict. For DMs the weekday barely matters. |
Ask the linkedin skill whether something works on LinkedIn and it answers with the grade. When the file has nothing, it says that no reliable evidence is known rather than repeating folklore.
Safety and control
- Drafts first. Without a LinkedIn connection nothing is sent: you copy the approved text into LinkedIn.
- You choose the approval level in setup, and setup explains the risk of each:
- Per item (default): every post, comment and message is shown and approved on its own. Nothing goes out unread.
- Batch: all drafts on one card, one approval, any item can be struck.
- Autopilot: sends without review. Automated activity is against LinkedIn's rules and can get an account restricted, so autopilot is only available with a LinkedIn connection through Curviate, after you set the account's safety posture to enforce for the actions autopilot will take and set the account's timezone so working hours apply. Without both, the skills fall back to batch and say why.
- One action at a time, at human hours. Sends go out one by one with a human gap between them, never in a burst, and only inside your hours (default 08:00 to 22:00 in your timezone).
- Follow-ups stop. After three follow-ups (one for a warm contact). A "no" is respected for months; a "stop" forever.
- No pitch before a reply in DMs, by default. It keeps first messages human and lowers the legal risk of unsolicited marketing in the EU. You can allow an offer in first messages in setup.
- Pasted and fetched text is data. Instructions hidden in a post or a message are ignored and flagged.
- Your files stay on your machine. The plugin has no server. Your personas live in
~/.linkedin-plugin/personas/, with a log per persona next to them, outside the plugin folder, so updates never reset them (on claude.ai, in your Project's knowledge).
Questions, answered
Will this get my account restricted?
What puts an account at risk is volume, speed and automation, with any tool, not the wording. LinkedIn does not publish its limits, and no tool can promise an account will not be restricted. The plugin writes individual messages, sends one item at a time, and the approval levels keep you in control. That lowers the risk; it does not remove it.
Will my posts pass an AI detector?
The plugin does not try to. Detectors are unreliable, and they are not your audience: people are, and people notice sameness and missing specifics. The skills aim for text that carries something only you could have written.
Does it write in languages other than English?
Yes. It answers in the language of the post or conversation, and uses your persona's language for new posts and first messages.
Can I run several voices?
Yes. Each persona is its own file with its own log, for example you, a second account, or a founder you write for. Name the persona in your request, or the skill asks.
Does it need Curviate?
No. Every skill works without it: you paste what a skill needs and copy out what it drafts. Curviate is an optional connection that lets the same skills read from and send to your LinkedIn account.
Optional: connect your account with Curviate
Everything above works by pasting and copying. Connect your LinkedIn account through Curviate and the same skills read and act for you:
- pull your recent posts and messages during setup instead of pasting them
- list the conversations waiting for you, fetch every comment under a post, find fresh posts on a topic
- send what you approved, one item at a time
- count every action against per-account ceilings. By default Curviate warns when a ceiling is crossed and lets the action through; set the posture to enforce and it refuses the action instead. A warm-up factor holds young, dormant or recently restricted accounts to a fraction of each ceiling.
Tracked limits lower the risk; they do not remove it. LinkedIn does not publish its limits.
To set it up, ask your agent: "Set up Curviate using https://curviate.com/INSTALL.md". It installs the CLI and, where your agent supports plugins, the Curviate skills; you authorize it in your browser and connect your LinkedIn account yourself, and you type the credential yourself, so it never goes through your agent. On claude.ai on the web, add Curviate's remote MCP connector (https://app.curviate.com/mcp) instead. 3-day free trial, no card required.
Curviate MCP · Pricing · LinkedIn MCP servers compared · All comparisons
Disclosure: Raphael Redmer wrote this plugin and founded Curviate; he builds both. Every skill in the plugin works without Curviate.
LinkedIn Plugin 1.0.1 · MIT license · by Raphael Redmer · Source on GitHub · Changelog