Schedule social posts to connected platforms at best times, approval-gated.

MITAuto-check passedWriting & Content

Install Schedule Social

skills CLI
$ npx skills add indranilbanerjee/digital-marketing-pro --skill schedule-social -a claude-code

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

GitHub CLI
$ gh skill install indranilbanerjee/digital-marketing-pro schedule-social --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/indranilbanerjee/digital-marketing-pro.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/schedule-social .claude/skills/schedule-social && 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
schedule-social
GitHub stars
862
Used in
1 other repo
Token cost
~3.4k tokens
SKILL.md length
1,677 words
Files
1
Skills in repo
162
Repo updated
First seen
Licence
MIT

At a glance

Schedule social posts to connected platforms at best times, approval-gated.

  • Works in 5 steps: Present the full preview — recipients /… → The user must type yes (or an equivalent… → Never proceed on ambiguous input. Never… → …
  • Tasks that involve Social media posts
  • SKILL.md covers Purpose, Execution gate (MANDATORY —…, Input Required and Process, plus 2 more sections
  • Calls python

What it does

Schedule Social is an agent skill from indranilbanerjee/digital-marketing-pro. Schedule social posts to connected platforms at best times, approval-gated. "schedule this post for Monday"

Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Writing & Content, covering Social media posts. It works with Python. The repository describes itself as: An open-source AI marketing operating system for strategy, SEO, AEO/GEO, paid media, content, CRM, and analytics - grounded in brand context, human approval, and verifiable… The licence is MIT.

When your agent uses it

  • Tasks that involve Social media posts

Example prompts

  • “schedule this post for Monday”
  • “/schedule-social”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Present the full preview — recipients / spend / changes / compliance — as an Execution Summary before touching any live system.
  2. The user must type yes (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels…
  3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run.
  4. Only after the user types yes, record it: python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action…
  5. Execute. A write sent through connector_executor.py needs --approval-id and fires only against a matching, unused, unexpired record (see…

What it can do on your machine

Read from SKILL.md and the folder at commit 9e949f3. 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:

    • python

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

  • Network

    No URLs in SKILL.md.

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

Schedule Social loads about 3.4k tokens when it runs. Until then it costs about 31 tokens; SKILL.md has 1,677 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~31
When it runs · the whole SKILL.md, loaded when a task matches
~3.4k

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 indranilbanerjee/digital-marketing-pro at commit 9e949f3, republished under its MIT licence (© indranilbanerjee). 1,677 words, ~3,394 tokens.

Download SKILL.mdSave it as .claude/skills/schedule-social/SKILL.md (or your agent's skills folder).
name
schedule-social
description
Schedule social posts to connected platforms at best times, approval-gated. "schedule this post for Monday"
disable-model-invocation
false
argument-hint
[platform]

/digital-marketing-pro:schedule-social

Script location. If your host does not set ${CLAUDE_PLUGIN_ROOT}, the scripts are in this plugin's scripts/ folder, next to skills/.

Purpose

Schedule social media posts to one or more platforms with platform-specific formatting, optimized posting times, hashtag strategy, and engagement monitoring setup. Handles multi-platform distribution from a single content brief by generating tailored variations that respect each platform's character limits, media specs, and audience conventions while preserving the core message across all channels.

Execution gate (MANDATORY — cannot be skipped)

  1. Present the full preview — recipients / spend / changes / compliance — as an Execution Summary before touching any live system.
  2. The user must type yes (or an equivalent explicit approval). ANY other input — ambiguous, implied, partial, or absent approval — cancels the run.
  3. Never proceed on ambiguous input. Never auto-retry a failed execution; a failure needs human review before any re-run.
  4. Only after the user types yes, record it: python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action create-approval --data '{"type":"schedule-social","platform":"<platform>","content_summary":"<one line from the Execution Summary>","risk_level":"<tier>"}', then python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action approve --id {approval_id}. If either command errors, stop and report the error; never work around it with another tool. The record proves the approval step ran for this action; it cannot prove who typed yes.
  5. Execute. A write sent through connector_executor.py needs --approval-id and fires only against a matching, unused, unexpired record (see /digital-marketing-pro:execute-action). A write through a connected MCP server tool is outside that code check: it relies on this typed yes and on your host's permission prompt. Afterwards run python "${CLAUDE_PLUGIN_ROOT}/scripts/approval-manager.py" --brand {slug} --action mark-executed --id {approval_id} --data '{"execution_result":"success"}' (or failure).

Input Required

The user must provide (or will be prompted for):

  • Post content: Core message text, along with any images, video, carousel assets, or links to include — can be a single unified draft or pre-written per-platform variants
  • Target platforms: Which platforms to post on — Twitter/X, Instagram (feed, Stories, Reels), LinkedIn (post or article), TikTok, YouTube (Shorts or Community), or Pinterest — must have corresponding MCP servers connected
  • Posting date and time: Specific date and time per platform with timezone, or "optimal" to use data-driven timing recommendations based on audience engagement patterns
  • Hashtags: Specific hashtags to use, a topic for auto-suggestion, or "auto" to generate hashtags based on content analysis, trending tags, and brand hashtag strategy
  • Platform-specific variations: Any per-platform tweaks — different copy length, different images or aspect ratios, different CTAs, tone adjustments, or platform-native features (Instagram polls, LinkedIn document carousels, Twitter/X threads)
  • Link and UTM parameters: URL to include with UTM tracking parameters (source, medium, campaign, content) for attribution, or auto-generate UTMs based on campaign naming conventions from brand profile
  • Media assets: Image files or URLs with aspect ratio preferences per platform, video files with duration compliance, or carousel image sets in posting order
  • Engagement instructions: Whether to set up reply monitoring, comment response guidelines, engagement boost triggers (promote if engagement exceeds threshold), or cross-posting rules
  • Content calendar context: Optional — campaign name or content pillar this post belongs to, for calendar tracking and thematic consistency across the publishing schedule
  • Accessibility requirements: Alt text for images, video captions or subtitle files, and any accessibility-specific formatting (plain language, high contrast text overlays)
  • First comment or thread: Optional — follow-up comment to post immediately after the main post (Instagram first comment for hashtags, Twitter/X thread continuation, LinkedIn engagement prompt)
  • Geo-targeting: Optional — restrict post visibility to specific regions or languages where supported by the platform (LinkedIn geo-targeting, Facebook location targeting)
  • Cross-promotion references: Optional — references to related content on other platforms to include in the post (e.g., "Watch the full video on YouTube" or "Read the full article on our blog")
  • Mentions and tags: Optional — accounts to @mention or tag in the post (partners, collaborators, influencers, featured customers) per platform tagging conventions

Process

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load ~/.claude-marketing/brands/{slug}/profile.json. Apply brand voice, compliance rules for target markets (skills/context-engine/compliance-rules.md), and industry context. Also check for guidelines at ~/.claude-marketing/brands/{slug}/guidelines/_manifest.json — if present, load restrictions. Check for agency SOPs at ~/.claude-marketing/sops/. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults.
  2. Verify connected social MCPs: Check which social media platform MCP servers are connected and confirm they cover all the user's target platforms. List any missing connections with setup instructions. Verify API permissions include scheduling capability for each platform.
  3. Format content per platform specs: Adapt the content for each platform's requirements — consult skills/context-engine/platform-publishing-specs.md for character limits (Twitter/X: 280, LinkedIn: 3,000, Instagram: 2,200, TikTok: 2,200, Pinterest: 500), image dimensions (1:1, 4:5, 9:16, 16:9), video length caps, carousel slide limits, and link preview behavior. Create distinct variations where content cannot be shared identically across platforms.
  4. Optimize posting times — the brand's data first: If the brand has post-level engagement history (exported from platform analytics: timestamps + engagement per post), write it to a JSON file and run python "${CLAUDE_PLUGIN_ROOT}/scripts/posting-time-analyzer.py" --platform {platform} --history {file} — first-party windows come back ranked with sample sizes and are the only recommendations that can earn high confidence. Without history, run it with --platform {platform} --industry {industry} --audience-type {b2b|b2c|mixed} for the DATED population baseline (baseline_as_of + capped-at-medium ceiling in the output; a stale baseline refuses with exit 3 — refresh it or supply history). Surface the output's algorithm_note — on interest-ranked feeds, content strength dominates timing. Factor in audience timezone distribution.
  5. Analyze and optimize hashtags: Run hashtag-analyzer.py to evaluate proposed hashtags for reach potential, competition level, relevance score, and trending status. Recommend a balanced hashtag mix per platform — branded hashtags, niche community hashtags, and broad reach hashtags — with platform-specific counts (Instagram: 15-20, Twitter/X: 2-3, LinkedIn: 3-5, TikTok: 4-6, Pinterest: 2-5 as keyword tags).
  6. Score content for brand voice: Run brand-voice-scorer.py on each platform variation to verify alignment with brand tone, vocabulary, and messaging guidelines. Flag any variation that falls below the brand's minimum score and suggest specific edits.
  7. Create per-platform variations: If the user did not provide explicit per-platform copy, generate tailored variations — shorter and punchier for Twitter/X, professional and insight-driven for LinkedIn, visual-first captions with line breaks for Instagram, trend-aware and casual for TikTok, keyword-rich with vertical imagery for Pinterest. Preserve the core message and CTA across all while adapting voice for each platform's native style.
  8. Validate media assets: Verify all images and videos meet platform requirements — dimensions, aspect ratio, file size limits, video duration, and format (JPEG/PNG for images, MP4 for video). Flag any assets that need resizing or reformatting and suggest optimal crops per platform.
  9. Create approval record: Create the record via approval-manager.py --action create-approval with the risk level inside the --data JSON — {"type":"schedule-social","platform":"<platform>","content_summary":"...","risk_level":"medium"}. There is no --risk-level flag; see the Execution gate above for the exact command. Generate a scheduling summary showing each platform's post content, media preview, hashtags, posting time, UTM-tagged links, and brand voice score.
  10. Present scheduling summary: Display the complete multi-platform schedule for user review — one section per platform showing final copy with character count, media attachments with dimensions, hashtags, posting time with timezone, and any platform-specific notes or warnings. Wait for explicit approval.
  11. Schedule via each platform's MCP: On approval, submit each post to its target platform through the connected MCP server. Handle platform-specific scheduling APIs, media uploads, hashtag formatting, and link shortening. Confirm the scheduled status for each platform individually.
  12. Verify scheduled status: After scheduling, query each platform's API to confirm the posts are queued at the correct times with the correct content. Flag any scheduling failures, content truncation, or media upload errors and retry or escalate as needed.
  13. Schedule first comments or threads: If first-comment content was provided, queue the follow-up comment or thread continuation for immediate posting after the main post goes live on each applicable platform.
  14. Update content calendar: Log the scheduled posts against the brand's content calendar with campaign name, content pillar, platform, and posting time for cross-channel visibility and duplicate prevention.
  15. Log executions per platform: Run execution-tracker.py for each platform to log the scheduling event with timestamp, platform, scheduled posting time, content summary, hashtags, UTM parameters, and media asset references.
Show full SKILL.md (350 more words)Show less

Output

A structured scheduling confirmation containing:

  • Scheduled post confirmations: Per-platform confirmation with post ID, scheduled date and time with timezone, and preview link or draft URL where available
  • Platform-specific content: Final copy for each platform showing character count versus limit, hashtags with position (inline or comment), media attachments with dimensions, and UTM-tagged link
  • Posting times with rationale: Scheduled time per platform with data-driven justification — historical engagement peak hours, audience timezone alignment, competitive posting window analysis, or user-specified timing
  • Hashtag recommendations: Final hashtag set per platform with supporting metrics — estimated reach per hashtag, competition level, trending status, and relevance score
  • Brand voice scores: Per-platform alignment scores with notes on tone adjustments made during variation creation and any remaining recommendations
  • Media spec compliance: Confirmation that all images and videos meet platform requirements for dimensions, file size, format, aspect ratio, and video duration with any crops or adjustments applied
  • UTM tracking summary: Complete UTM parameters per platform (source, medium, campaign, content) for attribution tracking in Google Analytics or the brand's analytics platform
  • Cross-platform coordination notes: Posting sequence rationale if posts are staggered, and any cross-promotion references between platforms (e.g., "Full video on YouTube" link in Twitter/X post)
  • Accessibility compliance: Alt text applied to all images, caption files attached to videos, and plain-language verification for accessible content across platforms
  • First comment or thread status: Confirmation of scheduled follow-up comments per platform with content preview and timing (immediate after main post)
  • Content calendar placement: Campaign name, content pillar, and calendar date for cross-referencing with the brand's publishing schedule
  • Mentions and tags applied: Confirmation of all @mentions and account tags included per platform with handle verification status
  • Execution log entries: Timestamped records per platform for audit trail, content calendar synchronization, and cross-channel scheduling coordination

Agents Used

  • social-media-manager — Content formatting per platform conventions, posting time optimization, hashtag strategy and analysis, brand voice scoring, platform-specific variation creation, media asset validation, accessibility compliance, first comment scheduling, and engagement monitoring configuration
  • execution-coordinator — Approval workflow, multi-platform scheduling execution via MCP servers, per-platform status verification, first comment and thread queuing, content calendar update, retry handling for failed schedules, and per-platform execution logging

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

Files

Just SKILL.md in skills/schedule-social of indranilbanerjee/digital-marketing-pro.

Open the folder on GitHubat commit 9e949f3

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in indranilbanerjee/digital-marketing-pro, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Schedule Social 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.

Schedule Social compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Schedule Social this skillindranilbanerjee/digital-marketing-pro8621 repos~3.4kAutomated safety check: PassMIT
Novel WriterZJU-REAL/Easel3.4k—~1kAutomated safety check: PassApache-2.0
Content Creatorthatrebeccarae/claude-marketing161—~1.1kAutomated safety check: PassMIT
Youtube Transcriptbrowser-act/skills6.1k—~2.1kAutomated safety check: PassMIT
Twitter X HubOpenMinis/MinisSkills446—~2.9kAutomated safety check: PassMIT
Socialcoreyhaines31/marketingskills54k4 repos~4.5kAutomated safety check: PassMIT

Similar skills

  • Novel Writer

    ZJU-REAL/Easel

    长篇小说/网文连载创作:从世界观、人设和三级大纲写到逐章正文,并用文件化状态维护伏笔、前情和跨章一致性. An agent skill from ZJU-REAL/Easel.

    3.4k GitHub stars~1k tokensUpdated today
    Writing & ContentAuto-check passed
  • Content Creator

    thatrebeccarae/claude-marketing

    Comprehensive content marketing toolkit with brand voice analysis, SEO optimization scripts, content frameworks, social media strategy, and content calendar planning.

    161 GitHub stars~1.1k tokensUpdated 4 mo ago
    Writing & ContentAuto-check passed
  • Youtube Transcript

    browser-act/skills

    YouTube transcript extraction and content reformatting: given a YouTube video URL, opens the video's transcript panel, extracts all timestamped segments, and transforms the raw transcript into…

    6.1k GitHub stars~2.1k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check passed
  • Twitter X Hub

    OpenMinis/MinisSkills

    Skill for reading and writing Twitter/X data with Python + UV, with zero third-party dependencies (pure standard library), by directly passing the authtoken + ct0 cookies for authentication.

    446 GitHub stars~2.9k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed
  • Social

    coreyhaines31/marketingskills

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.

    54k GitHub starsUsed in 4 repos~4.5k tokens
    Writing & ContentAuto-check passed
  • Social Content

    freekmurze/dotfiles

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms.

    1k GitHub starsUsed in 23 repos~2.1k tokens
    Writing & ContentAuto-check passed

More from indranilbanerjee/digital-marketing-pro

All 162 skills in this repo
  • Import Template

    indranilbanerjee/digital-marketing-pro

    Import a deliverable template as a reusable placeholder template per brand.

    862 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed
  • Ab Test Plan

    indranilbanerjee/digital-marketing-pro

    Plan an A/B test by script: sample size per variant, days to run, stopping rules.

    862 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Aeo Audit

    indranilbanerjee/digital-marketing-pro

    Run a one-time AEO audit of six AI answer engines, scored per surface.

    862 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Agent Readiness Audit

    indranilbanerjee/digital-marketing-pro

    Audit agent readiness by script: AI-crawler rules, product schema, no-JS HTML, feeds.

    862 GitHub starsUsed in 1 repo~3.7k tokens
    Auto-check passed
  • Backlink Gap

    indranilbanerjee/digital-marketing-pro

    Find backlink gap domains linking to competitors, not you, scored by script.

    862 GitHub starsUsed in 1 repo~2.6k tokens
    Auto-check passed
  • C2pa Metadata

    indranilbanerjee/digital-marketing-pro

    Embed C2PA provenance in AI-generated images, video or PDF by script.

    862 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed

Works with

Questions about Schedule Social

What does Schedule Social do?

Schedule social posts to connected platforms at best times, approval-gated. Schedule Social is an agent skill from indranilbanerjee/digital-marketing-pro. Schedule social posts to connected platforms at best times, approval-gated.

When should I use Schedule Social?

Schedule Social fits situations like: tasks that involve Social media posts.

How do I install Schedule Social in Claude Code?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill schedule-social -a claude-code`. Or copy the skill folder (skills/schedule-social in indranilbanerjee/digital-marketing-pro) into .claude/skills/schedule-social in your project. Claude Code loads it when a task matches its description.

How do I install Schedule Social in Codex?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill schedule-social -a codex`. Or copy the skill folder (skills/schedule-social in indranilbanerjee/digital-marketing-pro) into .agents/skills/schedule-social in your project. Codex loads it when a task matches its description.

Can I use Schedule Social 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 indranilbanerjee/digital-marketing-pro --skill schedule-social -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/schedule-social, .gemini/skills/schedule-social, .github/skills/schedule-social and .opencode/skills/schedule-social in your project.

What does Schedule Social need to run?

Going by SKILL.md and its folder, Schedule Social needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Schedule Social access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Schedule Social 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 Schedule Social use?

Schedule Social 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 Schedule Social use?

About 3.4k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Schedule Social?

Skills that share tags, products or a category with Schedule Social: Novel Writer (ZJU-REAL/Easel, 3.4k stars), Content Creator (thatrebeccarae/claude-marketing, 161 stars), Youtube Transcript (browser-act/skills, 6.1k stars) and Twitter X Hub (OpenMinis/MinisSkills, 446 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Schedule Social?

indranilbanerjee (a GitHub user) maintains it in indranilbanerjee/digital-marketing-pro, which has 862 GitHub stars. The repository holds 162 skills in this directory. The repository was last updated on October 9, 2026.

Source: indranilbanerjee/digital-marketing-pro on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.