データとプライバシー¶
マシンの外に送られるもの: 1 つだけです。セッションを分析するとき、そのセッションをまとめた要約(機密情報は先に伏せ字にします)が、
分析用に選んだものに送られます:あなた自身のログインで Claude Code(claude -p、既定)なら Anthropic に、Codex(codex exec)
なら OpenAI に、Bob Shell(bob run)ならあなたの Bob API キーで IBM に、または設定したモデルプロバイダーにあなた自身のキーで送られます(あなたの
コンピューターの Ollama なら、何も外に出ません)。
Interlatch の作者やその他のサービスには何も送られず、テレメトリもありません。ほかの接続の 1 つは
アップデート確認です。pypi.org に最新のバージョン番号を問い合わせるだけで、あなたに関する情報は送りません。Status ページで Check for updates を押したときに実行され、同じ場所の Check for updates daily か Notify me about new versions をオンにした場合だけ 1 日 1 回実行されます(どちらも既定はオフ。後者は interlatch install が尋ねます)。Codex Cloud を接続した場合は、
同期のたびに codex cloud CLI も実行され、Codex のログインで OpenAI からあなた自身のタスクを取得します。こちらから何かを送ることはありません。
claude.ai や ChatGPT のエクスポートを取り込むときはチャットだけを読み、アカウントのファイル(users.json、user.json)は開きません。
提案した行が公開リポジトリに入る前に警告するため、GitHub のリモートがあるプロジェクトでは、あなた自身の gh のログインで
gh repo view を実行します。GitHub に送るのはリポジトリの名前だけで、結果は 1 週間覚えておきます。gh が
なければ何も送りません(提案)。
スマートフォンやほかのコンピューターと使う場合(スマートフォンとほかのコンピューター)も、あなた自身のデバイスの外には
何も出ません。interlatch tailnet on はダッシュボードを Tailscale のネットワーク内で、あなたの Tailscale ログインだけに開きます。
ハブに参加したコンピューターがハブに送るものは 2 通りです。share = "everything"(既定)では、元のセッションファイルを
伏せ字なしで(アーカイブと同じく)送ります。セッションに現れた秘密情報(プロンプトに貼ったキー、エージェントが読んだ .env など)は、
そのままハブとその管理者に届きます。share = "knowledge" では、伏せ字にしたダイジェストから作った要約とプロジェクトの学びだけを送ります。
自分で運用していないハブには knowledge を選んでください。tailnet 内や HTTPS のプロキシ経由なら暗号化されて届きますが、
http:// のままでは暗号化されません。
Postgres へのコピー(Postgres へのコピー)は、設定しない限りオフです。設定すると、バックグラウンド実行のたびに
選んだデータベースへアーカイブを書き込みます。include = "knowledge"(既定)ではセッションの詳細・要約・分析、教訓、ナレッジベース、
使用量で、プロンプトとトランスクリプトは含みません。"everything" ではプロンプトとトランスクリプトも、秘密情報を伏せ字にして送ります。
除外したプロジェクトのセッションは送りません。インターネット越しの接続は、オフにしない限り TLS(SSL モード require)を使います。
| ローカルに保存されるもの | 場所 |
|---|---|
| データベース:セッション、イベント、ナレッジ、用語集、振り返り | ~/.interlatch/chronicle.db(SQLite) |
| 元のトランスクリプト(無期限に保存、gzip) | ~/.interlatch/archive/ |
| Markdown 保管庫 | ~/.interlatch/notes/ |
| ログ | ~/.interlatch/logs/ |
| Interlatch が編集したエージェントの設定ファイルと指示ファイルのバックアップ | ~/.interlatch/backups/ |
セッションごとのステータスラインの使用量(--statusline を使った場合のみ) |
~/.interlatch/statusline/ |
| アプリの起動スクリプトとウインドウの保存領域 | ~/.interlatch/bin/interlatch、~/.interlatch/webview/ |
| このコンピューターの ID と名前、ハブに示す鍵、ハブのトークン(鍵とトークンはあなただけが読めます) | ~/.interlatch/machine.json、~/.interlatch/machine-key、~/.interlatch/hub-token |
| ハブで:ほかのコンピューターが送ってきたセッションファイル | ~/.interlatch/machines/ |
| ミラーの接続情報(パスワードを含む。自分だけが読める) | ~/.interlatch/mirror.env |
詳細¶
- システムマップはマニフェストを読みます。 各プロジェクトが何でできているかを描くため、プロジェクトフォルダーにある
決まった短いリストのファイルだけを、2 階層下まで読み取り専用で読みます:パッケージのマニフェスト、compose ファイル、
Dockerfile、Terraform、GitHub ワークフロー、vite の設定、
.env.example、デプロイ設定。.envやソースコードは読まず、 何も保存も送信もしません(マップはメモリ上で作り直します)。git のリモートは認証情報を除いて表示します。[systems] read_manifests = falseで無効にできます(システムマップ)。 - 伏せ字処理。 API キー、トークンなどの機密情報は、呼び出しの前に要約の中で置き換えられます。生のアーカイブには 元のトランスクリプトがそのまま残りますが、それはあなたのディスク上だけです。
- 分析はサンドボックスで実行されます。 分析そのもののセッションは書き出されず、あなたのフック、プラグイン、MCP サーバー、
指示ファイルは読み込まれず、モデルは回答することしかできません。
claude -pは--no-session-persistence --safe-mode --tools "" --strict-mcp-config付きで実行されます。codex execは--ephemeralと--ignore-user-config付きで、すべてのツール機能を 切った読み取り専用のサンドボックスで実行され、ツール呼び出しのあとに来た応答は Interlatch が捨てます (詳細)。モデルプロバイダーには、ツールを含まない素の API リクエストを送ります。analysis.auto = falseで自動分析をオフにできます。 - プロバイダーの API キーは Interlatch のフォルダーの
provider-keys.json(モード 600)に保存され、config.tomlには 入りません。ダッシュボードがキーをブラウザーに送り返すことはありません。 - ダッシュボードは 127.0.0.1 にのみバインドし、外部の
Hostヘッダーを拒否し(DNS リバインディング対策)、状態を変更するリクエストには 独自ヘッダーを必須にしています(CSRF 対策)。ページはダッシュボード自身のスクリプトファイルしか実行しません(Content-Security-Policy)。 トランスクリプトのテキストが HTML としてページに紛れ込んでも、何も実行されません。アプリのウインドウでは、ページが呼び出せるウインドウ操作は 3 つ(テーマ、ドラッグ、 ズーム)だけです。Tailscale Serve 経由では[server] allowed_hostsの名前にだけ応答し、[server] allowed_usersの Tailscale ログインだけを通します(このヘッダーは同じコンピューターの Serve から来たものだけを信用します)。ハブがほかの コンピューターのファイルを受け取るのは、そのトークンがあるときだけです(interlatch hub enable --rotateで作り直せます)。 ほかのデバイスから直接(server.host 0.0.0.0)またはリバースプロキシ経由で開いたダッシュボードは、サインインした人にだけ開きます。 ハブにまだ人がいない間(interlatch hub inviteの前)は、このコンピューター自身にしか応答しません。 - ハブでは、各コンピューターのセッションはそのコンピューターのものです。 ほかのコンピューターが送ったセッションを、別の コンピューターが置き換えたり、変えたり、取り下げたりすることはできません。招待コードで、すでに別の人として参加したコンピューターを 乗っ取ることもできません。
- 書き出し(セッションページの Export、または Sessions の一覧で選んだセッションの Export)は、Markdown と JSON では 機密情報を伏せ字にします(伏せ字にされるもの)。Original transcript はエージェント自身のファイルをそのまま渡すため 伏せ字になりません。共有する前に確認してください。
- MCP ツールはデータベースを読んで stdio で答えるだけで、ネットワークで待ち受けるものはありません。その結果はクライアントの会話に 加わるため、そのクライアントのモデルに届きます(要約と同じく機密情報は伏せ字にします)。セッションを見せてもよいモデル提供元の クライアントにだけサーバーを追加してください。MCP サーバーを参照してください。
- 他のエージェントのデータは読み取るだけです。 SQLite データベースは読み取り専用で開き、スナップショットとしてアーカイブします。Bob の
ログイン状態は一切読みません。Antigravity からアーカイブするのは会話ログと Markdown の成果物だけです。エージェントを接続するとその MCP 設定を編集しますが、事前に
~/.interlatch/backups/に バックアップします。 - 指示ファイルと
~/.claude.jsonに書き込むのは、提案を適用したときだけです。 Interlatch はCLAUDE.mdやAGENTS.mdの 自分の<!-- BEGIN interlatch -->ブロックの中だけに 1 行を加えるか、~/.claude.jsonに足りない Playwright MCP の引数を 加えます。どのファイルも事前に~/.interlatch/backups/にバックアップし、Undo で変更を取り消せます。セットアップ 手順は表示するだけで、Interlatch が実行したり、シェルの起動ファイルを編集したりすることはありません。 提案を参照してください。 - 削除。
interlatch forget <id> [--delete-transcript]でセッションを完全に削除できます。interlatch uninstall --purgeはすべてを削除します。
伏せ字にされるもの¶
伏せ字処理は、パターンの一覧(src/chronicle/redact.py)に合うものを [REDACTED] に置き換えます。分析に送る要約と
分析が書き戻すもの(タイトル、要約、教訓)、書き出し、Markdown ボールト、MCP ツールの答えにかかります。生のアーカイブ
(ダッシュボードのトランスクリプト表示は、あなたのコンピューター上のそれをそのまま見せます)、Original transcript の
ダウンロード、share = "everything" のコンピューターがハブに送るセッションファイルは変えません。
伏せ字にするもの:
- 秘密鍵(
-----BEGIN … PRIVATE KEY-----のブロック)と JWT(eyJ….….…)。 - 決まった接頭辞を持つキーとトークン:Anthropic(
sk-ant-)、OpenAI(sk-)、GitHub(ghp_、gho_、github_pat_など)、GitLab(glpat-)、Slack(xoxb-など)、AWS のアクセスキー ID(AKIA、ASIA)、Google(AIza)、 Databricks(dapi)、Stripe(sk_live_、rk_test_など)、Hugging Face(hf_)、npm(npm_)。 - 秘密情報の名前と
=または:に続く値:password、passwd、pwd、secret、client_secret、api_key、access_key、secret_key、auth_token、access_token、refresh_token、private_key、token。環境変数のように 接頭辞が付いていても同じです(DB_PASSWORD=、AWS_SECRET_ACCESS_KEY=)。 - HTTP の認証情報:
Bearerトークン、Authorization:やProxy-Authorization:ヘッダーの認証情報(Basic、Bearer、token)、URL の中のパスワード(postgres://user:password@host)やcurl -u user:passwordのパスワード、Cookie (Cookie:とSet-Cookie:の行、curl --cookie)。 - Azure のキー:
AccountKey=、SharedAccessKey=、SAS トークンのsig=。
伏せ字にならないもの:
- 決まった接頭辞も、横に名前もない秘密情報:単独で入力したパスワード、変数名なしで貼ったキー、上にない名前の値
(
DB_PASS=、PGUSER_PW=)。 - 複数行に分かれたもの、エンコードされたもの(
Basicヘッダー以外の base64、URL エンコード)、エージェントが画像や PDF として 添付したファイルの中のもの。 - 個人情報:名前、メールアドレス、電話番号などはそのまま残ります。
秘密情報がセッションに入ってしまったら、その秘密情報を取り替えてください。伏せ字処理は、Interlatch が見せるものと送るものから それを外しますが、エージェントが書いたトランスクリプトからは消しません。