company-research について
company-research は、Browserbase Search で見込み企業を探し、Plan→Research→Synthesize の手順で評価する Claude スキルです。スコア付きの企業調査ファイルを作成し、営業開拓向けのレポートと CSV にまとめます。
主な機能
- 01Browserbase Search による企業発見
- 02深度モード別の企業調査
- 03ICP に基づく企業スコア付け
- 04企業ごとの調査ファイル作成
- 05HTML レポートと CSV の生成
活用シーン
- 01ウェブ検索から見込み顧客リストを作成
- 02営業 ICP に照らして対象企業を評価
- 03CRM や表計算への取り込み用に企業調査を準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ browserbase/ skills --skill company-researchインストール後、Claude Code で/company-researchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreLICENSE.txtprofiles/example.jsonreferences/example-research.mdreport-template.htmlresearch-patterns.mdworkflow.mdscripts/compile_report.mjsextract_page.mjslist_urls.mjspackage.json詳細
企業調査
営業先となる企業を見つけ、詳細に調査します。企業の発見には Browserbase Search API を使用し、深掘り調査では Plan→Research→Synthesize のパターンを使用して、スコア付きの調査レポートと CSV を出力します。
必須:BROWSERBASE_API_KEY 環境変数と、インストール済みの browse CLI。
初回実行時のセットアップ:初回実行時には、browse cloud fetch、browse cloud search、cat、mkdir、sed などの実行許可を求められます。それぞれについて、「Yes, and don't ask again for: browse cloud fetch:*」(または同等の選択肢)を選ぶと、そのセッション中は自動的に許可されます。永続的に許可するには、以下を ~/.claude/settings.json の permissions.allow に追加します。
"Bash(browse:*)", "Bash(bunx:*)", "Bash(bun:*)", "Bash(node:*)",
"Bash(cat:*)", "Bash(mkdir:*)", "Bash(sed:*)", "Bash(head:*)", "Bash(tr:*)", "Bash(rm:*)"
パスのルール:すべての Bash コマンドでは、常に省略しない完全なパスを使用してください。~ や $HOME は使用しないでください(どちらも「シェル展開構文」の許可プロンプトを引き起こします)。ホームディレクトリは一度だけ解決し、以降はすべての場所でそのパスを使用してください。サブエージェントのプロンプトを作成する際は、{SKILL_DIR} を省略しない完全なパスに置き換えてください。
出力ディレクトリ:調査結果はすべて ~/Desktop/{company_slug}_research_{YYYY-MM-DD}/ に出力します。このディレクトリには、調査した企業ごとに 1 つの .md ファイルと、最後に 1 つの .csv ファイルが含まれます。ユーザーは、スコア付きのスプレッドシートと調査ファイル一式の両方をデスクトップで受け取ります。
重要 — ツールの制限(メインエージェントとすべてのサブエージェントに適用):
- すべてのウェブ検索には
browse cloud searchを使用してください。WebSearch は絶対に使用しないでください。 - すべてのページコンテンツの抽出には
node {SKILL_DIR}/scripts/extract_page.mjs "<url>"を使用してください。このスクリプトはbrowse cloud fetch --output経由で取得し、タイトル、メタタグ、表示されている本文テキストを解析します。また、取得に失敗した場合や、JavaScript で描画されたコンテンツがほとんど返されない場合は、自動的にbrowse get markdownにフォールバックします。browse cloud fetch | sedのパイプラインを手作業で作成することは絶対に避けてください。メタタグが削除され、標準出力の JSON エンベロープも解析されません。WebFetch は絶対に使用しないでください。 - すべての調査結果は、サブエージェントが
{OUTPUT_DIR}/{company-slug}.mdに Bash ヒアドキュメントを使って、企業ごとに 1 つの Markdown ファイルとして書き出してください。Write ツールやpython3 -cは絶対に使用しないでください。ファイル形式についてはreferences/example-research.mdを参照してください。 - レポートと CSV の作成には
node {SKILL_DIR}/scripts/compile_report.mjs {OUTPUT_DIR} --openを使用してください。このコマンドで HTML レポートと CSV が一括生成され、ブラウザーで概要が開きます。 - URL の重複排除には、発見後に
node {SKILL_DIR}/scripts/list_urls.mjs /tmpを使用してください。 - サブエージェントは Bash ツールのみを使用してください。他のツールは使用できません。
- メインエージェントは、発見時の生の JSON バッチファイルを絶対に読み込まないでください。 重複排除には
list_urls.mjsを使用してください。
重要 — ハルシネーション防止ルール(メインエージェントとすべてのサブエージェントに適用):
- サイトのフォント、フレームワーク(Framer/Next.js/React)、デザインシステム、書体から
product_description、industry、target_audienceを推測することは絶対に避けてください。これらは見た目に関するものであり、企業が何を販売しているかを示すものではありません。 - ユーザー自身の ICP を調査対象の説明に反映させないでください。調査対象が何をしているかわからない場合は、ICP に無理に当てはめず
Unknownと記載してください。 product_descriptionには、extract_page.mjsの出力(TITLE、META_DESCRIPTION、OG_DESCRIPTION、HEADINGS、BODY)にある具体的なフレーズを引用または言い換えて記載する必要があります。これらのフィールドに製品を示す内容が見つからない場合は、Unknown — homepage content not accessibleと記載してください。product_descriptionがUnknownの場合、icp_fit_scoreは 3 を上限とし、icp_fit_reasoningにはInsufficient evidence — homepage returned no readable contentと設定してください。
重要 — 許可プロンプトの最小化:
- サブエージェントは、連結したヒアドキュメントを使って、すべてのファイル書き込みを 1 回の Bash 呼び出しにまとめる必要があります。Bash 呼び出し 1 回につき、許可プロンプトは 1 回です。
&&で連結して、すべての検索とすべての取得をそれぞれ 1 回の Bash 呼び出しにまとめてください。
パイプラインの概要
以下の5つのステップを順番に実行します。ステップを省略したり、順序を入れ替えたりしないでください。
- 企業調査 — ユーザーの会社、製品、販売先を深く理解します
- 調査深度の選択 — 希望するターゲット数に基づいて調査の深度を選択します
- 発見 — 多様な検索クエリを使ってターゲット企業を見つけます
- 詳細調査とスコアリング — 各企業を調査し、ICP への適合度をスコアリングします
- レポートと CSV — 調査結果を提示し、スコア付き CSV を作成します
ステップ 0:出力ディレクトリの設定
開始前に、ユーザーのデスクトップに出力ディレクトリを作成します。
OUTPUT_DIR=~/Desktop/{company_slug}_research_{YYYY-MM-DD}
mkdir -p "$OUTPUT_DIR"
{company_slug} をユーザーの会社名(小文字、ハイフン区切り)に、{YYYY-MM-DD} を今日の日付に置き換えます。サブエージェントのすべてのプロンプトに {OUTPUT_DIR}(~ を使わない完全なリテラルパス)を渡し、そこに調査ファイルを書き込むようにします。
また、以前の実行で作成された発見バッチファイルも削除します。
rm -f /tmp/company_discovery_batch_*.json
ステップ 1:企業の詳細調査
このステップが最も重要です。以降のすべての工程の品質は、ユーザーの会社をどれだけ深く理解できるかに左右されます。
-
ユーザーに会社名または URL を尋ねます
-
既存のプロフィールを確認します:
{SKILL_DIR}/profiles/内のファイルを一覧表示します(example.jsonは無視します)- 一致するプロフィールがある場合 → 読み込み、ユーザーに「{researched_at} に作成したプロフィールがあります。現在も正確ですか?」と提示します。はいの場合はステップ 2 に進みます。
- プロフィールがない場合 → 以下の詳細調査に進みます。
-
Plan→Research→Synthesize のパターンを使って、ユーザーの会社について詳細な調査を実施します。 サブ質問のテンプレートと調査方法については、
references/research-patterns.mdを参照してください。主な調査手順:
- 検索:
browse cloud search "{company name}" --num-results 10 - ホームページを取得:
node {SKILL_DIR}/scripts/extract_page.mjs "{company website}" - サイトマップからサイト内のページを見つけます(
/aboutや/customersのようなパスをハードコードしないでください):browse cloud fetch --allow-redirects "{company website}/sitemap.xml"— サイトマップは小さいため、通常のbrowse cloud fetchで問題ありませんcustomer、case-stud、pricing、about、use-case、industry、solutionなどのキーワードを含む URL を探します- 必要に応じて、ページの説明を確認するために
/llms.txtも取得します - 最も関連性の高い URL を3〜5件選び、
extract_page.mjsで抽出します(通常のbrowse cloud fetchは使用しないでください)
- 外部の情報と競合他社を検索します
- 確信度を付けて調査結果を蓄積します
プロフィールにまとめます: 会社、製品、既存顧客、競合他社、ユースケース。 ICP やサブバーティカルは含めないでください。これらは実行ごとに決定します。
- 検索:
-
確認のため、プロフィールをユーザーに提示します。確認が取れるまで先に進まないでください。
-
確認済みのプロフィールを
{SKILL_DIR}/profiles/{company-slug}.jsonに保存します -
チェックボックス付きの
AskUserQuestionを使って、追加の質問をします:- 「どのセグメントをターゲットにしますか?」 — 企業調査から導いた選択肢を提示します
- 「企業の規模は?」 — スタートアップ、中堅企業、大企業、すべて
- 「企業数/調査の深度は?」 — クイック(約100社)、詳細(約50社)、より詳細(約25社)
- ユーザーとのやり取りはこれだけです。この後は、結果が用意できるまで何も伝えずに実行します。
ステップ 2:調査深度の選択
| モード | 1社あたりの調査内容 | 最適な用途 |
|---|---|---|
quick | ホームページ+検索1〜2件 | 約100社を幅広く調査 |
deep | サブ質問2〜3件、ツール呼び出し5〜8回 | 約50社をしっかり調査 |
deeper | サブ質問4〜5件、ツール呼び出し10〜15回 | 約25社を徹底的に調査 |
ステップ 3:ディスカバリー
計算式:検索クエリの必要数は ceil(requested_companies / 35) です。絞り込みで通常 50~70%が除外されるため、目標の約 2~3 倍を発見してください。
次のパターンで検索クエリを作成します。
- 業界 + 企業の成長段階 + 地域(「fintech startups series A Bay Area」)
- テクノロジースタック + ユースケース(「companies using Selenium for web scraping」)
- 競合企業との近接性(「alternatives to {known company in ICP}」)
- 購買担当者のペルソナ + 課題(「engineering teams struggling with browser automation」)
手順:
- すべてのディスカバリーサブエージェントを一度に(1 メッセージにつき最大約 6 つ)起動します。それぞれのエージェントは、1 回の Bash 呼び出しでクエリをすべて実行します。
browse cloud search "{query}" --num-results 25 --output /tmp/company_discovery_batch_{N}.json - すべてのウェーブが完了したら、重複を排除します:
node {SKILL_DIR}/scripts/list_urls.mjs /tmp - URL リストを絞り込みます — 次のものを削除します。
- ブログ記事、ニュース記事(globenewswire.com、techcrunch.com など)
- ディレクトリ/アグリゲーター(tracxn.com、crunchbase.com、g2.com)
- ユーザー自身の競合企業と既存顧客(プロフィールから確認) 企業のホームページのみを残します。
サブエージェントのプロンプトテンプレートとウェーブ管理については、references/workflow.md を参照してください。
ステップ 4:詳細調査とスコアリング
サブエージェントを起動して、企業を並行して調査します。エンリッチメント用サブエージェントのプロンプトテンプレートについては、references/workflow.md を参照してください。調査方法の全容については、references/research-patterns.md を参照してください。
手順:
-
絞り込んだ URL をサブエージェントごとにグループ分けします(簡易:約 10 件、詳細:約 5 件、より詳細:約 2~3 件)。
-
すべてのエンリッチメント用サブエージェントを一度に(1 メッセージにつき最大約 6 つ)起動します。
-
各サブエージェントは Bash のみを使用し、企業ごとに次を実行します。
フェーズ A — 計画(簡易モードでは省略): ICP とエンリッチメント項目に基づいて、2~5 個のサブクエスチョンに分解します。
フェーズ B — 調査ループ: ページを検索・取得し、調査結果を抽出します。ステップ数の上限を守ってください(簡易:2~3、詳細:5~8、より詳細:10~15)。
フェーズ C — 統合: 根拠を示しながら ICP 適合度を 1~10 で評価します。調査結果をもとにエンリッチメント項目を埋めます。
-
サブエージェントは、連結したヒアドキュメントを使って 1 回の Bash 呼び出しですべての Markdown ファイルを
{OUTPUT_DIR}/に書き込みます。 -
すべてのサブエージェントが完了したら、ステップ 5 に進みます。
重要:確認済みの ICP の説明を、すべてのサブエージェントプロンプトに一字一句そのまま含めてください。完全なリテラルの {OUTPUT_DIR} パスをすべてのサブエージェントに渡してください。
ステップ 5:レポートと CSV
-
HTML レポートと CSV を生成します(概要が自動的にブラウザーで開きます)。
node {SKILL_DIR}/scripts/compile_report.mjs {OUTPUT_DIR} --open次のファイルが生成されます。
{OUTPUT_DIR}/index.html— スコア付きテーブルを含む概要ページ(ブラウザーで開きます){OUTPUT_DIR}/companies/*.html— 個別の企業ページ(概要からリンクされています){OUTPUT_DIR}/results.csv— シート/CRM にインポートできる、スコア付きのスプレッドシート
-
チャット内にも概要を提示します。
## Company Research Complete
- **Total companies researched**: {count}
- **Depth mode**: {mode}
- **Score distribution**:
- Strong fit (8-10): {count}
- Partial fit (5-7): {count}
- Weak fit (1-4): {count}
- **Report opened in browser**: ~/Desktop/{company_slug}_research_{date}/index.html
- ICP スコア順に並べた上位企業をテーブルで表示します。
| Company | Score | Product | Industry | Fit Reasoning |
|---------|-------|---------|----------|---------------|
| Acme | 9 | AI inventory management | E-commerce SaaS | Series A, uses Selenium, expanding to EU |
- 上位 3~5 社について、主な調査結果、適合性が高い理由、アプローチする際の具体的な切り口を含む簡潔な調査概要を提示します。
特定の企業をさらに詳しく調査する、スコアリング基準を調整する、または異なるクエリでディスカバリーを再実行することを提案してください。