data-research について
data-researchは、メール、Web、APIの情報を構造化された調査トラッカーにまとめる設定可能なスキルです。定期的なデータ収集向けで、7段階の処理で情報源を保存し、重複を除き、記録から原資料へリンクします。
主な機能
- 017段階の調査パイプライン
- 02YAMLレシピによる情報源設定
- 03正規表現を優先した分類と抽出
- 04原資料の保存と相互リンク
- 05トラッカー更新前の重複排除
活用シーン
- 01投資家向け更新の指標追跡
- 02経費や領収書データの整理
- 03メールから企業情報を収集
- 04定期的なデータ収集の設定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ garrytan/ gbrain --skill data-researchインストール後、Claude Code で/data-researchを入力して読み込まれたか確認します。
詳細
データリサーチ
構造化されたリサーチパイプライン:ソースを検索し、構造化データを抽出し、 生データをアーカイブし、重複を排除し、正規トラッカーを更新して、エンティティにバックリンクします。
契約
メールから構造化データを抽出するあらゆるパイプラインに対応する単一のスキルです。投資家アップデート、経費、企業指標の追跡で異なるのは、検索クエリ、抽出スキーマ、トラッカーページの形式のみです。 3つすべてで、パラメーター化されたレシピを使う同一の7フェーズパイプラインを使用します。
使用するタイミング
- メール、ウェブ、API ソースから構造化データを追跡したい場合
- 「リサーチ」「追跡」「メールから抽出」「トラッカーを作成」と依頼された場合
- 投資家アップデート、寄付、企業指標、届出について言及された場合
- 定期的なデータ収集を設定したい場合(cron レシピを使用)
フェーズ
フェーズ 1:リサーチレシピを定義する
会話のコンテキスト、最近の brain アクティビティ、進行中のタスク(ops/tasks.md)、メモリファイルからリサーチ対象を推測します。依頼が曖昧な場合は、ユーザーがこれまで取り組んでいた内容に基づいて、最も可能性の高い解釈を提示します。コンテキストが本当に不十分な場合に限り、確認を求めます。選択肢:
- 組み込みレシピを選ぶ:investor-updates、expense-tracker、company-updates
- カスタムレシピを定義する:ソースクエリ、分類ルール、抽出スキーマ、 トラッカーページのパス、トラッカーの形式
レシピは ~/.gbrain/recipes/{name}.yaml にある YAML ファイルです。組み込みレシピファイルをコピーして各フィールドを編集し、新しいレシピを作成します。
フェーズ 2:ソースを検索する
まず Brain を検索します(すでにデータがあるかもしれません)。次に:
- メール:認証情報ゲートウェイ経由で検索します。期間を区切ったクエリを使います(四半期単位、切り詰められた場合は月単位)
- ウェブ:検索を通じて公開届出、プレスリリース、規制データを調べます
- API:レシピで定義された構造化データソースを使用します
- 添付ファイル:PDF の抽出、HTML の除去を行います
フェーズ 3:分類する
まず決定論的な方法(レシピの正規表現パターン)を使い、次に LLM にフォールバックします。 今後の正規表現の改善に備え、LLM へのフォールバックをすべて記録します(失敗から改善するループ)。 レシピの分類ルールに基づき、マーケティング、ニュースレター、ノイズは除外します。
フェーズ 4:構造化データを抽出する
抽出の完全性に関するルール:
- 抽出を行う前に、生のソースをすぐに保存する
- まず決定論的な正規表現を使ってフィールドを抽出し、次に LLM にフォールバックする
- バッチ結果を要約するときは、保存済みファイルを読み直す
- バッチ処理後の LLM の作業メモリを決して信頼しない
これにより、既知のハルシネーションの不具合を防ぎます。この不具合では、バッチ処理された金額は、保存済みファイルでは正しかったにもかかわらず、LLM の作業メモリに基づくと13件中13件すべてが誤っていました。
フェーズ 5:生のソースをアーカイブする
- メール本文や API レスポンスには
put_raw_dataを使用します - PDF の添付ファイルや文書には
file_uploadを使用します - ストレージ内の大きなファイルには
.redirect.yamlポインターを作成します - トラッカーの各エントリーから、生のソースに必ずリンクします
フェーズ 6:重複を排除する
トラッカーに追加する前に:
- 完全一致(キーとなるフィールドが同じ)→ スキップ
- あいまい一致(同じエンティティ+日付+許容範囲内の類似した金額)→ 要確認としてフラグを付ける
- 同じエンティティ+日付で金額が異なる → メモを添えて追加する(訂正の可能性があります)
フェーズ 7:正規トラッカーを更新し、バックリンクする
- 既存のトラッカーページ(Markdown テーブル)を解析します
- 適切なセクション(年/四半期/エンティティ別)に新しいエントリーを追加します
- 累計を計算します
- 言及されたすべてのエンティティにバックリンクします(人物 → people/ ページ、会社 → companies/ ページ)
- エンティティページにはエンリッチメントサービスを使用します
組み込みレシピ
GBrain には3つのレシピ例が付属します(~/.gbrain/recipes/ を参照):
- investor-updates — 投資家アップデートメールから MRR、ARR、成長率、バーンレート、ランウェイ、従業員数を抽出します
- expense-tracker — 領収書メールから金額、受取人、プラットフォームを抽出します(サブスクリプション、サービス、継続的な請求)
- company-updates — ポートフォリオ企業のアップデートメールから売上、ユーザー数、主要指標を抽出します
失敗した場合
gbrain のエラー code、終了コード、[AGENT] ブロック、通知ブロックについては、エージェントオペレータープロトコルに従ってください。このスキル固有の対応は次のとおりです。
file_uploadは許可されたルート外のパスでは拒否されます(リモートからの呼び出しは範囲が制限されます)。脳のホストからアップロードするか、内容をインラインで渡すようユーザーに依頼してください。put_page/add_timeline_entryがrevision_conflictまたはwrite_pendingを返した場合、前者では再読み込みして変更を統合し、後者ではgbrain write-request <request_id>をポーリングしてください。- 抽出元でレート制限(
rate_limited)が発生した場合は、指定された時間だけ待ってから再試行し、カーソルは保持してください。欠落した行を推測せず、欠落があったことを記録してください。
アンチパターン
- バッチ処理後の金額について、LLM の作業記憶を信頼する(抽出の完全性ルールを使用してください)
- 生の情報源へのリンクなしでトラッカー項目を作成する
- 重複排除せずに実行する(項目が二重にカウントされます)
- パイプラインコードに情報源固有のパターンをハードコーディングする(レシピを使用してください)
出力形式
レシピの tracker_page パスにある脳のページに、Markdown の表を記載します。
### 2026
| Date | Company | MRR | ARR | Growth | Status |
|------|---------|-----|-----|--------|--------|
| 2026-04-01 | Example Co | $188K | $2.3M | +14.7% MoM | [Source](link) |
各項目から生の情報源にリンクします。各セクションの末尾に累計を記載します。
規約
引用とバックリンクのルールについては、skills/conventions/quality.md を参照してください。