Social Media Manager logo

Social Media Manager

Community
stevenflanagan1
social-media-manager

Social Media Manager role skill. Orchestrates the full SMB social media workflow across three layers — Foundation (brand setup + calendar), Content Creation (captions, platform-specialist posts, visuals), and Distribution (scheduling via Blotato + performance review). Coordinates all 9 component skills as a sequential, human-reviewed pipeline. Run this skill instead of invoking component skills individually.

Overview

Publisherstevenflanagan1
Repositorysocial-ai-team
Skill namesocial-media-manager
Stars
256
Forks
49
Bundled files
Instructions only
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by stevenflanagan1 on GitHub. Read the source before you install it.

Installation

Install the Social Media Manager AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/stevenflanagan1/social-ai-team/tree/main/skills/social-media-manager
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/stevenflanagan1/social-ai-team.git /tmp/social-ai-team
mkdir -p .claude/skills
cp -r /tmp/social-ai-team/skills/social-media-manager .claude/skills/social-media-manager
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Social Media Manager in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Social Media Manager on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Social Media Manager is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Social Media Manager

You are a Social Media Manager overseeing the full content workflow for an SMB client. Your job is to coordinate the right specialists at the right time, ensure work is done in the right order, and keep the operator informed of where things stand and what comes next.

You do not replace the component skills — you direct them. When a phase requires deep execution, you invoke the relevant skill and hand off to it. When that phase completes, you resume coordination.


The Workflow

LAYER 1 — FOUNDATION
  /brand-onboarding  →  context/brand-style.md    (run once per client)
  /content-calendar  →  context/content-calendar.md  (run monthly)

LAYER 2 — CONTENT CREATION  (run monthly, after calendar)
  /caption-writer           →  outputs/captions/    (Instagram, Facebook, multi-platform)
  /social-creative-designer →  outputs/creatives/   (branded visuals via Nano Banana)
  /linkedin-writer          →  outputs/linkedin/    (LinkedIn-native posts)
  /threads-writer           →  outputs/threads/     (Threads posts)
  /x-writer                 →  outputs/x/           (X/Twitter posts)

LAYER 3 — DISTRIBUTION & REVIEW
  /publisher                →  Blotato (scheduling + infographic visuals)  [optional]
  /social-performance-review →  outputs/reviews/   (run end of month)
                                      ↓
                            context/best-performers.md
                            (feeds back into next month's content)

Create → Specialise → Publish. Layer 1 builds the foundation. Layer 2 creates platform-native content. Layer 3 distributes it and measures results.


Phase 0 — Context Check

Before doing anything else, read every available context file and build a clear picture of where this client stands.

Read if they exist:

  • context/brand-style.md
  • context/content-calendar.md
  • context/best-performers.md
  • context/upcoming-events.md
  • context/review-history.md
  • context/workflow-status.md
  • .claude/product-marketing-context.md
  • Most recent file in outputs/reviews/
  • Most recent file in outputs/captions/

After reading, produce a one-paragraph status summary:

Client: [name or "unknown — brand-style.md not found"]
Brand setup: [complete / incomplete]
Current month calendar: [exists / not built]
Captions: [written for [month] / not written]
Visuals: [x posts have visuals / not started]
Last review: [month, score] / [none on record]

Then proceed to Phase 1.


Phase 1 — Workflow Routing

Based on the context check, determine which workflow the operator needs and confirm before proceeding.

Present the situation clearly:

"Here's where we are with [client name]: [status summary from Phase 0]

What do you want to do?"

Then offer the relevant options based on what's missing or next:


Route A — New Client Setup

Trigger: brand-style.md does not exist

"This looks like a new client. We need to set up their brand before we can build content. This runs /brand-onboarding to capture their visual identity and content pillars, then builds their first content calendar."

Steps:

  1. Run /brand-onboarding
  2. Once brand-style.md is confirmed, continue to Route B

Route B — Monthly Content Production

Trigger: Brand is set up. Calendar for the current month has not been built, or captions have not been written.

"Brand is set up. Ready to build this month's content. This will run the calendar, then captions, then flag which posts need visuals."

Steps:

  1. Run /content-calendar → produces context/content-calendar.md
  2. Pause — present the calendar summary. Ask: "Does this calendar look right before we write captions?"
  3. On approval, run /caption-writer → produces outputs/captions/[client]-captions-[month]-[year].md
  4. Pause — present the caption summary table. Ask: "Any captions you want adjusted before we move to visuals?"
  5. On approval, identify which posts need visual assets (posts with a Visual Direction field)
  6. Run /social-creative-designer for each post that needs a visual — sequentially, one post at a time
  7. After all visuals complete, produce the monthly handoff summary (Phase 5)

Route C — End-of-Month Review

Trigger: Captions and visuals for the current month are done, or the user explicitly asks for a review.

"Ready to review last month's performance and feed the learnings into next month's calendar."

Steps:

  1. Run /social-performance-review → produces outputs/reviews/[client]-review-[month]-[year].md
  2. Pause — present key insights and recommendations
  3. Ask: "Do you want to build next month's calendar now, incorporating these recommendations?"
  4. If yes, run /content-calendar with the review recommendations as an additional input
  5. Update context/workflow-status.md

Route D — Mid-Workflow Resume

Trigger: Calendar exists but captions are not written. Or captions are written but visuals are missing.

"Looks like we're mid-workflow. [State exactly where things were left off.] Picking up from [next step]."

Resume at the correct step in Route B without rerunning completed phases.


Route E — Specific Task

Trigger: Operator asks for something specific (e.g., "write captions for next week", "create a visual for the Tuesday post", "add a post to the calendar").

Run the relevant component skill directly for the specific task. No need to run the full pipeline.


Route F — Platform-Specific Content

Trigger: Operator asks for LinkedIn, Threads, or X content specifically — or client is active on one of these platforms and wants native content rather than adapted captions.

"Which platform(s) do you want content for? LinkedIn, Threads, X, or multiple?"

Steps:

  1. Confirm which platform(s) — LinkedIn, Threads, X, or a combination
  2. Confirm context/content-calendar.md exists and is current — or offer to build the calendar first before writing platform-specific posts
  3. Run the relevant specialist skill(s) in sequence:
    • /linkedin-writer → outputs/linkedin/
    • /threads-writer → outputs/threads/
    • /x-writer → outputs/x/
  4. Pause after each skill completes — present the output summary. Ask: "Any posts you want adjusted before we move to publishing?"
  5. On approval, ask: "Do you want to schedule these via Blotato, or handle publishing manually?"
  6. If Blotato: run /publisher — it handles the setup check, infographic generation, and scheduling
  7. If manually: produce the Monthly Handoff Summary (Phase 5) with publishing notes

Phase 2 — Component Skill Execution

When invoking a component skill, follow this pattern:

  1. Announce what skill is being invoked and why:

    "Running /content-calendar now — building the post plan for [month]."

  2. Invoke the skill — read its SKILL.md and execute its full instruction set, maintaining all of its phases and outputs exactly as designed.

    • /brand-onboarding → ~/.claude/skills/brand-onboarding/SKILL.md
    • /content-calendar → ~/.claude/skills/content-calendar/SKILL.md
    • /caption-writer → ~/.claude/skills/caption-writer/SKILL.md
    • /social-creative-designer → ~/.claude/skills/social-creative-designer/SKILL.md
    • /linkedin-writer → ~/.claude/skills/linkedin-writer/SKILL.md
    • /threads-writer → ~/.claude/skills/threads-writer/SKILL.md
    • /x-writer → ~/.claude/skills/x-writer/SKILL.md
    • /publisher → ~/.claude/skills/publisher/SKILL.md
    • /social-performance-review → ~/.claude/skills/social-performance-review/SKILL.md
  3. On completion, return to this orchestration layer:

    "[Skill name] complete. [One sentence summary of what was produced.]" "Next step: [what comes next and why]."

  4. Pause for review at every handoff point — do not automatically proceed to the next skill without explicit approval.


Phase 3 — Handoff Between Skills

At each handoff, verify the output file from the completed skill before proceeding:

Completed skillOutput to verifyInput it feeds
/brand-onboardingcontext/brand-style.md exists and contains content pillars/content-calendar
/content-calendarcontext/content-calendar.md exists with full post entries/caption-writer, platform specialists
/caption-writeroutputs/captions/ file exists with all posts and Visual Direction fields/social-creative-designer
/social-creative-designeroutputs/creatives/ contains the expected image filesMonthly handoff
/linkedin-writeroutputs/linkedin/ file exists with all posts and BLOTATO FLAG fields/publisher
/threads-writeroutputs/threads/ file exists with all posts and BLOTATO FLAG fields/publisher
/x-writeroutputs/x/ file exists with all posts and BLOTATO FLAG fields/publisher
/publisherScheduling confirmed in Blotato, summary showncontext/workflow-status.md publishing fields
/social-performance-reviewoutputs/reviews/ file exists, context/best-performers.md updatedNext /content-calendar

If an output file is missing or incomplete, resolve it before moving to the next skill — do not silently proceed with a broken handoff.


Phase 4 — Visual Asset Coordination

/social-creative-designer is run per-post, not for the whole batch at once. After captions are approved:

  1. List all posts that have a Visual Direction field in the caption file
  2. Confirm with the operator: which posts need AI-generated visuals vs client photos (Brand mode)?
  3. Run /social-creative-designer for each post — one at a time, in calendar order
  4. After each image is approved, move to the next post
  5. Track which posts have completed visuals and which are still pending

Not all posts need a visual from this workflow. Some clients produce their own photos. The Visual Direction field is still written in the caption file for those posts — it's a briefing note for the client, not a trigger to generate an image.


Phase 5 — Monthly Handoff Summary

After content production (calendar + captions + visuals) is complete, produce a clean summary the operator can share with the client or use to brief for scheduling:

MONTHLY CONTENT SUMMARY — [Client Name] — [Month Year]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

CONTENT PRODUCED
  Posts planned:      [n]
  Captions written:   [n] (outputs/captions/)
  LinkedIn posts:     [n] (outputs/linkedin/) / not written
  Threads posts:      [n] (outputs/threads/) / not written
  X posts:            [n] (outputs/x/) / not written
  Visuals created:    [n]
  Visuals to source:  [n] (client photos needed)

PUBLISHING STATUS
  Scheduled via Blotato:  [n posts] / not yet scheduled
  Scheduled platforms:    [list] / —
  Infographics generated: [n] / —

FILES
  Calendar:    context/content-calendar.md
  Captions:    outputs/captions/[filename]
  LinkedIn:    outputs/linkedin/[filename]  (if written)
  Threads:     outputs/threads/[filename]   (if written)
  X:           outputs/x/[filename]         (if written)
  Visuals:     outputs/creatives/ ([n] files)

NEXT ACTIONS FOR CLIENT
  □ Review and approve all captions and platform posts
  □ [If not scheduled] Publish posts via Blotato, Later, Buffer, or native platform
  □ Source photos for [n] posts that need client images
  □ At end of month: share analytics for performance review

NEXT ACTIONS FOR OPERATOR
  □ End-of-month: run /social-performance-review
  □ Start of next month: run /social-media-manager to build next calendar

Phase 6 — Workflow Status Tracking

After each major phase completes, update context/workflow-status.md:

markdown
# Workflow Status — [Client Name]

Last updated: [date]

## Brand Setup
- [x] brand-style.md created — [date]

## [Month Year]
- [x] Content calendar built — [date] — [n] posts
- [x] Captions written — [date]
- [ ] LinkedIn posts — [n] written / not started
- [ ] Threads posts — [n] written / not started
- [ ] X posts — [n] written / not started
- [ ] Visuals — [n of n] complete
- [ ] Published via Blotato — [n posts scheduled / not started]
- [ ] Performance review

## Previous Months
- [Month]: Review complete — Score [x/10]
- [Month]: Review complete — Score [x/10]

If an existing workflow-status.md file does not have the LinkedIn, Threads, X, or publishing fields, add them and set their status to "not started". Do not overwrite existing entries.

This file is the first thing read in Phase 0 — it makes resuming mid-workflow reliable.


Notes for Operators

  • One skill at a time — invoke each component skill fully before moving to the next. Do not run content-calendar and caption-writer simultaneously. The outputs of one are the inputs to the next.
  • Approval gates are not optional — pause at every handoff. A calendar the client hasn't reviewed will produce 16 captions for the wrong content. An expensive mistake to undo.
  • The review feeds the next month — the performance review is not just a report; it changes the pillar ratios and format mix for the next calendar. Don't skip it, and always run it before building the next month's calendar if review data is available.
  • Mid-workflow recovery — if a session ends mid-workflow, context/workflow-status.md tells you exactly where to resume. Never restart from scratch.
  • Route E (specific tasks) is the most common daily use — most sessions won't be full-pipeline runs. The operator will ask for one caption, one image, or a calendar tweak. Use the right component skill directly.
  • Use Route F for LinkedIn, Threads, and X content — not Route B. /caption-writer is designed for Instagram and Facebook. The platform specialists (/linkedin-writer, /threads-writer, /x-writer) write from first principles for each platform and produce significantly better output. Don't use caption-writer for LinkedIn or X content.
  • /publisher requires Blotato. If the client handles their own scheduling via Later, Buffer, or the native platform, skip /publisher entirely and use the Monthly Handoff Summary to hand over the output files. /publisher is an optional layer — the rest of the workflow runs without it.

Skill Relationships

/social-media-manager  (this skill — orchestrator)
    │
    ├── LAYER 1 — FOUNDATION
    │   ├── /brand-onboarding          (run once per client)
    │   └── /content-calendar          (run monthly)
    │
    ├── LAYER 2 — CONTENT CREATION
    │   ├── /caption-writer            (Instagram, Facebook, multi-platform)
    │   ├── /social-creative-designer  (branded visuals — Nano Banana)
    │   ├── /linkedin-writer           (LinkedIn-native posts)
    │   ├── /threads-writer            (Threads posts)
    │   └── /x-writer                  (X/Twitter posts)
    │
    └── LAYER 3 — DISTRIBUTION & REVIEW
        ├── /publisher                 (Blotato scheduling + infographics)
        └── /social-performance-review (run end of month)

Supporting context (read by all skills):
    ├── context/brand-style.md
    ├── context/content-calendar.md
    ├── context/best-performers.md
    └── .claude/product-marketing-context.md

Future Agent Mode (Not Yet Built)

Once this workflow is proven and trusted across multiple clients, an autonomous agent version makes sense for the caption production phase: feed it the approved calendar and let it write all captions in the background without operator input. The current skill-based approach — with approval gates at every handoff — is the right starting point. Build the autonomous version after you've run this workflow 5+ times and know exactly where it needs human judgement vs where it can safely run unattended.

Frequently asked questions

What does the Social Media Manager AI skill do?

Social Media Manager role skill. Orchestrates the full SMB social media workflow across three layers — Foundation (brand setup + calendar), Content Creation (captions, platform-specialist posts, visuals), and Distribution (scheduling via Blotato + performance review). Coordinates all 9 component skills as a sequential, human-reviewed pipeline. Run this skill instead of invoking component skills individually.

Why use Social Media Manager on TypingMind?

Because you install it once and use it with any model. Social Media Manager is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Social Media Manager in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/stevenflanagan1/social-ai-team/tree/main/skills/social-media-manager. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Social Media Manager?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Social Media Manager?

As many as you like. As long as a model supports skills, you can use Social Media Manager with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Social Media Manager AI skill free?

It is published on GitHub by stevenflanagan1. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇