mcpField
I
icp-prompt-builder

icp-prompt-builder

github.com/growthenginenowoslawskiマーケティング・グロース79068 回インストール3 週間前に更新
リポジトリ

icp-prompt-builder について

icp-prompt-builder は、少数の企業を評価してユーザーのフィードバックを反映し、理想顧客の適格性判定プロンプトを調整する Claude Code スキルです。修正のないラウンドが2回続くとプロンプトを保存し、リスト全体の評価に備えます。

主な機能

  1. 01ICP の背景と除外条件を収集
  2. 02各ラウンドで10社を評価
  3. 03フィードバックに基づくプロンプト調整
  4. 04修正なしの2ラウンド後に保存
  5. 05一括スコアリング用プロンプトを準備

活用シーン

  1. 01リスト拡大前に適格基準を調整
  2. 02企業評価を業務上の判断に合わせて修正
  3. 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 回連続したら、このサイクルは終了します。その場合:

  1. 最終調整済みプロンプトを ~/cold-email-ai-skills/profiles/<business-slug>/icp-prompt.txt に保存します
  2. 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
  1. 次のスキル用の一文を出力します。
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 です。

推奨フロー

  1. /icp-onboarding → client-profile.yaml を作成
  2. /disco-like OR /blitz-list-builder OR /prospeo-full-export → 企業データのサンプルを50~100件取得
  3. /icp-prompt-builder → そのサンプルを使って適格性判定プロンプトを調整(通常3~5ラウンド)
  4. リストビルダーでリストを5,000社以上に拡張
  5. 調整済みプロンプトをリスト全体に適用 → qualified: true かつ confidence >= 0.6 のものだけを残す
  6. 適格なサブセットに対して /blitz-list-builder または /list-builder(メール用のフェーズ5)を実行
  7. 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 — コピーのパーソナライズに適用する、同じ承認ループのパターンです

コメント