LinkedIn Copywriter
Getting started
The linkedin-copywriter skill is part of the gtm-skills bundle, a Claude Code skill catalog for GTM workflows, listed on the skills.sh registry. It’s a focused instruction set that loads on demand when an agent is asked to draft LinkedIn content: it uses the gtm-tools LinkedIn tools for voice ingestion and context fetching, then drafts and scrubs against an anti-AI pattern list built from the top LinkedIn-ghostwriter skills on the market.
The skill calls the gtm-tools HTTP API over curl, so it works in Claude Code and any Agent Skills-compatible client with no MCP wiring. Drafting needs only an API key; the two sending modes (invitation, dm) also need a LinkedIn session in the pool.
Installation
Install just the LinkedIn Copywriter skill:
Add --yes to skip the confirmation prompts (for CI or a scripted setup), and --global to install at user level instead of into the current project:
Or install the whole gtm-skills catalog (outbound-sales, linkedin-copywriter, reddit-community-manager):
Both work because arnaudjnn/gtm-skills follows the anthropics/skills layout: each skill lives at skills/<name>/SKILL.md and is addressable by name.
Claude Code plugin marketplace
The repo also ships a .claude-plugin/marketplace.json, so you can install it as a plugin instead:
Manual installation
Skills are plain markdown. Clone the repo and drop the directory where your client looks for skills:
Configuration
Environment variable
Set the API key once. Every tool call in the skill reads it:
Where the skill installs
npx skills add writes the real files under .agents/skills/<name>/ and symlinks them into each agent directory it detects, including .claude/skills/<name> for Claude Code. Pass --copy if you’d rather have real files in both places than symlinks, and --global to install into your home directory instead of the project.
Get an API key with get_api_key (see Getting Your API Key) or run gtm-tools admin login, which stores it in ~/.gtm-tools/config.json.
Features
When the linkedin-copywriter skill loads, it teaches the agent:
Four modes
post / comment / invitation / dm, each with its own char budget, structure, and tool fan-out. The skill picks the mode from the request and asks rather than guessing when it’s ambiguous.
Voice ingestion
Pulls the user’s last 15 to 30 posts via list_user_posts to learn their register before drafting: sentence length, opener patterns, content pillars, formatting habits. It captures rhythm, never copies phrases.
The Reaction-Mode Gate
For comments, it extracts the original poster’s claims verbatim and confirms which one to react to before drafting. This catches misreadings before they become public, downvotable comments.
Anti-AI scrub
A mandatory pass against roughly 55 banned corporate tells (leverage, utilize, robust, paradigm, synergy, streamline, comprehensive, pivotal, transformative, cutting-edge, ecosystem, holistic, plus intensifiers like deeply, truly, fundamentally), an em-dash ban, a rule-of-three ban, a sycophancy ban, and a hedge-stacking ban. Each failure means a rewrite.
Char-limit guards
3,000 hard / 1,800 to 2,800 sweet spot for posts; 1,250 hard / 200 to 350 for comments; 300 hard for invitations; ~800 target for DMs.
Draft-then-paste by default
Posts and comments come back as copy-paste-ready text, because LinkedIn’s write API is gated to approved partners. Invitations and DMs send via send_linkedin_invitation / send_linkedin_message only after explicit approval (“ship it”, not “looks good”).
Five bundled sub-skills
profiles, companies, posts, jobs, and messaging ship alongside the main skill, each a focused tool reference the agent loads when a draft needs that kind of lookup.
Example usage
Ask in natural language. The skill loads on its own, with no slash command:
- “Write a LinkedIn post about what we learned migrating off Segment.”
- “Draft a comment on this post:
<url>.” - “Ghostwrite this in my voice, I’ll paste it myself.”
- “Write a connection request to the VP of Sales at acme.com.”
- “Repurpose this blog post into a LinkedIn post.”
It won’t take over pure prospecting (use the LinkedIn tools directly, or the outbound-sales skill) or non-LinkedIn channels.
Resources
- View on skills.sh: the full
SKILL.md, install count, related skills. - Source on GitHub:
SKILL.mdplus the bundled references (anti-ai.md,hooks.md,comment-templates.md,tools-reference.md). Open a PR to improve it. - LinkedIn Tools: every tool the skill calls.
- Browser Extension: required for the sending modes.