ig-caption について
ig-caption は、投稿形式に合わせた構成と検索語を考慮して Instagram のキャプションを作成するスキルです。付属スクリプトで長さや CTA、ハッシュタグ、キーワードを確認しますが、投稿は行いません。
主な機能
- 01冒頭 125 文字の表示確認
- 02キャプションの役割の選択
- 03キーワードとハッシュタグの確認
- 04CTA の数え上げと問題の指摘
- 05コピー用テキストの作成
活用シーン
- 01強いフックがある Reel の説明文作成
- 02写真やカルーセルを主役にした文章作成
- 03下書き内の検索語の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jakeschincariol/ instagram-agent-skill --skill ig-captionインストール後、Claude Code で/ig-captionを入力して読み込まれたか確認します。
同梱ファイルcaption.py
詳細
ig-caption
このフォルダーにあるツールは1つで、次の処理を実行します:
python3 caption.py caption.txt
python3 caption.py caption.txt --keywords "client proposals,agency pricing"
フィードに表示されるのと同じ形でキャプションを出力します。最初の125文字は枠内に表示され、それ以降はタップしないと読めません。自分が書いたほかのものを読む前に、まずその枠内を読みましょう。
まず、このキャプションの役割を決めます
これを省くと、キャプションの出来が悪くなります。
役割A:動画がすでに視聴者の関心を引いている。 リールでは、冒頭2秒に音声と画面上の両方でフックが入っています。キャプションは二つ目のフックではありません。動画と競い合うと、両方とも台無しになります。キャプションの役割は、問いかけと、その問いかけを理解するための背景、そして検索に使われる言葉を伝えることです。
役割B:キャプション自体がコンテンツである。 写真、単一の画像、ループを始めるカルーセルのカバーなどです。この場合は、1行目がフックで、リールのフックとまったく同じように機能します。具体的で短く、文の途中ではなく、続きが気になるところで区切ります。
どちらを書くのか確認しましょう。ユーザーのリールに強いフックがある場合は、Aで書き、その理由も伝えます。
構成
Line 1 125 characters of visible space. Job A: the ask, plainly.
Job B: the hook.
Never a greeting, never a hashtag, never an emoji as the first
character.
Body short paragraphs, one line of white space between each. Two to six
of them. This is where the search terms live.
The ask one. Comment a keyword, save it, or DM. One.
Hashtags up to five, on their own line at the bottom, or none.
上限は2,200文字ですが、2,200文字も必要なことはほとんどありません。タップする価値があり、その後に600文字で伝えきるキャプションのほうが、1,800文字のキャプションより優れています。
ハッシュタグについて、正直に
ハッシュタグは、もはやリーチを伸ばす手段ではありません。プラットフォームは、製品変更を通じてそれを明らかにしました。Instagramは2025年12月18日、投稿あたりのハッシュタグを30個から5個に制限しました。クリエイターに対し、「多くの汎用的なハッシュタグよりも、ターゲットを絞った少数(最大5個)のほうが効果的」だと伝えています。Adam Mosseriはそれに先立つ2025年2月に、ハッシュタグはリーチを伸ばす効果はなく、配信を促す手段ではなくラベルだと述べていました。
つまり、最大5個に絞り、トピックを示すラベルとして具体的なものを使います。ユーザーがメモアプリに20個のセットを保存しているなら、そのセットはもう不要です。リンターでエラーになります。
#viral、#fyp、#explorepage、#foryouは何も伝えません。削除しましょう。
ハッシュタグより検索語句が重要です
Instagramの検索では、キャプションのテキストが読み取られます。ユーザーが見つけてもらいたいフレーズを、人が自然に入力する言葉として、普通に読める文の中に入れましょう。末尾にまとめて#clientproposalsと書くのではなく、3行目に「Client proposals」という言葉を入れます。
そのような語句を2つか3つ尋ねてから、リンターに渡します:
python3 caption.py draft.txt --keywords "client proposals,agency pricing"
ルール
- キャプションにリンクを入れないでください。 キャプションはクリックできません。本文中のURLは、「このプラットフォームの使い方を知りません」と伝えるだけの無効なテキストです。プロフィール欄かDMを使います。
- 問いかけは1つだけにします。 2つの問いかけは、問いかけがないのと同じです。
caption.pyが数えます。 - キーワードを促す場合は、入力できるキーワードを指定します。 1語で、スペースも絵文字も使わず、動画内でも声に出して伝えます。
Comment CONTRACTは有効です。Comment "the contract guide"は無効です。 - リンクがある場合は、最初のコメントを別に書きます。 そのことをレシートに記載します。
- 絵文字は飾りではなく、句読点として使います。 100文字あたり4個を超えるとリンターが警告します。
- 代替テキストを書くのにかかるのは20秒です。 カルーセルや写真には代替テキストを書きます。スクリーンリーダーとInstagramで読み上げられます。
手順
- 役割Aか役割Bを決め、どちらかを伝えます。
- 下書きを作成します。
/ig-humanを実行します。キャプションは短いため、文章の質の低さは、このパックのほかのどこよりも目立ちます。- ユーザーの検索語句を使って
caption.pyを実行します。FAILをすべて修正します。WARNは黙って処理せず、それぞれについて明確に判断します。 - コピーしてすぐに使えるブロックを出力し、その後にレシートを示します:
CAPTION READY
job: A - the reel carries the hook
visible: 118 of 125 characters used before the cut
ask: one, comment CONTRACT
hashtags: 3
search: "client proposals" in line 3, "agency pricing" in line 5
linter: READY
投稿は行いません。ユーザーが貼り付けます。