kol-engager-icp について
LinkedIn の KOL 投稿に反応した人から、ICP に合う見込み客を抽出するマーケティングスキルです。KOL ごとに最近の反応数が多い投稿を 1 件選び、プロフィール補完の前に職種で絞り込みます。
主な機能
- 01KOL ごとに関連する最近の投稿を選択
- 02リアクションとコメント投稿者を取得
- 03職種とキーワードで事前に絞り込み
- 04プロフィール補完と ICP 分類
- 05リードを CSV に出力
活用シーン
- 01KOL のオーディエンスから見込み客を探す
- 02対象コンテンツへの反応者を特定
- 03職種条件で LinkedIn リードを整理
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ gooseworks-ai/ goose-skills --skill kol-engager-icpインストール後、Claude Code で/kol-engager-icpを入力して読み込まれたか確認します。
同梱ファイルscripts/kol_engager_icp.pyskill.meta.json
詳細
KOL エンゲージャー ICP
LinkedIn の KOL 投稿にエンゲージしたユーザーをスクレイピングして、ICP に合致する見込み客を見つけます。これは KOL パイプラインの後半部分です。KOL(kol-discovery から取得、または手動で指定)を受け取り、最適な投稿を見つけ、エンゲージしたユーザーをスクレイピングして、ICP に基づいて絞り込みます。
基本原則: KOL 1 人につき投稿 1 件です。過去 30 日間から、最も関連性が高く、エンゲージメントが最も多い投稿を選びます。これにより、見込み客の質を最大化しながらコストを抑えます。
フェーズ 0:情報の収集
ユーザーに以下の質問をします。
ICP の条件
- 製品/サービスの内容を教えてください。
- 投稿の関連性をフィルタリングするためのトピックキーワード(KOL の投稿で取り上げてほしいトピックを 3~5 個)
- 対象とする業界/分野
- 対象とする役職/職務(例:「VP Operations」「Head of Logistics」)
- 除外する役職(例:「Software Engineer」「Data Scientist」)
- 除外する競合他社
- 対象地域(例:「United States」)
KOL の入力
- KOL リスト — LinkedIn プロフィールの URL(kol-discovery の出力、または手動のリスト)
設定を保存します。
skills/kol-engager-icp/configs/{client-name}.json
設定 JSON の構造:
{
"client_name": "example",
"topic_keywords": ["freight automation", "dispatch operations"],
"topic_patterns": ["freight.*automat", "dispatch.*oper"],
"icp_keywords": ["freight", "logistics", "3pl"],
"target_titles": ["vp operations", "head of logistics", "coo"],
"exclude_titles": ["software engineer", "data scientist"],
"tech_vendor_keywords": ["competitor-name", "saas founder"],
"country_filter": "United States",
"kol_urls": ["https://www.linkedin.com/in/kol-1/"],
"days_back": 30,
"max_posts_per_kol": 20,
"max_kols": 10,
"max_enrichment_profiles": 200,
"mode": "standard"
}
フェーズ 1:パイプラインを実行する
python3 skills/kol-engager-icp/scripts/kol_engager_icp.py \
--config skills/kol-engager-icp/configs/{client-name}.json \
[--test] [--probe] [--yes] [--kols "url1,url2"]
フラグ:
--config(必須) — クライアント設定 JSON のパス--test— KOL を 3 人、エンリッチメント対象プロフィールを 50 件に制限します--probe— 1 件の投稿 URL でエンゲージャーのスクレイピングをテストして終了します--yes— コスト確認のプロンプトをスキップします--kols— 設定内の KOL URL を上書きします(カンマ区切り)--max-runs— Apify の実行上限を上書きします
パイプラインの手順
ステップ 1:KOL の投稿をスクレイピング — 各 KOL について、harvestapi/linkedin-profile-posts を使用して最近の投稿(過去 30 日間、スキャンする投稿は最大 20 件)を取得します。
ステップ 2:KOL ごとに最適な投稿を選択 — 投稿を topic_keywords/topic_patterns との関連性でフィルタリングし、エンゲージメント(リアクション数+コメント数)が最も多い投稿を 1 件選びます。結果:KOL ごとに投稿 URL が 1 件。
ステップ 3:エンゲージャーをスクレイピング — harvestapi/linkedin-company-posts を scrapeReactions: true, scrapeComments: true とともに使用し、選択した各投稿のリアクションしたユーザーとコメントしたユーザーを取得します。
ステップ 4:エンリッチメント前に事前フィルタリング — エンゲージャーの役職を基にスコアを付けます。
+3コメントしたユーザー(関心度が高い)+2役職が ICP キーワードに一致+2役職が対象タイトルに一致-5役職が除外タイトルまたはベンダーキーワードに一致+1複数の投稿にエンゲージ- スコアが 0 を超えるものだけを残し、
max_enrichment_profiles件を上限とします
ステップ 5:エンリッチメント — harvestapi/linkedin-profile-scraper を使用し、25 件ずつ処理します。その後、国フィルターを適用します。
ステップ 6:ICP に分類してエクスポート — 「ICP の可能性が高い」「ICP の可能性あり」「不明」「テックベンダー」に分類します。CSV をエクスポートします。
上限
| パラメーター | テスト | 標準 | フル |
|---|---|---|---|
| 処理する KOL 数 | 3 | 10 | 20 |
| KOL ごとに選択する投稿数 | 1 | 1 | 1 |
| スクレイピングするリアクションの上限 | すべて | すべて | すべて |
| エンリッチメントするプロフィールの上限 | 50 | 200 | 500 |
| 推定総コスト | 約$0.50 | 約$1.50-2 | 約$5-8 |
プローブモード
最初に --probe を実行して、エンゲージャーのスクレイピングが機能することを確認します。
python3 skills/kol-engager-icp/scripts/kol_engager_icp.py \
--config skills/kol-engager-icp/configs/{client-name}.json --probe
最初の KOL の投稿をスクレイピングし、最適な投稿を選び、そこからエンゲージャーをスクレイピングして、サンプルを表示します。エンリッチメントは行わず、CSV も作成しません。
フェーズ 2:確認して調整する
結果を提示します。
- KOL ごとの内訳 — どの KOL の投稿から最も多くの見込み客を獲得できたか
- 事前フィルタリングの統計 — 役職フィルターを通過したエンゲージャーの数
- ICP の内訳 — ティアごとの件数
- 見込み客の上位 15 件 — 名前、役職、会社、KOL の参照元、エンゲージメントの種類
よくある調整:
- テックベンダーが多すぎる —
tech_vendor_keywordsに語句を追加します - ICP に合致する見込み客が見つからない —
icp_keywordsまたはtarget_titlesの対象範囲を広げます - エンゲージメントの少ない投稿が選ばれる —
topic_keywordsの条件を緩めます - コストが高すぎる —
max_enrichment_profilesを減らすか、テストモードに切り替えます
フェーズ 3:出力
CSV は skills/kol-engager-icp/output/{client-name}-kol-engagers-{date}.csv にエクスポートされます。
| 列 | 説明 |
|---|---|
| 名前 | 氏名 |
| LinkedIn プロフィール URL | プロフィールへのリンク |
| 役職 | 見出しから解析 |
| 会社名 | 見出しから解析 |
| 所在地 | エンリッチメントから取得 |
| KOL の参照元 | エンゲージした KOL の投稿 |
| 投稿 URL | 該当する投稿へのリンク |
| エンゲージメントの種類 | コメントまたはリアクション |
| コメント本文 | 本人のコメント(パーソナライズに役立つ情報) |
| ICP ティア | ICP の可能性が高い/ICP の可能性あり/不明/テックベンダー |
| フィルタリング前のスコア | ステップ 4 の優先度スコア |
必要なツール
- Apify API トークン —
.envでAPIFY_API_TOKENとして設定します - 使用する Apify アクター:
harvestapi/linkedin-profile-posts(KOL の投稿のスクレイピング)harvestapi/linkedin-company-posts(投稿からエンゲージしたユーザーをスクレイピング)harvestapi/linkedin-profile-scraper(プロフィールのエンリッチメント)
使用例
トリガーフレーズ:
- 「[industry] 業界の KOL のオーディエンスからリードを見つけて」
- 「これらの KOL の投稿からエンゲージしたユーザーをスクレイピングして」
- 「[client] の kol-engager-icp を実行して」
- 「[KOL name] のコンテンツにエンゲージしているのは誰?」
kol-discovery の後:
# Use KOL URLs from discovery output
python3 skills/kol-engager-icp/scripts/kol_engager_icp.py \
--config skills/kol-engager-icp/configs/example.json \
--kols "https://linkedin.com/in/kol1,https://linkedin.com/in/kol2"
テストモード:
python3 skills/kol-engager-icp/scripts/kol_engager_icp.py \
--config skills/kol-engager-icp/configs/example.json --test