Source: github.com/Linked-API/linkedin-skills
Powered by: Linked API (linkedapi.io) + linkedin-cli (@linkedapi/linkedin-cli)
License: MIT
Works with: Claude Code, Codex, Cursor, Windsurf, OpenClaw, and any AI agent that can execute shell commands
LinkedIn automation skills for AI agents. One skill folder. Covers profiles, people search, company research, messaging, connections, posts, reactions, comments, Sales Navigator, and analytics.
How it works: the linkedin CLI sends requests to Linked API, which runs a dedicated cloud browser with a residential IP for each connected LinkedIn account. No local browsers. No proxies. No Selenium. No infrastructure to manage.
What this is and how it differs
Most LinkedIn automation tools fall into two categories:
- Browser extensions that require you to have Chrome open and logged in
- Unofficial API wrappers that break whenever LinkedIn updates its scraping defences
Linked API runs a real cloud browser instance for each connected account. When your agent runs a command, the CLI sends the request to Linked API's infrastructure, where an isolated browser performs the action on LinkedIn, simulating human-like mouse movements, keyboard input, and natural browsing patterns.
The result: your AI agent can run LinkedIn actions without a browser open on your machine, without API credentials that expire, and without scraping code that breaks every few weeks.
Operations are not instant. Expect 30 seconds to several minutes depending on complexity. This is intentional: cloud browser operations take time because they simulate human behaviour.
Install
# Step 1: Install the CLI
npm install -g @linkedapi/linkedin-cli
# Step 2: Set up your account (get tokens at app.linkedapi.io)
linkedin setup
# Step 3: Copy the skill into your agent
# Project-level (this project only):
cp -R linkedin-skills/linkedin .claude/skills/linkedin
# Global (all projects):
cp -R linkedin-skills/linkedin ~/.claude/skills/linkedin
Authentication
- Go to app.linkedapi.io and sign up or log in
- Connect your LinkedIn account
- Copy the Linked API Token and Identification Token from the dashboard
- Run: linkedin setup --linked-api-token=TOKEN --identification-token=TOKEN
If a command fails with exit code 2 (authentication error), the tokens need to be refreshed. Run linkedin setup again.
Exit code 0 means the API call succeeded. Always check the success field in the JSON response for the action outcome. Non-zero exit codes indicate infrastructure errors.
Command categories
| Category | Commands | What it covers |
|---|---|---|
| People | person fetch, person search | Profile data, experience, education, skills, posts, reactions, comments |
| Companies | company fetch, company search | Company profile, employees, decision makers, posts |
| Messaging | message send, message list, message read | DMs and InMail |
| Connections | connection send, connection list, connection remove | Managing your 1st-degree network |
| Posts | post create, post react, post comment | Publishing and engaging with content |
| Sales Navigator | navigator person/company fetch and search | Sales Nav profiles, companies, DMs |
| Stats | stats ssi, stats performance, stats usage | Social Selling Index, analytics, API usage |