Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add sergebulaev/instagram-skills --skill ig-repurposergit clone --depth 1 https://github.com/sergebulaev/instagram-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sergebulaev/instagram-skills/ig-repurposer)<a href="https://agentmods.dev/skills/sergebulaev/instagram-skills/ig-repurposer"><img src="https://agentmods.dev/badge/skills/sergebulaev/instagram-skills/ig-repurposer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sergebulaev/instagram-skills/ig-repurposer"><img src="https://agentmods.dev/badge/skills/sergebulaev/instagram-skills/ig-repurposer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00117 | $0.02121 |
| Opus 5.5 | $0.00047 | $0.00848 |
| Sonnet 5.5 | $0.00023 | $0.00424 |
| Haiku 4.5 | $0.00012 | $0.00212 |
Grade A, and why
ig-repurposer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 141 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Instagram Repurposer
Turn something you already made into a post that reads like it was born on Instagram. Repurposing is not copy-paste. A post that killed on LinkedIn or a thread that flew on X will die on Instagram if you paste it: wrong hook, wrong container, wrong rhythm, no media, and artifacts ("link in bio", @-handles, hashtag walls) that scream off-platform.
This skill transforms, it does not generate. It reads your source, keeps the idea, and rebuilds the delivery for Instagram.
When to use
- "Turn this LinkedIn post into an Instagram carousel / caption"
- "Repurpose my blog post / newsletter / YouTube script for Instagram"
- "This thread worked on X, adapt it for Instagram"
- "I have a rough idea in another format, make it native here"
Not for a blank-page draft (use ig-caption-writer for a single caption,
ig-carousel-planner for a slide-by-slide carousel) and not for reviewing an
already-Instagram draft (use ig-humanizer --mode audit).
How it works
Voice profile first (all drafts). If ../../references/voice-profile.md has filled: yes, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that ig-humanizer --mode profile can learn their voice from a few posts, then proceed with the generic voice rules.
Never invent the specifics. The rules below ask for a concrete number, a date and a named entity, because that is what separates a real post from a generated one. Take them from what the user actually said in this conversation. Do not invent a figure, a date, a client name or a result, and do not soften a vague claim into a plausible-looking number. If the user has nothing concrete for a beat, ask them once, and if they still have nothing, drop the claim rather than decorate it. A published invented number is a retraction; a missing one is only a weaker post.
- Take the source. Any format: a post, a paragraph, a script, a caption, a transcript, a bullet list, a link to read. Ask for the source, the media the user has (Instagram needs an image or video), and the goal (saves / shares / comments / follows) if not given.
- Extract the spine. Strip the source platform's shell and pull out the one claim, the one story, or the one number worth keeping. Most repurposing fails because it keeps the words instead of the point.
- Choose the container. One claim or number -> single caption. A teach, a
list, or a build -> carousel, one point per slide (hand structure to
ig-carousel-planner, hook slide to payoff slide). A long video -> a carousel that delivers the payoff, not a summary. - Re-hook for the fold. Instagram hides everything after ~125 characters
behind "more". Line one (or the hook slide) must land the whole punch on its
own. The source's hook almost never survives; write a new first line using a
2026 Instagram formula (see
../../references/hook-formulas.md), picked by the goal. - Refit the format. Caption body skimmable, short lines, white space between beats. Carousel: one idea per slide, no wall. Cut the source's connective tissue; Instagram rewards the front-loaded payoff.
- Strip off-platform artifacts. Remove "link in bio" carried from another platform, "smash subscribe", "read more below", X @-handles that only exist there, and any "as I wrote on LinkedIn" throat-clearing. A repurposed post should not admit it was repurposed.
- Media reminder. Instagram rejects text-only posts. Confirm the image, video, or slide set the user will attach. A caption with no media is not publishable.
- Hashtags at the end. Hand the topic to
ig-hashtag-strategistor apply a 3-5 sized set yourself (see../../references/hashtag-strategy.md). Place them as one block at the END of the caption or in the first comment, never as a mid-text wall. - Humanizer pass. Run
ig-humanizerV3 on the result: 2026 AI vocab by paragraph density, em dashes above the cap (about one per 100 words, never swapped for a period), stacked rule-of-three triads, generic openers and reveal bridges. Fix only a paragraph that reads machine-flat; never manufacture variance. Keep the user's real numbers and named entities from the source. - Approval card. Show: source -> Instagram mapping (what became what), the container (single caption or N-slide carousel), formula used, the hook (flag if over 125 chars), hashtag set, the media the user must attach, primary goal.
- On approval. Publish via
lib.publish(kind="post", draft_text=<approved caption>, target_url="https://www.instagram.com/", media=[<local file paths>], platforms=[<INSTAGRAM_PLATFORM_ID>], scheduled_time=<iso_or_None>). For a Reel passkind="reel". The wrapper runs the Publora draft then upload then schedule flow. With no media or no Publora key it returns a copy-paste block and a reminder to attach the media.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed · +2 lines 92acb84fb445
- 1mo ago Changed · +117 tokens per session f5c39083380e
- 2mo ago Changed · +4 lines 05c8a3f19f08
- 2mo ago First seen · 135 lines · 0 tokens per session scan A fc83ebbe8d3f
ig-repurposer is a skill published in the GitHub repository sergebulaev/instagram-skills (760 stars, last pushed 3d ago), licensed MIT. It adds 117 tokens to every session and 2,121 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
ig-repurposer compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| ig-repurposersergebulaev/instagram-skills | Skill | 760 | 3d ago | MIT | A | 117 | Claude Code |
| x-humanizersergebulaev/x-skills | Skill | 170 | 2d ago | MIT | A | 116 | Claude Code |
| x-marketingsergebulaev/x-skills | Skill | 170 | 2d ago | MIT | A | 117 | Claude Code |
| tt-humanizersergebulaev/tiktok-skills | Skill | 114 | 2d ago | MIT | A | 119 | Claude Code |
| fb-humanizersergebulaev/facebook-skills | Skill | 113 | 3d ago | MIT | A | 118 | Claude Code |
| tiktok-marketingsergebulaev/tiktok-skills | Skill | 114 | 2d ago | MIT | A | 117 | Claude Code |
| facebook-marketingsergebulaev/facebook-skills | Skill | 113 | 3d ago | MIT | A | 104 | Claude Code |