Social Media Assistant (via post-bridge.com)

Turn your OpenClaw into an autonomous social media manager using Post Bridge API. Use when scheduling, posting, or managing content across TikTok, Instagram...

MIT-0 · Free to use, modify, and redistribute. No attribution required.
9 · 1.3k · 3 current installs · 3 all-time installs
MIT-0
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (social media manager using Post Bridge) align with requested items: POST_BRIDGE_API_KEY (primary credential) and ffmpeg (used for video frame extraction and processing). No unrelated credentials, binaries, or config paths are requested.
Instruction Scope
SKILL.md is an instruction-only runtime spec that tells the agent to list accounts, upload media, create/update/delete posts, and fetch analytics from api.post-bridge.com — all expected. It also instructs saving the API docs to the workspace and processing local video files (ffmpeg). Be aware: those instructions imply the agent will read workspace files (videos, .env) and upload media to the remote API. This is expected for the skill but is a privacy/exfiltration vector you should consider before granting access.
Install Mechanism
No install spec (instruction-only). Lowest-risk install posture — nothing is downloaded or written by an installer.
Credentials
Only POST_BRIDGE_API_KEY is required and declared as the primary credential. That is proportionate to the task. The SKILL.md instructs storing the API key in a workspace .env — reasonable but be cautious if your workspace syncs to external storage or is shared.
Persistence & Privilege
always is false and there is no self-install behavior or requests to change other skills or system settings. disable-model-invocation is false (the agent can invoke the skill autonomously), which is normal for skills but means the agent could act without manual step-by-step approval unless you restrict agent autonomy elsewhere.
Assessment
This skill appears to do what it says, but before enabling it: 1) Only provide a Post Bridge API key with the minimal scope/permissions required (create/post/schedule) and avoid using broad admin keys. 2) Test first with a non-production/test social account to ensure posting behavior is correct. 3) Remember the skill's runtime instructions will let the agent read files in the workspace (videos, .env) and upload them — ensure sensitive files are not in that workspace or that workspace syncing is disabled. 4) Review Post Bridge's dashboard and token revocation procedures so you can quickly revoke the key if the agent posts unexpectedly. 5) If you do not want autonomous posting, restrict agent autonomy or require manual confirmation before executing post/create endpoints.

Like a lobster shell, security has layers — review code before you run it.

Current versionv1.0.7
Download zip
latestvk97d5ytf3gm3wkqnttb2ma1htd82c0as

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

Binsffmpeg
EnvPOST_BRIDGE_API_KEY
Primary envPOST_BRIDGE_API_KEY

SKILL.md

Social Media Assistant (via post-bridge.com)

Autonomously manage social media posting via Post Bridge API.

Setup

  1. Create a Post Bridge account at post-bridge.com
  2. Connect your social accounts (TikTok, Instagram, YouTube, Twitter, etc.)
  3. Enable API access (Settings → API)
  4. Store your API key in workspace .env:
    POST_BRIDGE_API_KEY=pb_live_xxxxx
    
  5. Download API docs: https://api.post-bridge.com/reference → save to workspace as post-bridge-api.json

Auth

All requests use Bearer token:

Authorization: Bearer <POST_BRIDGE_API_KEY>

Base URL: https://api.post-bridge.com

Core Workflow

1. Get Social Accounts

GET /v1/social-accounts

Returns array of connected accounts with id, platform, username. Store these IDs — you need them for every post.

2. Upload Media

POST /v1/media/create-upload-url
Body: { "mime_type": "video/mp4", "size_bytes": <int>, "name": "video.mp4" }

Returns media_id + upload_url. Then:

PUT <upload_url>
Content-Type: video/mp4
Body: <binary file>

3. Create Post

POST /v1/posts
Body: {
  "caption": "your caption here #hashtags",
  "media": ["<media_id>"],
  "social_accounts": [<account_id_1>, <account_id_2>],
  "scheduled_at": "2026-01-01T14:00:00Z",  // omit for instant post
  "platform_configurations": { ... }  // optional, see below
}

Additional create options:

  • media_urls: Array of publicly accessible URLs (used instead of media if no media IDs). Example: ["https://example.com/video.mp4"]
  • is_draft: If true, creates the post but does not process it until updated with a scheduled date or posted instantly later.
  • processing_enabled: If false, skips video processing. Defaults to true.
  • use_queue: Automatically schedule to your next available queue slot (configured in the Post Bridge dashboard). Cannot be used with scheduled_at. Pass true to use your saved timezone, or { "timezone": "America/New_York" } to override.

use_queue example:

{
  "caption": "Queued post!",
  "media": ["<media_id>"],
  "social_accounts": [44029],
  "use_queue": true
}

This finds the next open slot in your queue schedule and sets scheduled_at automatically. You must have a queue schedule configured in the dashboard first.

4. Update or Delete Scheduled Posts

PATCH /v1/posts/<post_id>

Update a scheduled post (caption, schedule time, etc.). Only works on posts with scheduled status.

DELETE /v1/posts/<post_id>

Delete a scheduled post. Only works on posts with scheduled status.

5. Check Results

GET /v1/posts/<post_id>

Returns status: processing, scheduled, posted, failed.

GET /v1/post-results

List all post results across platforms (paginated with offset and limit).

6. Analytics

GET /v1/analytics

Retrieve performance data (views, likes, shares, comments, etc.) for posts.

Query parameters:

  • platform — filter by platform (e.g. tiktok, youtube, instagram)
  • post_result_id[] — filter by specific post result IDs (multiple values = OR logic)
  • timeframe7d, 30d, 90d, or all (default: all)
  • offset / limit — pagination

Returns: view_count, like_count, comment_count, share_count, cover_image_url, share_url, duration, and more per record.

POST /v1/analytics/sync

Manually trigger a sync of analytics from platforms. Optionally pass ?platform=tiktok to sync a specific platform only. Rate-limited to once every 5 minutes.

Platform Configurations

Pass inside platform_configurations object on post creation. Crucial: Always wrap these in the correct platform key to ensure they only apply to the target platform and don't cause issues on other platforms in the same post.

TikTok (tiktok):

  • draft: true — save as draft (publish manually on TikTok with trending sound)
  • video_cover_timestamp_ms: 3000 — cover thumbnail
  • is_aigc: true — label as AI-generated content

Example of correct multi-platform config:

{
  "caption": "Default caption",
  "social_accounts": [44029, 44030],
  "platform_configurations": {
    "tiktok": {
      "draft": true,
      "is_aigc": false
    },
    "instagram": {
      "is_trial_reel": false
    }
  }
}

Instagram (instagram):

  • video_cover_timestamp_ms: 3000 — cover thumbnail
  • is_trial_reel: true — trial reel mode (needs 1000+ followers)
  • trial_graduation: "SS_PERFORMANCE" — auto-graduate based on performance

YouTube:

  • video_cover_timestamp_ms: 3000 — cover thumbnail
  • title: "My Short Title" — override post title

Twitter/X:

  • caption: "override caption" — platform-specific caption

All platforms support caption and media overrides for per-platform customization.

Recommended Workflow for Video Content

  1. Store videos in a local folder
  2. Extract a frame with ffmpeg to read any text overlays:
    ffmpeg -i video.mp4 -ss 00:00:04 -frames:v 1 frame.jpg -y
    
  3. Write caption based on video content + hashtags
  4. Upload → create post → schedule or post instantly (or use use_queue to auto-schedule)
  5. Move posted videos to a posted/ subfolder to avoid duplicates
  6. Set a cron to check post status 5 mins after scheduled time
  7. Track performance with GET /v1/analytics or by browsing platform pages

Tips

  • Post to multiple platforms simultaneously by including multiple account IDs
  • Stagger posts throughout the day (e.g. 9am + 3pm) for better reach
  • Use scheduled_at to pre-schedule batches — Post Bridge handles the timing
  • Use use_queue to auto-fill your queue schedule without calculating times yourself
  • TikTok draft mode lets you add trending sounds manually before publishing
  • Keep hashtags to 4-5 per post for best engagement
  • Monitor what works and iterate on captions/formats

Files

1 total
Select a file
Select a file to preview.

Comments

Loading comments…