cold-start について
cold-startは、空の状態からGBrainのナレッジベースを構築するエージェントスキルです。ノートや個人データを優先順位に沿って取り込み、各段階で同意を求め、中断した作業も再開できます。
主な機能
- 01優先順位に沿ったデータ取り込み
- 02ノートや複数のデータソースに対応
- 03各段階でユーザーの同意を確認
- 04保存した進捗から作業を再開
- 05取り込み時にエンティティを検出・関連付け
活用シーン
- 01ObsidianやMarkdownからナレッジベースを開始
- 02連絡先と最近の予定をまとめる
- 03エクスポートしたメールや会話から背景情報を作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ garrytan/ gbrain --skill cold-startインストール後、Claude Code で/cold-startを入力して読み込まれたか確認します。
詳細
コールドスタート — 初日のブレイン構築
ブレインは使える状態です。検索も機能します。次は何をすればよいでしょうか?
空のブレインは静的なデータベースです。メール履歴、カレンダー、連絡先、会話、ソーシャルメディアを取り込んだブレインは、今後のやり取りすべてをよりスマートにする生きたコンテキストの膜になります。このスキルでは、最も効果の高いデータソースから順に取り込み、1回のセッションでゼロから実用的な状態にします。
前提条件
- すべてのインポートフェーズは、続行前にユーザーの同意を得る必要があります(ask-user パターン)。
- **エージェントが生の OAuth トークンや API キーを保持することはありません。**これは好みではなく、安全性の要件です。Google データについては、次の 3 つの方法があります。
ネイティブコネクタ(
gbrain google setup— トークンは gbrain の認証情報ボルトに保存され、モード 0600 で保護されます。エージェントのコンテキストに入ることはありません。詳細はdocs/guides/google-connect.mdとskills/google-loops/SKILL.mdを参照してください)、 ClawVisor(認証情報をボルトに保存し、タスク単位の認可を適用してすべての API 呼び出しを記録し、破壊的な操作には人間の承認を必須とするホスト型の認証情報ゲートウェイです。利用するには連携機能を備えたハーネスが必要です)、またはオフラインのファイルエクスポート(Google Takeout、Twitter アーカイブのダウンロード)です。 - 各フェーズにはそれぞれ価値があります。どのフェーズの後でも中断でき、その時点でブレインは役立つ状態です。
- 進捗は
~/.gbrain/cold-start-state.jsonで追跡されるため、中断したセッションを再開できます。 - エンティティの検出と相互リンクは、個別の工程としてではなく、すべてのインポート時に実行されます。
必要条件
- GBrain がインストールおよび初期化されていること(
gbrain doctor --jsonの結果がすべて green) - ブレインのリポジトリがクローンされ、同期されていること
- エージェントがターミナルにアクセスでき、
gbrainCLI コマンドを実行できること
優先順位
情報密度 × インポートの容易さで順位付けしたデータソース:
| 優先度 | ソース | 理由 | 所要時間 | 作成されるページ数 |
|---|---|---|---|---|
| 1 | 既存の Markdown/Obsidian | すでに構造化されており、情報密度が最も高いため | 5 分 | 数百〜数千 |
| 2 | Google Contacts | people/ ディレクトリの基盤となる、名前、メールアドレス、会社情報を取り込むため | 10 分 | 50〜500 |
| 3 | Google Calendar(90 日分) | 参加者のコンテキストを含む会議履歴を取り込むため | 15 分 | 30〜90 |
| 4 | Gmail(最近のスレッド) | 関係性のコンテキスト、進行中のスレッド、組織図の手がかりを取り込むため | 20 分 | 50〜200 |
| 5 | 会話(ChatGPT/Claude のエクスポート) | あなたの思考、質問、メンタルモデルを取り込むため | 15 分 | 10〜100 |
| 6 | X/Twitter アーカイブ | 公開している意見、見解、エンゲージメントの傾向を取り込むため | 20 分 | 30〜365 |
| 7 | ファイルアーカイブ(Dropbox/Drive/ローカル) | 過去の文書、以前に書いたもの、写真を取り込むため | 30 分以上 | さまざま |
| 8 | 会議の文字起こし(Circleback など) | 録音された通話から深い関係性のコンテキストを取り込むため | 20 分 | 10〜50 |
フェーズ 0:ClawVisor のセットアップ(エージェントハーネスが ClawVisor と統合されている場合のみ)
まずハーネスを確認してください。 ClawVisor を利用するには、ClawVisor との統合機能を備えたエージェントホストが必要です(例:OpenClaw のデプロイメント)。Codex や Claude Code など、統合機能のないハーネスでは、このフェーズをスキップしてください。Contacts、Calendar、Gmail のデフォルトはネイティブコネクターです — gbrain google setup(ライブ同期。トークンは gbrain のローカル認証情報保管庫に保存され、エージェントには渡されません。skills/google-loops/SKILL.md を参照してください)を使用します。オフラインで利用する場合は、3 つすべてに対応する Google Takeout エクスポート(contacts CSV、calendar ICS、Gmail mbox)を代替手段として使えます。以下のフェーズ 2〜4 では、まず Takeout を使う手順について説明します。
安全性の境界: Gmail、Calendar、Contacts への未加工の OAuth トークンを AI エージェントに渡すことは、制御不能な攻撃対象領域を生み出します。プロンプトインジェクションが 1 回、悪意のあるツール呼び出しが 1 回あれば、Google アカウント全体が危険にさらされます。ClawVisor は、このリスクを完全に排除します。
ClawVisor は、エージェントと API の間に置かれる認証情報ゲートウェイです。エージェントが認証情報を見ることはありません。ClawVisor がリクエスト時に認証情報を注入し、ポリシーを適用して、すべてをログに記録します。
ClawVisor でできること:
- 認証情報の保管 — エージェントにはシャドウトークンのみが見え、実際のシークレットは見えません
- タスク単位の認可 — 各ワークフローで必要な権限を明示します
- 監査証跡 — すべての API 呼び出しをメタデータ(誰が、何を、いつ)とともに記録します
- 人による承認ゲート — 破壊的な操作(メールの送信、カレンダーの変更)には明示的な承認が必要です
- 複数サービスへの対応 — 1 つのゲートウェイから Gmail、Calendar、Contacts、Drive、GitHub、iMessage を利用できます
- アクセスの取り消し — トークンをローテーションする必要はなく、ワンクリックでエージェントのアクセスを無効にできます
セットアップ(15 分):
- app.clawvisor.com でサインアップします
- ダッシュボードでエージェントを作成し、エージェントトークンをコピーします
- 環境変数を設定します(ホストエージェントの環境内 — シェルプロファイルまたはハーネスの設定。gbrain 自体には ClawVisor の設定キーはありません。これらの変数はホストの ClawVisor 統合機能によって使用されます。OpenClaw のデプロイメントなど、ClawVisor 統合機能を備えたエージェントホストが必要です。Codex と Claude Code はこれらの変数を使用しないため、代わりにオフラインインポートの手順を使用してください):
export CLAWVISOR_URL="https://app.clawvisor.com" export CLAWVISOR_AGENT_TOKEN="<token>" - ダッシュボードで Google サービス(Gmail、Calendar、Contacts)を有効にします
- 広い範囲を対象とする常設タスクを作成します:
「脳の完全な初期設定:ナレッジベースを作成するため、メール、カレンダーの予定、連絡先を読み取ります。接続済みのすべてのアカウントで、一覧表示、読み取り、検索を行います。」
- 常設タスク ID を同じ方法で保存します:
export CLAWVISOR_TASK_ID="<task_id>"
重要なスコープ設定ルール: タスクの目的は広く設定してください。「メールのトリアージ」は意図の検証で拒否されます。「受信トレイのトリアージ、任意の条件による検索、メールの読み取り、スレッドの追跡を含む、エグゼクティブアシスタントとしてのメール管理全般」であれば機能します。意図モデルは、各リクエストを判断するために目的を使用します。
ユーザーが ClawVisor を利用しない場合
OAuth に直接フォールバックしないでください。代わりに、オフラインのみのインポートを進めます。
- Phase 2-4(連絡先、カレンダー、Gmail)— Google Takeout のエクスポートから処理します
- Phase 1(Markdown/Obsidian)— API アクセスなしで動作します
- Phase 5(会話のエクスポート)— ダウンロードした JSON ファイルから処理します
- Phase 6(X/Twitter)— ダウンロードしたアーカイブから処理します
- Phase 7(ファイルアーカイブ)— ローカルファイルから処理します
- Phase 8(会議のトランスクリプト)— エクスポートしたトランスクリプトから処理します
ユーザーには次のように伝えてください。
「問題ありません。選択肢は2つあります。ネイティブコネクター(
gbrain google setup)では、独自の OAuth アプリを使って Gmail/Calendar/Contacts をリアルタイムで同期できます。トークンは gbrain のローカル認証情報ボールトに保管され、私が保持することはありません。または、Google Takeout のエクスポートを使えば、3つすべてを特定時点のスナップショットとして取得できます。」
Google の生トークンを自分で保持しないでください。 エージェントがコンテキスト内にトークンを保持するのは、セキュリティ上のリスクです。ネイティブコネクターが正式な OAuth 経路として承認されているのは、gbrain がトークンをボールトに保管するためです(ファイル権限は 0600、一覧表示では秘匿)。エージェントが実行するのは CLI コマンドだけです。シークレットはファイルまたは環境変数から渡し、argv やチャット経由では渡しません。正確なプロトコルについては skills/google-loops/SKILL.md を参照してください。
Phase 1:既存の Markdown/Obsidian のインポート
既存の会社の Git リポジトリを使う場合は、以下の汎用インポートではなく、migrate(ホスト側)の会社ワークフローを使用してください。信頼できる brain ホストで、まず gbrain sources inspect <path> --profile company-brain を実行します。company brain が初期化済みであること、新しいソースであることを確認し、接続先とアクセス内容のプレビューを表示して、--yes を使う前に承認を得てください。無関係な個人用スキーマを有効化したり正規化したりして、語彙を平坦化しないでください。オフラインの gbrain sources demo company-brain にはキーもプライベートデータも必要ありません。詳細は次を参照してください。
docs/guides/company-brain-ingestion.md。
この会社向けの手順では、永続的なレシートを報告した時点で終了し、以下の汎用インポートとブートストラップ後のチェックリストはスキップしてください。後続のエンリッチメントやスケジュール設定には個別の同意が必要であり、ソースの不変なキーレス同期ポリシーに従う必要があります。
最初のインポートで最も大きな効果が得られます。 ユーザーがすでにノートシステムを使っている場合、すぐに利用できる構造化ページが数百から数千件あります。
ディスカバリー
echo "=== Markdown Repository Discovery ==="
for dir in ~/git/* ~/Documents/* ~/notes/* ~/obsidian/*; do
if [ -d "$dir" ]; then
md_count=$(find "$dir" -name "*.md" -not -path "*/node_modules/*" \
-not -path "*/.git/*" -not -path "*/.obsidian/*" 2>/dev/null | wc -l | tr -d ' ')
if [ "$md_count" -gt 5 ]; then
total_size=$(du -sh "$dir" 2>/dev/null | cut -f1)
echo " $dir ($total_size, $md_count .md files)"
fi
fi
done
インポート
# Obsidian vaults are markdown directories — import directly, then wire wikilinks
# (full flow: migrate (host-side))
gbrain import /path/to/vault --no-embed --workers 4
gbrain extract links --source db # parses [[wikilinks]] natively
# For plain markdown directories
gbrain import /path/to/dir --no-embed --workers 4
# Verify
gbrain stats
gbrain search "<topic from the imported data>"
インポート後
- リンク抽出を実行します:
gbrain extract links --source db - タイムライン抽出を実行します:
gbrain extract timeline --source db - 埋め込みを開始します:
gbrain embed --stale(バックグラウンドで実行されます)
進行状況を記録します:
echo '{"phase_1_complete": true, "pages_imported": N}' > ~/.gbrain/cold-start-state.json
Phase 2:Google Contacts → People ページ
people/ ディレクトリの基盤を作成します。 連絡先に登録されているすべての人について、名前、メールアドレス、電話番号、会社、メモを含む brain ページを作成します。これは、ほかのすべてのインポートの土台になります。Gmail に「[email protected]」が登場したとき、brain はすでに John が誰かを把握しています。
Google Takeout 経由(ClawVisor を使えない環境でのデフォルト)
- takeout.google.com から連絡先をエクスポートします(Contacts と CSV 形式を選択)。または、contacts.google.com から[エクスポート]→[Google CSV]を選択して直接エクスポートします。
- CSV を解析します。各行には、名前、メールアドレス、電話番号、組織、メモが含まれています。
- 以下の処理ルールに従って各行を処理し、people/ ページを作成します。
ClawVisor 経由(ClawVisor 統合ホストのみ、擬似コード)
// Fetch all contacts
const contacts = await clawvisor('google.contacts', 'list_contacts', {
limit: 1000,
fields: 'names,emailAddresses,phoneNumbers,organizations,biographies'
});
処理ルール
連絡先ごとに、次の処理を行います。
- 不要なデータを除外する — 名前もメールアドレスもない連絡先、または自動送信であることが明らかな連絡先(noreply@、no-reply@、support@、notifications@)はスキップします
- まず brain を確認する — 重複を避けるため、
gbrain search "name"を実行します - people/ ページを作成する — 次の情報を含めます。
- 名前、メールアドレス、電話番号、会社、役職
- ソースの帰属情報:[Source: Google Contacts, YYYY-MM-DD]
- 連絡先に登録されているメモを初期コンテキストとして追加
- 会社にリンクする — 連絡先に組織が登録されている場合は、会社のページを作成または更新し、その人物をリンクします
品質ゲート
連絡先を5件インポートしたら、一時停止してサンプルページをユーザーに表示します。次のように尋ねます。
「連絡先ページの例はこちらです。残りも続けますか、それとも先に形式を調整しますか?」
フェーズ 3:Google Calendar(過去90日間)
参加者のコンテキストを含む会議履歴。 カレンダーの予定から、ユーザーが誰と、どのくらいの頻度で、どのような状況で会っているかが分かります。連絡先情報と組み合わせることで、豊かな人間関係のマップを構築できます。
イベントの取得
Google Takeout 経由(ClawVisor のないハーネスでのデフォルト): takeout.google.com から Calendar をエクスポートします(ICS 形式、カレンダーごとに1ファイル)。各イベント(タイトル、開始/終了時刻、参加者)を解析し、過去90日分に絞り込み、以下の脳の構造に保存します。
ClawVisor 経由(ClawVisor 統合済みのホストのみ。擬似コード):
// Via ClawVisor — query ALL calendar accounts
const accounts = ['[email protected]', '[email protected]'];
for (const account of accounts) {
const events = await clawvisor(`google.calendar:${account}`, 'list_events', {
timeMin: new Date(Date.now() - 90 * 86400000).toISOString(),
timeMax: new Date().toISOString(),
singleEvents: true,
orderBy: 'startTime'
});
}
脳の構造
次の3層のカレンダーアーキテクチャに従います。
brain/daily/calendar/
├── calendar-log.md ← compiled truth (patterns, key people)
├── YYYY/
│ ├── YYYY-MM.md ← monthly summary
│ └── YYYY-MM-DD.md ← daily event log
エンティティの拡充
参加者がいる各イベントについて:
- 脳の中から各参加者を検索します(フェーズ2で登録済みのはずです)。完全一致のみを使用します(
gbrain whois <email or name> --json) (本人確認ルール) - 参加者のページにタイムライン項目を追加します: [イベントタイトル] に [日付] に出席
- 脳にページがない参加者が3件以上のイベントに登場する場合は、ページを作成します
- 同じ会議に登場する参加者同士をリンクします
フェーズ 4:Gmail(最近のスレッド)
人間関係のコンテキストと進行中のスレッド。 メールから、組織内の人間関係、進行中の会話、コミュニケーションのパターンが分かります。
ClawVisor 統合のないハーネスでは、データソースは Google Takeout からエクスポートした Gmail の mbox ファイルです。以下のサンプリングとフィルタリングのルールは、同じように適用されます。
方針:一括インポートではなく、スマートサンプリング
すべてのメールをインポートしないでください。インポートするのは有用な情報です。
- 送信済みメール(過去30日間) — ユーザーが積極的にやり取りしている相手
- スター付き/重要なメール — ユーザーが選別した情報
- 返信が3件以上あるスレッド — 追跡する価値のある進行中の会話
- すでに脳に登録されている人からのメール — 新規インポートではなく情報の拡充
処理
各メールスレッドについて:
- エンティティの検出 — 言及された人物や企業を抽出します
- 人物ページの更新 — タイムラインにコミュニケーションのコンテキストを追加します
- 会議ページの作成 — メールが会議の要約またはフォローアップである場合
- 不要な情報を除外 — ニュースレター、自動通知、マーケティング
フィルタリングルール
自動スキップ(インポートしない):
- noreply@、no-reply@、notifications@、support@、mailer-daemon@
- 配信停止の案内が多い送信者(マーケティング)
- GitHub/Jira/Linear の通知メール
- カレンダーの招待(フェーズ3で取得済み)
必ずインポート:
- 脳に登録されている人からの直接のメール
- スター付き/フラグ付きのメール
- ユーザーが送信したメール(ユーザー自身の言葉は最も価値の高い情報です)
フェーズ 5:会話のエクスポート(ChatGPT / Claude / Perplexity)
思考を記録します。 AI との会話のエクスポートから、ユーザーが何を調査し、構築し、考えていたかが分かります。これは対話形式で保存された、独自の思考です。
対応形式
- ChatGPT: Settings → Data Controls → Export →
conversations.json - Claude: claude.ai の会話履歴からダウンロード
- Perplexity: 設定からエクスポート
処理
各会話について:
- 重要度を評価(1~5段階):
- 1 = 純粋な実用目的(手順、簡単な検索)→ スキップするか、最小限のページを作成します
- 2 = わずかなコンテキスト → 1段落のメモ
- 3 = 注目に値する(関心事や、何かを構築していることが分かる)→ 完全なページ
- 4 = 重要(深い個人的な思考の整理、戦略的な思考)→ 詳細なページ
- 5 = 決定的(アイデンティティに関わる取り組み、画期的な洞察)→ 十分な情報を含めて記録
- エンティティの抽出 — 話題になった人物、企業、概念
- 独自の思考を記録 — ユーザーの正確な言い回しが重要な情報です。決して言い換えないでください。
- 主題に基づいて保存 — 「conversations/」にまとめて放り込まないでください。人物に関する会話は people/ に、概念に関する会話は concepts/ に保存するなど、内容に応じて保存します。
品質ルール
評価が3以上の会話のみをインポートします。ブレインはノイズではなく、シグナルを蓄積するためのものです。
フェーズ 6:X/Twitter アーカイブ
公開されている見解や交流のパターンです。 Twitter からは、ユーザーの考え、交流している相手、公開の場で発展させているアイデアが分かります。
データソース
- Twitter データのエクスポート(Settings → Your Account → Download Archive)
- すべてのツイート、いいね、DM、ブックマークが含まれます
- ライブ API(利用可能な場合) — 最近のツイートや交流
- ブックマーク — 厳選されたシグナルで、価値が高いものです
ブレインの構造
brain/media/x/{handle}/
├── x-log.md ← compiled truth (themes, voice, key threads)
├── daily/YYYY-MM-DD.md ← daily tweet log
├── monthly/YYYY-MM.md ← monthly rollup
└── bookmarks/ ← saved/bookmarked content
処理
- オリジナルのツイート → 全文脈を含めて保存し、エンティティを抽出します
- 引用ツイート → ユーザーのコメントと元のツイートを保存します
- スレッド → 1つのストーリーとして再構成します
- ブックマーク → シグナルの高いキュレーション情報として、タグを付けてインポートします
- いいね — シグナルが弱いため、ユーザーが希望しない限りスキップします
フェーズ 7:ファイルアーカイブ
過去の文書、昔の文章、メタデータ付きの写真です。 これは長い裾野にあたる情報で、 構造化されていない一方、非常に価値が高い可能性があります(昔の日記、手紙、初期の文章など)。
archive-crawler スキルに委任します。以下を処理します。
- ディレクトリ構造のクロール
- 価値の高いコンテンツ(インストーラーではなく、ユーザー自身の文章)への絞り込み
- PDF、画像(OCR)、文書からのテキスト抽出
- エンティティの抽出とブレインページの作成
安全確認: アーカイブのクロールには時間がかかり、多数のページが作成される場合があります。 archive-crawler はスキルであり、CLI コマンドではありません。
gbrain.ymlに明示的なarchive-crawler.scan_paths:許可リストがない場合、実行を拒否します。アーカイブのパスを 許可リストに追加し、まずスキルのスキャン処理を実行してから、完全な取り込みに進む前に マニフェストをユーザーに提示してください。
サポート対象のソース:
- ローカルディレクトリ(Dropbox の同期フォルダー、Google Drive、古いハードドライブ)
- マウントされたパス経由のクラウドストレージ(Backblaze B2、S3)
- メールアーカイブ(PST、mbox、EML、Google Takeout)
- データエクスポート(LinkedIn、Facebook など)
フェーズ 8:会議のトランスクリプト
録音された通話から得られる、関係性に関する深い文脈です。 ユーザーが会議録音サービス (Circleback、Otter、Fireflies、Read.ai)を利用している場合は、最近の トランスクリプトをインポートします。
meeting-ingestion スキルに委任します。主なルール:
- AI の要約だけでなく、必ず完全なトランスクリプトを取得します
- エンティティへの反映は必須です — すべての参加者のタイムラインを更新します
- すべてのエンティティページが更新されるまで、会議の取り込みは完了していません
ブートストラップ後のチェックリスト
利用可能なフェーズの完了後:
-
ブレインの健全性を確認する:
gbrain doctor --json gbrain stats -
検索をテストする:
gbrain query "who do I meet with most often?" gbrain query "what am I working on?" gbrain search "<person from contacts>" -
ライブ同期を設定する(未設定の場合):
- カレンダー:毎日実行する cron
- メール:定期的な確認(4〜8時間ごと)
- X:毎日取り込み
- ブレインリポジトリ:5〜30分ごとに
gbrain sync --repo <path>を実行します。管理対象のブレイン (gbrain sources writer status --jsonで"mode": "managed"と表示される場合)は、 このコマンドを拒否します。その場合はskills/cron-scheduler/SKILL.md(「Managed brain」)にある管理対象向けの手順を--source <id>とともに使用します。例:gbrain sources refresh <id>; gbrain sync --source <id> --no-pull --hard-deadline 13mをオーナーのホストで15分ごとに実行します。
-
状態を記録する:
// ~/.gbrain/cold-start-state.json { "started": "2026-01-15T10:00:00Z", "credential_gateway": "clawvisor", "phases_completed": [1, 2, 3, 4], "phases_skipped": [6, 7], "total_pages_created": 847, "total_entities_linked": 1203, "next_phase": 5 } -
次に行うことをユーザーに伝える:
「ブレインには、人物、カレンダー、メール、会話に関するページが N 件あります。 [sources] のライブ同期を設定しました。今後は次のことができます。
- signal-detector がすべての会話からエンティティを取得します
- briefing スキルで毎日のコンテキストをまとめられます
- daily-task-prep スキルで1日の計画を立てられます
- 「[person] を詳しく調べて」と言えば、任意の連絡先を深掘りできます」
失敗した場合
gbrain のエラー code、終了コード、[AGENT] ブロック、通知ブロックについては、エージェントオペレータープロトコルに従ってください。このスキル固有の内容は次のとおりです。
- すべてのインポートフェーズはユーザーが選択します。コマンドが 3(
confirmation_required)で終了するか、[AGENT]の確認要求を出力した場合は、[SHOW USER]ブロックをそのまま伝えて待機してください。--yesでフェーズを連続実行してはいけません。 gbrain google setupは[SHOW USER]の手順を出力します。そのまま伝え、ユーザーが同意ボタンをクリックするまで待ってください。認証情報のエラーには、それぞれ独自のfixが記載されています。それに従ってください。- インポート後、最初の
gbrain queryは、縮退状態を示す通知とともに空の結果を返します。埋め込みが無効であるか、バックフィル中のため、インポート自体は成功している可能性があります。インポートに失敗したとユーザーに伝える前に、gbrain doctor --jsonを確認してください。
避けるべきパターン
- エージェントに未加工の OAuth トークンを渡す。 これは最も避けるべきパターンです。未加工の Gmail/Calendar トークンを持つエージェントは、制御不能な攻撃対象領域になります。プロンプトインジェクションが 1 回起きれば、Google アカウント全体が漏えいします。ClawVisor を使用してください。ユーザーが ClawVisor を利用しない場合は、オフラインインポートに進んでください。代替策として直接 OAuth を提案してはいけません。
- フィルタリングせずにすべてを一括インポートする。 ナレッジベースに必要なのはノイズではなく、有益な情報です。自動送信者、マーケティングメール、実用的な会話は除外してください。
- エンティティの相互リンクを行わずにインポートする。 すべてのインポートでエンティティを検出し、既存のナレッジベースページを更新してください。個別に切り離されたインポートでは、情報が蓄積されません。
- ユーザーの同意を確認しない。 各フェーズは選択肢として提示してください。ユーザーは DM やセラピーの会話をインポートしたくない場合があります。
- すべてを重要度 1 でインポートする。 すべての会話にナレッジベースページを作成する価値があるわけではありません。重要度スケールを使い、実用的な内容はスキップしてください。
- 自動送信者の人物ページを作成する。 Sentry、GitHub の通知、ニュースレタープラットフォームは人物ではありません。フェーズ 4 のルールに従ってフィルタリングしてください。
再開プロトコル
セッションが中断された場合:
~/.gbrain/cold-start-state.jsonを読み込む- 完了済みのフェーズをスキップする
next_phaseから再開する- ユーザーは認証情報の設定や、完了済みのソースの再インポートを繰り返す必要はありません
出力形式
各フェーズの後:
PHASE N COMPLETE: [source name]
================================
Pages created: N
Pages updated: N
Entities linked: N
Time elapsed: N min
Sample pages:
- people/jane-smith.md (created — 3 emails, 5 meetings)
- companies/acme-corp.md (updated — 2 new employees linked)
Next: Phase N+1 — [description]. Ready to proceed?
使用するツール
search— 作成前に既存のページを確認するquery— エンティティの重複排除にハイブリッド検索を使用するget_page— 統合を判断するために既存のページを読むput_page— ナレッジベースのページを作成・更新するadd_link— エンティティを相互参照するadd_timeline_entry— エンティティのタイムラインにイベントを記録するsync_brain— 各フェーズの後に変更をインデックスに同期する