Li Human
Jakeschincariol/linkedin-agent-skill
Strip the machine fingerprint out of any draft - em dashes, AI slop words, invisible watermark characters - and score it against a five-check detection panel before it goes out.
Draft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B, false-binary, and more) plus a founders-edition…
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/linkedin-post-writer .claude/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .claude/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/linkedin-post-writer .agents/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .agents/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/linkedin-post-writer .cursor/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .cursor/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/sergebulaev/linkedin-skills.git --path skills/linkedin-post-writer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/linkedin-post-writer .gemini/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .gemini/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/linkedin-post-writer .github/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .github/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sergebulaev/linkedin-skills linkedin-post-writer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sergebulaev/linkedin-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/linkedin-post-writer .opencode/skills/linkedin-post-writer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "linkedin-post-writer" agent skill from https://github.com/sergebulaev/linkedin-skills/tree/main/skills/linkedin-post-writer into .opencode/skills/linkedin-post-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-post-writer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
linkedin-post-writerDraft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B, false-binary, and more) plus a founders-edition…
Linkedin Post Writer is an agent skill from sergebulaev/linkedin-skills. Draft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B, false-binary, and more) plus a founders-edition angle library, picked by engagement goal (comments, reposts, likes, saves). Runs the humanizer pass and schedules via Publora on approval. Use to write a post, find a hook or proven format, or get founder-specific angles. Not for reviewing existing drafts (use linkedin-humanizer --mode audit).
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/algorithm-heuristics.md`, `references/hook-formulas.md` and `references/humanizer-checklist.md`).
It sits in Writing & Content, covering Social media posts and Humanizing AI text. It works with LinkedIn. The repository describes itself as: Claude skills for LinkedIn. 11 Claude Code and Codex skills that write human-sounding LinkedIn posts, craft comments that get noticed, analyze your feed, and build a publishing… The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit bfa41ff. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
linkedin.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Linkedin Post Writer loads about 3.6k tokens when it runs, and up to ~5.3k if it reads all its reference files. Until then it costs about 128 tokens; SKILL.md has 1,969 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from sergebulaev/linkedin-skills at commit bfa41ff, republished under its MIT licence (© sergebulaev). 1,969 words, ~3,615 tokens.
.claude/skills/linkedin-post-writer/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Ship long-form LinkedIn posts using hook formulas that actually performed in 2025-2026 (verified engagement multipliers).
| Code | Formula | Reference eng | Best for |
|---|---|---|---|
| F1 | Platform Risk Anaphora | 4,240 | Category/platform posts, product-as-fix |
| F2 | R.I.P. Obituary | 3,822 | Era-ending claims, industry pivots |
| F3 | Year-over-Year Pivot | 494, 3.74x | Identity shifts, founder reflection |
| F4 | Time-Anchor Confession | 1,519+ | Vulnerability, voice reset, ICP re-targeting (2026: use with care, see caveats) |
| F5 | Self-Proving Meta | 1,082 / 435 comments | Commitment-based posts, tests in public |
| F6 | Comment-Gate Lead Magnet | 717-3,008 | List building (2026: use with care, real deliverable only, see caveats) |
| F7 | Odd-Precision Money Ledger | 1,755, 9.4x | Founder build-log, cost breakdowns (2026: strongest opener, number-first) |
| F8 | Paid-vs-Free Reversal | 550, 19.64x | Free framework give-away |
| F9 | Curiosity-Gap Teaser | 306, 4.25x | Emergent behavior, behind-the-scenes (2026: use with care, pay off in 2 lines) |
| F10 | Contrarian + Historical Receipts | 3,083 | Sacred-cow takes, AI/tech cycles |
| F11 | Emotional Cold-Open | high-reach* | Real story with emotional stakes (likes) |
| F12 | Permission Slip | comment-heavy* | Encouragement, reassurance (comments; 2026: use with care, needs a dated fact) |
| F13 | Bait-and-Switch Reversal | high-reach* | Policy/process change that's an upgrade (likes) |
| F14 | Named Gratitude / Tribute | repost-heavy* | Thanking mentors / team / departing colleague (reposts) |
| F15 | Explain-to-Kids | save-heavy* | Demystifying jargon (saves) |
| F16 | Status-Strip Humility | like-heavy* | Senior voice wanting warmth not distance (likes) |
| F17 | Controlled A/B Anecdote | structural† | One-variable comparison, delegation/AI takes (comments) |
| F18 | False-Binary Dissolve | structural† | "Both obvious answers fail" governance/strategy (comments/reposts; 2026: it is the post's one contrast) |
| F19 | Anecdote-Meets-Evidence Bridge | structural† | Personal noticing + a data stack (comments/saves) |
| F20 | Diverging-Curves Close | structural† | Two trajectories that diverge, quotable maxim (reposts) |
* F11-F16 reach is absolute 2026-corpus reach (often source-driven: a reshare or a famous author), NOT a baseline multiplier like the F1-F10 numbers. The two columns measure different things and are not comparable: F11's "256k" is raw reach, F8's "550, 19.64x" is a format multiplier. Do not rank formulas by putting these side by side. See ../../references/hook-formulas.md for each formula's real reference and caveats.
† F17-F20 are structural formulas: they shape the logic of a post (a controlled comparison, a false binary, an evidence bridge, two diverging curves) rather than its topic. They carry no reference number and are chosen by primary goal. They were built for the founders edition and several founder angles pin them by name.
Full skeletons in ../../references/hook-formulas.md. F1-F10 are the long-form thought-leadership set; F11-F16 (validated against a 2026 corpus of above-average performers) skew shorter and emotional and each carries a primary engagement goal.
The reference numbers above are unchanged; what changed is how the 2026 feed treats the device each formula leans on. Every formula in ../../references/hook-formulas.md now carries a "2026 reach note"; the ones that matter when picking:
If the user knows what they want the post to earn, start here, then narrow by topic. Canonical mapping: ../../references/hook-formulas.md → Engagement-goal split.
| Goal | Reach for |
|---|---|
| Comments | F17, F10, F4, F12, F9 (F4/F12/F9 with their 2026 caveats) |
| Reposts | F14, F2, F8 |
| Likes | F11, F13, F16 |
| Saves | F15, F7, F8 |
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.
Founder mode (when the writer is a founder). Before picking a formula, open ../../references/founder-topics.md and offer a founder angle (A1-A10) that fits their goal. The angle picks the territory (reprice the category, the scarce-shots math, the delegation line, and so on); several angles pin the formula for you (A9 uses F17, A10 uses F18+F20). Founder angles compound trust with a narrow audience of investors, hires, and design partners rather than chasing broad reach. Fill the angle's bracketed slots with the founder's real numbers, then continue from step 3.
Spine from an interview (skip the asking). If linkedin-interviewer --mode post handed over a five-line spine (Moment, Number, Correction, Opposition, Ask), that spine is the skeleton: Moment opens the post, Number is the proof, Correction is the turn, Opposition fixes the audience, Ask is the close. Do not re-ask for anything the spine already carries, and do not fill a line the interview left labelled empty. Pick the formula that fits the spine rather than bending the spine to a formula; if none fits, say which line is the obstacle.
../../references/hook-formulas.md)linkedin-humanizer --mode audit for algorithm + voice checks before showing to user.lib.illustrate(prompt, kind="wide"), pulling brand handle/color from Voice & Brand Profile §6 for the overlay. Show the returned url + cost in the approval card and attach it via media_urls on publish. For a multi-image grid (2-10 images in one post) use lib.illustrate_set([p1, p2, ...], kind="wide", overlay=brand) and pass every url in media_urls=[...]. For a quote-card of the hook, skip the model and typeset it: lib.quote_card("<hook line>", handle="@handle", style="brand") — crisp text, same url flow. Full workflow: ../linkedin-humanizer/sub-skills/illustration.md. No Pixfaro key -> it drafts the prompt for the user to generate manually.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>, media_urls=<list_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.Global voice rules: see root SKILL.md §Voice rules. Additional skill-specific rules:
../../references/hook-formulas.md — all 20 formula skeletons with worked examples, per-formula 2026 reach notes, "What still lifts reach in 2026" and the Density rule../../references/founder-topics.md — founders-edition library of 10 founder angles (A1-A10) with fill-in templates../../references/algorithm-heuristics.md — 2026 posting rules (timing, format, length)references/humanizer-checklist.md — the full scrub listlinkedin-humanizer — aggressive AI-tell scrubber, plus --mode audit for pre-publish reviewlinkedin-hook-extractor — reverse-engineer a hook from a viral post you admire© sergebulaev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in skills/linkedin-post-writer of sergebulaev/linkedin-skills.
Open the folder on GitHubat commit bfa41ff
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in sergebulaev/linkedin-skills, which our catalogue first saw on October 7, 2026.
Linkedin Post Writer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Linkedin Post Writer this skillsergebulaev/linkedin-skills | 4.3k | 1 repos | ~3.6k | Automated safety check: Pass | MIT | |
| Li HumanJakeschincariol/linkedin-agent-skill | 1.5k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Ig Repurposersergebulaev/instagram-skills | 308 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Writewaynesutton/markdown-site | 628 | — | ~3k | Automated safety check: Pass | MIT | |
| X Repurposersergebulaev/x-skills | 121 | 1 repos | ~1.7k | Automated safety check: Pass | MIT | |
| X Longform Postericosiu/ai-marketing-skills | 3.6k | 2 repos | ~1.9k | Automated safety check: Pass | MIT |
Jakeschincariol/linkedin-agent-skill
Strip the machine fingerprint out of any draft - em dashes, AI slop words, invisible watermark characters - and score it against a five-check detection panel before it goes out.
sergebulaev/instagram-skills
Repurpose existing content into a native Instagram post. An agent skill from sergebulaev/instagram-skills.
waynesutton/markdown-site
Writing style guide for technical content, social media, blog posts, READMEs, git commits, and developer documentation.
sergebulaev/x-skills
Repurpose existing content into a native X (Twitter) post or thread.
ericosiu/ai-marketing-skills
Write long-form X (Twitter) posts and threads in a founder/CEO voice.
coreyhaines31/marketingskills
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.
sergebulaev/linkedin-skills
Plan, draft, audit, and publish LinkedIn posts and comments.
sergebulaev/linkedin-skills
Draft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary.
sergebulaev/linkedin-skills
Generate a 7-day LinkedIn content plan from a theme, audience, and pillars.
sergebulaev/linkedin-skills
Reverse-engineer the hook formula from a viral LinkedIn post URL.
sergebulaev/linkedin-skills
Remove AI tells from LinkedIn posts/comments: 2026 vocabulary density, reveal bridges, staccato fragments, stacked triads, performed sincerity.
sergebulaev/linkedin-skills
Draft a reply to one LinkedIn comment from its URL, or sweep a whole thread from just the post URL and draft a reply to every comment worth answering, in one batch.
Works with
Categories
Draft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B, false-binary, and more) plus a founders-edition…. Linkedin Post Writer is an agent skill from sergebulaev/linkedin-skills., time-anchor, curiosity-gap, contrarian, controlled A/B, false-binary, and more) plus a founders-edition angle library, picked by engagement goal (comments, reposts, likes, saves).
Linkedin Post Writer fits situations like: get founder-specific angles; tasks that involve Social media posts; tasks that involve Humanizing AI text.
Run `npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a claude-code`. Or copy the skill folder (skills/linkedin-post-writer in sergebulaev/linkedin-skills) into .claude/skills/linkedin-post-writer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a codex`. Or copy the skill folder (skills/linkedin-post-writer in sergebulaev/linkedin-skills) into .agents/skills/linkedin-post-writer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sergebulaev/linkedin-skills --skill linkedin-post-writer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/linkedin-post-writer, .gemini/skills/linkedin-post-writer, .github/skills/linkedin-post-writer and .opencode/skills/linkedin-post-writer in your project.
SKILL.md names no scripts, command-line tools or credentials: Linkedin Post Writer is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: linkedin.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Linkedin Post Writer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Linkedin Post Writer: Li Human (Jakeschincariol/linkedin-agent-skill, 1.5k stars), Ig Repurposer (sergebulaev/instagram-skills, 308 stars), Write (waynesutton/markdown-site, 628 stars) and X Repurposer (sergebulaev/x-skills, 121 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sergebulaev (a GitHub user) maintains it in sergebulaev/linkedin-skills, which has 4,305 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 7, 2026.
Source: sergebulaev/linkedin-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.