本文へ移動
cccskills
無料GitHub で公開

content-repurposer

Take one piece of long-form content (blog post, podcast, talk, article, newsletter) and turn it into a multi-channel asset pack using the STEPPS framework (Jonah Berger, Contagious) to make each derivative asset more shareable. Use when the user says "repurpose this", "turn this into LinkedIn/Twitter/etc", "atomize this", "break this down for social", "create derivative content from X", "make a content pack from this", or wants to maximize output from one input. Each channel is mapped to its strongest STEPPS element. Orchestrates linkedin-post, content-writer, and other skills. For writing the original anchor piece, see thought-leadership-writer or newsletter-writer. For scheduling the derivatives, see social-calendar.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md20.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

content-repurposer

Orchestrator skill. One source piece becomes a coordinated asset pack across channels. Each output is fully native to its channel and optimized for shareability using STEPPS. Not a copy-paste with different word counts.

When to use

  • "Repurpose this blog post"
  • "Turn this article into LinkedIn / Twitter / email"
  • "Atomize my podcast episode"
  • "Make a content pack from this newsletter"
  • "Break this talk into social posts"

Inputs needed

  • Source: file path, URL, or pasted text
  • Source type: blog, podcast transcript, conference talk, newsletter, video script, internal doc
  • Channels to produce for: pick from list (default: all)
  • Author voice: founder, CMO, company (default: company)

Channels this skill produces

OutputFormatLengthPrimary STEPPS elementSkill it calls
LinkedIn posttext80-220 wordsSocial Currencylinkedin-post
LinkedIn carousel outlineslide-by-slide6-10 slidesPractical Value + Social Currencyinline
Twitter/X threadnumbered tweets7-12 tweetsPractical Valueinline
Substack notetext3-5 sentencesStories + Emotioninline
Email teasersubject + body80-150 wordsTriggers + Emotioncontent-writer
Reddit version (relevant subs)text + subreddit suggestions200-400 wordsPractical Valueinline
Quote graphic suggestionspull quotes3-5 quotesEmotion + Social Currencyinline
YouTube short scriptspoken45-60 secondsStories + Emotioninline
SEO snippet variantoptimized intro150 wordsPractical Valueinline

Framework: STEPPS (Jonah Berger, Contagious: Why Things Catch On)

Berger's argument in Contagious is that virality is a property of the content, not of the person sharing it. Six characteristics predict whether something gets passed on, and they are designable. That is why this skill scores the source before atomising it: if the source has none of the six, nine derivative assets inherit nothing, and you have produced nine posts that will not travel.

The trap Contagious is most often misread into: treating Emotion as "make it emotional". Berger's finding is narrower and more useful. High-arousal emotions drive sharing (awe, anger, anxiety, excitement, amusement). Low-arousal emotions suppress it (contentment, sadness), even when they are strongly felt. A warm, satisfying, gently positive post is a low-arousal post, and it will not move.

Six reasons things spread. Run this on the source piece before producing any assets.

ElementWhat it meansQuestion to ask
S - Social CurrencyDoes sharing this make me look good, smart, or in-the-know?Would someone share this to show off?
T - TriggersWhat everyday cue will remind people of this idea?What common situation or object does this connect to?
E - EmotionHigh-arousal emotions drive sharing: awe, excitement, anxiety, anger. Low-arousal (contentment, sadness) do not.Does this make someone feel something intensely?
P - PublicCan people see others engaging with this? Visibility drives imitation.Is there a social proof layer?
P - Practical ValueUseful = shareable. "News you can use."Can someone apply this today?
S - StoriesInformation travels inside a narrative. The story is the Trojan horse.Is there a narrative with tension and resolution?

A score of 4+ out of 6 indicates high virality potential. Below 3, flag it.

What to do with the score

The score is a routing decision, not a grade. Act on it:

Total /18VerdictAction
14-18Strong sourceProduce the full pack. Lead with the two highest-scoring elements
10-13WorkableProduce the pack, but drop the channels whose target element scored 1. A Twitter thread built on a Practical Value score of 1 is filler
7-9WeakStop and say so. Name the two weakest elements and what would fix them. Offer to produce a reduced pack of three assets rather than nine
Below 7Not repurposableStop. The source has no spine to atomise. Nine assets from it produce nine weak posts and burn the channel's attention. Recommend rewriting the source first, or repurposing a different piece

Never raise a low score by adding material the source does not contain. That is the failure mode this table exists to prevent: an agent that finds Emotion scoring 1, invents a dramatic anecdote, and ships a story the author never told under the author's name.

Which element to fix first when the score is low, in priority order: Practical Value, then Stories, then Social Currency. Practical Value is the only one that can usually be added honestly, by making the existing advice more specific. Emotion and Public are the hardest to add without inventing, so treat a low score on those as a fact about the source rather than a task.

Process

  1. Load context. Read knowledge/brand/voice.md and the relevant persona from knowledge/icp/personas.md before touching the source. Nine assets in the wrong voice is nine rewrites. If knowledge/brand/voice.md is missing, stop: "I need voice context. Run /brand-context first." Also check knowledge/content-library/ for whether this source has already been repurposed, so the pack does not duplicate live posts.

  2. Load source. If it's a file, read it. If it's a URL, use WebFetch. If pasted, use the chat content. Confirm with the user: "I read X. Source has N words and covers <main themes>. Proceed?"

    Stop conditions on the source itself:

    • Not the user's to republish. A third-party article, a client's content, or a talk recorded at someone else's event. Confirm the right to reuse before producing anything
    • Contains customer names or figures whose consent covered only the original placement. Consent for a blog post is not consent for a paid carousel. Flag each one and ask
    • A transcript with speakers other than the author. Their words are quotes, not raw material. Attribute or cut
  3. Run STEPPS scoring on the source piece. Score each element 1-3 (1 = weak, 2 = present, 3 = strong). Show the table to the user before producing assets.

    STEPPS Score - <source title>
    
    | Element | Score (1-3) | Evidence from source | Notes |
    |---|---|---|---|
    | Social Currency | ? | <quote or example> | Does this make the sharer look good? |
    | Triggers | ? | <quote or example> | What everyday cue connects to this? |
    | Emotion | ? | <quote or example> | Awe, anxiety, excitement, anger? |
    | Public | ? | <quote or example> | Visibility layer present? |
    | Practical Value | ? | <quote or example> | Actionable, specific, saves time? |
    | Stories | ? | <quote or example> | Narrative with tension + resolution? |
    
    Total: ?/18
    Top 2 elements: <element>, <element>
    Weakest element: <element>
    

    If the total is below 9/18, flag: "This piece scores low on shareable elements. Here is what would help: [specific suggestions per weak element]." Offer to strengthen before repurposing.

  4. Extract the spine. Identify:

    • The one sentence (the thesis or core insight)
    • 3-5 supporting points (the substructure)
    • The killer line (the most quotable sentence)
    • The data points (numbers, examples)
    • The contrarian angle (what the source disagrees with)
    • The narrative thread (the story inside the content, if any)

    Show this to the user before producing assets. Get confirmation.

  5. Map each asset to its STEPPS element. Before writing, confirm the STEPPS target for each channel:

    Asset STEPPS Map
    
    LinkedIn post        → Social Currency (makes sharer look insightful)
    LinkedIn carousel    → Practical Value + Social Currency (actionable + impressive)
    Twitter/X thread     → Practical Value (specific, step-by-step, saves time)
    Substack note        → Stories + Emotion (narrative hook, emotional pull)
    Email teaser         → Triggers + Emotion (tap a recurring cue + emotional spike)
    Reddit post          → Practical Value (genuine help, no promo feel)
    Quote graphics       → Emotion + Social Currency (striking + shareable identity signal)
    YouTube short        → Stories + Emotion (narrative, visual, emotional arc)
    SEO snippet          → Practical Value (answers question directly, useful)
    
  6. Produce each channel asset. For each one, include a one-line STEPPS note at the top of the file:

    <!-- STEPPS target: Social Currency - this post is designed to make the sharer
    look ahead of the curve on [topic]. The hook uses [specific element] to signal
    insider knowledge. -->
    

    Each asset must be:

    • Native to the channel (not a copy-paste with different word count)
    • Stand-alone valuable (works without the source)
    • Optimized for its primary STEPPS element (named explicitly)
    • Linked back to the source if appropriate (CTA at the end)
  7. Save all outputs as separate files in output/repurposed/<DD-MM-YYYY>-<source-slug>/:

    output/repurposed/25-04-2026-thoughts-on-ai-pm/
    ├── linkedin-post.md
    ├── linkedin-carousel.md
    ├── twitter-thread.md
    ├── substack-note.md
    ├── email-teaser.md
    ├── reddit-post.md
    ├── quote-graphics.md
    ├── youtube-short.md
    └── README.md
    
  8. Generate the README.md for the folder summarizing:

    • Source link or path
    • STEPPS score table
    • Spine (one sentence + 3 points)
    • Which STEPPS element each asset targets
    • Whether the pack covers at least 4 of 6 STEPPS elements
    • Where each asset is meant to be published
    • Suggested publishing sequence and cadence
  9. Self-check. Every item is checkable against the saved files. Name the file and line, or the item fails.

    • Each asset file opens with its STEPPS target: comment, and the named element scored 2 or 3 on the source. An asset targeting an element that scored 1 is unsupported by the source
    • The asset pack covers at least 4 of 6 STEPPS elements. Show the coverage table
    • Every number, name, quote, date and claim in every derivative appears verbatim or in equivalent form in the source. Grep each derivative's numbers against the source text and list the matches
    • No derivative contains a quote attributed to the author that is not in the source. If the source has no quotable line, the quote-graphics file says so and is empty
    • No two derivatives share their opening sentence, and no derivative is the source's paragraph with words swapped. Compare the first 15 words of each
    • Every derivative stands alone: read each one with the source closed and confirm it makes sense
    • Every asset is inside its stated length, with the count written in the file
    • Every claim about a platform spec in the pack is labelled [UNVERIFIED default] or sourced to the platform's current docs
    • Voice matches knowledge/brand/voice.md. Name two specific voice traits and where each appears
  10. STEPPS coverage check. The asset pack as a whole must cover at least 4 of 6 STEPPS elements. If it doesn't, name which are missing and suggest one asset type that would fill the gap.

    STEPPS Coverage Check
    
    Social Currency  - covered by LinkedIn post
    Triggers         - covered by email teaser
    Emotion          - covered by quote graphics, YouTube short
    Public           - NOT COVERED (suggest: add a screenshot-friendly stat for the carousel)
    Practical Value  - covered by Twitter thread, carousel, Reddit post
    Stories          - covered by Substack note, YouTube short
    
    Coverage: 5/6 - PASS
    

Channel-specific rules

LinkedIn post (Social Currency)

  • Open with an insight, not an announcement. Sharers want to look smart.
  • The hook should be a claim someone would disagree with at first, then agree with after reading.
  • End with a takeaway the reader can quote in their next meeting.

LinkedIn carousel (Practical Value + Social Currency)

  • Slide 1: hook (8-12 words, big text)
  • Slide 2: setup (the problem or context)
  • Slides 3-7: one point per slide
  • Last slide: CTA + tag line
  • Output: structured outline ready for design ("Slide 3: Title 'X', body bullets, visual: graph showing Y")

Twitter/X thread (Practical Value)

  • Tweet 1: hook only, no thread emoji
  • Tweets 2-N: one actionable idea per tweet, max 280 chars each
  • No "1/", use natural numbering only if it adds clarity
  • Last tweet: payoff and CTA (link, follow, save)
  • Practical Value = specific, actionable, saves time. Not opinion. Not commentary.

Substack note (Stories + Emotion)

  • 3-5 sentences max
  • Lead with a moment, not a point. Start mid-scene.
  • One contrarian or counterintuitive claim
  • The emotional payoff should land in the last sentence
  • Link to full piece at the end

Email teaser (Triggers + Emotion)

  • Subject line should connect to a recurring situation the reader faces (the trigger)
  • Body opens with the emotional spike, not the content summary
  • CTA is one click, zero friction

Reddit (Practical Value)

  • Suggest 2-3 specific subreddits
  • Adapt voice: less promotional, more conversational
  • Lead with value, not the link
  • Include "(I wrote about this in more depth here)" only at the end
  • Flag any community rules to check (no self-promo, etc.)

YouTube short (Stories + Emotion)

  • 45-60 seconds spoken (~120-150 words)
  • Hook in 3 seconds - start with tension, not context
  • One insight, one example, one takeaway
  • Emotional arc: problem felt, resolution shown
  • Visual cue suggestions in [brackets]

Quote graphics (Emotion + Social Currency)

  • 3-5 pull quotes
  • Each under 140 chars
  • Each works without context
  • High-arousal only: awe, anxiety, excitement. Cut contentment quotes.
  • Specify which is best for which platform (LinkedIn carousel cover vs Instagram quote vs Twitter image)

Rules

  • Never paraphrase the source word for word. Each asset must add framing or context appropriate to its channel.
  • Never produce identical content with different word counts. A 220-word LinkedIn post is structurally different from a 220-word Substack note.
  • The source's killer line should appear in at least one derivative, often the LinkedIn post or a quote graphic.
  • If the source has no killer line, skip the quote graphics. Never write a quote and attribute it to the source's author. A quote graphic ships with a name and often a face on it, so an authored line is a fabricated attribution, not a draft. Offering the user the choice does not fix it, because they say yes and the graphic ships.
  • Every number, claim and quote in a derivative must already appear in the source. If a derivative needs a fact the source does not contain, cut the fact, not the sourcing rule.
  • Each asset file must include its STEPPS target as a comment at the top.
  • If the STEPPS score is below 9/18, address it with the user before producing 9 assets from weak source material.

Quick Reference: STEPPS

ElementChannel fitWhat to amplify
Social CurrencyLinkedIn post, quote graphicsMake the sharer look smart or ahead of the curve
TriggersEmail teaser, carouselConnect to a cue the reader encounters regularly
Emotion (high-arousal only)Quote graphics, YouTube short, Substack noteAwe, anxiety, excitement, anger - not contentment
PublicCarousel, threadAdd visible social proof or community signal
Practical ValueThread, Reddit, carousel, SEO snippetSpecific, actionable, saves time
StoriesSubstack note, YouTube shortTension + resolution. Start mid-scene.

Platform figures are not facts

Any cadence, character count, best-day, format spec or benchmark in this skill is a starting default recorded at authoring time, not a published platform rule. Two obligations:

  1. Verify current specs in the platform itself before shipping anything that depends on them.
  2. This account's own historical data always wins. Where knowledge/learnings.md or the team's analytics contradict a default here, follow the data and say so in the output.

Never present a default from this file to a client as though the platform published it. That is the claim their in-house specialist corrects in the meeting, and the correction discredits everything else in the document.

Never invent

Repurposing has a specific fabrication risk that original writing does not: the derivative is published as if it were the source, so anything added travels with the author's name on it and the source's authority behind it.

  • Never invent a statistic, a customer name, a date, a result, or an example to make a derivative land harder. If the source does not contain it, cut the beat, not the sourcing rule. Nine assets is nine chances to add one small thing that was never true.
  • Never invent a quote. A quote graphic ships with a name and often a face. An authored line is a fabricated attribution regardless of how well it captures the source's meaning.
  • Never sharpen a hedge. If the source says "roughly a third" or "we think", the derivative says the same. Tightening a hedged claim into a hard number is the most common way a true source becomes a false post.
  • Never invent the source's opinion on something it does not discuss to fill a channel that wants a contrarian take. Mark it [NEEDS INPUT: does the author hold a view on <X>?] and ask.
  • If a channel cannot be produced honestly from this source, produce fewer assets. The pack size is not a target.

What this skill cannot know

These are limitations of the skill. Anything below that reaches the output must be labelled [UNVERIFIED] there.

  • Current platform specs, character limits, image dimensions and format support. Everything in this file is a starting default from authoring time.
  • Current community rules for a suggested subreddit or forum. Self-promotion rules, flair requirements and posting frequency limits are set per community and change. Read the sidebar and recent moderator posts before posting, and treat any subreddit suggestion here as a candidate to verify, not a recommendation.
  • Whether the source's claims are still true. A post repurposed a year later carries last year's numbers into this year's feed.
  • Whether the people, customers or partners named in the source consented to appear in these placements. Consent is usually scoped to the original piece.
  • Whether the derivative duplicates something already published. Check knowledge/content-library/ and the live channels.

Related skills

  • /brand-context first, if knowledge/brand/voice.md does not exist yet
  • /linkedin-post for the LinkedIn derivative, which this skill calls rather than duplicating
  • /social-calendar for scheduling the pack, so nine assets do not all ship in one week
  • /thought-leadership-writer or /newsletter-writer when the STEPPS score says the source itself needs strengthening before it is worth atomising
  • /seo-article-writer when the source should become a search-targeted article rather than social derivatives
  • /case-study-writer when the source is a customer story, because consent and approval rules apply that this skill does not enforce
  • /content-writer for the email teaser and any one-off asset outside the standard pack
  • /copy-review for a pass over the finished pack before it is scheduled
  • /retro after the pack has run, to record which derivative actually travelled

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Rate any product, feature, or experience on the 11-star scale (Brian Chesky's Airbnb thought experiment). Use when user says "rate this experience", "11-star", "star rating", "experience audit", "how good is this", "experience rating", "product audit", "quality assessment", or wants to evaluate product quality and identify improvement paths. Also trigger when user wants to benchmark a feature, assess where a product stands, or map out what "great" looks like - even if they don't explicitly say "11-star".

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

Generate A/B copy variants grounded in Eugene Schwartz's awareness and market-sophistication stages and John Caples' tested-headline discipline. Every variant declares its angle, the awareness stage it targets, and a falsifiable hypothesis, and the skill recommends which pair to test first and what delta counts as signal. Use when the user says "A/B test this", "write variants", "give me options", "test different angles", "copy variants", "ab copy", "test this headline", "multiple versions", "which version is better", or wants to test copy before publishing. For reviewing copy that already exists, see copy-review. For sample size and stopping rules, see growth-experiment. For diagnosing a page rather than its words, see page-cro. For full paid ad sets by platform, see ad-campaign-writer.

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

Write measurable acceptance criteria for requirements or user stories. Use when the user says "write acceptance criteria", "definition of done", "how do we test this", "fit criteria", "given when then", "Gherkin scenarios", "what does done look like", "testable conditions", "how will we know this works" - even if they don't explicitly say "acceptance criteria".

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

Build a strategic account plan for winning, retaining, or expanding a named account. Use when the user says "build an account plan", "strategic account planning", "how do I grow this account", "account expansion strategy", "whitespace analysis", "QBR prep", "key account review", "map the stakeholders in this account", "land and expand plan", "how do I break into [company]", or wants a structured strategy for a specific account.

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

Write paid ad copy for LinkedIn, Google, Meta, and YouTube. Produces multiple variants per platform, each targeting a different Eugene Schwartz awareness level and Cialdini persuasion principle. Use when the user asks for ad copy, ad variants, "write LinkedIn ads", Google ads, Meta ads, paid social copy, ad headlines, or wants creative for a paid campaign. Reads brand voice, ICP, and positioning from knowledge/. For organic social posts, see linkedin-post or social-calendar. For the landing page the ad points at, see landing-page-writer. For testing variants, see ab-copy-writer.

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

Design clean and consistent APIs. Use when the user says "design an API", "API design review", "design these endpoints", "REST API for X", "GraphQL schema", "API contract", "how should this endpoint work", "review my API design", or wants to create or improve an API interface - even if they don't explicitly say "API design".

日本語の概要は準備中です。原文の説明を表示しています。

qa-aman/claude-skills202026年9月10日 更新

qa-aman のスキルをすべて見る

このスキルの問題を報告する