bubblewrap サンドボックス内で opencode を実行し、AI によるファイル操作を現在の作業ディレクトリ内に限定します。
関連情報:
ai-bwrap— 本プロジェクトの発展版となるマルチエージェント対応ツールです。同じサンドボックスのアプローチを採用しつつ、Claude Code、opencode、Grok、あるいは通常のシェルへと対象を拡大しており、拡張可能なエージェントレジストリも備えています。
機能
opencode-bwrap は、bwrap (bubblewrap) サンドボックス内で opencode を起動するためのシンプルなシェルラッパーです。サンドボックスの仕様:
- opencodeに対し、現在の作業ディレクトリへの読み書きアクセスのみを許可します
-
$HOMEの他の領域へのアクセスを遮断します(~/.sshや~/Documentsなどにはアクセスできません) - ネットワークアクセスは許可されたままとなります(LLM API呼び出しに必要です)
- PID、IPC、UTS、およびマウント名前空間を分離します
- opencodeの設定、キャッシュ、および状態(state)ディレクトリを引き継ぎます
-
~/.gitconfigおよびghCLIの認証情報を引き継ぎます(読み取り専用) - NVMで管理されたNode.js環境をサポートします
要件
- Linux
-
bwrap— パッケージマネージャーを使用してインストールしてください:
# Debian/Ubuntu
sudo apt install bubblewrap
# Arch
sudo pacman -S bubblewrap
# Fedora
sudo dnf install bubblewrap
-
opencode がインストールされ、
$PATHに含まれていること
ソースコード
インストール
-
opencode-bwrapを$PATH上の任意の場所にコピーします(例:~/.local/bin/):
cp opencode-bwrap ~/.local/bin/opencode-bwrap
chmod +x ~/.local/bin/opencode-bwrap
- プロジェクトディレクトリから実行します:
cd /path/to/your/project
opencode-bwrap
opencodeのフラグは通常通り指定できます:
opencode-bwrap --model anthropic/claude-sonnet-4-5