# LinkedIn speak Human Guide

## What This Is For
Translate ordinary text into gloriously overcaffeinated LinkedIn-speak, or strip a bloated post back down to plain English. It gives the agent a clearer input/output frame for social content: what context to ask for, what decisions to make, and what usable artifact to return.

Use this as a human-readable version of the LinkedIn speak agent skill. It is meant for marketers, operators, founders, and other non-coders who want the workflow without reading agent-specific implementation instructions.

## When To Use This
- Use this when you need a repeatable process for LinkedIn speak.
- Use this when the task needs judgment, examples, constraints, or a clear output format rather than a one-off prompt.
- Use this when you want to hand an AI assistant enough context to produce a usable marketing artifact.

## When Not To Use This
- Do not use this when you only need a quick factual answer.
- Do not use this when the work depends on private data you cannot share with the assistant.
- Do not use this as a replacement for legal, compliance, financial, or medical review.

## What You Need Before Starting
- The goal or business outcome you want.
- The audience, customer segment, or market context.
- Any source material the assistant should respect, such as notes, briefs, examples, URLs, or brand guidance.
- Constraints such as tone, length, channel, deadline, region, or approval requirements.
- A clear definition of what a good final answer should look like.

## Step-By-Step Workflow
1. State the job clearly: "Use the LinkedIn speak guide to help me with..."
2. Add context: audience, goal, offer, channel, source material, and constraints.
3. Ask the assistant to identify missing inputs before producing the final output.
4. Have the assistant follow the skill-specific guidance below.
5. Review the result against the final checklist and ask for revisions where needed.

## Skill-Specific Guidance
- If the user wants a deterministic parody of LinkedIn announcement culture, run `scripts/linkedin_speak.py --mode translate`.
- If the user pasted a breathless growth-journey post and wants the actual meaning, run `scripts/linkedin_speak.py --mode reverse`.
- If they want both versions for comparison, run `scripts/linkedin_speak.py --mode both --format json`.
- If they want a side-by-side check against Kagi's public web translator, add `--compare-kagi-url`.
- If they want tasteful professional editing instead of satire, stop and use `{{ skill:better-writing }}` instead.
- "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"
- actual multilingual translation

## Decision Points And Nuance
The original skill emphasizes: Decision Tree, Quick Reference, Scope, Positive triggers, Negative triggers, Working Rule, What The Script Actually Does, Reading Guide, Gotchas, Supporting file: AGENTS.md.

Use these questions to steer the work:
- What is the intended audience or buyer?
- What source material must be preserved?
- What should the assistant optimize for: clarity, persuasion, accuracy, speed, creativity, or conversion?
- What examples represent the desired quality bar?
- What should the assistant avoid?

## Common Mistakes
- 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.
- No external API key is required.
- Do not use this skill for press releases, performance reviews, layoffs, legal notices, or other contexts where parody can backfire.

## Copy-And-Paste Prompt
```text
Use the LinkedIn speak human guide.

My goal:
[Describe the business outcome]

Audience:
[Describe who this is for]

Context and source material:
[Paste notes, examples, links, or existing copy]

Constraints:
[Tone, length, channel, timeline, must-include items, must-avoid items]

Before producing the final output, ask me for any missing information that would materially improve the result.
```

## Final Checklist
- [ ] The output matches the original goal.
- [ ] The audience and context are reflected in the answer.
- [ ] Important constraints and source material were preserved.
- [ ] The assistant made the relevant decisions explicit.
- [ ] The final artifact is ready to use, review, or hand to the next person.

## Source
This guide was generated from the jpcaparas/skills skill entry for `linkedin-speak`.

## Source Skill Notes
These notes preserve the nuance from the original skill. Use them as supporting reference when the workflow above feels too generic.

# 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

| Task | Command | Why |
| --- | --- | --- |
| Translate plain text into LinkedIn-speak | `python3 scripts/linkedin_speak.py "I finished the project."` | Fast happy path with deterministic output |
| Reverse a corporate-cringe post into plain English | `python3 scripts/linkedin_speak.py --mode reverse "Thrilled to announce..."` | Removes hype, hashtags, and filler |
| Compare both directions as JSON | `python3 scripts/linkedin_speak.py --mode both --format json "I got a new job."` | Easier to feed another tool |
| Dial the cringe up or down | `python3 scripts/linkedin_speak.py --intensity 5 "We shipped the feature."` | Controls sentence count, hype, and hashtags |
| Drop hashtags and emoji | `python3 scripts/linkedin_speak.py --no-hashtags --no-emoji "I fixed the bug."` | Keeps the parody cleaner |
| Build a Kagi comparison URL | `python3 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 suite | `python3 scripts/probe_linkedin_speak.py` | Verifies 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

| Need | Read |
| --- | --- |
| CLI flags, input methods, and Kagi comparison links | `references/configuration.md` |
| Output patterns, intensity rules, and deterministic heuristics | `references/patterns.md` |
| Full command catalog and JSON output shape | `references/commands.md` |
| Failure modes, limits, and where the parody can get too repetitive | `references/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.

---

## Supporting file: AGENTS.md

# linkedin-speak

Canonical instructions live in `SKILL.md`.
