← All skills
Tencent SkillHub · Developer Tools

LinkedIn Skill

LinkedIn automation skill — search people and companies, fetch profiles, send messages and InMails, manage connections, create posts, react, comment. Support...

skill openclawclawhub Free
0 Downloads
0 Stars
0 Installs
0 Score
High Signal

LinkedIn automation skill — search people and companies, fetch profiles, send messages and InMails, manage connections, create posts, react, comment. Support...

⬇ 0 downloads ★ 0 stars Unverified but indexed

Install for OpenClaw

Quick setup
  1. Download the package from Yavira.
  2. Extract the archive and review SKILL.md first.
  3. Import or place the package into your OpenClaw setup.

Requirements

Target platform
OpenClaw
Install method
Manual import
Extraction
Extract archive
Prerequisites
OpenClaw
Primary doc
SKILL.md

Package facts

Download mode
Yavira redirect
Package format
ZIP package
Source platform
Tencent SkillHub
What's included
SKILL.md

Validation

  • Use the Yavira download entry.
  • Review SKILL.md after the package is downloaded.
  • Confirm the extracted package contains the expected setup assets.

Install with your agent

Agent handoff

Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.

  1. Download the package from Yavira.
  2. Extract it into a folder your agent can access.
  3. Paste one of the prompts below and point your agent at the extracted folder.
New install

I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.

Upgrade existing

I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.

Trust & source

Release facts

Source
Tencent SkillHub
Verification
Indexed source record
Version
1.0.0

Documentation

ClawHub primary doc Primary doc: SKILL.md 17 sections Open source page

LinkedIn Skill

You have access to linkedin – a CLI tool for LinkedIn automation. Use it to fetch profiles, search people and companies, send messages, manage connections, create posts, react, comment, and more. Each command sends a request to Linked API, which runs a real cloud browser to perform the action on LinkedIn. Operations are not instant – expect 30 seconds to several minutes depending on complexity. If linkedin is not available, install it: npm install -g @linkedapi/linkedin-cli

Authentication

If a command fails with exit code 2 (authentication error), ask the user to set up their account: Go to app.linkedapi.io and sign up or log in Connect their LinkedIn account Copy the Linked API Token and Identification Token from the dashboard Once the user provides the tokens, run: linkedin setup --linked-api-token=TOKEN --identification-token=TOKEN

Global Flags

Always use --json and -q for machine-readable output: linkedin <command> --json -q FlagDescription--jsonStructured JSON output--quiet / -qSuppress stderr progress messages--fields name,url,...Select specific fields in output--no-colorDisable colors--account "Name"Use a specific account for this command

Output Format

Success: {"success": true, "data": {"name": "John Doe", "headline": "Engineer"}} Error: {"success": false, "error": {"type": "personNotFound", "message": "Person not found"}} Exit code 0 means the API call succeeded – always check the success field for the action outcome. Non-zero exit codes indicate infrastructure errors: Exit CodeMeaning0Success (check success field – action may have returned an error like "person not found")1General/unexpected error2Missing or invalid tokens3Subscription/plan required4LinkedIn account issue5Invalid arguments6Rate limited7Network error8Workflow timeout (workflowId returned for recovery)

Fetch a Person Profile

linkedin person fetch <url> [flags] --json -q Optional flags to include additional data: --experience – work history --education – education history --skills – skills list --languages – languages --posts – recent posts (with --posts-limit N, --posts-since TIMESTAMP) --comments – recent comments (with --comments-limit N, --comments-since TIMESTAMP) --reactions – recent reactions (with --reactions-limit N, --reactions-since TIMESTAMP) Only request additional data when needed – each flag increases execution time. # Basic profile linkedin person fetch https://www.linkedin.com/in/username --json -q # With experience and education linkedin person fetch https://www.linkedin.com/in/username --experience --education --json -q # With last 5 posts linkedin person fetch https://www.linkedin.com/in/username --posts --posts-limit 5 --json -q

Search People

linkedin person search [flags] --json -q FlagDescription--termSearch keyword or phrase--limitMax results--first-nameFilter by first name--last-nameFilter by last name--positionFilter by job position--locationsComma-separated locations--industriesComma-separated industries--current-companiesComma-separated current company names--previous-companiesComma-separated previous company names--schoolsComma-separated school names linkedin person search --term "product manager" --locations "San Francisco" --json -q linkedin person search --current-companies "Google" --position "Engineer" --limit 20 --json -q

Fetch a Company

linkedin company fetch <url> [flags] --json -q Optional flags: --employees – include employees --dms – include decision makers --posts – include company posts Employee filters (require --employees): FlagDescription--employees-limitMax employees to retrieve--employees-first-nameFilter by first name--employees-last-nameFilter by last name--employees-positionFilter by position--employees-locationsComma-separated locations--employees-industriesComma-separated industries--employees-schoolsComma-separated school names FlagDescription--dms-limitMax decision makers to retrieve (requires --dms)--posts-limitMax posts to retrieve (requires --posts)--posts-sincePosts since ISO timestamp (requires --posts) # Basic company info linkedin company fetch https://www.linkedin.com/company/name --json -q # With employees filtered by position linkedin company fetch https://www.linkedin.com/company/name --employees --employees-position "Engineer" --json -q # With decision makers and posts linkedin company fetch https://www.linkedin.com/company/name --dms --posts --posts-limit 10 --json -q

Search Companies

linkedin company search [flags] --json -q FlagDescription--termSearch keyword--limitMax results--sizesComma-separated sizes: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+--locationsComma-separated locations--industriesComma-separated industries linkedin company search --term "fintech" --sizes "11-50,51-200" --json -q

Send a Message

linkedin message send <person-url> '<text>' --json -q Text up to 1900 characters. Wrap the message in single quotes to avoid shell interpretation issues. linkedin message send https://www.linkedin.com/in/username 'Hey, loved your latest post!' --json -q

Get Conversation

linkedin message get <person-url> [--since TIMESTAMP] --json -q The first call for a conversation triggers a background sync and may take longer. Subsequent calls are faster. linkedin message get https://www.linkedin.com/in/username --json -q linkedin message get https://www.linkedin.com/in/username --since 2024-01-15T10:30:00Z --json -q

Connection Management

Check connection status linkedin connection status <url> --json -q Send connection request linkedin connection send <url> [--note 'text'] [--email user@example.com] --json -q List connections linkedin connection list [flags] --json -q FlagDescription--limitMax connections to return--sinceOnly connections made since ISO timestamp (only works when no filter flags are used)--first-nameFilter by first name--last-nameFilter by last name--positionFilter by job position--locationsComma-separated locations--industriesComma-separated industries--current-companiesComma-separated current company names--previous-companiesComma-separated previous company names--schoolsComma-separated school names linkedin connection list --limit 50 --json -q linkedin connection list --current-companies "Google" --position "Engineer" --json -q linkedin connection list --since 2024-01-01T00:00:00Z --json -q List pending outgoing requests linkedin connection pending --json -q Withdraw a pending request linkedin connection withdraw <url> [--no-unfollow] --json -q By default, withdrawing also unfollows the person. Use --no-unfollow to keep following. Remove a connection linkedin connection remove <url> --json -q

Posts

Fetch a post linkedin post fetch <url> [flags] --json -q FlagDescription--commentsInclude comments--reactionsInclude reactions--comments-limitMax comments to retrieve (requires --comments)--comments-sortSort order: mostRelevant or mostRecent (requires --comments)--comments-repliesInclude replies to comments (requires --comments)--reactions-limitMax reactions to retrieve (requires --reactions) linkedin post fetch https://www.linkedin.com/posts/username_activity-123 --json -q # With comments sorted by most recent, including replies linkedin post fetch https://www.linkedin.com/posts/username_activity-123 \ --comments --comments-sort mostRecent --comments-replies --json -q Create a post linkedin post create '<text>' [flags] --json -q FlagDescription--company-urlPost on behalf of a company page (requires admin access)--attachmentsAttachment as url:type or url:type:name. Types: image, video, document. Can be specified multiple times. Attachment limits: up to 9 images, or 1 video, or 1 document. Cannot mix types. linkedin post create 'Excited to share our latest update!' --json -q # With a document linkedin post create 'Our Q4 report' \ --attachments "https://example.com/report.pdf:document:Q4 Report" --json -q # Post as a company linkedin post create 'Company announcement' \ --company-url https://www.linkedin.com/company/name --json -q React to a post linkedin post react <url> --type <reaction> [--company-url <url>] --json -q Reaction types: like, love, support, celebrate, insightful, funny. linkedin post react https://www.linkedin.com/posts/username_activity-123 --type like --json -q # React on behalf of a company linkedin post react https://www.linkedin.com/posts/username_activity-123 --type celebrate \ --company-url https://www.linkedin.com/company/name --json -q Comment on a post linkedin post comment <url> '<text>' [--company-url <url>] --json -q Text up to 1000 characters. linkedin post comment https://www.linkedin.com/posts/username_activity-123 'Great insights!' --json -q # Comment on behalf of a company linkedin post comment https://www.linkedin.com/posts/username_activity-123 'Well said!' \ --company-url https://www.linkedin.com/company/name --json -q

Statistics

# Social Selling Index linkedin stats ssi --json -q # Performance analytics (profile views, post impressions, search appearances) linkedin stats performance --json -q # API usage for a date range linkedin stats usage --start 2024-01-01T00:00:00Z --end 2024-01-31T00:00:00Z --json -q

Sales Navigator

Requires a LinkedIn Sales Navigator subscription. Uses hashed URLs for person/company lookups. Fetch person linkedin navigator person fetch <hashed-url> --json -q Search people linkedin navigator person search [flags] --json -q FlagDescription--termSearch keyword or phrase--limitMax results--first-nameFilter by first name--last-nameFilter by last name--positionFilter by job position--locationsComma-separated locations--industriesComma-separated industries--current-companiesComma-separated current company names--previous-companiesComma-separated previous company names--schoolsComma-separated school names--years-of-experienceComma-separated ranges: lessThanOne, oneToTwo, threeToFive, sixToTen, moreThanTen linkedin navigator person search --term "VP Marketing" --locations "United States" --json -q linkedin navigator person search --years-of-experience "moreThanTen" --position "CEO" --json -q Fetch company linkedin navigator company fetch <hashed-url> [flags] --json -q Optional flags: --employees – include employees --dms – include decision makers Employee filters (require --employees): FlagDescription--employees-limitMax employees to retrieve--employees-first-nameFilter by first name--employees-last-nameFilter by last name--employees-positionsComma-separated positions--employees-locationsComma-separated locations--employees-industriesComma-separated industries--employees-schoolsComma-separated school names--employees-years-of-experienceComma-separated experience ranges--dms-limitMax decision makers to retrieve (requires --dms) linkedin navigator company fetch https://www.linkedin.com/sales/company/97ural --employees --dms --json -q linkedin navigator company fetch https://www.linkedin.com/sales/company/97ural \ --employees --employees-positions "Engineer,Designer" --employees-locations "Europe" --json -q Search companies linkedin navigator company search [flags] --json -q FlagDescription--termSearch keyword--limitMax results--sizesComma-separated sizes: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+--locationsComma-separated locations--industriesComma-separated industries--revenue-minMin annual revenue in M USD: 0, 0.5, 1, 2.5, 5, 10, 20, 50, 100, 500, 1000--revenue-maxMax annual revenue in M USD: 0.5, 1, 2.5, 5, 10, 20, 50, 100, 500, 1000, 1000+ linkedin navigator company search --term "fintech" --sizes "11-50,51-200" --json -q linkedin navigator company search --revenue-min 10 --revenue-max 100 --locations "United States" --json -q Send InMail linkedin navigator message send <person-url> '<text>' --subject '<subject>' --json -q Text up to 1900 characters. Subject up to 80 characters. linkedin navigator message send https://www.linkedin.com/in/username \ 'Would love to chat about API integrations' --subject 'Partnership Opportunity' --json -q Get Sales Navigator conversation linkedin navigator message get <person-url> [--since TIMESTAMP] --json -q

Custom Workflows

Execute a custom workflow definition from a file, stdin, or inline: # From file linkedin workflow run --file workflow.json --json -q # From stdin cat workflow.json | linkedin workflow run --json -q # Inline echo '{"actions":[...]}' | linkedin workflow run --json -q Check workflow status or wait for completion: linkedin workflow status <id> --json -q linkedin workflow status <id> --wait --json -q See Building Workflows for the workflow JSON schema.

Account Management

linkedin account list # List accounts (* = active) linkedin account switch "Name" # Switch active account linkedin account rename "Name" --name "New Name" # Rename account linkedin reset # Remove active account linkedin reset --all # Remove all accounts

Important Behavior

Sequential execution. All operations for an account run one at a time. Multiple requests queue up. Not instant. A real browser navigates LinkedIn – expect 30 seconds to several minutes per operation. Timestamps in UTC. All dates and times are in UTC. Single quotes for text arguments. Use single quotes around message text, post text, and comments to avoid shell interpretation issues with special characters. Action limits. Per-account limits are configurable on the platform. A limitExceeded error means the limit was reached. URL normalization. All LinkedIn URLs in responses are normalized to https://www.linkedin.com/... format without trailing slashes. Null fields. Fields that are unavailable are returned as null or [], not omitted.

Category context

Code helpers, APIs, CLIs, browser automation, testing, and developer operations.

Source: Tencent SkillHub

Largest current source with strong distribution and engagement signals.

Package contents

Included in package
1 Docs
  • SKILL.md Primary doc