Bromure Agentic Coding

AI エージェントを、
安全に解き放つ。

Claude Code、Codex、そして次に来るコーディングエージェントを、選んだフォルダだけを共有する Linux VM の中で動かせます。ダウンロードしたもの、インストールしたもの、壊したものはすべて VM の中に留まります。

Bromure Agentic Coding を今すぐダウンロードApple Silicon(M1 以降)· 無料 & オープンソース
Bromure Agentic Coding running Claude in an isolated VM with the Trace Inspector

コーディングエージェントは、いまや あなたのラップトップで動いています。

Claude Code と Codex はパッケージを取得し、スクリプトを走らせ、サーバーを立ち上げ、モデルが有用と判断したものを何でも実行します。それが目的です。しかし、彼らが実行するすべての npm install、すべての pip install、すべての curl | bash は、あなたのホスト OS に着地します — SSH 鍵、パスワードマネージャー、iCloud、その他の仕事の隣に。

1 つのタイポスクワット依存関係、汚染されたスクリプト、混乱したエージェントが、ひそかにトークンを流出させ、launch agent を仕込み、ディレクトリを消し去ることがあります。エージェントが悪意を持っているわけではありません。あなたの本物のマシンに対して root 相当のアクセスを持っているだけです。それは、誰も望んでいない爆発半径です。

エージェントを、 VM の中へ移す。

Bromure Agentic Coding は、すべての開発者に Linux 仮想マシンを提供します — 共有するのは選んだフォルダだけ。Claude や Codex は VM の中で動きます。共有マウント越しにあなたのリポジトリは見えますが、ホームディレクトリも、キーチェーンも、ディスクの残りの部分も見えません。

エージェントが必要とするものは何でもインストールしてください — システムパッケージ、言語ツールチェーン、半分壊れた実験的ビルド。VM はエージェントの作業場であって、あなたのラップトップではありません。何かがおかしくなったら、VM をリセットしてやり直すだけ。ホストはきれいなままです。

共有フォルダは双方向にライブでマウントされるので、エージェントが VM の中で作業している間も、あなたは macOS の Cursor、VS Code、Xcode でいつもどおり編集を続けられます。あなたがエディタで保存すれば、エージェントはその変更をその場で見ます。エージェントがファイルを書き換えれば、あなたのエディタもそれを拾います — 同じファイル、2 つのビュー、同期は不要、チェックアウトの儀式も不要です。

~/projects/my-app
$ bromure code --share ./
→ launching VM (clone of base image)…
→ mounting ~/projects/my-app at /workspace
→ proxy ready · ssh-agent forwarded · tracer on
→ ready in 3.2s
vm:/workspace
$ claude
→ npm install ✓
→ git push ✓ (token swapped at proxy)
→ host ~/.ssh: not visible · keys never left Mac
認証情報のブローカリング

エージェントは動く、 秘密は家に置いておく。

GitHub に push できない、プライベートレジストリから pull できない、ビルドサーバーへ SSH できないエージェントは役に立ちません。素朴な解決策は、長期トークンと SSH 鍵を VM に放り込むことです。すると次のタイポスクワット依存関係がそれを読み、組織ごと持ち去ります。

Bromure はこれを逆転させます。VM 内の設定はスタブ — 偽のベアラートークン、偽の API キー — を携えて出荷されます。git、gh、モデルプロバイダーの CLI、プライベートレジストリ、Authorization ヘッダーを期待する何にとっても、本物のように見えます。Mac 上のプロキシが VM から出るすべての接続の前に立ち、スタブを認識し、ワイヤ上で本物の秘密に差し替え、リクエストを転送します。本物の値が VM の読めるファイルに書かれることはなく、VM のダンプできる環境変数に保持されることはなく、VM のスクレイプできるメモリにページインされることはありません。

スタブを入れて、本物のトークンを出す

GitHub、モデルプロバイダー、npm、AWS、社内レジストリ — エージェントが必要とする何でも — をホスト上で一度だけ設定します。VM はすべてのツールの期待を満たすスタブを受け取ります。ホスト側プロキシは、リクエストがハイパーバイザー境界を出る瞬間に本物のベアラーへ差し替えます。環境変数を奪うパッケージ、~/.netrc を読むパッケージ、メモリをダンプするパッケージは、プレースホルダーしか持ち帰れません。

ssh-agent は転送するが、決して晒さない

ssh-agent は Mac で動き、鍵は macOS Keychain にあります。Bromure はエージェントソケットだけを VM に転送します — OpenSSH が常に意図してきた方法で。VM 内では ssh と git が透過的に動きます — しかしディスク上に鍵ファイルはなく、メモリ上にパスフレーズはなく、侵害された依存関係に盗まれるものはありません。セッションを閉じれば、チャネルも閉じます。

汚染されたパッケージは VM のファイルシステムを消すことはできます。しかし、あなたの GitHub Org を奪うことはできません。あなたのビルドインフラへ侵入することはできません。あなたの AWS アカウントを枯渇させることはできません。爆発半径は VM、そして VM は使い捨てです。

承認ゲーティング

エージェントとあなたの秘密の間に、 ワンクリックを。

スタブと差し替えだけでは、話は半分です。本物のトークンはどこかに存在し続けます — VM の中ではなく、あなたの Mac 上、プロキシの後ろに。脅威が VM 内のマルウェアであるなら、これは大きな改善です。脅威があなたのラップトップそのものに潜むマルウェアであるなら、改善は小さくなります:バックドア入りのアップデート、侵害されたブラウザ拡張、すでにローカルで任意コードを実行できるプロセス。プロキシと話せるものは何であれ、原理的には本物のトークンを要求できてしまいます。

そこで Bromure は、あなたが機密と指定した認証情報の前に、明示的な人間の確認ステップを差し込みます。何かが — エージェントが、自分で打ち込んだ CLI が、あるいは身に覚えのないプロセスが — プロキシ経由でそれらのトークンを使おうとすると、Bromure はあなたの Mac にポップアップを出し、認証情報と宛先を提示し、あなたに尋ねます。あなたは 5 分間、1 時間、このセッション中、あるいはこの 1 リクエストだけ、と承認します。その時間が過ぎれば、再びロックされます。

時間で区切る承認

承認するときに TTL を選びます。1 回の push のために 5 分。集中したリリース作業のために 1 時間。本当に怖いものには 1 回限り — 本番デプロイ、シークレットローテーション、破壊的なマイグレーション。許可は自動的に失効するので、`aws sso login` を一日中開けっぱなしにしてしまうこともありません。

ローカルマルウェアは、てこを失う

Mac 上で動くプロセスがあなたのコンテナレジストリへ push しようとしても、GitHub であなたになりすまそうとしても、クラウドアカウントを枯渇させようとしても、できません。認証情報は読めるディスク上にはなく、それを保持するプロキシは、画面の前にいる人間が承認をクリックしたときにだけ 1 件だけ解放します。ラップトップでのコード実行は、もはや本番に手を出すには不十分です。

長期トークンは、瞬間的なアクセスに変わります。たとえあなたのラップトップが端から端まで侵害されていても、攻撃者は何か重要なことをするためには、まずあなたを通り抜けなければなりません。

エージェントを Bromure VM で動かす理由

封じ込められた爆発半径

行儀の悪いパッケージも、汚染されたポストインストールスクリプトも、rm -rf を決めるエージェントも、触れるのは VM の中身だけ。ホームディレクトリ、鍵、iCloud は、ハイパーバイザー境界の向こう側にあります。

本物の認証情報は中に入れない

VM はスタブトークンを携えて起動します。ホスト側のプロキシが、リクエストが VM を出るときに本物のベアラーへワイヤ上で差し替え、ssh-agent は Mac で動き、ソケットだけが VM に転送されます。環境変数を漁る、あるいはディスクを読むパッケージは、秘密情報ではなくプレースホルダーを見つけます。

すべての行動を記録

Bromure はセッション全体をトレースします — プロンプト、モデル応答、ツールコール、シェルコマンド、ファイル編集 — 動いている最中に。後でトレースを開き、検索し、レビュアーに渡し、プルリクエストに添付。トレーサビリティは無料で付いてきます。

macOS で編集、VM と並行して

共有フォルダは双方向にライブです。ホストでは Cursor、VS Code、Xcode をそのまま使い続けてください — エージェントが VM でファイルを書き換えれば、あなたのエディタがそれを拾い、あなたがエディタで保存すれば、エージェントもそれをすぐに見ます。同じファイル、2 つのビュー、同期は不要。

セッショントレーサー

エージェントが何をしたか、 正確に見る。

コーディングエージェントは 1 セッションで何百もの判断をします。そのほとんどはあなたが見ません — 注意深く読まなかったツールコールの中を流れていく、1 行に要約される、流し読みした 2 つのメッセージの間で起きる。何かが壊れるまでは、それで構いません。あるいは、モデルが実際に何を変えたかをレビュアーやチームメイト、監査担当者に説明する必要が出るまでは。

Bromure はセッション全体を、動いている最中に記録します:すべてのプロンプト、すべてのモデル応答、すべてのツール呼び出し、すべてのシェルコマンド、書き込まれたすべてのファイル。後でトレースを開き、検索し、誰かに渡し、プルリクエストに添付。エージェントは速く動き、記録は辛抱強く待ちます。

Bromure Trace Inspector showing every API call made by the agent

完全な対話キャプチャ

プロンプト、補完、ツールコール、シェルコマンド、ファイル編集、終了コード — セッションが動いている最中にライブでキャプチャされます。スクロールバックから再構築するものはなく、ターミナルを閉じても失われるものはありません。

再生可能、レビュー可能、帰属可能

エージェントの推論と行動をスクラブし、何が、なぜインストールされたかを正確に確認し、「ただ動いた」「ただ壊れた」を、もう一人の人間に見せられる何かに変えます。

エージェントが動くとき、トレースはあなたのペーパートレイル。動かないとき、それはあなたのバグレポートです。

あなたのエージェントを、 持ち込んでください。

Bromure Agentic Coding はあなたのツールを置き換えません — 動かす安全な場所を提供します。VM はほとんどのエージェントが期待するランタイムを携えて出荷され、残りはあなたがインストールします。

Claude Code

Anthropic のターミナルベースのコーディングエージェントが VM 内でネイティブに動きます。一度認証すれば、依存関係を取得し、テストを走らせ、共有リポジトリをリファクタリングさせられます。

Codex

OpenAI のコーディングエージェントは、他のどの Linux マシンでも同じようにインストールできます — ただしこの Linux マシンは、あなたのホームディレクトリを見られません。

その他なんでも

Aider、OpenHands、社内のカスタムエージェント — Linux で動くなら、Bromure で動きます。VM はただの Linux マシンであり、安全性はそれが置かれている場所から来ます。

仕組み

1. フォルダを選ぶ

VM を作成する際に、Mac 上のどのフォルダをマウントできるかを選びます — 通常は作業中のプロジェクトです。それがエージェントから見えるファイルシステムのすべてです。

2. VM を起動する

Bromure は Apple Virtualization.framework を使い、数秒で Linux VM を起動します。リモートマシンを開くのと同じように、ターミナルを開いてください。

3. エージェントを動かす

VM 内に Claude Code または Codex をインストールし、共有フォルダに向けます。ホストに一切触れることなく、エージェントに作業させましょう — パッケージのインストール、スクリプトの実行、プロセスの起動。

4. 必要なときにリセット

VM の状態が役に立たなくなったら、捨てるだけ。数秒でやり直せます。コードはホストに、混乱は VM の中に。

VM vs container

コンテナではダメな理由は?

理由は 4 つあります。

カーネルの共有

コンテナはホストとカーネルを共有します。十分に悪いパッケージ、カーネルバグ、誤設定されたマウントがあれば、境界は消えます。コンテナはワークロードを隔離するために作られたのであって、内部で能動的に動かしているものから守るために作られたわけではありません。

イミュータブルで、対話的でない

コンテナイメージは一度ビルドされ、凍結されます。対話的なコーディングエージェント — 一日中パッケージをインストールし、設定を調整し、ツールを再ビルドする — はそのモデルとずっと戦うことになります。すべての変更が再ビルドを欲します。ワークフローを我慢できるものにするためにマウントするミュータブルなホームディレクトリは、残りのイメージが守るはずだった柔らかい腹になります。

実は macOS で動いていない

Mac の Docker は実際にはコンテナを動かしていません — Docker Desktop に同梱された隠れ Linux VM の中でコンテナを動かしているのです。VM のコストはすでに払っているけれど、見えていないだけ。Bromure はその中間層を取り除きます:1 つの VM、見える、設定できる、あなたのもの。

シークレットを外に出しておく方法がない

コンテナを git、gh、kubectl、aws、npm などで使えるようにしようとすると、結局 ~/.ssh、~/.kube/config、~/.aws/credentials、~/.npmrc と GitHub トークンをマウントする羽目になります — エージェントから読めるファイルシステムに、本物のシークレットを置くことになります。Bromure はこれをひっくり返します。VM にはスタブだけが入り、それは各ツールから見ると本物のクレデンシャルに見えます。ホスト側のプロキシがそれを認識し、リクエストが VM を出る瞬間に、本物の GitHub トークン、kubeconfig のベアラー、AWS のクレデンシャル、レジストリのパスワードに差し替えます。SSH 鍵は macOS のキーチェーンに残り、転送されるのは ssh-agent のソケットだけ。コンテナで同じことをやるには、信頼モデルそのものを作り直すしかありません。

VM は独自のカーネル、独自のメモリ、独自のファイルシステムを持ちます。何でもインストールでき、他の Linux マシンと同じやり方で、それを一日中続けられます。Apple の Virtualization.framework がそのコストを十分に下げてくれるので、それ以下で妥協する理由はありません。

エージェントに、 本物の作業場を。

1 つの VM。完全な隔離。何でもインストール可能。Bromure Agentic Coding は無料でオープンソースです。

Bromure Agentic Coding を今すぐダウンロードApple Silicon(M1 以降)· 無料 & オープンソース