li-post
Turn one raw idea into a LinkedIn post in your own voice: your voice profile is read first, the idea is run through 21 proven hook formulas and you get three different hook options with a recommendation
- What
- Turn one raw idea into a LinkedIn post in your own voice: your voice profile is read first, the idea is run through 21 proven hook formulas and you get three different hook options with a recommendation
- Cost
- Free
- Needs
- Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else.
- Install
- Copy the installer prompt below into your Muse — your agent does the rest.
Curated by Skill Harbor — Turn one raw idea into a LinkedIn post in your own voice: your voice profile is read first, the idea is run through 21 proven hook formulas and you get three different hook options with a recommendation, one full draft at 900-1,300 characters on the strongest hook, humanized through the separate /li-human skill before you see it, and a copy-ready block with a POST READY receipt — never published for you, and never with invented numbers, clients or outcomes. By @avi691, listed here with credit to its creator. MIT-licensed. Skill Harbor never reviews the code, review it yourself before use.
Version:
Install
Copy the install package below, then paste it into Muse📌 Pinned version: commit e4ec4fbThe install prompt below already includes the vetting steps: your agent follows the community checklist before installing anything with executable code. Want more?
- It can create or modify files.
What the scan found — excerpts from the install prompt
- writes files — - Les références hors du dossier, exactement comme elles sont écrites dans SKILL.md, et ce qu'elles exigent et
Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else. Prerequisites: none for the install itself: no account, no API key, no paid service, and nothing else to install first. For using the skill afterwards, read this first: this skill never logs into LinkedIn, never asks for my LinkedIn password, cookies or session, uses no browser automation and no LinkedIn API, and never publishes anything — it produces a copy-ready post text, and I post it myself on LinkedIn. What it does need at use time is my voice: either my existing local voice profile at ~/.claude/linkedin/voice.md (a file I fill in myself from the pack template templates/voice.md, or that my agent writes from my own posts — see point 2), or, if that file does not exist, three of my own past posts, which I paste so the voice can be inferred; SKILL.md says never to skip this and never to invent a voice. Its mandatory humanizing step also runs the draft through the separate pack skill /li-human before showing it (see point 2): li-human is not part of this install, and without it that step cannot run as written. There is no script and no executable code in this skill: it is one instruction file plus one JSON data file of hook formulas. Install "li-post" for me. It turns one raw idea into a LinkedIn post in my own voice: first it reads my voice profile, then it runs the idea through the 21 hook formulas in hooks.json and shows me three different hook options as numbered lines, saying which one it would ship and why in one sentence, then it drafts the full post on the strongest hook (hook alone on line 1, payoff on line 2, short 1-3 line paragraphs with blank lines between them, one reframing turn, and a close that is one specific question or one instruction, never both; 900-1,300 characters is the working range for a text post), humanizes the draft through /li-human, and prints a copy-ready block with a POST READY receipt (hook used, character length, humanizer result, suggested posting time from my plan). It never fabricates numbers, clients, revenue or outcomes under my name: if a needed number is unknown, it leaves {{your number}} in the draft and flags it. At most three real hashtags, and no link in the post body — a link goes in the first comment instead. Repository: https://github.com/avi691/linkedin-agent-skill (the skill is the whole skills/li-post/ folder at the pinned commit: SKILL.md plus hooks.json, 2 files) Pinned version: install the code at commit e4ec4fb6f1b0e227eb9b14b31b735072db5df9cb exactly. Do not substitute a newer version. If this commit is unreachable, stop and tell me. 1. Clone https://github.com/avi691/linkedin-agent-skill into a temporary folder, check out commit e4ec4fb6f1b0e227eb9b14b31b735072db5df9cb, and copy the skills/li-post/ folder from that checkout. Then compare every file in the folder with the fingerprints recorded for this listing on 2026-10-19: [FINGERPRINTS] - SKILL.md: SHA-256 acfc8eadc47fee812f2dbaf8c97a93c313661d46963291bcbf8f154b065abee0 - hooks.json: SHA-256 08988c9afae234199f51323c42baf2507101a4be2ba832384cf20f940972d712 If a file does not match, it changed since the listing was prepared: do not install it yet, tell me what you found and let me decide. 2. Read SKILL.md in full and read hooks.json in full, and tell me in plain words: what the skill does when used, which services it connects to, whether it reads or sends any personal information or keys, and anything that seems unusual. Stop on any red flag and tell me before going further. Confirm these points from the files: - The skill folder holds 2 files only: SKILL.md (4,336 bytes) and hooks.json (9,414 bytes), the 21 hook formulas, each with a template, a filled example, what it is for, and how it usually gets ruined — plus five hook rules at the top of the file. There are no scripts, no Python, no executable code and nothing to run in the folder, at install time or at use time. - The references outside the folder, exactly as written in SKILL.md, and what they do and do not require: (a) Before writing, SKILL.md reads ~/.claude/linkedin/voice.md if it exists — my local voice profile (how I talk, what I never say, who I am talking to). In the repository that profile starts as templates/voice.md at the repository root (not in this folder): the README says to copy it to ~/.claude/linkedin/voice.md and fill it in, or to paste three of my own posts and have the agent write voice.md from them. If voice.md does not exist, SKILL.md does the second route itself: it asks for three of my own past posts, infers the voice from those, and writes the file. Templates/voice.md is not part of this install, and you must not copy or fill it in during this install. (b) Step 3 of the loop is mandatory, not optional: "Run the draft through /li-human before showing it. Every post from this skill ships humanized." /li-human is a separate skill in the same pack (skills/li-human/, with its own SKILL.md and its Python tools humanize.py and detect.py reading slop.json); it is not in this folder and is not installed by this install. Without li-human installed, that humanizing step cannot run as written — tell me so at use time rather than silently skipping it. Do not install li-human or any other skill as part of this install. (c) On my "yes" after the POST READY receipt, SKILL.md appends the post to ~/.claude/linkedin/log.md with the date, the hook used and the first line, so the separate /li-audit skill has a history to work from later — a local file write only, at use time, only after my yes; it is not part of this install and you must not create it during this install. (d) The example receipt's "post at" line says "(from your plan)" — a suggested time drawn from my plan (the pack's /li-plan skill writes ~/.claude/linkedin/plan.md); it names no service and requires nothing for this install. Apart from these points, SKILL.md needs no other file from the repository — not the other 10 skills, and not the README. - Nothing is sent anywhere during installation itself; the only download at install time is the skill folder from GitHub at the pinned commit. No script is run during installation, no key, password, cookie or account is asked for, and there is no telemetry in the folder — SKILL.md and hooks.json contain no URL at all. - What happens at use time, disclosed here before it ever happens — using the skill is a separate step that only starts when I give it a raw idea: the skill itself makes no network call, calls no API, opens no browser, does not log into LinkedIn, does not read LinkedIn cookies or any browser or session store, and publishes, schedules and sends nothing anywhere. SKILL.md states it in so many words: "Never publish. This skill produces text. The user posts it." The README says the same: there is no official API for posting to a personal profile, and automating the site would violate LinkedIn's User Agreement. What enters our conversation at use time is only what I choose to give you: my raw idea, and — if my voice profile does not already exist — three of my own past posts, from which you infer my voice and write ~/.claude/linkedin/voice.md locally. If I do have a voice profile, you read it locally. The humanizing step, when /li-human is installed, runs that separate skill's local Python tools on the draft on this machine — per that skill and the README, nothing is uploaded by them. The draft and hooks stay between you and me until I act: on my "yes", you append the post, its date, hook and first line to my local ~/.claude/linkedin/log.md, and I then paste the copy-ready block into LinkedIn myself, under my own account, myself — that manual paste is the only thing that ever reaches LinkedIn, and it is done by me, not by the skill or by you. As with anything I paste or you read into this conversation, that material is processed by you, my agent, under your own account and terms; the skill sends none of it to LinkedIn or to any third-party service, and there is no other recipient named in SKILL.md. - Do not ask for my LinkedIn password, cookies or session, do not log into or scrape LinkedIn, do not publish or schedule anything, do not install li-human, li-audit, li-plan or any other skill, do not create voice.md or log.md, and do not write any post during this install: writing a post only starts later, when I give you an idea and ask for one. 3. When I say "yes, install", install it as a skill: copy the whole li-post folder into the agent's skills directory, in a folder named "li-post", keeping its 2 files (SKILL.md and hooks.json at its root). A manual clone followed by copying the skills/li-post folder into ~/.claude/skills/ is the route described here; any other route is fine only as long as every installed file matches its fingerprint. 4. Verify with no network calls: frontmatter valid (name: li-post), both files in place with matching fingerprints. There is no script to run to verify. 5. Report what was installed, where, and what I still need to do myself (for example: set up my voice profile myself when I first want a post — copy templates/voice.md from the repository to ~/.claude/linkedin/voice.md and fill it in, or paste three of my own past posts and have voice.md written from them; install the separate /li-human skill myself if I want the mandatory humanizing step to run as written; give the skill one specific true idea, with a real number where one is needed, when I ask for a post, and approve or edit the draft; post the copy-ready block on LinkedIn myself — the skill never posts; using the skill is a separate step that only starts when I ask for it, and the use-time handling disclosed above happens only then). GitHub is optional: if I have a GitHub account or the gh CLI, you may use it; otherwise public access is fine. Never require it unless it's in the prerequisites above. Rules: don't touch anything outside the temp folder and the install target. If anything looks off, stop and ask me.
Saved to your recent installs. Find it anytime on /connect.
Questions
How do I install a build?
Every product page includes a copy-paste install prompt. Paste it into your Muse and it sets the build up for you — no manual configuration.
Where does my money go?
Straight to the seller. Skill Harbor never processes payments: checkout happens on the seller’s own page, usually Stripe.
What does the ✓ next to a creator’s name mean?
It means we confirmed the identity of the person behind the listing. It says nothing about the code itself — always check a build before installing it.