複数エージェントの分離は worktree+ネットワーク namespace で十分なことが多い
自分専用の 1 台で複数エージェントを走らせるなら、microVM までは不要。作業ディレクトリ(git worktree)とネットワーク namespace / ポートを分ければ「互いに踏み荒らさない」分離はほぼ達成できる。
いつ使うか
- 単一 VPS / 手元マシンで、信頼できる自分のエージェントを並列実行するとき(マルチテナントではない)。
手順
sh
# エージェントごとに worktree を切る
git worktree add ../wt-agent-a -b agent-a
git worktree add ../wt-agent-b -b agent-b
# ネットワーク namespace を分けて開発サーバーのポート衝突や相互アクセスを防ぐ
sudo ip netns add agent-a
sudo ip netns exec agent-a sudo -u $USER bash -c 'cd ../wt-agent-a && <agent-cmd>'- 開発サーバーはエージェントごとに別ポートにバインドするだけでも衝突は避けられる。
- さらに最小権限にしたい場合は Codex の permission profiles(OS 強制のファイル read/write/deny とドメイン単位のネットワーク許可)を併用。
注意点
- これは「事故防止」の分離であり、悪意あるコード(侵害パッケージやプロンプトインジェクション)に対する境界ではない。未信頼の入力を扱うならコンテナ / VM / 別 OS ユーザーで隔離する。
- netns 内からは名前解決や外部通信の設定が別途必要。