Publishes {{PERSONA_NAME}} infographic posts to Instagram, Facebook, and Twitter/X via the Late API.
How It Works
Finds the latest unpublished infographic sidecar in ~/{{PersonaDir}}/infographics/
Uploads infographic image to Late cloud storage via presigned URL
Generates platform-optimized captions via Gemini (long-form for IG/FB, 280-char for Twitter)
Publishes as image post via Late API
Records in database (user_posts + platform_posts)
Usage
node skills/infographic-publish/scripts/infographic-publish.js [options]
Options:
--infographic "path/to/infographic.json" # Specific infographic (default: latest unpublished)
--platforms "instagram,facebook" # Filter platforms (default: instagram,facebook,twitter)
--schedule "2026-03-05T09:00:00" # Schedule post (default: publish now)
--dry-run # Show what would be posted, skip publish
Supported Platforms
Platform
Notes
Instagram
4:5 feed post with long-form caption + hashtags
Facebook
Feed post with written caption + {{SKIP_ACCOUNT}}.ws link
Twitter/X
Image tweet, 280 char limit — short punchy caption
No YouTube (no image posts) or TikTok (video-first, low static reach).
Prerequisites
LATE_API_KEY in .env
GEMINI_API_KEY in .env
Infographic must be generated by infographic-gen
Platform accounts connected in Late (see SOCIALS.md)
Output
Updates sidecar JSON with published_at and late_post_id
Database rows in user_posts and platform_posts
1---2name: infographic-publish3description: infographic-publish4---5# infographic-publish67Publishes {{PERSONA_NAME}} infographic posts to Instagram, Facebook, and Twitter/X via the Late API.89## How It Works10111. Finds the latest unpublished infographic sidecar in `~/{{PersonaDir}}/infographics/`122. Uploads infographic image to Late cloud storage via presigned URL133. Generates platform-optimized captions via Gemini (long-form for IG/FB, 280-char for Twitter)144. Publishes as image post via Late API155. Records in database (`user_posts` + `platform_posts`)1617## Usage1819```bash20node skills/infographic-publish/scripts/infographic-publish.js [options]2122Options:23 --infographic "path/to/infographic.json" # Specific infographic (default: latest unpublished)24 --platforms "instagram,facebook" # Filter platforms (default: instagram,facebook,twitter)25 --schedule "2026-03-05T09:00:00" # Schedule post (default: publish now)26 --dry-run # Show what would be posted, skip publish27```2829## Supported Platforms3031| Platform | Notes |32|----------|-------|33| Instagram | 4:5 feed post with long-form caption + hashtags |34| Facebook | Feed post with written caption + {{SKIP_ACCOUNT}}.ws link |35| Twitter/X | Image tweet, 280 char limit — short punchy caption |3637No YouTube (no image posts) or TikTok (video-first, low static reach).3839## Prerequisites4041- `LATE_API_KEY` in `.env`42- `GEMINI_API_KEY` in `.env`43- Infographic must be generated by `infographic-gen`44- Platform accounts connected in Late (see SOCIALS.md)4546## Output4748- Updates sidecar JSON with `published_at` and `late_post_id`49- Database rows in `user_posts` and `platform_posts`
Run npx skillmds@latest add kevinbadi/infographic-publish in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
infographic-publish It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
kevinbadi (@kevinbadi) published this skill. Their other Agent Skills are listed on their SkillMD profile.