LinkedIn Poster
Use when you need to post content to LinkedIn, including text posts, image posts, and
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 0 · 14 · 0 current installs · 0 all-time installs
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description match the actual requirements and behavior: the skill is an instruction-only LinkedIn poster and only requires a channels.linkedin config (accessToken and personUrn). There are no unrelated env vars or binaries requested.
Instruction Scope
SKILL.md restricts actions to composing posts and uploading images via the linkedin channel using the message tool. It explicitly allows local file paths, file:// URLs, and remote URLs for images — which is appropriate for image posting but means the agent will need to access local files or fetch remote content when asked. This is within scope but has expected privacy implications (local file access, network fetches).
Install Mechanism
No install spec or code files are present (instruction-only), so nothing is written to disk or downloaded during install — lowest-risk installation profile.
Credentials
The skill requires channels.linkedin config (accessToken with w_member_social and personUrn), which is proportional and necessary for posting. No unrelated credentials or broad environment access are requested.
Persistence & Privilege
The skill is not always-on, does not request elevated platform privileges, and does not modify other skills or global agent settings. It relies on the platform's linkedin channel to perform actions.
Assessment
This skill appears to do what it says. Before installing, ensure you: (1) store a LinkedIn access token with the minimal required scope (w_member_social) in channels.linkedin and rotate it regularly; (2) understand that posting images may require the agent to read local files or fetch remote URLs — avoid giving it access to sensitive files you don't want uploaded; (3) confirm the agent will ask for owner approval before sending posts (the SKILL.md recommends confirmation but enforcement depends on your agent configuration); and (4) review who else can access channels.linkedin in your environment so tokens aren't shared unintentionally.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download zipbuild-in-publiclatestlinkedinpostingsocial
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
💼 Clawdis
Configchannels.linkedin
SKILL.md
LinkedIn Posting
Overview
Post text and images to LinkedIn via the message tool using the linkedin channel. Supports text-only posts, image posts (local files or URLs), and #BuildInPublic updates.
Prerequisites
The linkedin channel must be configured in channels.linkedin with:
accessToken: OAuth 2.0 token withw_member_socialscopepersonUrn: Your LinkedIn person URN (e.g.urn:li:person:Abc123)
Posting Text
Use the message tool to send a text post:
message send --channel linkedin --text "Your post content here"
The post goes to the authenticated user's LinkedIn feed as a public post.
Posting with Images
Two-step process:
- Create the image — generate or locate the image file (PNG/JPG/GIF/WebP)
- Post with image — use
message sendwith the--mediaflag:
message send --channel linkedin --text "Post caption" --media /path/to/image.png
Supported image sources:
- Local file paths:
/Users/david/image.png file://URLs:file:///Users/david/image.png- Remote URLs:
https://example.com/image.png
Image Upload Flow (internals)
The extension handles a 3-step LinkedIn UGC API flow automatically:
- Register upload → gets
uploadUrl+assetURN - PUT binary to
uploadUrl - Create UGC post with
assetreference
You don't need to manage this — just provide the image path.
Best Practices
- Always confirm post content with the owner before posting
- Keep posts concise — LinkedIn favors 150-300 word posts
- Add hashtags at the end, not inline (3-5 max)
- For #BuildInPublic: include what you built, what you learned, a visual
- Image sizing: 1200x627px for link previews, 1080x1080 for square posts
- Never post without explicit owner approval
Post Templates
#BuildInPublic Update
🚀 [What you built today]
[2-3 sentences about what it does and why it matters]
Tech stack: [list]
[Screenshot or diagram]
#BuildInPublic #[topic] #[tech]
Project Milestone
✅ [Milestone achieved]
[Brief context — what, why, how]
Key learnings:
→ [Learning 1]
→ [Learning 2]
→ [Learning 3]
Next up: [what's coming]
#[project] #[topic]
Technical Deep-Dive
💡 TIL: [Thing you learned]
[Explanation in 2-3 paragraphs]
[Code snippet or diagram if relevant]
#TIL #[topic] #[tech]
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| 401 Unauthorized | Token expired | Re-authenticate, update channels.linkedin.accessToken |
| 403 Forbidden | Missing w_member_social scope | Re-create OAuth app with correct scopes |
| Image upload 400 | File too large (>10MB) | Compress image before uploading |
| Empty postUrn | API didn't return ID | Post likely succeeded — check LinkedIn feed |
Files
2 totalSelect a file
Select a file to preview.
Comments
Loading comments…
