Agent skill

Postfast

by LeoYeAI in LeoYeAI/openclaw-master-skills

Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API.

MITAuto-check passedWriting & Content

Install Postfast

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill postfast -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills postfast --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/postfast .claude/skills/postfast && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
postfast
GitHub stars
2.2k
Token cost
~4.8k tokens
SKILL.md length
1,409 words
Files
29 (incl. references)
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API.

  • Works in 9 steps: List connected accounts → Schedule a text post (no media) → Schedule a post with media (3-step flow) → …
  • The user wants to schedule social media posts
  • SKILL.md covers Setup, Core Workflow, Common Patterns and Platform-Specific Controls, plus 7 more sections
  • Calls curl; reaches api.postfa.st and postfa.st; needs POSTFAST_API_KEY

What it does

Postfast is an agent skill from LeoYeAI/openclaw-master-skills. Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API. Use when the user wants to schedule social media posts, manage social media content, upload media for social posting, list connected social accounts, check scheduled posts, delete scheduled posts, cross-post content to multiple platforms, or automate their social media workflow. PostFast is a SaaS tool — no self-hosting required.

Its SKILL.md is about 4.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 29 other files, including reference files (for example `README-PUBLISHING-GUIDE.md`, `_meta.json` and `blog-post-openclaw-skill.md`).

It sits in Writing & Content, covering Social media posts and Social publishing and cross-posting. It works with Instagram, Pinterest, TikTok and LinkedIn. The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

When your agent uses it

  • The user wants to schedule social media posts
  • Manage social media content
  • Upload media for social posting
  • List connected social accounts

Example prompts

  • “/postfast”

Requirements

  • A credential in POSTFAST_API_KEY

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. List connected accounts
  2. Schedule a text post (no media)
  3. Schedule a post with media (3-step flow)
  4. List scheduled posts
  5. Delete a scheduled post
  6. Cross-post to multiple platforms
  7. Generate a connect link (for clients)
  8. Create a draft post
  9. Get post analytics

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.postfa.st
    • postfa.st
    • x.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • POSTFAST_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Postfast loads about 4.8k tokens when it runs, and up to ~9.2k if it reads all its reference files. Until then it costs about 128 tokens; SKILL.md has 1,409 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~128
When it runs · the whole SKILL.md, loaded when a task matches
~4.8k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~9.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 1,409 words, ~4,792 tokens.

Download SKILL.mdSave it as .claude/skills/postfast/SKILL.md (or your agent's skills folder). This skill also uses 28 other files; get the full folder from GitHub.
name
postfast
description
Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API. Use when the user wants to schedule social media posts, manage social media content, upload media for social posting, list connected social accounts, check scheduled posts, delete scheduled posts, cross-post content to multiple platforms, or automate their social media workflow. PostFast is a SaaS tool — no self-hosting required.
homepage
https://postfa.st

PostFast

Schedule social media posts across 10 platforms from one API. SaaS — no self-hosting needed.

Setup

  1. Sign up at https://app.postfa.st/register (7-day free trial, no credit card)
  2. Go to Workspace Settings → generate an API key
  3. Set the environment variable:
    bash
    export POSTFAST_API_KEY="your-api-key"

Base URL: https://api.postfa.st Auth header: pf-api-key: $POSTFAST_API_KEY

Core Workflow

1. List connected accounts
bash
curl -s -H "pf-api-key: $POSTFAST_API_KEY" https://api.postfa.st/social-media/my-social-accounts

Returns array of { id, platform, platformUsername, displayName }. Save the id — it's the socialMediaId required for every post.

Platform values: TIKTOK, INSTAGRAM, FACEBOOK, X, YOUTUBE, LINKEDIN, THREADS, BLUESKY, PINTEREST, TELEGRAM

2. Schedule a text post (no media)
bash
curl -X POST https://api.postfa.st/social-posts \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "posts": [{
      "content": "Your post text here",
      "mediaItems": [],
      "scheduledAt": "2026-06-15T10:00:00.000Z",
      "socialMediaId": "ACCOUNT_ID_HERE"
    }],
    "controls": {}
  }'

Returns { "postIds": ["uuid-1"] }.

3. Schedule a post with media (3-step flow)

Step A — Get signed upload URLs:

bash
curl -X POST https://api.postfa.st/file/get-signed-upload-urls \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "contentType": "image/png", "count": 1 }'

Returns [{ "key": "image/uuid.png", "signedUrl": "https://..." }].

Step B — Upload file to S3:

bash
curl -X PUT "SIGNED_URL_HERE" \
  -H "Content-Type: image/png" \
  --data-binary @/path/to/file.png

Step C — Create post with media key:

bash
curl -X POST https://api.postfa.st/social-posts \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "posts": [{
      "content": "Post with image!",
      "mediaItems": [{ "key": "image/uuid.png", "type": "IMAGE", "sortOrder": 0 }],
      "scheduledAt": "2026-06-15T10:00:00.000Z",
      "socialMediaId": "ACCOUNT_ID_HERE"
    }],
    "controls": {}
  }'

For video: use contentType: "video/mp4", type: "VIDEO", key prefix video/.

4. List scheduled posts
bash
curl -s -H "pf-api-key: $POSTFAST_API_KEY" "https://api.postfa.st/social-posts?page=0&limit=20"

Returns { "data": [...], "totalCount": 25, "pageInfo": { "page": 1, "hasNextPage": true, "perPage": 20 } }.

Query parameters:

  • page (int, default 0) — 0-based page index. Response shows 1-based display page in pageInfo.page
  • limit (int, default 20, max 50) — items per page
  • platforms (string) — comma-separated filter: FACEBOOK,INSTAGRAM,X
  • statuses (string) — comma-separated: DRAFT, SCHEDULED, PUBLISHED, FAILED
  • from / to (ISO 8601 UTC) — date range filter on scheduledAt

Example: GET /social-posts?page=0&limit=50&platforms=X,LINKEDIN&statuses=SCHEDULED&from=2026-06-01T00:00:00Z&to=2026-06-30T23:59:59Z

5. Delete a scheduled post
bash
curl -X DELETE -H "pf-api-key: $POSTFAST_API_KEY" https://api.postfa.st/social-posts/POST_ID
6. Cross-post to multiple platforms

Include multiple entries in the posts array, each with a different socialMediaId. They share the same controls and mediaItems keys.

Let clients connect their social accounts to your workspace without creating a PostFast account:

bash
curl -X POST https://api.postfa.st/social-media/connect-link \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "expiryDays": 7, "sendEmail": true, "email": "client@example.com" }'

Returns { "connectUrl": "https://app.postfa.st/connect?token=..." }. Share the URL — they can connect accounts directly. Rate limit: 50/hour.

8. Create a draft post

Omit scheduledAt and set status: "DRAFT" to save without scheduling:

bash
curl -X POST https://api.postfa.st/social-posts \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "posts": [{ "content": "Draft idea...", "mediaItems": [], "socialMediaId": "ACCOUNT_ID" }],
    "status": "DRAFT",
    "controls": {}
  }'
9. Get post analytics

Fetch published posts with their performance metrics:

bash
curl -s -H "pf-api-key: $POSTFAST_API_KEY" \
  "https://api.postfa.st/social-posts/analytics?startDate=2026-03-01T00:00:00.000Z&endDate=2026-03-31T23:59:59.999Z&platforms=TIKTOK,INSTAGRAM"

Query parameters:

  • startDate (ISO 8601, required) — start of date range
  • endDate (ISO 8601, required) — end of date range
  • platforms (string, optional) — comma-separated filter
  • socialMediaIds (string, optional) — comma-separated account UUIDs

Returns { "data": [{ id, content, socialMediaId, platformPostId, publishedAt, latestMetric }] }.

latestMetric fields: impressions, reach, likes, comments, shares, totalInteractions, fetchedAt, extras. All numbers are strings (bigint). latestMetric is null if metrics haven't been fetched yet. LinkedIn personal accounts are excluded.

Rate limit: 350/hour.

Common Patterns

Pattern 1: Cross-platform campaign

Post the same content to LinkedIn, X, and Threads at the same time:

bash
curl -X POST https://api.postfa.st/social-posts \
  -H "pf-api-key: $POSTFAST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "posts": [
      { "content": "Big announcement!", "mediaItems": [], "scheduledAt": "2026-06-15T09:00:00.000Z", "socialMediaId": "LINKEDIN_ID" },
      { "content": "Big announcement!", "mediaItems": [], "scheduledAt": "2026-06-15T09:00:00.000Z", "socialMediaId": "X_ID" },
      { "content": "Big announcement!", "mediaItems": [], "scheduledAt": "2026-06-15T09:00:00.000Z", "socialMediaId": "THREADS_ID" }
    ],
    "controls": {}
  }'

See examples/cross-platform-post.json for a complete example.

Pattern 2: Instagram Reel with upload
  1. Get signed URL with contentType: "video/mp4"
  2. PUT video to signed URL
  3. Create post with instagramPublishType: "REEL"

See examples/instagram-reel.json for the request body.

Pattern 3: TikTok video with privacy settings

Upload video, then post with privacy controls:

bash
# controls object:
{
  "tiktokPrivacy": "PUBLIC",
  "tiktokAllowComments": true,
  "tiktokAllowDuet": false,
  "tiktokAllowStitch": false,
  "tiktokBrandContent": true
}

See examples/tiktok-video.json.

Pattern 4: Pinterest pin (board required)

Always fetch boards first, then post:

bash
# Step 1: Get boards
curl -s -H "pf-api-key: $POSTFAST_API_KEY" \
  https://api.postfa.st/social-media/PINTEREST_ACCOUNT_ID/pinterest-boards

# Step 2: Post with board ID
# controls: { "pinterestBoardId": "BOARD_ID", "pinterestLink": "https://yoursite.com" }

See examples/pinterest-pin.json.

Pattern 5: YouTube Short with tags and playlist

Upload video, then post with YouTube controls:

bash
# controls object:
{
  "youtubeIsShort": true,
  "youtubeTitle": "Quick Tip: Batch Your Content",
  "youtubePrivacy": "PUBLIC",
  "youtubePlaylistId": "PLxxxxxx",
  "youtubeTags": ["tips", "productivity", "social media"],
  "youtubeMadeForKids": false
}

See examples/youtube-short.json.

Pattern 6: LinkedIn document post

Documents (PDF, PPTX, DOCX) display as swipeable carousels on LinkedIn.

  1. Get signed URL with contentType: "application/pdf"
  2. PUT the file to signed URL
  3. Create post using linkedinAttachmentKey instead of mediaItems
bash
# controls: { "linkedinAttachmentKey": "file/uuid.pdf", "linkedinAttachmentTitle": "Q1 Marketing Playbook" }
# Note: mediaItems should be [] when using linkedinAttachmentKey

See examples/linkedin-document.json.

Pattern 7: First comment (auto-posted after publish)

Add a firstComment to any post — it's auto-posted ~10 seconds after the main post goes live (up to 3 retries):

json
{
  "posts": [{ "content": "Main post text", "firstComment": "Link: https://postfa.st", "mediaItems": [], "scheduledAt": "...", "socialMediaId": "X_ID" }],
  "controls": {}
}

Supported on: X, Instagram, Facebook, YouTube, Threads. NOT supported on: TikTok, Pinterest, Bluesky, LinkedIn.

See examples/x-first-comment.json.

Pattern 8: X (Twitter) retweet

Schedule a retweet — content and media are ignored:

json
{
  "posts": [{ "content": "", "scheduledAt": "...", "socialMediaId": "X_ID" }],
  "controls": { "xRetweetUrl": "https://x.com/username/status/1234567890" }
}

See examples/x-retweet.json. For quote tweets with your own commentary, use xQuoteTweetUrl instead. See examples/x-quote-tweet.json.

Pattern 9: Batch scheduling (a week of posts)

Schedule multiple posts at different times in a single API call (up to 15 posts per request):

See examples/batch-scheduling.json.

Platform-Specific Controls

Pass these in the controls object. See references/platform-controls.md for full details.

PlatformKey Controls
TikToktiktokPrivacy, tiktokAllowComments, tiktokAllowDuet, tiktokAllowStitch, tiktokIsDraft, tiktokBrandOrganic, tiktokBrandContent, tiktokAutoAddMusic
InstagraminstagramPublishType (TIMELINE/STORY/REEL), instagramPostToGrid, instagramCollaborators
FacebookfacebookContentType (POST/REEL/STORY), facebookReelsCollaborators
YouTubeyoutubeIsShort, youtubeTitle, youtubePrivacy, youtubePlaylistId, youtubeTags, youtubeMadeForKids, youtubeCategoryId
LinkedInlinkedinAttachmentKey, linkedinAttachmentTitle (for document posts)
X (Twitter)xQuoteTweetUrl (quote tweet), xRetweetUrl (retweet), xCommunityId (post to community)
PinterestpinterestBoardId (required), pinterestLink
BlueskyNo platform-specific controls — text + images only
ThreadsNo platform-specific controls — text + images/video
TelegramNo platform-specific controls — text + images/video/mixed media

Helper Endpoints

  • Pinterest boards: GET /social-media/{id}/pinterest-boards → returns [{ boardId, name }]
  • YouTube playlists: GET /social-media/{id}/youtube-playlists → returns [{ playlistId, title }]
  • Connect link: POST /social-media/connect-link → returns { connectUrl }. Let clients connect accounts without a PostFast account. Params: expiryDays (1-30, default 7), sendEmail (bool), email (required if sendEmail=true)

Rate Limits

Global (per API key): 60/min, 150/5min, 300/hour, 2000/day

Per-endpoint:

  • POST /social-posts: 350/day
  • GET /social-posts: 200/hour
  • GET /social-posts/analytics: 350/hour
  • POST /social-media/connect-link: 50/hour

Platform limits:

  • X (Twitter) via API: 5 posts per account per day — do not exceed this

Check X-RateLimit-Remaining-* headers. 429 = rate limited, check Retry-After-* header. For batch operations, add a 1-second delay between API calls.

Media Specs Quick Reference

PlatformImagesVideoCarousel
TikTokCarousels only≤250MB, MP4/MOV, 3s-10min2-35 images
InstagramJPEG/PNG≤1GB, 3-90s (Reels)Up to 10
Facebook≤30MB, JPG/PNG1 per postUp to 10 images
YouTube—Shorts ≤3min, H.264—
LinkedInUp to 9≤10minUp to 9, or documents (PDF/PPTX/DOCX)
X (Twitter)Up to 4——
Pinterest2:3 ratio idealSupported2-5 images
BlueskyUp to 4Not supported—
ThreadsSupportedSupportedUp to 10
TelegramUp to 10SupportedUp to 10 mixed media
Show full SKILL.md (545 more words)Show less

Common Gotchas

  1. Always fetch accounts first — socialMediaId is a UUID, not a platform name. Call GET /social-media/my-social-accounts to get valid IDs.
  2. Media MUST go through 3-step upload — No external URLs. Always: get signed URL → PUT to S3 → use the key in mediaItems.
  3. scheduledAt must be in the future — ISO 8601 UTC format. Past dates return 400.
  4. Pinterest ALWAYS requires pinterestBoardId — Fetch boards first with GET /social-media/{id}/pinterest-boards.
  5. TikTok requires video for standard posts — Images only work in carousels (2-35 images).
  6. LinkedIn documents use linkedinAttachmentKey — NOT mediaItems. Set mediaItems: [] when posting documents.
  7. Content-Type on S3 PUT must match — The Content-Type header in your S3 PUT must match what you requested in get-signed-upload-urls.
  8. Instagram Reels need video 3-90 seconds — Outside this range returns an error.
  9. YouTube Shorts need video under 3 minutes — H.264 codec with AAC audio recommended.
  10. X (Twitter) has a 280 character limit — Longer content is silently truncated.
  11. Cross-posting shares controls — The controls object applies to ALL posts in the batch. Platform-irrelevant controls are ignored.
  12. X (Twitter) API limit is 5 posts/account/day — Exceeding this risks account restrictions.
  13. firstComment only works on 5 platforms — X, Instagram, Facebook, YouTube, Threads. TikTok, Pinterest, Bluesky, LinkedIn return a validation error.
  14. Cannot use xQuoteTweetUrl and xRetweetUrl together — Pick one. Retweets ignore content/media.
  15. LinkedIn documents support PDF, DOC, DOCX, PPT, PPTX — Max 60MB. Cannot mix with regular media.
  16. Pagination is 0-based — page=0 returns the first page. Response pageInfo.page shows 1-based display number.

Supporting Resources

Reference docs:

Ready-to-use examples:

Quick Reference

# Auth
Header: pf-api-key: $POSTFAST_API_KEY

# List accounts
GET /social-media/my-social-accounts

# Schedule post
POST /social-posts  { posts: [{ content, mediaItems, scheduledAt, socialMediaId, firstComment? }], status?, approvalStatus?, controls: {} }

# Draft post (no scheduledAt needed)
POST /social-posts  { posts: [...], status: "DRAFT", controls: {} }

# List posts (page is 0-based, limit max 50)
GET /social-posts?page=0&limit=20
GET /social-posts?page=0&limit=50&platforms=X,LINKEDIN&statuses=SCHEDULED&from=2026-06-01T00:00:00Z&to=2026-06-30T23:59:59Z

# Delete post
DELETE /social-posts/:id

# Upload media (3 steps)
POST /file/get-signed-upload-urls  { contentType, count }
PUT  <signedUrl>  (raw file, matching Content-Type)
# then use key in mediaItems

# Pinterest boards
GET /social-media/:id/pinterest-boards

# YouTube playlists
GET /social-media/:id/youtube-playlists

# Post analytics (published posts with metrics)
GET /social-posts/analytics?startDate=...&endDate=...&platforms=...

# Connect link (for clients)
POST /social-media/connect-link  { expiryDays?, sendEmail?, email? }

Tips for the Agent

  • Always call my-social-accounts first to get valid socialMediaId values.
  • For media posts, complete the full 3-step upload flow (signed URL → S3 PUT → create post).
  • scheduledAt must be ISO 8601 UTC and in the future.
  • Pinterest always requires pinterestBoardId — fetch boards first.
  • LinkedIn documents use linkedinAttachmentKey instead of mediaItems.
  • For carousels, include multiple items in mediaItems with sequential sortOrder.
  • TikTok video thumbnails: set coverTimestamp (seconds) in mediaItems.
  • When cross-posting, adjust content length for each platform's limits (X: 280, Bluesky: 300, TikTok: 2200).
  • If the user doesn't specify a time, suggest tomorrow at 9:00 AM in their timezone.
  • Batch up to 15 posts per API call for efficiency.
  • Use firstComment for CTAs and links — keeps the main post clean and gets better engagement.
  • X (Twitter) allows only 5 posts per account per day via API — warn the user if they're batching many X posts.
  • For draft posts, set status: "DRAFT" and omit scheduledAt — the user can finalize in the PostFast dashboard.
  • Use GET /social-posts with from/to filters to check what's already scheduled before adding more.

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 28 other files (references) in skills/postfast of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • README-PUBLISHING-GUIDE.md
  • _meta.json
  • blog-post-openclaw-skill.md
  • examples/EXAMPLES.md
  • examples/batch-scheduling.json
  • examples/cross-platform-post.json
  • examples/facebook-reel.json
  • examples/facebook-story.json
  • examples/instagram-carousel.json
  • examples/instagram-reel.json
  • examples/instagram-story.json
  • examples/linkedin-document.json
  • examples/pinterest-pin.json
  • examples/post-analytics.json
  • examples/telegram-mixed-media.json
  • examples/threads-carousel.json
  • examples/tiktok-carousel.json
  • examples/tiktok-draft.json
  • examples/tiktok-video.json
  • … and 9 more

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Postfast next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Postfast compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Postfast this skillLeoYeAI/openclaw-master-skills2.2k—~4.8kAutomated safety check: PassMIT
Social Publisheraffaan-m/ECC276k1 repos~1.1kAutomated safety check: PassMIT
Post Writer Smsblacktwist/social-media-skills559—~3.7kAutomated safety check: PassMIT
Caption Writer Smsblacktwist/social-media-skills559—~5.3kAutomated safety check: PassMIT
Caption Writersocial-media-skills/skills128—~1.7kAutomated safety check: PassMIT
Outlier Post FinderScrapeCreators/social-media-research-skills3.4k—~1.5kAutomated safety check: NotesMIT

Similar skills

  • Social Publisher

    affaan-m/ECC

    Agent-driven scheduling and publishing of social media posts across 13 platforms via SocialClaw.

    276k GitHub starsUsed in 1 repo~1.1k tokens
    Writing & ContentAuto-check passed
  • Post Writer Sms

    blacktwist/social-media-skills

    When the user wants to write a social media post for LinkedIn, Twitter/X, Threads, Bluesky, Facebook, Instagram, TikTok, Pinterest, or YouTube.

    559 GitHub stars~3.7k tokensUpdated 5 mo ago
    Writing & ContentAuto-check passed
  • Caption Writer Sms

    blacktwist/social-media-skills

    When the user wants to write a caption for a visual-first social media post on Facebook, Instagram, TikTok, Pinterest, or YouTube.

    559 GitHub stars~5.3k tokensUpdated 5 mo ago
    Writing & ContentAuto-check passed
  • Caption Writer

    social-media-skills/skills

    A skill your agent uses to write platform-native social media captions (post copy) in the brand's voice — the words that accompany a post on Instagram, LinkedIn, TikTok, Facebook, X/Twitter…

    128 GitHub stars~1.7k tokensUpdated 7 days ago
    Writing & ContentAuto-check passed
  • Outlier Post Finder

    ScrapeCreators/social-media-research-skills

    A skill your agent uses when the user wants to find posts, videos, reels, shorts, tweets, or social content that overperformed versus a creator, brand, or competitor baseline.

    3.4k GitHub stars~1.5k tokensUpdated 1 mo ago
    Writing & ContentAuto-check: notes
  • Content Repurposer Sms

    blacktwist/social-media-skills

    When the user wants to turn one piece of content into multiple formats or adapt content across text-first and visual-first platforms (LinkedIn, Twitter/X, Threads, Bluesky, Facebook, Instagram…

    559 GitHub stars~3.7k tokensUpdated 5 mo ago
    Writing & ContentAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,235 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Postfast

What does Postfast do?

Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API. Postfast is an agent skill from LeoYeAI/openclaw-master-skills. Schedule and manage social media posts across TikTok, Instagram, Facebook, X (Twitter), YouTube, LinkedIn, Threads, Bluesky, Pinterest, and Telegram using the PostFast API.

When should I use Postfast?

Postfast fits situations like: the user wants to schedule social media posts; manage social media content; upload media for social posting; list connected social accounts.

How do I install Postfast in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill postfast -a claude-code`. Or copy the skill folder (skills/postfast in LeoYeAI/openclaw-master-skills) into .claude/skills/postfast in your project. Claude Code loads it when a task matches its description.

How do I install Postfast in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill postfast -a codex`. Or copy the skill folder (skills/postfast in LeoYeAI/openclaw-master-skills) into .agents/skills/postfast in your project. Codex loads it when a task matches its description.

Can I use Postfast in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill postfast -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/postfast, .gemini/skills/postfast, .github/skills/postfast and .opencode/skills/postfast in your project.

What does Postfast need to run?

Going by SKILL.md and its folder, Postfast needs the command-line tools its instructions call (curl) and credentials named POSTFAST_API_KEY. Our summary lists: A credential in POSTFAST_API_KEY.

Does Postfast access the network?

SKILL.md names 3 domains. In commands or code: api.postfa.st, postfa.st and x.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Postfast safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Postfast use?

Postfast is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Postfast use?

About 4.8k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.4k tokens, read only when the agent opens those files.

What are the alternatives to Postfast?

Skills that share tags, products or a category with Postfast: Social Publisher (affaan-m/ECC, 276k stars), Post Writer Sms (blacktwist/social-media-skills, 559 stars), Caption Writer Sms (blacktwist/social-media-skills, 559 stars) and Caption Writer (social-media-skills/skills, 128 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Postfast?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,160 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.