ig-caption-writer

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Instagram Caption Writer

Instagram 配文撰写

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.
撰写一条能赢得点击和收藏的配文。Instagram 会把
more
之后约 125 个字符以外的全部内容折叠隐藏,因此 Hook 必须独自完成第一行的全部任务。这个 skill 会将 Hook 前置,让正文便于快速浏览,并最终落到一个清晰的 CTA。

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
  • 用户说“帮我写一条关于 X 的 Instagram 配文”
  • 用户有一张图片或一个 Reel,需要为其撰写配文
  • 用户希望为已有草稿打造更有吸引力的 Hook
  • 用户希望在获得批准后,让配文随其媒体自动发布

Formulas this skill uses (caption-first shapes)

此 skill 使用的公式(以配文开头的结构)

CodeFormulaPrimary goalBest for
IG1Number-First Resultsavesone odd-precision result + a "steal this" promise
IG2Contrarian Truthsharesa sharp, defensible against-the-grain claim
IG3Relatable Cold-Opencommentsa specific shared moment, no setup
IG4Mini-Story Confessioncomments, followsa 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.
代码公式主要目标最适合
IG1数字优先型结果(Number-First Result)收藏一个异常具体的结果,以及“直接拿走”的承诺
IG2反常识真相(Contrarian Truth)分享一个鲜明、可辩护且反主流的观点
IG3引发共鸣的冷开场(Relatable Cold-Open)评论一个具体且引发共鸣的瞬间,不做铺垫
IG4迷你故事式自白(Mini-Story Confession)评论、关注一个有真实代价的第一人称故事
完整模板骨架见
../../references/hook-formulas.md
。轮播内容(IG5-IG8)请使用
ig-carousel-planner
;对于 Reels(IG9-IG10),Hook 应出现在视频中,此 skill 负责撰写辅助配文。

Pick by goal first

首先根据目标选择

GoalReach for
SavesIG1
SharesIG2
CommentsIG3, IG4
FollowsIG4
目标选择
收藏IG1
分享IG2
评论IG3、IG4
关注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.
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.
  1. Gather inputs. Topic, angle, the media (single image or Reel), target audience, and the goal (saves / shares / comments / follows).
  2. Pick the formula. Use the goal table to shortlist, then suggest 2-3 that also fit the topic and let the user choose.
  3. Write the hook (first 125 chars). It must land the payoff, tension, or number before the "more" fold and make sense on its own.
  4. Write the body. Short lines, white space between beats, one idea. Teach or tell the story that the hook promised. Keep it under 2,200 chars.
  5. Write one CTA. A specific save or send prompt ("save this for your next launch", "send to the friend who keeps doing #2"), a real question, or a single next step. Never "what do you think?".
  6. Add hashtags. Hand off the topic to
    ig-hashtag-strategist
    or apply the 3-5 sized set yourself (see
    ../../references/hashtag-strategy.md
    ). Put them at the end or note they go in the first comment.
  7. Humanizer pass. Scrub 2026 AI vocab by paragraph density, cap em dashes (about one per 100 words; a caption's single dash is not a tell, never swap one for a period), break stacked triads, generic openers and reveal bridges. Fix only a paragraph that reads machine-flat; never manufacture variance or one-word lines for drama. Add an odd-precision number with a named referent or a named entity where the claim allows. Canonical rules:
    ig-humanizer
    V3.
  8. Optional audit. Invoke
    ig-humanizer --mode audit
    for a pass-fail check.
  9. Approval card. Show: formula used, the hook (flag if over 125 chars), full caption, char count, hashtag set, primary goal, and the media the user must supply.
  10. On approval, publish with media. Call
    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 pass
    kind="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.
先确定语气档案(所有草稿均适用)。 如果
../../references/voice-profile.md
中包含
filled: yes
,则加载该文件,并在整篇内容中匹配用户的语气指纹、硬性规则以及 CTA 和链接风格。如果没有填写,只需向用户提及一次:
ig-humanizer --mode profile
可以根据用户过去的几篇帖子学习其语气,然后继续使用通用语气规则。
绝不能虚构具体信息。 下面的规则之所以要求提供具体数字、日期和具名实体,是因为这些信息能让帖子显得真实,而不是机器生成。只使用用户在当前对话中实际提供的信息。不要虚构数字、日期、客户名称或结果,也不要把模糊声明包装成看似合理的数字。 如果用户暂时没有某个信息所必需的具体内容,只询问一次;如果仍然没有,就直接放弃该声明,而不是为其添加装饰。发布一个虚构数字意味着需要撤回,而缺少数字只会让帖子显得稍弱。
  1. 收集输入。 主题、切入角度、媒体(单张图片或 Reel)、目标受众,以及目标(收藏 / 分享 / 评论 / 关注)。
  2. 选择公式。 先根据目标表筛选,再提出 2–3 个同样适合该主题的公式供用户选择。
  3. 撰写 Hook(前 125 个字符)。 它必须在
    more
    折叠点之前呈现核心收益、张力或数字,并且脱离上下文也能独立成立。
  4. 撰写正文。 使用短行,在不同内容段之间留白,一次只表达一个观点。讲出 Hook 所承诺的要点或故事,总长度控制在 2,200 个字符以内。
  5. 撰写一个 CTA。 可以是具体的保存或发送提示(“保存这篇,供下次发布时使用”“发给那个总是在做 #2 的朋友”)、一个真实问题,或一个单一的后续步骤。绝不要使用“你觉得怎么样?”。
  6. 添加 hashtag。 将主题交给
    ig-hashtag-strategist
    ,或自行应用规模为 3–5 个的精选标签集合(见
    ../../references/hashtag-strategy.md
    )。将它们放在末尾,或注明应放在首条评论中。
  7. 执行 humanizer 优化。 通过段落密度检查,清理带有 2026 年 AI 写作特征的词汇;限制破折号数量(每 100 词约最多 1 个;单条配文中的一个破折号不算问题,绝不能把破折号换成句号);拆解堆叠的三段式、泛化开场和揭示式过渡。只修改读起来机械、呆板的段落;绝不要为了制造句式差异或戏剧效果而强行拆成单词成行的句子。若声明允许,应加入一个精度不寻常、带明确指代对象或具名实体的数字。标准规则:
    ig-humanizer
    V3。
  8. 可选审核。 调用
    ig-humanizer --mode audit
    进行通过或未通过的检查。
  9. 确认卡。 展示:所用公式、Hook(超过 125 个字符时标记)、完整配文、字符数、hashtag 集合、主要目标,以及用户必须提供的媒体。
  10. 获得批准后,携带媒体发布。 调用
    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>)
    。如果是 Reel,则传入
    kind="reel"
    。该封装会依次执行 Publora 的草稿创建、上传和排期流程。如果没有媒体或 Publora key,它会返回可复制粘贴的内容块,并提醒用户附加媒体。

Hard rules

硬性规则

Global voice rules: see root
SKILL.md
Voice rules. Additional skill-specific rules:
  • The first 125 characters must stop the scroll on their own. Rewrite any hook that needs the second line to make sense.
  • One idea per caption. Two ideas means two posts.
  • One specific number where the claim allows it.
  • 3-5 sized hashtags, never 30. 0-3 emoji, placed with intent.
  • Media is required. Never present a caption as publishable without reminding the user to attach the image or video.
  • Do not hard-sell. One natural mention of the next step, max.
通用语气规则:见根目录
SKILL.md
中的 Voice rules。其他 skill 专属规则:
  • 前 125 个字符必须能够独立让用户停下滚动。任何需要看第二行才能理解的 Hook 都必须重写。
  • 每条配文只表达一个观点。有两个观点就意味着需要两篇帖子。
  • 在声明允许的情况下,提供一个具体数字。
  • 使用 3–5 个精选 hashtag,绝不能塞入 30 个。使用 0–3 个 emoji,并且摆放位置应有明确意图。
  • 媒体是必需项。绝不在未提醒用户附加图片或视频的情况下,将配文呈现为可发布状态。
  • 不要强行推销,最多自然提及一次下一步操作。

Anti-patterns (skill will refuse)

反模式(skill 将拒绝这些内容)

  • A hook that only makes sense after the fold.
  • Em dashes above the cap (more than about one per 100 words), or an em dash swapped for a period.
  • "Let's talk about.." or "Here's the thing.." openers; "The result?" as a reveal.
  • Announced candor ("real talk", "not gonna lie", "POV:" on something that is not a POV) with no dated fact behind it.
  • Staccato stacks ("No X. No Y. Just Z.") and one-word lines added for drama.
  • 20-30 hashtags stuffed at the top.
  • Engagement bait ("double tap if you agree", "comment YES").
  • Rule-of-three lists without specifics.
  • "leverage", "fundamentally", "game-changer", "level up", "dive in".
  • Padding a one-line idea to look substantial.
  • 只有在折叠点之后才能理解的 Hook。
  • 破折号超过上限(每 100 词多于约 1 个),或把破折号换成句号。
  • 使用“Let's talk about..(让我们聊聊……)”或“Here's the thing..(关键就在这里)”式开场;使用“The result?(结果如何?)”来揭晓答案。
  • 没有具体事实或日期依据的“明示坦诚”(如“real talk(说真的)”“not gonna lie(不瞒你说)”),或把并非 POV 的内容标为“POV:”。
  • 断续句式堆叠(“No X. No Y. Just Z.”),以及为了戏剧效果而添加的单词成行内容。
  • 在开头塞入 20–30 个 hashtag。
  • 互动诱导(“同意的话请双击”“评论 YES”)。
  • 没有具体信息的三段式清单。
  • “leverage(利用)”“fundamentally(从根本上)”“game-changer(游戏规则改变者)”“level up(升级)”“dive in(深入探讨)”等词。
  • 纯粹为了显得内容丰富而给一个观点添加无意义的铺垫。

Resources

资源

  • ../../references/hook-formulas.md
    - all 10 Instagram formulas (IG1-IG4 are caption-first)
  • ../../references/algorithm-heuristics.md
    - 2026 Instagram ranking rules
  • ../../references/hashtag-strategy.md
    - the 3-5 sized hashtag recipe
  • ../../references/media-workflow.md
    - the draft, upload, schedule flow
  • references/caption-checklist.md
    - the per-caption scrub and fit list
  • ../../references/hook-formulas.md
    - 全部 10 个 Instagram 公式(IG1-IG4 为配文优先)
  • ../../references/algorithm-heuristics.md
    - 2026 年 Instagram 排名规则
  • ../../references/hashtag-strategy.md
    - 3–5 个精选 hashtag 的配置方法
  • ../../references/media-workflow.md
    - 草稿、上传和排期流程
  • references/caption-checklist.md
    - 每条配文的清理与适配检查清单

Related skills

相关 skill

  • ig-carousel-planner
    - when the idea is a slide-by-slide carousel
  • ig-hashtag-strategist
    - build the sized hashtag set
  • ig-humanizer
    - AI-tell scrubber, plus
    --mode audit
    for review
  • ig-hook-extractor
    - reverse-engineer a hook from a post you admire
  • ig-carousel-planner
    - 用于逐页轮播创意
  • ig-hashtag-strategist
    - 构建精选 hashtag 集合
  • ig-humanizer
    - 清理 AI 写作痕迹,并支持使用
    --mode audit
    进行审核
  • ig-hook-extractor
    - 逆向解析用户欣赏的帖子中的 Hook