> ## Documentation Index
> Fetch the complete documentation index at: https://www.opendirectory.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# linkedin-post-generator

> Generate LinkedIn posts from any content: blog posts, articles, GitHub PRs, or a description of what you built. The agent reads your source material, applies...

<Info>
  **Category:** Content · **Version:** `1.0.0` · **Author:** `OpenDirectory` · **Compatibility:** All targets (claude, codex, opencode, gemini, anti-gravity, openclaw, hermes)
</Info>

<img width="1376" height="768" alt="LinkedIn_post_generator" src="https://github.com/user-attachments/assets/dc71e06b-8b3c-486a-adbf-d56a7b22cdc1" />

Generate LinkedIn posts from any content: blog posts, articles, GitHub PRs, or a description of what you built. The agent reads your source material, applies LinkedIn's content patterns, and produces a post with the right hook, story arc, and formatting.

## Install

<Tabs>
  <Tab title="npx CLI (Recommended)">
    ```bash theme={null}
    npx "@opendirectory.dev/skills" install linkedin-post-generator --target claude
    ```
  </Tab>

  <Tab title="skills.sh">
    ```bash theme={null}
    npx skills add Varnan-Tech/opendirectory --skill linkedin-post-generator
    ```
  </Tab>

  <Tab title="Claude Code Native">
    ```bash theme={null}
    /plugin marketplace add Varnan-Tech/opendirectory
    /plugin install opendirectory-gtm-skills@opendirectory-marketplace
    ```
  </Tab>

  <Tab title="Claude Desktop">
    <video controls className="w-full aspect-video rounded-xl mb-4" src="https://github.com/user-attachments/assets/cea8b565-2002-4a87-8857-d902bfcfdc1c" />

    1. Copy `https://github.com/Varnan-Tech/opendirectory/tree/main/skills/linkedin-post-generator` into [download-directory.github.io](https://download-directory.github.io/) to download the ZIP.
    2. Open **Claude Desktop** -> **Customize** -> **Skills** -> **+** -> **Upload a skill** and drop the folder containing `SKILL.md`.
  </Tab>

  <Tab title="Manus AI">
    <video controls className="w-full aspect-video rounded-xl mb-4" src="https://github.com/user-attachments/assets/17cbee2a-9e17-4bd4-ac46-68e0e92ffab4" />

    [**Install linkedin-post-generator in Manus AI**](https://manus.im/import-skills?githubUrl=https%3A%2F%2Fgithub.com%2FVarnan-Tech%2Fopendirectory%2Ftree%2Fmain%2Fskills%2Flinkedin-post-generator\&utm_source=opendirectory)
  </Tab>
</Tabs>

## Post Styles

| Style | Use When | Example Input |
| - | - | - |
| Founder/Ship | Personal story of building or shipping | "We merged our streaming SDK after 3 weeks" |
| Insight | Educational observation or lesson | Blog article, pattern you noticed, lesson learned |
| Product Launch | Announcing a new tool or feature | PR description, launch brief, feature going GA |
| Tutorial Summary | Distilling a long technical post | Tutorial URL, deep-dive article, step-by-step guide |

The agent auto-detects the right style. You override it by asking for a specific one.

## Requirements

No LLM API key needed. The agent writes the post.

Composio is optional. Add it to post directly to LinkedIn.

## Setup

### Composio (Optional)

Without Composio, the agent outputs formatted text for copy-paste. No configuration needed.

To enable direct posting:

1. Get your API key at [https://app.composio.dev/settings](https://app.composio.dev/settings)
2. Connect your LinkedIn account at [https://app.composio.dev/app/linkedin](https://app.composio.dev/app/linkedin)
3. Complete the OAuth flow
4. Add the key to your .env file:

```bash theme={null}
cp .env.example .env
# Edit .env and add your COMPOSIO_API_KEY
```

## How to Use

From a URL:

```
"Turn this into a LinkedIn post: https://yourblog.com/my-post"
"Write a LinkedIn post about this article: [URL]"
```

From pasted text:

```
"Here's a case study, turn it into a LinkedIn post: [paste text]"
"Convert this to a LinkedIn post: [paste article]"
```

From a PR or shipped feature:

```
"Write a LinkedIn post about this PR we merged: [paste PR description]"
"Announce our new feature on LinkedIn: [describe the feature]"
```

With a style override:

```
"Write a LinkedIn post in Tutorial Summary style about: [topic]"
"Use the Product Launch style for this: [description]"
```

With direct posting:

```
"Post this to LinkedIn: [paste content]"
"Generate and post a LinkedIn update about [topic]"
```

## Output

| Output | Description |
| - | - |
| LinkedIn post | Formatted text, 900-1,300 characters, ready to publish |
| First comment | Text with source links. Post this immediately after publishing. |
| Hook alternatives | 2 additional hook lines in different formats |
| Posted confirmation | If Composio is configured and you confirm posting |

## How Posts Are Formatted

Four rules drive every post the agent writes:

* Hook first. The first line is all most people see. It works standalone.
* Short paragraphs. 1-3 lines, then a blank line. LinkedIn is mobile-first.
* Links in the first comment. URLs in the post body reduce LinkedIn's distribution.
* Question or CTA at the end. One or the other, not both.

## Project Structure

```
linkedin-post-generator/
├── SKILL.md
├── README.md
├── .env.example
├── evals/
│   └── evals.json
└── references/
    ├── linkedin-format.md
    └── output-template.md
```

## License

MIT


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.