Changelog Social Recap
FlorianBruniaux/claude-code-ultimate-guide
Turns CHANGELOG.md entries for a release or a week into LinkedIn, Twitter/X, newsletter and Slack posts in French and English.
When the user wants to create LinkedIn post copy or optimize for LinkedIn.
$ npx skills add kostja94/marketing-skills --skill linkedin-posts -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kostja94/marketing-skills linkedin-posts --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/kostja94/marketing-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/platforms/linkedin .claude/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .claude/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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/kostja94/marketing-skills/tree/main/skills/platforms/linkedinType 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 kostja94/marketing-skills --skill linkedin-posts -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kostja94/marketing-skills linkedin-posts --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kostja94/marketing-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/platforms/linkedin .agents/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .agents/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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 kostja94/marketing-skills --skill linkedin-posts -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kostja94/marketing-skills linkedin-posts --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kostja94/marketing-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/platforms/linkedin .cursor/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .cursor/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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/kostja94/marketing-skills.git --path skills/platforms/linkedin--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 kostja94/marketing-skills --skill linkedin-posts -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kostja94/marketing-skills linkedin-posts --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kostja94/marketing-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/platforms/linkedin .gemini/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .gemini/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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 kostja94/marketing-skills linkedin-postsInstalls 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 kostja94/marketing-skills --skill linkedin-posts -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kostja94/marketing-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/platforms/linkedin .github/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .github/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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 kostja94/marketing-skills --skill linkedin-posts -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kostja94/marketing-skills linkedin-posts --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kostja94/marketing-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/platforms/linkedin .opencode/skills/linkedin-posts && 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-posts" agent skill from https://github.com/kostja94/marketing-skills/tree/main/skills/platforms/linkedin into .opencode/skills/linkedin-posts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "linkedin-posts", 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-postsWhen the user wants to create LinkedIn post copy or optimize for LinkedIn.
Linkedin Posts is an agent skill from kostja94/marketing-skills. When the user wants to create LinkedIn post copy or optimize for LinkedIn. Also use when the user mentions "LinkedIn post," "LinkedIn article," "professional post," "post to LinkedIn," "LinkedIn content," "LinkedIn copy," "B2B LinkedIn," "LinkedIn engagement," "LinkedIn feed," "share box," "document post," "poll," "Newsletter," "reshare," or "LinkedIn marketing." For LinkedIn ads, use linkedin-ads.
Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Writing & Content, covering Social media posts, Paid advertising and Newsletters. It works with LinkedIn. The repository describes itself as: Agent Skills for Marketing — SEO, Social, Influencer & More. 160+ open-source skills for SEO, content, 40+ page types, paid ads, channels, and strategies. Add project context… The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 8dd89c5. 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.
Links to these hosts (documentation or services it may open):
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 Posts loads about 3k tokens when it runs. Until then it costs about 104 tokens; SKILL.md has 1,365 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 kostja94/marketing-skills at commit 8dd89c5, republished under its MIT licence (© kostja94). 1,365 words, ~3,005 tokens.
.claude/skills/linkedin-posts/SKILL.md (or your agent's skills folder).Guides LinkedIn post copy creation and optimization. Use for generating publish-ready professional content. Suitable for copy agents and design agents (image specs).
When invoking: On first use, if helpful, open with 1–2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.
This skill enables agents to generate LinkedIn post copy optimized for engagement. Output includes character-counted text and structure for the "See more" threshold.
| Kind | What to know |
|---|---|
| Start a post | Short update; can include link preview if you paste a URL. Same feed format as other updates. |
| Photo | Single or multiple images (carousel in feed). |
| Video | Uploaded file (distinct from LinkedIn Live, which is live streaming and has separate gating). |
| Write article | Article = long-form editor, separate from the short post box; long URL, better for depth and some off-site discoverability. |
| Document | PDF / PPT / DOC (slides in feed). Official limits (check current help): on the order of ~100MB / ~300 pages per file—verify when publishing. |
| Poll | Engagement driver; keep question and options scannable. |
| More (menu) | Often includes celebrations, hiring-style share, Find an expert, etc. (varies by product/region). |
| Reshare | Reshare or quote another member’s post with your take—adds context; avoid empty reshares. |
| Newsletter | Series subscription; not the same as a one-off post but compound reach over time. |
| Event | Create/promote events via a dedicated flow, not the same as a plain text post. |
Product detail: Get started with posting on LinkedIn · Upload and share documents
Why it matters for copy: Match CTA and length to the form (e.g. a document deck vs a 5-line hot take). Do not treat a short post and an Article as interchangeable.
LinkedIn is a professional network—its core value is career identity, B2B relationships, and professional content. Key differences from general social platforms:
| Dimension | Meta / X / TikTok | |
|---|---|---|
| Primary intent | Job seeking, B2B networking, industry learning | Entertainment, social, discovery |
| Identity | Real name + career history | Username or lifestyle persona |
| Content tone | Professional, constructive | Casual, entertaining, opinion |
| B2B lead value | High (job title + company targeting) | Low to medium |
| Algorithm signal | Professional interest + network + editorial | Engagement, watch time, virality |
Prioritize LinkedIn when: targeting B2B buyers, building professional authority, recruiting, or publishing industry thought leadership. For consumer brand awareness or entertainment, other platforms are often more effective.
Writing implications: Strong first line and on-topic depth; comments that add substance; avoid templates that look automated or “pod” coordinated.
LinkedIn content is visible to search engines on a selective basis—understand what gets indexed for SEO and cited for GEO.
| Surface | Search Visibility | GEO (AI citation) Value |
|---|---|---|
| Public profile (Headline, About, Experience) | Indexed for name/company/role queries | Strong entity signal; citable paragraphs |
| Articles (long-form editor) | Indexed when set to public | High; structured paragraphs with keywords |
| Company Page | Indexed for brand queries | Medium; brand entity signals |
| Short feed posts | Login-gated—not indexed | Low; cannot be cited if behind login |
| Newsletter issues | Indexed if public; behind login if subscriber-only | Depends on visibility setting |
sameAs alignment.Actionable checklist:
For implementation details: open-graph (link previews), entity-seo (people/org sameAs), generative-engine-optimization (cross-platform GEO).
Key LinkedIn profile modules that affect search visibility and AI citation:
| Module | SEO/GEO Value | Optimization |
|---|---|---|
| Headline | Highest—indexed, appears in search snippets | Customize beyond job title; include keyword + audience + value |
| About | High—indexed; citable for AI | Write in answer-first format; include proof points, external links |
| Featured | Medium—showcases key links on public profile | Add site URL, case studies, press, portfolio |
| Experience (media) | Low-medium—media attachments are indexed | Add relevant documents, links, images to each role |
| Skills & Endorsements | Low—indexed but thin signal | Include relevant skills; endorsements add social proof |
| Articles | High—indexed and rankable | Publish long-form content with keywords and data |
| Custom URL | Indirect—clean URL improves shareability | Set to firstnamelastname or similar |
For the full profile module inventory, see LinkedIn help: Add sections to your profile.
| Type | Limit | Notes |
|---|---|---|
| Post | 3,000 characters | Optimal: 1,300–1,600 |
| First line (critical) | 210–235 chars | Visible before "See more"; 60–80% decide here |
| Short posts | 100–200 chars | Polls, announcements, quotes |
| Type | Characters | Use |
|---|---|---|
| Short | 100–200 | Polls, announcements, quotes |
| Medium | 300–1,200 | Case studies, tips, BTS |
| Long | 1,200–2,000 | Thought leadership, analysis |
| Sweet spot | 1,300–1,600 | Highest engagement |
| Avoid | >2,000 | ~35% engagement drop |
| Format | Dimensions | Use |
|---|---|---|
| Single image | 1200×627 (1.91:1) | Feed; link previews |
| Square | 1200×1200 | Single image |
| Carousel (organic) | Up to 20 images | Multi-image post |
| File | ≤10 MB; JPG/PNG | Native uploads perform better |
| Vertical | Preferred | 88% browse on mobile |
When generating LinkedIn copy, provide:
© kostja94, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/platforms/linkedin of kostja94/marketing-skills.
Open the folder on GitHubat commit 8dd89c5
Linkedin Posts 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 Posts this skillkostja94/marketing-skills | 1k | — | ~3k | Automated safety check: Pass | MIT | |
| Changelog Social RecapFlorianBruniaux/claude-code-ultimate-guide | 6.1k | — | ~1.8k | Automated safety check: Notes | CC-BY-SA-4.0 | |
| Content Writer Agentmastra-ai/mastra | 29k | — | ~1.3k | Automated safety check: Pass | Custom licence | |
| ShareSerhiiKorniienko/bullshit-detector | 153 | — | ~857 | Automated safety check: Pass | MIT | |
| Idea Extractoraiskilloftheweek/claude-ai-skill-of-the-week | 145 | — | ~1.5k | Automated safety check: Pass | None | |
| Content Repurposer Smsblacktwist/social-media-skills | 557 | — | ~3.7k | Automated safety check: Pass | MIT |
FlorianBruniaux/claude-code-ultimate-guide
Turns CHANGELOG.md entries for a release or a week into LinkedIn, Twitter/X, newsletter and Slack posts in French and English.
mastra-ai/mastra
Authoring playbook for building agents that draft written content — blog posts, marketing copy, social media posts, newsletters, product descriptions, landing pages, or ad copy.
SerhiiKorniienko/bullshit-detector
Turn a BS report (or any analysis result) into ready-to-paste posts for X/Twitter, LinkedIn, Facebook, Reddit, Hacker News, or a newsletter issue — plus a branded image carousel (PNGs + PDF) for…
aiskilloftheweek/claude-ai-skill-of-the-week
Analyzes long-form content (transcripts, articles, interviews, webinars, podcast notes) and extracts the 3 best content ideas for any publishing platform — LinkedIn, Substack, blog, newsletter…
blacktwist/social-media-skills
When the user wants to turn one piece of content into multiple formats or adapt content across text-first and visual-first platforms (LinkedIn, Twitter/X, Threads, Bluesky, Facebook, Instagram…
EmertonData/glide
Drafts the monthly GLIDE LinkedIn newsletter (and, on request, its companion punchy LinkedIn post).
kostja94/marketing-skills
When the user wants to add recommendations, links, or content to Grokipedia.
kostja94/marketing-skills
When the user wants to track AI search traffic in GA4 or GSC.
kostja94/marketing-skills
When the user wants to set up, audit, or optimize analytics tracking (GA4, events, conversions).
kostja94/marketing-skills
When the user wants to define, audit, or apply visual identity (typography, colors, spacing, design tokens, frontend aesthetics).
kostja94/marketing-skills
When the user wants to configure canonical URLs, fix duplicate content, or consolidate URL signals.
kostja94/marketing-skills
When the user wants to plan content for SEO, create content calendar, or build topic clusters.
Works with
Categories
When the user wants to create LinkedIn post copy or optimize for LinkedIn. Linkedin Posts is an agent skill from kostja94/marketing-skills. When the user wants to create LinkedIn post copy or optimize for LinkedIn.
Linkedin Posts fits situations like: wants to create LinkedIn post copy; optimize for LinkedIn; the user mentions LinkedIn post; linkedIn article.
Run `npx skills add kostja94/marketing-skills --skill linkedin-posts -a claude-code`. Or copy the skill folder (skills/platforms/linkedin in kostja94/marketing-skills) into .claude/skills/linkedin-posts in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kostja94/marketing-skills --skill linkedin-posts -a codex`. Or copy the skill folder (skills/platforms/linkedin in kostja94/marketing-skills) into .agents/skills/linkedin-posts 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 kostja94/marketing-skills --skill linkedin-posts -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-posts, .gemini/skills/linkedin-posts, .github/skills/linkedin-posts and .opencode/skills/linkedin-posts in your project.
SKILL.md names no scripts, command-line tools or credentials: Linkedin Posts is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: linkedin.com. 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 Posts is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Linkedin Posts: Changelog Social Recap (FlorianBruniaux/claude-code-ultimate-guide, 6.1k stars), Content Writer Agent (mastra-ai/mastra, 29k stars), Share (SerhiiKorniienko/bullshit-detector, 153 stars) and Idea Extractor (aiskilloftheweek/claude-ai-skill-of-the-week, 145 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kostja94 (a GitHub user) maintains it in kostja94/marketing-skills, which has 1,016 GitHub stars. The repository holds 102 skills in this directory. The repository was last updated on October 6, 2026.
Source: kostja94/marketing-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.