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命令的替代品使用。 - 多后端支持:自动在原生操作系统沙箱和 Docker 之间切换。
- 与 IDE 无关:可在任何终端中使用,无需依赖 VS Code 或 devcontainers。
- 细粒度访问控制:支持
--allow-readonly、--deny-path和--add-dir,精确控制代理可查看和修改的内容。 - 凭证集成:可无缝从 macOS Keychain 提取凭证。
- 多功能包装器:通过
--command标志,可用于对任意 CLI 工具进行沙箱化。
相关
- 项目
- 项目
- Dispatch
- Dispatch
- 项目