leamsigc/magicsync/magic-sync-skill
Claude Code and agent skill by leamsigc/magicsync
- community
Checking that the SKILL.md file is still in the repository.
MagicSync social media CLI — Create, schedule, and manage social media posts across multiple platforms. Use when asked to create a social media post, schedule content, manage posts, generate social media content, post to Twitter/Facebook/Instagram/Bluesky/LinkedIn, or any social media management task.
Install
npx vskill@latest install leamsigc/magicsync/magic-sync-skillSKILL.md
Overview
The MagicSync CLI skill enables AI agents to create, validate, schedule, and publish social media posts across multiple platforms (Twitter/X, Facebook, Instagram, Bluesky, LinkedIn, TikTok, etc.).
Setup
Environment Variables
| Variable | Required | Default | Description | |
|---|---|---|---|---|
MAGICSYNC_API_TOKEN | Yes | - | API key from MagicSync dashboard | |
MAGICSYNC_BASE_URL | No | http://localhost:3000 | API base URL |
Get Your API Key
- Log into MagicSync dashboard
- Go to Settings > API Keys
- Create a new API key or use an existing one
Workflow
Step 1: Load or Fetch Platform Info
Check for cached platform info first:
If not cached or stale (older than 24h), fetch fresh info:
Save to persistent location:
Cached file structure (`~/.magicsync/platforms.json`):
Key fields:
platform— Platform name (e.g., "facebook", "twitter") — used forplatformContentoverridesaccountId— UUID used in theplatformsarray when creating postsaccountName— Human-readable name to show the user
Step 2: Present Connected Accounts to User
Read ~/.magicsync/platforms.json and display the connected accounts with their platform and account names.
Example presentation:
Extracting account IDs for the API call:
Step 3: Build Platform Array from User Selection
- If user says "all" → extract all account IDs from saved data
- If user specifies "facebook" → find that platform's account ID
- Build the
platformsarray with account IDs, not platform names
Step 4: Validate Content (Optional but Recommended)
Step 5: Create/Schedule Post
Important: The platforms array must contain account IDs (UUIDs), not platform names like "twitter" or "facebook".
Complete Workflow Examples
First Time Setup (Fetch and Cache Platforms)
Schedule Post to Specific Platform
Schedule Post to All Platforms
API Commands
ping
Test API connectivity.
info
Get connected platforms and save to file.
validate
Validate content before posting (use account IDs, not platform names).
post
Create or schedule a post (use account IDs, not platform names).
Post Payload Structure
Important: The platforms array must contain account IDs (UUIDs), not platform names.
| Field | Required | Description | |
|---|---|---|---|
content | Yes | Post content | |
platforms | Yes | Array of account UUIDs (from ~/.magicsync/platforms.json) | |
media.image | No | Array of image URLs | |
media.video | No | Video URL | |
scheduledAt | No | ISO 8601 UTC date. Omit for immediate publish | |
commentPrompts | No | AI prompts for generating engagement comments | |
platformContent | No | Per-platform content overrides (keys are platform names like "facebook") |
Platform Names Reference
These are platform names used for platformContent overrides, NOT account IDs.
| Platform | Platform Name | Max Length | |
|---|---|---|---|
| Twitter/X | twitter | 280 | |
facebook | 63,206 | ||
instagram | 2,200 | ||
linkedin | 3,000 | ||
| Bluesky | bluesky | 300 | |
| TikTok | tiktok | 2,200 |
Account IDs (UUIDs like "0b584753-71b0-4932-8339-b582847422af") go in the platforms array when creating posts. Platform names (like "facebook") go in platformContent overrides.
Error Handling
| Error | Cause | Resolution | |
|---|---|---|---|
401 Invalid or missing API key | Invalid or expired API token | Get a new API key from dashboard | |
400 Platforms not connected | User hasn't connected that platform | Have user connect via dashboard first | |
400 Validation failed | Content exceeds platform limits | Shorten content or reduce media | |
NOT_FOUND when reading platforms.json | No cached platform info | Run info command to fetch and save |
Best Practices
- Always load cached platforms first — Check
~/.magicsync/platforms.jsonbefore asking user where to post - Present accounts with names — Show account names (e.g., "Ismael Garcia Canseco - Facebook") not just platform names
- Use account IDs, not platform names — The
platformsarray must contain UUIDs like"0b584753-71b0-4932-8339-b582847422af", not"facebook" - Ask user explicitly — "Which account(s): all or specific?" rather than assuming
- Validate before posting — Catch errors early with the validate command
- Schedule strategic timing — Use
scheduledAtfor optimal posting times (e.g., 8 AM CST for Mexican audiences)
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingmagic-sync-skill/SKILL.md
Popularity
- Repository stars
- 55
- Repository forks
- 17
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/leamsigc/magicsync/magic-sync-skill)