mcpField
L
linkedin-speak

linkedin-speak

github.com/jpcaparasCreative & media5683 installsUpdated 2d ago
Repository

About linkedin-speak

LinkedIn Speak is a local command-line skill for satirical rewriting. It turns ordinary text into exaggerated LinkedIn-style copy or reduces such posts to plain language, with repeatable output and an optional Kagi comparison link.

Key features

  1. 01Rewrite plain text in LinkedIn style
  2. 02Reduce inflated posts to plain language
  3. 03Generate deterministic text from input
  4. 04Adjust intensity and control hashtags and emoji
  5. 05Create a Kagi web comparison link

Use cases

  1. 01Turn a short statement into a satirical work announcement
  2. 02Extract the plain meaning of a LinkedIn post
  3. 03Get both rewrite directions as JSON
  4. 04Compare local output with Kagi's public web tool

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/jpcaparas/skills --skill linkedin-speak

After installing, type/linkedin-speakin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

AGENTS.md
metadata.json
README.md
skill-card.prompt.md
agents/
.gitkeep
openai.yaml
assets/
.gitkeep
evals/
evals.json
references/
commands.md
configuration.md
gotchas.md
patterns.md
scripts/
linkedin_speak.py
probe_linkedin_speak.py
test_skill.py
validate.py
templates/
input-examples.md

Details

From the project README

LinkedIn Speak

Translate ordinary text into gloriously overcaffeinated LinkedIn-speak, or strip a bloated post back down to plain English.

Verified against the observable Kagi Translate rollout and press examples published in March and April 2026.

Decision Tree

  1. If the user wants a deterministic parody of LinkedIn announcement culture, run scripts/linkedin_speak.py --mode translate.
  2. If the user pasted a breathless growth-journey post and wants the actual meaning, run scripts/linkedin_speak.py --mode reverse.
  3. If they want both versions for comparison, run scripts/linkedin_speak.py --mode both --format json.
  4. If they want a side-by-side check against Kagi's public web translator, add --compare-kagi-url.
  5. If they want tasteful professional editing instead of satire, stop and use {{ skill:better-writing }} instead.

Quick Reference

TaskCommandWhy
Translate plain text into LinkedIn-speakpython3 scripts/linkedin_speak.py "I finished the project."Fast happy path with deterministic output
Reverse a corporate-cringe post into plain Englishpython3 scripts/linkedin_speak.py --mode reverse "Thrilled to announce..."Removes hype, hashtags, and filler
Compare both directions as JSONpython3 scripts/linkedin_speak.py --mode both --format json "I got a new job."Easier to feed another tool
Dial the cringe up or downpython3 scripts/linkedin_speak.py --intensity 5 "We shipped the feature."Controls sentence count, hype, and hashtags
Drop hashtags and emojipython3 scripts/linkedin_speak.py --no-hashtags --no-emoji "I fixed the bug."Keeps the parody cleaner
Build a Kagi comparison URLpython3 scripts/linkedin_speak.py --compare-kagi-url "I built a dashboard."Opens the same input in Kagi's public web UI
Run the local probe suitepython3 scripts/probe_linkedin_speak.pyVerifies core translation behavior

Scope

Positive triggers
  • "translate this into linkedin speak"
  • "make this sound like a linkedin influencer"
  • "turn this into a corporate announcement"
  • "reverse this linkedin post into plain english"
  • "add hashtags and fake gratitude"
  • "give me the full growth mindset cringe version"
Negative triggers
  • actual multilingual translation
  • subtle resume polish
  • sober launch notes
  • legal, HR, or investor communications
  • real executive ghostwriting

Working Rule

Default to the deterministic local translator first. It is reproducible, fast, and does not depend on external APIs. Use the Kagi comparison link only when the user wants to compare the local parody against the public LinkedIn Speak translator.

What The Script Actually Does

  • expands a plain statement into a short announcement arc
  • chooses an opener, reflection sentence, gratitude sentence, emoji, and hashtags deterministically from the input text
  • maps common actions like shipping, learning, hiring, speaking, leading, fixing, and launching onto predictable corporate phrasing
  • reverses inflated posts by stripping hashtags, emoji, boilerplate hype, and vague self-congratulation

Reading Guide

NeedRead
CLI flags, input methods, and Kagi comparison linksreferences/configuration.md
Output patterns, intensity rules, and deterministic heuristicsreferences/patterns.md
Full command catalog and JSON output shapereferences/commands.md
Failure modes, limits, and where the parody can get too repetitivereferences/gotchas.md

Gotchas

  1. The translator is intentionally satirical, not subtle. If the user wants "better LinkedIn copy," this skill is the wrong tool.
  2. The reverse translator removes hype heuristically. It will simplify the message well, but it cannot perfectly recover every omitted fact if the original post never stated them plainly.
  3. Deterministic output means the same input stays stable across runs. That is useful for tests and memes, but it also means the phrasing can feel formulaic on repeated use.
  4. Kagi's public LinkedIn Speak implementation is not a documented API. This skill uses a local engine by default and only emits a comparison URL for the web UI.
  5. Hashtag selection is keyword-driven. If the input is too vague, the fallback tags will lean generic on purpose.

Comments

Markdown supported