Communitygithub.com

ig-caption

Instagramのキャプションを作成し、lintチェックを行います。ユーザーが「キャプションを書いて」「説明に何を入れよう」などと依頼した場合や、リールやカルーセル用のテキスト、ハッシュタグについて質問した場合に使用します。

ig-caption とは?

このスキルは、Instagramのキャプション作成に特化したAIエージェントツールです。キャプションは、「… もっと見る」で切り詰められる最初の125文字、本文、単一のアクションアイテム、検索キーワード、最大5つのハッシュタグで構成されます。スキルは、各投稿の目的(リールがすでにフックを持つか、キャプション自体がコンテンツか)を判断し、それに合わせた構造を提案します。また、`caption.py`というPythonスクリプトを使用して、文字数制限やルール(リンク禁止、アクションは1つだけ、絵文字の使用制限など)に違反していないかをlintチェックします。特に、2025年12月のInstagramアップデートによりハッシュタグが5つまでに制限されたことを反映し、ハッシュタグよりも本文内の検索キーワードを重視するアプローチを取ります。ユーザーのトーンや声を学習するために、`~/.claude/instagram/voice.md` ファイルを読み込んだり、過去の投稿から推測して提案します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ilijachrchev/skills/tree/HEAD/skills/instagram-agent-skill/ig-caption

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

ig-caption は何をしますか?

このフォルダには1つのツールがあり、次のように実行します:

python3 caption.py caption.txt
python3 caption.py caption.txt --keywords "client proposals,agency pricing"

キャプションは、フィードに表示される通りに出力されます。最初の125文字がボックス内に表示され、それ以降はタップで表示されます。そのボックスを、他の文章を読む前に必ず確認してください。

トーン

~/.claude/instagram/voice.md が存在する場合はそれを読み込み、そのトーンで書きましょう。ユーザーが実際に使う言葉、絶対に言わない言葉、絵文字や罵り言葉の扱い、自分の名前を出しても構わないという証拠を確認します。ファイルが存在しない場合は、ユーザーが過去に投稿したものを2、3件尋ね、そこからトーンを推測し、ファイルを作成して次回のスキルで使えるように提案します。

まず、このキャプションの役割を決める

この判断を飛ばすと、キャプションが台無しになります。

ジョブA:動画がすでに視聴者を引き込んでいる リールは、最初の2秒で口頭または画面に表示される独自のフックを持っています。キャプションは2つ目のフックではなく、動画と競合すると両方とも失敗します。キャプションの役割は、アクションの促し、そのアクションを意味のあるものにする文脈、そして人々が検索する言葉です。

ジョブB:キャプション自体がコンテンツである 写真、単一画像、ループを開くカルーセルカバー。この場合、最初の行がフックであり、リールのフックとまったく同じように機能します。具体的で短く、途中で切れるのではなく、崖っぷちで切れるようにします。

どちらを書いているのかをユーザーに尋ねてください。ユーザーが強力なフックを持つリールを持っている場合は、Aを選び、その理由を説明します。

構成

行1       表示領域の125文字。ジョブA:アクションの促しを簡潔に。
          ジョブB:フック。
          挨拶、ハッシュタグ、絵文字を最初の文字にしてはいけません。
本文       短い段落。各段落の間に1行の空白。2~6段落。
          ここに検索キーワードを配置します。
アクション   1つ。「キーワードをコメント」「保存」「DM」のいずれか。1つだけ。
ハッシュタグ 最大5つ。最後の行に独立して配置。またはなし。

上限は2,200文字ですが、ほとんどの場合2,200文字は必要ありません。タップを誘い、その後600文字を提供するキャプションは、1,800文字を提供するものより優れています。

ハッシュタグについて正直に

ハッシュタグはもはやリーチの手段ではありません。プラットフォーム自身が製品変更でそれを認めています。Instagramは2025年12月18日、投稿あたりのハッシュタグを5つに制限しました。従来の30個から減少し、クリエイターに対して「多くの汎用的なハッシュタグではなく、より少ない(最大5つ)的を絞ったハッシュタグを使う方がパフォーマンスが良い」と伝えています。Adam Mosseri氏は2025年2月に、ハッシュタグはリーチを増やすためには機能せず、ラベルであって配信のレバーではないと既に述べていました。

したがって:最大5つ、具体的で、トピックラベルとして使用します。ユーザーがメモアプリに20個のハッシュタグブロックを保存している場合、そのブロックはもはや無駄であり、リンターはそれを不合格にします。

#viral、#fyp、#explorepage、#foryou は何も説明しません。削除しましょう。

今や検索キーワードはハッシュタグより重要

Instagramの検索はキャプションのテキストを読み取ります。したがって、ユーザーが見つかりたいフレーズを、人間が入力するような自然な文としてキャプションに含めます。3行目に「Client proposals」という単語を、#clientproposals のようなハッシュタグブロックではなく、通常の文として配置します。

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によって読み取られます。

ワークフロー

  1. ジョブAかジョブBかを判断し、それを伝えます。
  2. 下書きを作成します。
  3. /ig-human を実行します。キャプションは短いため、質の低さは他のどこよりも目立ちます。
  4. ユーザーの検索キーワードを指定して caption.py を実行します。すべてのFAILを修正します。すべてのWARNについて、黙って判断せずに、声に出して判断します。
  5. コピー可能なブロック、次に受領書を出力します:
CAPTION READY
job:        A - リールがフックを担当
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

何も投稿されません。ユーザーがペーストします。

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

関連スキル