icp-prompt-builder について
icp-prompt-builder は、少数の企業を評価してユーザーのフィードバックを反映し、理想顧客の適格性判定プロンプトを調整する Claude Code スキルです。修正のないラウンドが2回続くとプロンプトを保存し、リスト全体の評価に備えます。
主な機能
- 01ICP の背景と除外条件を収集
- 02各ラウンドで10社を評価
- 03フィードバックに基づくプロンプト調整
- 04修正なしの2ラウンド後に保存
- 05一括スコアリング用プロンプトを準備
活用シーン
- 01リスト拡大前に適格基準を調整
- 02企業評価を業務上の判断に合わせて修正
- 03確定したプロンプトを見込み客リスト全体に適用
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ growthenginenowoslawski/ coldoutboundskills --skill icp-prompt-builderインストール後、Claude Code で/icp-prompt-builderを入力して読み込まれたか確認します。
詳細
ICP プロンプトビルダー
5,000 社分の情報を取得するために料金を支払う前に、まず 10〜50 社を使って適格性評価プロンプトを調整しましょう。このスキルでは、反復的なサイクルを順を追って進めます。
このスキルがある理由
リスト作成スキル(DiscoLike、Blitz、Prospeo、Google Maps)が返すのは企業の一覧であり、その企業が ICP に合致するかどうかは判断できません。リスト作成スキルが 5,000 社を返し、そのうち 80%が適合しない企業だった場合、結局成果につながらないメールアドレスの情報を充実させるために、費用を無駄にすることになります。
解決策は、規模を拡大する前に AI 適格性評価プロンプトを作成することです。企業を 10 社取得して、プロンプトにスコアを付けさせ、自分の判断と比べて、調整し、繰り返します。2 回連続で修正が一切なく、プロンプトが自分の判断と一致したら、確定して大規模に適用します。
常に Task サブエージェントを使用(API キー不要)
このスキルは Task ツールを介して Claude Code 内で完結します。Anthropic SDK の呼び出しも、OpenAI の呼び出しもありません。スコア付けは Claude Code 自身が行います。これは意図的なものです。
- 追加の API 費用はかかりません。 Claude Code のプランを使用します。
- キー管理は不要です。 設定なしですぐに使えます。
- 妥当な範囲でスケールできます。 20〜100 件の評価であれば、並列で実行する Task サブエージェントが 1 エージェントあたり 10〜20 社を処理します。
非常に大規模な場合(1 バッチあたり 5,000 社以上)は、調整済みのプロンプトをエクスポートし、速度を上げるために並列処理で OpenAI / Anthropic API に実行させる方法もあります。ただし、調整は Claude Code 内で行います。
サイクル(8 ステップ)
ステップ 1 — ICP のコンテキストを収集する
Claude がユーザーに質問するか、/icp-onboarding の client-profile.yaml を読み込みます。
- 販売を行うクライアントのウェブサイト(コンテキストを取得するため)
- どのような顧客が適合するのか?適合する理由は何か?
- どのような顧客は適合しないのか?不適格と判断する条件は何か?
- 具体的なシグナルはあるか?(B2B のみ、売上の範囲、技術スタック、採用状況、最近の資金調達など)
- 絶対的な除外条件はあるか?(競合他社のドメイン、既存顧客のドメイン、特定の業界や地域)
ステップ 2 — テスト対象の企業を 10 社選ぶ
リスト作成スキルの出力から企業を 10 社取得します。
- 適合する可能性が高い企業と低い企業を混ぜる
- 業界、規模、所在地に幅を持たせる
- 各企業には最低限、
domain, company_name, industry, headcount, descriptionが必要です - より充実したフィールド(Clay から取得した Business Type、Scale Scope、Revenue)があると、スコア付けの精度が向上します
ステップ 3 — 初期の適格性評価プロンプトを作成する
テンプレート:
You are an ICP evaluator for {CLIENT_NAME}.
## Target ICP
{ICP description from user or client-profile.yaml}
## Qualification criteria (MUST be true)
- {criterion 1}
- {criterion 2}
- ...
## Disqualification criteria (ANY match = disqualify)
- {disqualifier 1}
- {disqualifier 2}
- ...
## Input
You will receive a company with these fields:
- domain, name, industry, headcount, description
- (optional) Business Type, Revenue, Scale Scope
## Output
For each company, return JSON:
{
"qualified": true | false,
"confidence": 0.0-1.0,
"reason": "one-sentence explanation"
}
ステップ 4 — 10 社にプロンプトを実行する
Task ツールを使います。プロンプトと 10 社の情報を読み込み、JSON 形式のスコアを 10 件返す Task サブエージェントを 1 つ起動します。
ステップ 5 — 結果をユーザーに提示する
次のような表にします。
Company | Qualified | Conf | Reason
--------------------------+-----------+------+----------------------------------------
acme-corp.com | YES | 0.92 | B2B SaaS, 200 employees, target industry
random-nonprofit.org | NO | 0.95 | Nonprofit, not a business customer
edge-case-company.com | YES | 0.55 | Could fit but revenue model unclear
ステップ 6 — ユーザーからフィードバックを集める
具体的に質問します。
- 評価が誤っているのはどれか?(例:「acme-corp は競合他社なので NO にすべきです」)
- 判断は正しいが、理由が間違っているものはどれか?
- プロンプトが見落としているパターンはあるか?
- 追加すべき除外条件はあるか?
ユーザーから修正が一切なければ、このラウンドを「承認済み」として記録します。
ステップ 7 — プロンプトを調整する(または次に進む)
ユーザーから修正があった場合:
- 適格性評価の基準を追加または削除する
- 除外条件を厳しくする、または緩める
- エッジケースの具体例を追加する(「X のような企業は Y という理由で適合しません」)
- すべてのスコアが 0.5 になる場合は、信頼度のしきい値を調整する
その後、ステップ 4 に戻り、新しい企業を 10 社使って実行します。
ステップ 8 — 終了条件と保存
ユーザーから修正が一切ないラウンドが 2 回連続したら、このサイクルは終了します。その場合:
- 最終調整済みプロンプトを
~/cold-email-ai-skills/profiles/<business-slug>/icp-prompt.txtに保存します client-profile.yamlにメタデータを追記します。
icp_qualification_prompt:
path: profiles/<slug>/icp-prompt.txt
tuned_at: YYYY-MM-DD
rounds_to_convergence: 3
final_batch_size: 10
- 次のスキル用の一文を出力します。
Prompt locked. To score your 5000 companies:
npx tsx ~/cold-email-ai-skills/skills/list-expander/scripts/score-batch.ts \
--prompt-file=profiles/<slug>/icp-prompt.txt \
--companies=path/to/companies.csv \
--out=scored.csv
承認ループのルール(重要)
- 自動承認は絶対にしないでください。 プロンプトが適切に見えても、ユーザーが明示的に「承認」と伝えるか、2ラウンド連続で修正点がゼロになるまで承認しないでください。
- 修正があったらカウンターをリセットしてください。 修正が1つでもあれば、連続回数を0にリセットします。
- バッチを省略しないでください。 30社を一度に処理するほうが速く感じられますが、エラーを見逃しやすくなります。10社ずつが適切なバッチサイズです。目視で確認できる規模です。
- 毎ラウンド、プロンプトを表示してください。 改良のたびに、変更点を確認できるよう、現在のプロンプト全文をユーザーに再表示します。
- 各ラウンドでのスコアリングには、必ず Task ツールのサブエージェントを使用してください。 外部 API は絶対に呼び出さないでください。
調整済みプロンプトを大規模に適用する
保存すると、list-expander/scripts/score-batch.ts を通じてプロンプトがリスト全体に適用されます。オプションは次のとおりです。
オプション A(無料、低速) — Claude Code の Task サブエージェントを使用し、エージェントあたり20社のバッチで処理します。合計500社未満の場合に適しています。
オプション B(有料、高速) — プロンプトと企業データをエクスポートし、並列処理で OpenAI/Anthropic API に送信します。500~50,000社の場合に適しています。
スクリプトは両方に対応しています。すべてを Claude Code 内で完結させるため、デフォルトはオプション A です。
推奨フロー
/icp-onboarding→client-profile.yamlを作成/disco-likeOR/blitz-list-builderOR/prospeo-full-export→ 企業データのサンプルを50~100件取得/icp-prompt-builder→ そのサンプルを使って適格性判定プロンプトを調整(通常3~5ラウンド)- リストビルダーでリストを5,000社以上に拡張
- 調整済みプロンプトをリスト全体に適用 →
qualified: trueかつconfidence >= 0.6のものだけを残す - 適格なサブセットに対して
/blitz-list-builderまたは/list-builder(メール用のフェーズ5)を実行 - Smartlead にアップロード
プロンプトで使用できるデータ項目
ほとんどのリストビルダーの出力から利用できる項目:
- ドメイン、企業名、業界、従業員数、説明、LinkedIn URL
追加フィールド(エンリッチメントスキルを実行している場合):
- 事業形態(B2B/B2C/B2B2C)
- 年間売上高の範囲
- 事業規模(エンタープライズ/ミッドマーケット/SMB)
- サブ業界(主要な業界よりも詳細)
- 技術スタック(Clearbit、BuiltWith のデータ)
- 最近の動向(資金調達、採用、ニュース)
プロンプトの前文で、利用できるフィールドを AI に伝えてください。
よくある間違い
- 1ラウンド目から条件を絞り込みすぎる。 まずは広く設定し、フィードバックを受けて絞り込みます。
- 除外例を含めない。 「Netflix のような企業は B2C なので対象外です」は、一般的な「B2B であること」という条件よりも効果的です。
- 信頼度を使わず、「qualified: true/false」だけで判定する。 必ず信頼度も求めてください。0.5~0.7の境界事例から最も多くのことを学べます。
- 「時間を節約するため」に50社を一度にスコアリングする。 ループの目的が損なわれます。
- プロンプトを保存しない。 調整する目的は再利用です。保存しなければ、次回また調整し直すことになります。
スクリプト
scripts/score-batch.ts— 調整済みプロンプトを企業の CSV に適用
次に行うこと
調整済みプロンプトをリスト全体に適用します(利用したリスト作成スキルである Prospeo、Blitz、DiscoLike、Google Maps、または Competitor Engagers の手順に従ってください)。その後、/list-quality-scorecard を実行し、フィルタリング後の出力を評価します。
または、いったん保留します。 5ラウンド以内にプロンプトが収束しなかった場合(修正を続けていた場合)、元データが不十分な可能性があります。再試行する前に、企業の説明、従業員数、技術スタックなどのフィールドを追加してデータをエンリッチしてください。
関連スキル
/icp-onboarding— 最初に実行し、client-profile.yaml を作成します/disco-like、/blitz-list-builder、/google-maps-list-builder、/prospeo-full-export— このスキルで適格性を判定する企業を取得します/personalization-subagent-pattern— コピーのパーソナライズに適用する、同じ承認ループのパターンです