mcpField
J
jab-hook

jab-hook

github.com/coreyhaines31マーケティング・グロース875349 回インストール6 日前に更新
リポジトリ

jab-hook について

jab-hook は、個人のポートフォリオ向けに SNS 投稿を計画・作成するワークフローです。宣伝、制作過程の共有、教育コンテンツを循環させ、承認後に X と LinkedIn の下書きを Typefully に送れます。

主な機能

  1. 01週間の SNS 投稿計画
  2. 02ローテーションによる宣伝対象の選定
  3. 03各ポートフォリオの宣伝間隔の確認
  4. 04X と LinkedIn 向け投稿の作成
  5. 05承認後に Typefully へ下書きを送信

活用シーン

  1. 01翌週の宣伝・教育投稿の計画
  2. 02宣伝間隔が空いたポートフォリオの選定
  3. 03複数案件の宣伝ペースの確認
  4. 04Typefully でレビューする投稿の準備

MCP 対応

Typefully MCP サーバーを使い、ソーシャルセットや最近の下書きを取得し、投稿下書きを作成します。jab-hook 自体が MCP サーバーを提供するとは記載されていません。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/coreyhaines31/makerskills --skill jab-hook

インストール後、Claude Code で/jab-hookを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
content-types.md
inspiration.example.md
inspiration.md
patterns.md
properties.example.yaml
properties.md
typefully-config.example.yaml
typefully-config.md
voice.md

詳細

/jab-hook — 個人ポートフォリオ向けのジャブ・ジャブ・ジャブ・右フック

Gary Vaynerchuk のフレームワークを、設定済みのポートフォリオに適用します。フィードの大半を ジャブ(価値提供 — BIP と教育コンテンツ)にして、フック(プロモーション)が注目を集められるようにします。下書きは個人用の Typefully ワークスペースに保存します。

初回セットアップ:実際のポートフォリオとワークスペースを設定するには、references/properties.md と references/typefully-config.md を参照してください。個人設定は ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/jab-hook/ に保存されます。

基本的な考え方

  • N 個のローテーション枠(~/.config/makerskills/jab-hook/properties.yaml で設定):ローテーションで宣伝したい各プロパティにつき 1 枠
  • 週に約 2 件のプロモーション投稿 → 各プロパティは同じ頻度で約 3 週間ごとに登場します
  • プロモーションをしない日:ビルド・イン・パブリックと教育コンテンツを 50/50 で投稿します
  • 目標とする週間リズム:プロモーション約 2 件 + BIP 約 2〜3 件 + 教育コンテンツ約 2〜3 件
  • プラットフォーム:個人用 Typefully ワークスペース経由で X + LinkedIn

ステップ 1 — モードを選ぶ

トリガーから判定します:

ユーザーの発言モード
「SNS の予定を立てて」「来週の投稿」plan
「何を投稿すればいい?」「次のプロモーション」「次を選んで」pick-next
「SNS を監査して」「期限を過ぎているのは?」「まだ投稿していない内容は?」audit
「X 向けのプロモーションを下書きして」「Y についての BIP 投稿」「Z についての教育投稿」draft

曖昧な場合は確認してください。

ステップ 2 — コンテキストを読み込む

  1. references/properties.md を読みます — 6 つのローテーション枠と切り口のアイデア
  2. references/voice.md を読みます — プラットフォームごとのユーザーの文体ルール
  3. references/content-types.md を読みます — プロモーション / BIP / 教育コンテンツのテンプレート
  4. 個人用 Typefully ワークスペースから最近の投稿を取得します:
    • 初回実行時:Typefully MCP サーバーの list-social-sets ツールを呼び出し、個人用(X + LinkedIn)のソーシャルセットを確認します。今後の実行に備えて、その ID を ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/jab-hook/typefully.yaml に保存します(スキーマは references/typefully-config.example.yaml を参照してください。スキルフォルダー内には決して保存しないでください。アップグレード時に消去されます)。
    • list-drafts ツールを呼び出し、過去 30 日間に絞り込みます
    • 内容に基づき、各投稿をプロモーション / BIP / 教育コンテンツに分類します
  5. 6 つの枠それぞれについて、最後のプロモーションからの日数を計算します

ステップ 3 — モードごとの処理

plan(7 日間の計画)
  • 期限超過が最も長い 1〜2 件のプロパティをプロモーション投稿として割り当てます
  • 残りの 5 日間は、BIP と教育コンテンツを交互に割り当てます(50/50)
  • 表形式で出力します:Day | Type | Property/Topic | Hook | Draft summary
  • プロモーションを 2 日連続で配置しないでください
  • ユーザーが計画を承認したら、順番に各投稿の下書きを作成することを提案します
pick-next
  • 期限超過が最も長いプロパティを特定します
  • 最長のプロモーション間隔が 14 日未満の場合は、代わりに BIP または教育コンテンツを提案します(投稿からの経過が長いほうを選びます)
  • 投稿を 1 件下書きし、配信前に確認を求めます
audit
  • 各プロパティについて、最後のプロモーションからの日数を、期限超過が長い順に報告します
  • 21 日を超えているプロパティに期限超過のフラグを付けます
  • 次のアクションを 1〜2 件提案します
draft
  • ローテーションのロジックは省略し、依頼された投稿を下書きします
  • 適切なコンテンツタイプのテンプレートを使います

ステップ 4 — 下書きを作成する

references/voice.md と references/content-types.md に従ってください。既定では単独投稿とし、プラットフォームごとに 1 件ずつ作成します(X 版 + LinkedIn 版)。2 件目に価値がある場合にのみスレッドにします。

リンクの配置(重要):本文には URL を決して入れないでください。既定ではリンクを一切付けず、好奇心をクリックにつなげます。リンクが必要な場合は、LinkedIn では最初のコメント(Typefully の自動コメント機能に対応)、X では返信として下書きします。本文だけで完結させてください。

オプション:インスピレーションの調査

promo と educational の投稿を作成する際は、下書きを始める前に、必要に応じてインスピレーションを得るためのアカウントを調査します(references/inspiration.md)。

  1. プロパティとオーディエンスが重なるアカウントを1~2件選びます
  2. 最近の投稿を取得します(LinkedInで動作する場合はagent-browserを使用し、動作しない場合はユーザーに例を貼り付けてもらうか、X/ニュースレターを利用します)
  3. 構造上のパターンを抽出します:冒頭のフック、投稿の長さ、改行のリズム、CTAのスタイル
  4. パターンを1つだけユーザー自身の声に取り入れます。表現をまねてはいけません
  5. 新しいパターンは ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/jab-hook/patterns.local.md に記録します(ファイルがない場合は作成)。パターンを蓄積するためです。references/patterns.md には初期パターンが記載されており、読み取り専用です

ユーザーが「just draft it」と言った場合、または既存の投稿を修正している場合は、インスピレーションの調査を省略します。

ステップ5 — Typefullyに配信

次のように尋ねます:「今すぐTypefullyに送信しますか?(X + LinkedIn、ご自身のワークスペース)」

「はい」の場合:

  1. ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/jab-hook/typefully.yaml からソーシャルセットIDを読み込みます(セットアップ手順は references/typefully-config.md にあります)
  2. Typefullyの下書き作成ツールを、X用に1回、LinkedIn用に1回呼び出します(またはソーシャルセットに両方のプラットフォームが含まれる場合は、両方を指定して1回呼び出します)
  3. 下書きに最初のコメント用リンクがある場合は、Typefullyで自動追加するよう設定します(LinkedInの自動コメント/Xの返信)。MCPがいずれかのプラットフォームで自動コメントに対応していない場合は、公開後にユーザーが貼り付けられるよう、コメント文を提示します。
  4. 既定では下書き状態にします(予約投稿ではありません)。ユーザーは送信前にTypefullyのUIで確認します
  5. Typefullyの下書きURLを返します

組み合わせて使う

  • paste — MCP経由の方法が合わない場合に、Typefully/LinkedIn/Xへ手動で貼り付けられる形式で出力します
  • social-fetch — 構造分析のためにインスピレーション用アカウントの投稿を取得します(インラインのagent-browserに代わるものです)
  • second-brain — Content Ideas Wikiページにはフック、フレームワーク、ストーリーがまとめられています。/jab-hook の下書きでは、そこから候補を抽出します
  • deep-research — promoの下書きに統計情報や出典がまだ必要な場合に使用します
  • marketingskills:social — 一般的なソーシャルメディアのフレームワークです。自身の投稿を作成するより、戦略を教える際に役立ちます
  • marketingskills:copywriting — 行き詰まったときに、フックや見出しのアイデアを考えるために使用します

品質に関する注意事項

  • プロパティごとに週1件のpromoは最低ラインであり、上限ではありません。 定期的なローテーションは相乗効果を生みます。4つのプロパティ × 週1件のpromo = 月4週分のpromoです。残りはeducational、BIP、コミュニティの投稿で埋めます。
  • インスピレーション用アカウントの表現を決してまねてはいけません。 抽出するのは構造(冒頭のフックの種類、改行のリズム、CTAのスタイル)であり、それを自分自身の声に取り入れます。自分の声は堀です。表現をまねると、その堀が失われます。
  • LinkedInとXでは、リンクは本文ではなく最初のコメントに置きます。 詳細は、メモリーストア内の feedback_social_link_placement.md に記載されています(下記参照)。本文にURLを含めると、どちらのプラットフォームでもアルゴリズムによって表示範囲が抑制されます。
  • 予約投稿ではなく、下書き状態にします。 Typefullyに送信する際は常に下書きが既定です。公開前にTypefullyのUIで人が確認することは必須です。未確認の下書きを自動で予約投稿した結果、ユーザーが後悔する投稿が繰り返し生まれています。
  • 読者の視点から表現します。 *「Xがわかります」であり、「Xを教えます」ではありません。「保証されていること」であり、「私たちが保証すること」*ではありません。
  • Voice.local.mdは、同梱のvoice.mdより優先されます。 個人の声に関するルールは公開リポジトリには決して置きません。常に ${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/jab-hook/voice.local.md に記載します。
  • 投稿頻度の上限:アカウントごとに、プラットフォームあたり1日2件までです。 それを超えるとリーチが低下し、スパムのように見えます。

メモリの参照先

メモリストアがある場合は、それがエージェントの永続メモリです(例:Claude Code のメモリディレクトリ)。ない場合は ${MAKERSKILLS_MEMORY:-${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/memory}/ です。

  • メモリストア内の feedback_promo_voice.md(存在する場合)— 確信を込めた CTA と読者の視点に立った表現
  • メモリストア内の feedback_social_cadence.md(存在する場合)— 投稿頻度の上限(例:プラットフォームごとに 1 日 2 件)

コメント