ワンクリックで
2x-post-linkedin
Posts content to LinkedIn via browser automation. Reads local draft, posts, calls publish-draft.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Posts content to LinkedIn via browser automation. Reads local draft, posts, calls publish-draft.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Turn your daily activity into authentic social media posts across X, LinkedIn, and Reddit. Use when the user says '2x', '2x now', 'set up 2x', 'post to x/linkedin/reddit', or wants help turning their work into social media content.
Collects activity from configured sources, summarizes each independently, writes a local session index.
Generates a draft for ONE platform. Called once per platform by the orchestrator. Writes to local file — sync daemon handles cloud.
Posts or replies on Reddit via browser automation. Reads local draft, posts, calls publish-draft.
Posts content to X/Twitter via browser automation. Reads local draft, posts, calls publish-draft.
Onboarding wizard for the 2X skill. Configures platforms, data sources, browser logins, and cron schedule.
| name | 2x-post-linkedin |
| description | Posts content to LinkedIn via browser automation. Reads local draft, posts, calls publish-draft. |
| user-invocable | false |
Post a draft to LinkedIn via browser. Read local file, post, record via client.
cat ~/.openclaw/workspace/2x-sessions/{session_number}/drafts/linkedin.md
If file doesn't exist, stop: "No LinkedIn draft found."
browser open "https://www.linkedin.com/feed/"browser snapshot --interactivebrowser snapshot --interactiveLinkedIn uses a contenteditable div, NOT a regular input.
browser type <ref> "{content}"If browser type fails (content doesn't appear), fallback:
browser evaluate "document.querySelector('div[contenteditable=true].ql-editor, div[role=textbox][contenteditable=true]').innerText = `{content}`; document.querySelector('div[contenteditable=true].ql-editor, div[role=textbox][contenteditable=true]').dispatchEvent(new Event('input', {bubbles: true}))"
browser snapshot --interactive → verify content visiblebrowser click <ref>browser snapshot → verify modal closedLinkedIn doesn't redirect to the post. To find it:
browser open "https://www.linkedin.com/feed/"https://www.linkedin.com/feed/update/urn:li:activity:{id}/If extraction fails, report success without URL — not critical.
SESSION_UUID=$(cat ~/.openclaw/workspace/2x-sessions/{session_number}/.supabase_session_id)
node ~/.openclaw/workspace/skills/2x/db/client.js publish-draft \
--session "$SESSION_UUID" \
--platform linkedin \
--platform-post-id "{extracted_id_or_null}" \
--posted-url "{extracted_url_or_null}"
Local log:
echo '{"platform":"linkedin","post_id":"{id}","url":"{url}","posted_at":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","session":{session_number}}' \
>> ~/.openclaw/workspace/2x-posted.jsonl
✅ Posted to LinkedIn: {url}
Or: ❌ LinkedIn posting failed: {reason}