Get the FREE Ultimate OpenClaw Setup Guide →

content-multiply

npx machina-cli add skill PHY041/claude-agent-skills/content-multiply --openclaw
Files (1)
SKILL.md
8.5 KB

Content Multiplication Engine

When a post crosses an engagement threshold, automatically generate adapted versions for other platforms. One insight, many formats. Data-driven, not guesswork.


Why Data-Driven Repurposing Beats Calendar Repurposing

Calendar-Based RepurposingContent Multiplication Engine
TriggerTime (every Friday)Data (engagement threshold crossed)
Input"Review this week's content" (vague)Specific post with proven engagement
OutputSuggestionsActual drafted derivatives ready to review
SignalNo signal — reviews everythingEngagement data proves the post works
ConfidenceLow (guessing what might work)High (it already worked on one platform)

Key insight: A Reddit comment with 30 upvotes is a proven winner. Adapting it for Twitter/LinkedIn has much higher expected value than creating new content from scratch.


Engagement Thresholds

Posts crossing these thresholds trigger multiplication:

PlatformContent TypeDefault ThresholdNotes
RedditComment≥ 15 upvotesAdjust based on your account size
RedditOriginal post≥ 25 upvotes
TwitterReply≥ 5 likes OR ≥ 2,000 viewsLower for smaller accounts
TwitterOriginal tweet≥ 10 likes OR ≥ 5,000 views
LinkedInPost≥ 500 impressions OR ≥ 10 reactions
XHSPost≥ 50 saves (collections)XHS gold metric — saves > likes

Thresholds should start LOW for new accounts. Raise them as engagement grows (review monthly).

Threshold Config (in state file)

"thresholds": {
  "reddit_comment_upvotes": 15,
  "reddit_post_upvotes": 25,
  "twitter_reply_likes": 5,
  "twitter_reply_views": 2000,
  "twitter_post_likes": 10,
  "twitter_post_views": 5000,
  "linkedin_reactions": 10,
  "xhs_saves": 50
}

Workflow

Step 1: Read Engagement Data

Read memory/analytics/engagement-log.json and find entries that:

  1. Cross the engagement threshold
  2. Are NOT already processed (avoid re-processing)
  3. Are less than 7 days old (stale content doesn't multiply well)

Step 2: Determine Multiplication Routes

Source Platform→ Target Platforms
Reddit commentTwitter, LinkedIn
Reddit postTwitter thread, LinkedIn, XHS carousel, DEV.to (if technical)
Twitter replyReddit comment, LinkedIn insight
Twitter originalLinkedIn, Reddit, XHS
LinkedIn postTwitter (compress), XHS (translate + adapt)
XHS postTwitter (English extract), LinkedIn

Step 3: Generate Derivatives

Reddit Comment → Twitter Post

Source: Reddit comment (15+ upvotes)

Twitter version:
"[Extract the core insight from the comment]
[Reframe for Twitter audience — shorter, punchier]"

Rules:

  • Strip Reddit-specific context
  • Lead with the insight, not the backstory
  • Under 280 chars for single tweet, or 3-5 tweets for thread

Reddit Comment → LinkedIn Post

LinkedIn version:
"[Professional hook — what's the business/career implication?]
[Expand the insight with professional context]
[Tie to a broader theme: productivity, AI tools, builder mindset]
[Soft CTA: What's your experience with X?]"

Rules:

  • More formal tone, still personal
  • Add "why this matters" framing
  • Under 3000 chars, plain text only

Any Winner → XHS Carousel Suggestion

If a winner has enough substance for 3+ slides:

{
  "template": "dark",
  "slides": [
    {"type": "cover", "title": "[Chinese title]", "subtitle": "[Chinese subtitle]"},
    {"type": "content", "title": "[Point 1]", "number": 1, "body": "[Details]"},
    {"type": "list", "title": "[Key steps]", "items": ["item 1", "item 2"]},
    {"type": "summary", "title": "总结", "points": ["takeaway 1", "takeaway 2"], "cta": "关注获取更多干货"}
  ]
}

→ Generate with xhs-image-gen skill


Scheduling Rules (CRITICAL)

  1. NEVER publish all derivatives on the same day. Space over 2-3 days minimum.
  2. Stagger by platform priority:
    • Day 0: Original platform (already posted)
    • Day 1: Twitter — fastest audience turnover
    • Day 2: LinkedIn — professional audience
    • Day 3: XHS (if carousel) — needs Chinese audience peak time
  3. Weekend boost: If derivative ready on Friday, suggest LinkedIn for Tuesday (engagement drops on weekends).
  4. Don't stack with other scheduled posts. Check content calendar for conflicts.

Approval Flow

Content Multiplier — [date]

[N] post(s) crossed engagement thresholds!

--- Winner #1 ---
Source: [platform] | [title/topic] | [metric]: [value]
Original: [URL]

Derivatives:

1. Twitter post (suggested: post tomorrow)
   "[draft]"

2. LinkedIn post (suggested: post in 2 days)
   "[draft]"

3. XHS carousel (suggested: post in 3 days)
   [content structure or "generate with xhs-image-gen?"]

Reply:
  "post all" — queue all on suggested schedule
  "skip 2" — skip derivative #2
  "change 1: [text]" — edit derivative #1
  "not now" — skip everything

User Responses

User saysAction
"post all"Queue all derivatives on suggested schedule
"post now"Post immediately
"skip 2" / "skip linkedin"Skip specific derivative
"change 1: [text]"Edit specific derivative
"not now" / "skip"Skip everything
No replyDo nothing. NEVER auto-post.

State File

Location: memory/analytics/content-multiply-state.json

{
  "last_checked_at": "ISO8601",
  "thresholds": { ... },
  "multiplied": [
    {
      "source_id": "reddit-2026-01-01-001",
      "source_platform": "reddit",
      "source_metric": {"upvotes": 48},
      "detected_at": "ISO8601",
      "derivatives": [
        {
          "platform": "twitter",
          "status": "posted",
          "posted_at": "ISO8601",
          "url": "https://x.com/..."
        },
        {
          "platform": "linkedin",
          "status": "pending_approval",
          "suggested_date": "YYYY-MM-DD"
        }
      ]
    }
  ],
  "stats": {
    "total_winners_detected": 0,
    "total_derivatives_posted": 0
  }
}

Quality Gate

Before sending derivatives:

  • Hook is adapted for the target platform (not copy-pasted from source)
  • Length fits platform limits (Twitter: 280, LinkedIn: 3000, XHS: 1000 chars)
  • No hype words in any derivative
  • Derivatives are meaningfully different from each other
  • Suggested schedule doesn't conflict with other planned posts
  • Would someone who saw the original NOT feel like they're seeing the same thing?

Content Flywheel

CREATE          MEASURE           MULTIPLY          MEASURE AGAIN
  ↓                ↓                 ↓                   ↓
Reddit post → Engagement Tracker → Content Multiply → Engagement Tracker
                (daily check)       (daily check)       (next day)
                                                         ↓
                                                    If derivative also
                                                    crosses threshold...
                                                    MULTIPLY AGAIN!

Connected Skills

SkillRelationship
Engagement TrackerProvides the data (upstream)
Ship DigestCreates original content that feeds into this engine
GitHub MonitorCreates launch posts that can be multiplied
XHS Image GenGenerates carousel images for XHS derivatives

Edge Cases

No Winners This Period

Normal. Not every post will cross thresholds. Reply HEARTBEAT_OK.

Too Many Winners (5+ in one day)

Prioritize by engagement magnitude. Pick top 3, save the rest for tomorrow.

Winner Already Manually Repurposed

Check daily memory logs for same topic on multiple platforms. Skip if already repurposed.

Source

git clone https://github.com/PHY041/claude-agent-skills/blob/main/skills/content-multiply/SKILL.mdView on GitHub

Overview

Content-multiply is a data-driven engine that scans engagement_data to identify high-performing posts. When a piece crosses a threshold, it automatically generates 3-5 platform-tailored derivatives to expand reach without manual drafting.

How This Skill Works

The system reads engagement_data, applies configured thresholds, and selects posts that qualify for multiplication. It then determines suitable target platforms per source and produces 3-5 derivatives with platform-appropriate content and a suggested_date for review and publishing.

When to Use It

  • You have a post with proven engagement and want to extend it across additional channels.
  • You want to scale content distribution by automatically generating platform-tailored derivatives from top performers.
  • A post crosses engagement thresholds on Reddit, Twitter, LinkedIn, or XHS and you need ready-to-review variants.
  • You’re planning a cross-posting strategy and want consistent derivative formats (3-5 per source).
  • You need a data-driven alternative to calendar-based, guesswork repurposing.

Quick Start

  1. Step 1: Provide engagement_data (platform, url, upvotes, views, replies) as the trigger source.
  2. Step 2: Allow the system to apply thresholds and select qualifying posts, then map sources to target platforms.
  3. Step 3: Review the 3-5 derivatives per source, with each item including source_url, platform, content, and suggested_date.

Best Practices

  • Use engagement_data as the single source of truth for identifying repurposing opportunities.
  • Validate platform relevance for each derivative to avoid off-brand or misaligned content.
  • Start with lower thresholds for new accounts and adjust monthly as engagement grows.
  • Review derivatives before publishing to ensure tone, format, and CTAs fit each platform.
  • Track performance of derivatives and refine target mappings and content templates over time.

Example Use Cases

  • Reddit comment with 15+ upvotes gets turned into a Twitter post and a LinkedIn post, both tailored to the platform’s audience.
  • Reddit original post with 25+ upvotes is repurposed into a Twitter thread, a LinkedIn article-style post, and an XHS carousel.
  • Twitter reply with 5+ likes and 2,000+ views is converted into a Reddit comment and a LinkedIn insight post.
  • Twitter original with 10+ likes and 5,000+ views is repurposed into a LinkedIn post, Reddit cross-post, and an XHS translation/adaptation.
  • LinkedIn post with 10+ reactions is compressed into a Twitter post and translated/adapted for XHS.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers