# Ig Caption Writer

Draft an Instagram caption with the hook in the first 125 characters, a skimmable body...

- Repository: https://github.com/sergebulaev/instagram-skills (696 stars)
- Category: Documents
- License: MIT
- Last updated: 2026-10-28
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add sergebulaev/instagram-skills --skill ig-caption-writer -g -a claude-code -y`
Codex: `npx skills add sergebulaev/instagram-skills --skill ig-caption-writer -g -a codex -y`
Cursor: `npx skills add sergebulaev/instagram-skills --skill ig-caption-writer -g -a cursor -y`
Gemini CLI: `npx skills add sergebulaev/instagram-skills --skill ig-caption-writer -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add sergebulaev/instagram-skills`

## Description

Draft an Instagram caption with the hook in the first 125 characters, a skimmable body, and one clear CTA, using a 2026 hook formula chosen by goal (saves, shares, comments, follows). Runs the humanizer pass and, on approval, publishes with the image or video you supply via the Publora media flow. Use to caption a single image or a Reel. Not for slide-by-slide carousels (use ig-carousel-planner) or auditing a draft (use ig-humanizer --mode audit).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Instagram Caption Writer

Write a caption that earns the tap and the save. Instagram hides everything after
~125 characters behind "more", so the hook does the entire job in the first
line. This skill front-loads that hook, keeps the body skimmable, and lands one
clear call to action.

## When to use

- User says "write me an Instagram caption about X"
- User has a single image or a Reel and needs the caption around it
- User wants a sharper hook for a draft they already have
- User wants a caption that auto-publishes with their media on approval

## Formulas this skill uses (caption-first shapes)

| Code | Formula | Primary goal | Best for |
|---|---|---|---|
| IG1 | Number-First Result | saves | one odd-precision result + a "steal this" promise |
| IG2 | Contrarian Truth | shares | a sharp, defensible against-the-grain claim |
| IG3 | Relatable Cold-Open | comments | a specific shared moment, no setup |
| IG4 | Mini-Story Confession | comments, follows | a real first-person story with a cost |

Full skeletons in `../../references/hook-formulas.md`. For carousels (IG5-IG8) use
`ig-carousel-planner`; for Reels (IG9-IG10) the hook lives in the video, and this
skill writes the supporting caption.

### Pick by goal first

| Goal | Reach for |
|---|---|
| Saves | IG1 |
| Shares | IG2 |
| Comments | IG3, IG4 |
| Follows | IG4 |

## Steps

**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.

The rest: https://github.com/sergebulaev/instagram-skills/blob/HEAD/.codex-marketplace/instagram-skills/skills/ig-caption-writer/SKILL.md
