nikvdp/cco
A thin protective layer for Claude Code
何を解決するか
cco は Claude Code や OpenAI の Codex などの AI コーディングエージェントを安全に実行できるサンドボックス環境を提供します。自律モード(権限プロンプトをスキップ)による生産性と、エージェントが機密システムファイルにアクセスしたり、プロンプトインジェクションで危険なコマンドを実行することを防ぐセキュリティのトレードオフを解消します。
動作方法
cco はホストシステム上で利用可能な最も効率的なサンドボックス手法を自動的に選択するラッパーです:
- ネイティブサンドボックス:macOS では
sandbox-exec、Linux ではbubblewrapを使用し、軽量で高速な隔離を実現します。 - Dockerサンドボックス:ネイティブツールが利用できない場合、Dockerコンテナにフォールバックし、より強固なファイルシステム隔離を提供します。
プロジェクトファイル、Git worktrees、ネットワークアクセスを管理してエージェントが通常通り動作できるようにしつつ、ホストシステムの他の部分へのアクセスを制限します。また、認証情報管理(例:macOS Keychain)やターミナルシグナルの転送(SIGWINCH)も処理し、インタラクティブな体験をネイティブのように保ちます。
対象ユーザー
ターミナルベースの AI コーディングエージェントを使用し、機械のセキュリティを損なうことなく自律モードで実行したい開発者です。
特徴
- ゼロ構成:
claudeコマンドの即時置き換えとして動作します。 - マルチバックエンド対応:ネイティブOSサンドボックスとDockerの間で自動切り替え可能です。
- IDE非依存:VS Code や devcontainers を必要とせず、任意のターミナルで動作します。
- 細かいアクセス制御:
--allow-readonly、--deny-path、--add-dirを使用して、エージェントが見たり変更できる内容を正確に制御できます。 - 認証情報統合:macOS Keychain から認証情報をシームレスに抽出します。
- 汎用ラッパー:
--commandフラグを使用して、任意のCLIツールをサンドボックス化できます。
関連
- プロジェクト
- プロジェクト
- Dispatch
- Dispatch
- プロジェクト