🐧

Claude Codeにファイルシステムを破壊されたくないLinuxユーザーへ

に公開

ちまたでときどき話題になっているClaude Codeをはじめとしたエージェント型AIによるファイルシステムの破壊を防げそうなのでメモ。

前提条件

  • Claude CodeなどCLI型の実行形態をとる
  • ローカルのファイルシステムを破壊されたくない
  • プロジェクトのコードは書き換えできるようにしたい
  • 任意のネットワークにデータが送られるのは許容する
  • devcontainerだとコンテナ外のデータにアクセスさせるのにマウントしなおしたりパス変わったりで面倒
  • とにかくローカルのファイルシステムを破壊しなければよい

解決策

Bubblewrap / brwap を使う。

https://wiki.archlinux.org/title/Bubblewrap/Examples
https://gihyo.jp/admin/serial/01/ubuntu-recipe/0686

説明は記事を参照のこと。
ようはDockerでも使っているLinuxの名前空間の技術を使う。
具体的なコマンド例はこのとおり。

bwrap --ro-bind / / --bind $HOME/.claude $HOME/.claude --bind $HOME/.claude.json $HOME/.claude.json --bind $HOME/.claude.json.backup $HOME/.claude.json.backup --bind $PWD $PWD --dev /dev claude

bash用。fishは読み換えて。
やっていることは簡単で、ファイルシステム全体を読み込み専用として必要なところだけ書き込み可能とするだけ。

Discussion