付録 — ファイルの場所、ポート、環境

この付録では、マニュアルの他の箇所に散在する具体的な事実をリファレンス表としてまとめます。ディスク上の場所、ネットワークポート、環境変数と起動引数、そしてゲスト VM のチートシートです。ここに記載する内容はすべて出荷ビルド(バージョン 4.3.0、バンドル ID io.bromure.agentic-coding)を基準としています。これらを読み書きするコマンドについては Automation & the CLI を、インストール時に作成されるものについては Installation を参照してください。

以下で使用するプレースホルダー: <uuid> はワークスペースの識別子、<version> は固定されたツールのバージョン、<org>--<name> はモデルリポジトリ、<host-UUID> は保存されたリモートホストです。

ディスク上の場所

アプリが所有するものはすべて 1 つのサポートディレクトリの下に置かれます。加えて、その外部にあるいくつかのファイルと、少数の Keychain アイテムがあります。以下の表は重複を排除し、グループ分けしてあります。/ で終わるパスはディレクトリです。

サポートディレクトリ

アプリのサポートルートは ~/Library/Application Support/BromureAC/ です。以下のパスはこれに対する相対パスです。

パス内容
base.imgすべてのワークスペースが複製元とする Ubuntu 24.04 ベースイメージ(論理サイズ 24 GB、物理サイズ約 6~8 GB)。
efivars.binベースイメージが起動時に使用する EFI 変数ストア。
base.versionインストール済みイメージのバージョンスタンプ(例: 200200.1)。
image-state.jsonイメージの由来と、適用されたポストインストールステップの UUID。
img-catalog.jsonダウンロードしたイメージカタログのキャッシュコピー。
browser-img-catalog.json組み込みブラウザイメージ用のキャッシュされたカタログ。
catalog.jsonローカル推論モデル用のキャッシュされたリモートカタログマニフェスト。
base.img.partialbase.img.gz.partialefivars.partial一時的なインストールファイル。これらが存在する場合、インストールが実行中か中断されたことを意味します。
alpine-vmlinuzalpine-initramfsalpine-initramfs-shimmedローカルビルドで使用される、キャッシュされた Alpine netboot インストーラーファイル。
browser/Bromure Web のコピーが存在しない場合の、AC 独自の Alpine/Chromium ブラウザイメージのコピー(linux-base.imgvmlinuzinitrd)。
browser-profiles/<uuid>/image/profile.img暗号化された永続的な Chromium プロファイルディスク(「ウェブサイトにサインインしたままにする」)。
ca/cert.pemca/key.pemインストールごとの Bromure Agentic Coding ルート CA(鍵のモードは 0600)。ローテーションするには ca/ ディレクトリを削除します。
control.sock所有者専用(0600)の Unix 制御ソケット。CLI と制御プレーンが HTTP で通信します。
profile-macs.jsonワークスペースごとの決定論的な MAC バインディング。
dhcp-leases.sqlite共有 NAT スイッチ用の永続的な DHCP リース。
default-ssh/id_ed25519.rawdefault-ssh/id_ed25519.pub新しい各ワークスペースにコピーされる共有デフォルト SSH 鍵ペア。
profile-template.jsonprofile-template.enc新しいワークスペースが継承する環境設定の「デフォルト」テンプレート(ピッカーに表示されないよう profiles/ の外部に保持されます)。
automations.jsonスケジュールされた自動化に加え、実行履歴(最大 1000 レコード)、次回発火時刻、イベントポーリングの最高水準点。
grid-layout.jsonターミナルグリッドのメンバーシップ。
engine-master.keyVM ごとのローカル推論エンジン鍵のための 32 バイトのマスターシークレット。
engine-spawn.jsonローカル推論エンジンの子プロセス生成設定(モデル、メモリ予算、ポート)。
fake-salt.binフェイクトークンを導出するための、インストールごとの 32 バイトのソルト(0600)。これを削除すると、この Mac 上のすべてのフェイクがローテーションされます。
secrets-master.key0600 のフォールバック AES-256 マスター鍵。Data Protection Keychain に到達できない場合にのみ使用されます。
claude-subscription.enccodex-subscription.encgrok-subscription.encAES-GCM で暗号化された、ホスト所有のサブスクリプション OAuth ストア(共有デフォルトに加えてワークスペースごとのオーバーライド)、0600
cloudflared/<version>/cloudflared固定され、チェックサム検証済みの cloudflared バイナリ。並びに current シンボリックリンク。
ghostty/生成されたターミナル設定(ベースに加えてワークスペースごと)。

ワークスペースごとのストレージ

各ワークスペースは、サポートルート下の profiles/<uuid>/ にある自己完結型のディレクトリです。これらの使われ方については WorkspacesConcepts を参照してください。

パス(profiles/<uuid>/ 以下)内容
profile.jsonsupplyChain ポリシーブロックを含むワークスペース定義。socket.dev と Delpi の API キーはここにホスト側で保存され、VM 内には決してコピーされません。デフォルト以外のフィールドのみが書き込まれます。
secrets.encAES-GCM で暗号化されたワークスペースのシークレット(chmod 600)。
disk.imgシステムディスク — base.img の APFS コピーオンライトクローン。
home.img/home/ubuntu を保持するスパースな ext4 イメージ(最新のホームモデル)。
home/レガシーな virtiofs ホームディレクトリ(アップグレード前のワークスペース)。
boot-home/ext4 モデルの起動時に共有される小さなブートストラップホーム。
home.pre-ext4/ストレージアップグレード後に保持されるホームのバックアップ。
checkpoints/checkpoints/home/起動が実証されたディスクとホームのロールバッククローン。
vm.state一時停止した VM の RAM スナップショット。
tabs.json保存されたタブレイアウト。vm.state が存在する場合にのみ尊重されます。
machine-identifier.bin永続的な VZ マシンアイデンティティ(一時停止した VM を復元するために必要)。
compromised.flag認証情報の漏洩が検出された後に設定される、次回起動時ワイプのマーカー。
meta-share/起動ごとの読み取り専用ゲスト設定共有(api_key.envproxy.env、CA 証明書、エージェント、MCP 設定)。
outbox/起動ごとの書き込み可能なゲスト→ホストイベント共有。
agent/(および agent/imported/)、ssh/ワークスペースごとの SSH 鍵素材。インポートされた鍵は agent/imported/ 下に置かれ、ssh/ はレガシーディレクトリです。

モデルと検出器

パス(サポートルート以下)内容
models/<org>--<name>/ダウンロードされた MLX 推論モデルの重み(リポジトリごとのフラットなレイアウト)。
models/<org>--<name>/.incomplete進行中または中断されたダウンロードのセンチネル。
Models/prompt-injection/PromptGuard 検出器のアセット(model.onnx、トークナイザーファイル、オプションの bromure-injection.json オーバーライド)。
Models/claudemd-guard/ModernBERT ルールファイル検出器のアセット。
traces/YYYY-MM-DD/<sessionID>.jsonlセッションごとのトレースメタデータ。1 行につき 1 つの JSON レコード。
traces/YYYY-MM-DD/<sessionID>/<recordID>.req.enc.res.encキャプチャされたリクエスト/レスポンスの本文。AES-GCM で暗号化(0600)。

登録、リモートアクセス、リッチクライアント

パス(サポートルート以下)内容
managed/install.json登録アイデンティティ: インストール ID、ワークスペーススラッグ、ユーザー、サーバー URL、デバイス名、登録日時。
managed/leaf.crtmTLS リーフ証明書(PEM、検査可能)。
managed/leaf.serial現在のリーフの秘密鍵を保持する Keychain エントリへのポインタ。
managed/ca.crtワークスペース組織の CA 証明書(PEM)。
managed/health永続化された登録の健全性(ok / tokenRejected / revoked)。
remote/hostkey_ed25519remote/hostkey_ed25519.pub組み込み SSH サーバーのホスト鍵(ディレクトリのモードは 0700、鍵は 0600)。
remote/authorized_keysSSH の正面玄関を通過できる公開鍵(0600)。
remote/overlay-keySSH リモートメニュー用のオプションのオーバーレイキーコードオーバーライド。
remote-client/id_ed25519.pubリッチクライアントの SSH クライアント鍵ペア(コメント bromure-ac-fatclient)。
remote-client/known_hostsリモートホスト鍵の Trust-on-first-use ピン。
remote-client/hosts.json保存されたリモートサーバー(「最近使用したサーバー」)。
remote-client/hosts/<host-UUID>/grid-layout.jsonautomations.jsonホストごとのミラーの永続化。リモートグリッドがローカルグリッドを上書きしないようにします。

メモ: remote-client/ サブツリーは CFFIXED_USER_HOME とともに再配置されます。これにより、テスト用に 2 つの分離されたインスタンスを並行して実行できます。

サポートディレクトリの外部

パス内容
~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plistログイン時起動の LaunchAgent。いずれかのワークスペースで「ログイン時にこのVMを起動」を有効にすると書き込まれます。
<app>/Contents/Library/LaunchDaemons/io.bromure.fatclient-tunnel.plist組み込みの特権トンネルデーモン。SMAppService を介してオンデマンドで登録されます。
/var/run/io.bromure.fatclient-tunnel.sock特権トンネルデーモンのソケット(root が作成、chmod 600、コンソールユーザーに chown)。
/tmp/bromure-ac-cm-<first-12-of-host-UUID>ホストごとの SSH ControlMaster ソケット(サポートパスが AF_UNIX の長さ制限を超えるため /tmp に保持されます)。
/tmp/bromure-repair.logローカル推論の修復プロキシのデバッグログ(BROMURE_REPAIR_DEBUG を指定した場合のみ)。
/usr/local/bin/bromure-cliアプリバイナリへのオプションの CLI シンボリックリンク。初回起動時に一度だけ提案されます。
<NSTemporaryDirectory>/bromure-ac-agent-<pid>.sockBromure のプライベートなホスト側 ssh-agent ソケット。
$TMPDIR/bromure/session-<uuid>.img(および -aux.img一時的なブラウザ VM のコピーオンライトクローン。破棄時に削除されます。
<app temp dir>/bromure-files/<profile-id>/ファイルブラウザから開いたゲストファイルのダウンロードキャッシュ。
~/Library/Application Support/Bromure/Bromure Web のサポートディレクトリ。AC は存在する場合ここからブラウザイメージを読み取ります。
~/.cache/bromure-ghosttyターミナルフレームワークをソースからビルドする場合にのみ使用される Zig ツールチェーンのキャッシュ。

Keychain アイテムとデフォルトドメイン

OS レベルの保護とともに存続する必要のあるシークレットは、ディスク上ではなく macOS Keychain に置かれます。

Keychain サービスアカウント内容
io.bromure.agentic-coding.master-keyv1AES-256 シークレットボールトのマスター鍵(Data Protection Keychain)。
io.bromure.agentic-coding.ssh-key-passphrases<profileUUID>/<filename>インポートされた SSH 鍵のパスフレーズ。
io.bromure.agentic-coding.managed-installinstall-tokenleaf-cert-key-<serial>登録ベアラートークンとシリアルごとのリーフ秘密鍵。

このアプリのすべての UserDefaults はドメイン io.bromure.agentic-coding に置かれます(defaults readdefaults write で読み書きします)。

ネットワークポートとサブネット

TCP とループバックのポート

Bromure Agentic Coding はデフォルトでは固定のインバウンドポートを開きません。以下の 2 つのオプションサービスは有効にするまでオフです。それ以外はループバック専用で、動的または内部的なものです。

ポート目的バインド先
9223(デフォルト)自動化 HTTP API と bromure-cli mcp バックエンド。デフォルトではオフ(automation.enabled)。両方のアプリを並行して実行できるよう、ブラウザ製品の 9222 から 1 つずらして選ばれています。GET /health を提供します。127.0.0.1automation.bindAddress で設定可能。非ループバックへのバインドは認証されず、警告が出ます)。
2222(デフォルト)オプションの SSH リモートアクセスの正面玄関。デフォルトでは無効。1024 以上の任意のポートに設定可能。デフォルトは 0.0.0.0remoteAccess.bindAddress で設定可能)。
2850028599MCP OAuth コールバックリスナー(http://127.0.0.1:<port>/callback)。127.0.0.1
動的ローカル推論エンジン。11434 上の Ollama/LM Studio との衝突を避けるため、最初の生成時に割り当てられます。127.0.0.10.0.0.0 になることはありません)。
動的ローカル推論のツールコール修復プロキシ。127.0.0.1
エフェメラルリッチクライアントのブラウザペインが使用する、リモートホストごとの SOCKS5 フォワーダー。0.0.0.0 にバインドされますが、ループバックと 192.168.127.x にピアフィルタされます。

Mac 上ではなくゲスト内に存在するループバックエンドポイントが 2 つあります: 127.0.0.1:8080(すべてのシェルが HTTPS_PROXY としてエクスポートする VM 内 HTTP(S) プロキシ)と 127.0.0.1:11434(vsock ブリッジを介して、ホスト上のローカル推論エンジンが現れる場所)。

インストール自体は TCP ポートを開きません。ベースイメージビルドのパッケージプロキシは、ビルドごとにエフェメラルな localhost ポートにバインドします。

仮想ネットワークのサブネット

サブネット目的
192.168.64.0/24ワークスペース VM のデフォルト NAT サブネット(ゲートウェイ .1、DHCP プール .2.254、24 時間のリース)。Mac の LAN がすでにこれを使用している場合は自動的に再配置されます。
192.168.65.0/24192.168.126.0/24Bromure Web インスタンスが再配置される範囲。AC と Web が衝突しないようにします。
192.168.127.0/24リッチクライアントの固定されたローカルブラウザ VM サブネット(ゲートウェイ .127.1)。ゲートウェイが予測可能になります。
100.64.<n>.0/24フリートのサブネット衝突に対する CGNAT エイリアスサブネット — 実装・テスト済みですが、まだランタイムパスには組み込まれていません(サポートされる構成は単一のリモートホストです)。
10.98.<unit>.0/30特権 utun トンネルデーモンが使用するポイントツーポイントリンクネットワーク。

ホスト⇔ゲストの vsock ブリッジ

ホストとゲストは virtio ソケット(vsock)を介して通信します。これらには IP バインディングがなく、ホスト(CID 2)と各ゲストの間の番号付きチャネルです。内部的な配管であり、診断のためにここに列挙します。

vsock ポートブリッジ
5800シェル実行エージェント — bromure-cli exec、制御ソケットの exec ルート、ファイルエクスプローラーペインを支えます。
5010ループバック OAuth コールバックリレー(OAuth リダイレクトを VM 内の CLI に戻します)。
5830組み込みブラウザ MCP サーバーのホスト側(ゲストの stdio シムが接続してきます)。
8443HTTPS MITM プロキシ — ゲストの送信経路。
8444ssh-agent ブリッジ(SSH_AUTH_SOCK を支えます)。
8445AWS credential_process ヘルパー。
8446Claude サブスクリプショントークンエージェント、およびホスト上のローカル推論ブリッジ(ゲスト 127.0.0.1:11434)。
8447Codex/ChatGPT サブスクリプショントークンエージェント。
5000ブラウザ VM 設定エージェント(クレーム時のホスト→ゲスト JSON 設定)。
5100ブラウザ VM ファイル転送ブリッジ(最大フレーム 16 MB、最大ファイル 10 GB)。
5200ブラウザ VM の Chrome DevTools Protocol ブリッジ(スクリーンショット、eval)。
5300 / 5400ブラウザ VM のリンク送信 / ウェブカメラ。
5810ブラウザ VM のネイティブタブブリッジ。
5900ブラウザ VM のネットワークトレースブリッジ。

環境変数と起動引数

これらは起動時にアプリに影響します。ほとんどはデバッグ、テスト、またはソースからのビルド用です。対象者 列は、それぞれが誰のためのものかを示します。バイナリを起動する前に環境変数を設定するか、起動後に起動引数として渡します。

名前効果対象者
-AppleLanguages "(fr)"(起動引数)標準的な macOS ロケールオーバーライド。UI 言語を強制します。ロケール強制の再起動が機能するよう、引数解析の前に取り除かれます。エンドユーザー
BROMURE_DEBUG_CLAUDETCP 自動化 API のデバッグエンドポイント(/app/state、exec、/vms/debug/ui-shot/detect/prompt-injection)を解放し、シークレットが AppleScript/MCP のプロファイル JSON ブリッジを通過できるようにし、bromure-cli mcp --debug の VM ツールに必要です。パワーユーザー / デバッグ
BROMURE_AC_DEBUG=1自動化エンジン、インジェクション分類器、ルールスキャナー、トレースパイプライン向けのタイムスタンプ付き stderr デバッグ。デバッグ
BROMURE_CLI_DEBUGCLI コマンド向けの、stderr への詳細な制御ソケット接続診断。デバッグ(CLI)
BROMURE_REPAIR_DEBUGローカル推論の修復プロキシのリクエスト/レスポンス診断。/tmp/bromure-repair.log に追記されます。デバッグ(ローカルモデル)
BROMURE_INFER_DEBUGリクエストごとのエンジン統計(スロット、プリフィルされたトークン、TTFT、tok/s)を stderr に出力。デバッグ(ローカルモデル)
BROMURE_FATCLIENT_LOGバッファリングされないリッチクライアントの stderr ロギング。デバッグ(リモート)
BROMURE_ATTACH_DEBUG=<path>リッチクライアントのログをファイルにも追記します。デバッグ(リモート)
BROMURE_INJECTION_COREML=1インジェクション分類器を CoreML/Neural Engine プロバイダー上で実行します(デフォルトは CPU。CoreML は同一の精度で常駐メモリが約 5 倍)。パワーユーザー
BROMURE_NO_COREMLBROMURE_INJECTION_COREML が設定されていても、分類器の CoreML を強制的に無効化します。パワーユーザー
BROMURE_GPU_CACHE_GBMLX GPU バッファキャッシュの上限(GB 単位、デフォルト 4)。パワーユーザー(ローカルモデル)
BROMURE_KVBITSBROMURE_KVBITS_STARTBROMURE_CACHE_SLOTSBROMURE_THINKINGローカル推論のチューニング: KV キャッシュの量子化ビットとしきい値、KV キャッシュのセッションスロット(1~8、デフォルト 4)、サイレントシンキングの無効化。Local Models を参照。パワーユーザー(ローカルモデル)
VISUAL / EDITORbromure-cli workspaces edit が使用するエディタ(vi にフォールバック)。エンドユーザー(CLI)
BROMURE_MANAGED_URL登録、ハートビート、証明書発行に使用される bromure.io API ベースをオーバーライドします。エンタープライズ管理者
BROMURE_FATCLIENT_OPEN純粋なリッチクライアント起動: 初回実行のセットアップウィンドウをスキップし(ローカルベースイメージ不要)、bromure-cli シンボリックリンクのプロンプトを抑制します。上級 / テスト
BROMURE_IMAGE_CATALOG_BASEイメージのダウンロードをローカル/ステージングカタログに向けます。カタログの署名検証も無効化します。テストおよびパイプライン専用。テスト / CI
BROMURE_INSTALL_BROWSER_IMAGE=1起動時に AC の組み込みブラウザイメージのコピーを自動ダウンロードします(通常のトリガーはブラウザペインまたは 設定ブラウザ)。テスト / デバッグ
CODESIGN_IDENTITYbuild.sh の署名アイデンティティ。未設定の場合はアドホックな - にフォールバック(Gatekeeper、iCloud、vmnet なし)。開発者(ビルド)
DEVELOPER_IDAPPLE_IDTEAM_IDAPP_PASSWORDpackage.sh の Developer ID 署名と公証。DEVELOPER_ID は必須。公証の 3 つ組はオプション(未設定の場合、署名済みだが未公証の DMG が生成されます)。開発者 / 公開者
DRY_RUN=1KEEP_PREVIOUS=1KEEP_STAGING=1イメージの公開/リハーサルパイプラインのスイッチ。公開者

エンジンは自身の子プロセス用に内部変数(BROMURE_ENGINE_KEYBROMURE_ENGINE_MASTER)も設定し、使い捨ての登録 VM は BROMURE_AC_REGISTER を設定します。これらは手動で設定することを意図したものではありません。

UserDefaults キー(defaults write

io.bromure.agentic-coding ドメイン内の永続的な設定。ほとんどには UI の同等物があります。vm.* と開発者向けのノブは defaults write で設定します。

キー効果デフォルト
automation.enabledループバック自動化 HTTP API をオンにします。false
automation.port自動化 API のポート。9223
automation.bindAddress自動化 API のバインドアドレス。127.0.0.1
remoteAccess.enabledSSH リモートアクセスの正面玄関を有効にします。false
remoteAccess.portSSH 正面玄関のポート(1024 以上)。2222
remoteAccess.bindAddressSSH 正面玄関のバインドアドレス。0.0.0.0
remoteAccess.passwordAuthremoteAccess.pubkeyAuthSSH 認証方式。両方オン
vm.homeImageGB新しい ext4 ホームイメージの見かけの(ゲストから見える)サイズ(GiB 単位、8~1024。スパースなので事前のコストはかかりません)。64
vm.mtuゲスト NIC の MTU クランプ — インストーラーのダウンロードをブラックホール化する VPN ホストでは下げます。1280
vm.networkModevm.bridgedInterfacevm.dnsServersブラウザプールのネットワークモード、ブリッジインターフェイス、DHCP DNS オーバーライド。モードは NAT。他は未設定
vm.extraChromeFlagsvm.chromeEnvExtraブラウザ VM の Chromium 起動に付加される開発者向けのノブ。未設定
cloudflareTunnel.consentedCloudflare クイックトンネル経由で HTTP サービスを公開することへの一度限りの同意。false
cliSymlinkDeclinedbromure-cli シンボリックリンクの提案で「今後表示しない」を選んだ場合に設定されます。false
ac.sidebarWidthac.filePaneOpen永続化されたサイドバーの幅とファイルペインの開閉状態。アプリが設定

ゲスト VM チートシート

実行中のワークスペース VM 内では、あなたは ubuntu という通常のユーザー(sudo 可能)であり、ホームは /home/ubuntu です。ホストはマウントと環境を配線し、パッケージマネージャー、エージェント、Git がゲスト内のセットアップなしで動作するようにします。仕組みについては Concepts を参照してください。

マウントポイント

パス内容
/home/ubuntuあなたのホーム — ext4 の home.img(最新)または virtiofs 共有(レガシー)。
/mnt/bromure-meta読み取り専用の起動ごとの設定共有: api_key.envproxy.env、CA 証明書、ゲストエージェント、MCP 設定、ホスト名/MTU のヒント。
/mnt/bromure-outbox書き込み可能なゲスト→ホストイベント共有(ホストが読み取るワンショットのイベントファイル)。
/mnt/bromure-share-N共有プロジェクトフォルダ(最大 8 個)。~/<basename> としてホームにもシンボリックリンクされます。
/mnt/bromure-meta/bromure-browser-mcp.py生成されたブラウザ MCP の stdio⇔vsock シム。すべてのワークスペースに読み取り専用でステージングされます。
~/.bromure/pastes/ターミナルにドロップされた画像ペースト(7 日後に自動クリーンアップ)。

ホストが設定する環境

変数値 / 効果
http_proxyhttps_proxyHTTPS_PROXYhttp://127.0.0.1:8080 — すべてのゲスト HTTPS をホストの MITM プロキシに運ぶ VM 内ブリッジ。
NO_PROXYlocalhost,127.0.0.1,::1
SSH_AUTH_SOCK/tmp/bromure-agent.sock — vsock 経由でホストの ssh-agent にブリッジされます(到達できるのはワークスペースごとの鍵と明示的にインポートされた鍵のみ。macOS のログインエージェントは決して公開されません)。
CA バンドル変数再署名ルート CA は、node、python、go、rust、curl、deno、AWS SDK 向けの標準バンドル変数を通じて信頼されます。
エージェント API キーANTHROPIC_API_KEYOPENAI_API_KEYXAI_API_KEYGH_TOKENGITLAB_TOKENDIGITALOCEAN_ACCESS_TOKENLINEAR_API_KEY、AWS 変数、および任意の手動/データベース変数 — すべて プレースホルダー の値。ホストがワイヤ上で実際のシークレットに差し替えます。
ローカルモードのエージェント変数ワークスペースがローカルモデルにルーティングされると、Claude Code は ANTHROPIC_BASE_URL=https://bromure.llm、VM ごとの ANTHROPIC_AUTH_TOKENbromure-local センチネルに設定されたモデルエイリアス、CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 を見ます。

警告: ゲストが読み取れるすべての認証情報はおとりです。あるホストにスコープされたフェイクトークンが、別のホスト宛てのリクエスト内に現れることは、情報流出のシグネチャであり、侵害検出 を作動させます — それが何かを認証することは決してありません。