---
name: channel-repurpose-constraints
description: "Use when adapting one piece of content — a blog post, announcement, newsletter, or long caption — into versions for several social channels at once (X/Twitter, LinkedIn, Instagram, and similar). Reshapes each version to that surface's native limits and reading behavior — X post length and threading, the LinkedIn \"see more\" hook, Instagram caption truncation and link-in-bio — instead of pasting the same block everywhere. Do NOT use for writing original single-channel copy from scratch, scheduling or timing posts, interpreting engagement analytics, or designing the visual/image side of a post."
metadata:
  decimalai-skill-id: "7e4869e6-266b-4daa-b789-5fb5edfc9761"
  decimalai-version-id: "4f402a80-2376-460e-ad73-1040f00a65de"
  decimalai-version: "1"
  decimalai-body-sha256: "1315e5458feddc86dfdc94b1c3f09b925aac9401beda395a59910f279de048f6"
  decimalai-name: "channel-repurpose-constraints"
  decimalai-format: "1"
  decimalai-invocation: "model"
  decimalai-category: "marketing"
  decimalai-source: "https://app.decimal.ai/s/channel-repurpose-constraints@1/SKILL.md"
---
# Channel Repurpose Constraints

Repurposing means taking one source piece and shipping it on several channels. Each channel
truncates, wraps, and renders text differently, and a reader on X behaves nothing like a
reader mid-scroll on LinkedIn. The default failure is pasting the *same* paragraph into
every box: it overflows on X, buries the hook below the LinkedIn fold, and dangles an
unclickable link in an Instagram caption.

Base models know these platforms exist but do not default to honoring their limits when
asked to "adapt this across channels" — they produce one block lightly reworded per surface.
Reshape each version to the target surface instead. The rule is **adapt, don't paste**:
same message, native format.

## The core surfaces

Adjust these three whenever they're in scope. (Extended catalog — TikTok, YouTube, Threads,
Facebook, Pinterest, email subject lines — is in `references/platform-limits.md`.)

### X (Twitter)

- **A single standard post is 280 characters, hard.** Count it. If the message fits in 280,
  ship one post.
- **If it exceeds 280, split into a numbered thread** — do not truncate it, do not ship one
  over-length post, and do not just trail off. Break at sentence boundaries into
  self-contained posts, each 280 or fewer, numbered `1/`, `2/`, … (or `1/n`).
- **The first post is a standalone hook.** It has to earn the tap to expand the thread; it
  can't depend on later posts to make sense.
- Links count toward the 280 (treat a URL as ~23 characters).

### LinkedIn

- **Only the first ~140 characters show before the "see more" fold.** That opening line is
  the entire ad for the rest of the post.
- **Front-load the hook.** Put the payoff, the number, or the tension in the first line — not
  a throat-clearing preamble ("I've been thinking a lot lately about…"). If the reader has to
  click "see more" to reach the point, most won't.
- Line breaks render, so give it air: short opening line, blank line, then the body. The body
  can run long (the field allows ~3,000 characters), but the hook does the work.

### Instagram

- **Links in a caption are NOT clickable.** Never write "click the link below" in an IG
  caption — point to **link in bio** (or a sticker/DM), because a raw URL in the caption is
  dead text.
- **Only about the first 125 characters show before "… more."** Put the key line first, same
  as the LinkedIn fold — don't open with hashtags or a link.
- **Hashtags go at the end** of the caption or in the first comment — not stuffed into the
  opening hook where they eat the visible line.

## Method

1. **Start from the message, not the source text.** Name the one thing this piece says, then
   re-express it per surface. Don't paste-and-trim.
2. **Fit or thread.** For each channel, check the version against that surface's limit above.
   If it's over on X, thread it; if the LinkedIn hook is buried, move it to the first line;
   if an IG caption leans on a link, switch to link-in-bio.
3. **Make the versions actually differ.** If the X post and the LinkedIn post are the same
   sentences, you haven't repurposed — you've pasted. The channel-native shape (thread vs.
   front-loaded hook vs. link-in-bio caption) should be visibly different across versions.
4. **Keep the through-line.** All versions carry the same core claim and call to action; only
   the packaging changes.

## Worked example

Source: a 600-word blog post announcing a new database-indexing feature that cuts query time.

- **X** — the takeaway is one line, so one post under 280:
  `New: automatic index suggestions cut our slowest queries ~40%. It watches your query
  patterns and recommends the index before you feel the pain. How it works ↓ [link]` — and
  if you want the detail, a numbered thread (`1/`, `2/`, `3/`), first post standing alone.
- **LinkedIn** — hook in the first line, before the fold:
  `We cut our slowest queries ~40% by letting the database suggest its own indexes.`
  then a blank line, then the story.
- **Instagram** — no clickable link, key line first, tags at the end:
  `Slow queries, fixed automatically — here's what changed. …  📎 full write-up: link in
  bio` followed by hashtags on their own line at the bottom.

Same announcement, three native shapes — not one paragraph pasted three times.
