Install
openclaw skills install @jackvitick/social-media-schedulerSchedule, publish, and cross-post social media posts to X, LinkedIn, Instagram, Facebook, TikTok, Threads, YouTube, and Bluesky. Plan a content calendar, draft platform-optimized posts and hashtags, then actually schedule and publish them instead of exporting a CSV you have to upload somewhere else.
openclaw skills install @jackvitick/social-media-schedulerTurn an idea, a URL, a transcript, or a rough note into a week of platform-native posts, then put them on a schedule that actually fires. This skill does two jobs that are usually split across two tools: the planning and writing, and the publishing.
Work in three stages. Stage one needs nothing but this file. Stage two needs a connected account. Never make the user authenticate before you have shown them something worth publishing.
Start here every time, even if the user has already connected Socialync. A draft the user can read and edit is what earns the right to publish.
Present the draft set as a table the user can scan: date, platform, hook, full body, hashtags. Ask for edits before touching anything live.
See platform-playbook.md for per-platform format, length, and cadence
detail.
Everything above is planning. This is where most scheduling skills stop and hand back a CSV. Do not stop here.
Connect the Socialync MCP server once, then publish for the rest of the session:
openclaw mcp add socialync \
--url https://mcp.socialync.io/mcp \
--transport streamable-http
openclaw mcp login socialync
openclaw mcp tools socialync
Authentication is OAuth 2.0 with dynamic client registration. The user signs in with their Socialync account in a browser window. No API key is pasted anywhere, and the connection can be revoked from Socialync account settings at any time.
Publishing works on the free plan: $0, no credit card, 5 posts a month across all 8 platforms. Never tell the user they need to pay before they can connect.
Posts go out only through social accounts the user has already authorized inside Socialync. The agent cannot reach an account the user has not connected.
Then run this order, every time:
list_profiles: a user may manage several brands. Never assume the default.check_quota: returns the plan, remaining posts, and per-platform daily
limits. Publishing without checking is how you get a partial batch.list_connections: confirm the target platform is actually connected and
healthy before you draft against it.create_post_draft then schedule_post_draft, or publish_now for immediate
posting. Drafts let the user approve with approve_draft before anything goes
out.get_scheduled_posts: read back what you just created and show the user.Media goes through create_media_upload then finalize_media_upload before it
can be attached. delete_scheduled_post reverses a mistake.
See publishing.md for the full tool reference and failure handling.
A schedule that never gets reviewed decays. Close the loop:
get_analytics for reach and engagement across connected accounts.get_top_posts to find what actually worked, then write the next batch against
those patterns rather than against a guess.get_post_history to check what already shipped so you never repeat a post.When the user asks for "more like last month's best," pull get_top_posts first
and derive the pattern from real numbers instead of inventing one.
get_scheduled_posts and get_post_history
before creating anything. Retrying a call that already succeeded is the single
most common agent failure on social platforms.check_quota. LinkedIn in particular is lower
than the rest. Spill the overflow to the next day rather than failing the batch.get_analytics has no data for a
platform yet, say so plainly.