概要
clawk は、コーディングエージェント用の 使い捨てLinux仮想マシン を提供するツール。 自身のPCを守りつつ、エージェントに自由な操作権限を与える。 ネットワーク制限 や ファイル隔離 により安全性を確保。 セットアップは簡単 で、1コマンドで即利用可能。 プロジェクトごとの分離環境 で、リスクを最小限に抑える設計。
clawkとは何か
- コーディングエージェント を安全に動かすための 使い捨てLinux仮想マシン 提供ツール
- パッケージインストール、サーバ起動、ネットワーク利用 などをエージェントに許可
- ホストPCのファイルやキーチェーン は仮想マシンから隔離
- 危険な操作もVM内のみ で完結、ホストには影響なし
- ネットワークは許可リスト方式 で制御、不明な外部サーバへの通信は遮断
- ssh-agent転送 で、秘密鍵をVM内に持ち込まずにgit操作可能
- VM破壊も即再構築可能、コードや会話履歴はホスト側で維持
なぜVM方式なのか
- 完全な分離環境 を実現、プロセスサンドボックスより強固な隔離
- 独立したLinuxカーネル を使用、ホストファイルシステムを直接隠す必要なし
- 標準的なLinuxツールチェーン がそのまま利用可能
- ゲスト側でroot権限 を持ち、パッケージやシステム設定も自由
- VMは使い捨て前提、壊れてもすぐ再作成可能
- KVM対応でDockerやKubernetesの開発にも対応 (ハードウェア要件あり)
インストール方法
- macOS 14+(Apple silicon) が必要(Linuxはfirecrackerで実験的対応)
- Homebrew でインストール:
brew install clawkwork/tap/clawk
- ソースからビルド (Go 1.26+):
git clone https://github.com/clawkwork/clawk && cd clawkmake install
- 追加ツール不要 (Docker, qemu, sudo不要)
- アンインストール も簡単:
clawk destroyでサンドボックス削除rm -rf ~/.clawkで設定削除brew uninstall clawkでバイナリ削除
クイックスタート
- 1コマンドでサンドボックス起動 :
cd ~/code/my-projectclawk
- エージェントやシェルに接続 :
clawk run shellclawk run codex
- VMの停止・再接続・削除 :
clawk downclawk attachclawk destroy
- ネットワーク・ポートの許可/転送 :
clawk network allow my-project api.example.comclawk forward add my-project 3000
セキュリティモデル
- エージェントはフル権限 (--dangerously-skip-permissions等)で動作
- VM境界とネットワーク許可リスト が安全性を担保
- ホスト側のファイル・秘密情報はVMから不可視
- ssh-agent転送で安全なgit操作
- プロンプトによる確認が必要な場合は--safeオプション
- 許可外のネットワークアクセスは自動で遮断・記録
サンドボックスのライフサイクル
- clawk list :全サンドボックス一覧
- clawk status :状態確認(--json対応)
- clawk up/down :起動/停止
- clawk pause/resume :サスペンド/復帰
- clawk snapshot :メモリごとスナップショット保存
- clawk destroy :VM削除(会話履歴やコードは維持)
- 状態・会話履歴はホスト側で永続化、VMディスクのみ使い捨て
設定ファイル(clawk.mod)
- 設定ファイル不要、デフォルトで即利用可能
- 必要に応じてgo.mod風の設定ファイルでカスタマイズ
- CPU数、メモリ、イメージ、ネットワーク許可、ポート転送、環境変数、起動時コマンド、エージェント指示など
- 設定例 :
sandbox my-project ( vm ( cpu 4 memory 8GiB image golang:1.25 ) network ( allow api.example.com ) forwards ( 3000 ) env ( DATABASE_URL ) on create ( "go mod download" ) agent ( instructions "Ask before running destructive commands." ) )
他方式との比較
- プロセスサンドボックス :エージェントがポリシーを回避するリスクあり
- Docker/Devcontainer :セットアップが複雑、ホストと分離が不十分な場合あり
- clawk :本物の仮想マシンで強力な隔離、セットアップもシンプル
FAQ・注意点
- Pre-1.0段階、仕様変更やバグ発生の可能性あり
- フィードバック歓迎、issue報告が1.0開発の参考に
- プロジェクト単位で複数VM同時運用可能、リソース自動解放
- KVM対応やカスタムイメージの詳細は公式ドキュメント参照
clawk は、AIコーディングエージェントを安全かつ自由に活用したい開発者向けの 次世代ローカル仮想環境。 自分のPCを守りつつ、エージェントに思い切り仕事をさせたい なら、最適な選択肢。