RchGrav/claudebox

The Ultimate Claude Code Docker Development Environment - Run Claude AI's coding assistant in a fully containerized, reproducible environment with pre-configured development profiles.

ClaudeBox – 用于 Anthropic Claude Code 的 Docker 开发环境

这是什么

  • 一个命令行工具,可设置一个预先加载 Claude Code CLI(Anthropic 的 AI 编码助手)和一套开发工具的隔离 Docker 容器。
  • 每个项目都有自己的 Docker 镜像、Python 虚拟环境、防火墙白名单以及持久化的 Claude 验证/历史记录,因此您可以并行处理多个项目而不会产生交叉污染。

主要功能

功能 您将获得
容器化 Claude 在基于 Debian 的 Docker 镜像中运行 Claude Code,若缺少 Docker 则会自动安装。
开发配置文件 一键安装语言堆栈(C/C++、Python、Rust、Go、Java、JavaScript 等)以及专业工具集(OpenWRT、DevOps、安全、数据科学等)。
项目隔离 每个项目(称为 slots)都有独立的 Docker 镜像、验证文件、Shell 历史记录和工具配置。
持久化配置 配置文件、已安装包和 Python uv 虚拟环境在容器重启后依然存在。
多实例支持 同时在不同的项目目录中启动独立的 Claude 会话。
安全控制 项目专属的防火墙白名单;可选的 --enable-sudo--disable-firewall--dangerously-skip-permissions 标志。
丰富的开发体验 GitHub CLI、Delta、fzf、Powerline 风格的 Zsh,以及内置用于多窗格工作流的 tmux 集成。
剪贴板桥接 (macOS) 可选服务,可在主机剪贴板与容器之间转发图像/文本(限制为 20 MiB 图像 / 1 MiB 文本)。
任务引擎 Claude 内部的简单 /task 命令,用于拆解并迭代代码生成任务。

安装 (快速入门)

# 获取自解压安装程序
wget https://github.com/RchGrav/claudebox/releases/latest/download/claudebox.run
chmod +x claudebox.run
./claudebox.run          # 解压至 ~/.claudebox/source/ 并链接至 ~/.local/bin/claudebox

安装程序会在首次运行时检查 Docker 并将其配置为非 root 使用。

如果您偏好手动存档,请从 Releases 页面下载 tarball,解压后运行 ./main.sh 来创建符号链接。

典型工作流

# 在项目目录内
claudebox create               # 创建一个新的“插槽”(持久化 Claude 会话)
claudebox slots                # 列出现有插槽及其状态
claudebox add python           # 添加开发配置文件(选用)
claudebox slot 1               # 连接到插槽 1 – 您将进入一个准备好 Claude 的 Shell

您可以使用另一个 claudebox create 在相同或不同的项目中启动另一个插槽。不带参数运行 claudebox 会自动选择一个非活动的插槽。

管理配置文件

claudebox profiles                 # 列出所有可用配置文件及其说明
claudebox profile                 # 添加/移除配置文件的交互式菜单
claudebox profile status          # 查看当前项目启用了哪些配置文件
claudebox profile rust go         # 为此项目安装 Rust 和 Go 工具链

配置文件会缓存在项目的 Docker 镜像中,因此安装新配置文件只会触发该镜像的重建。

以自定义标志运行 Claude

claudebox --model opus -c          # 以 *opus* 模型和代码生成模式启动 Claude
claudebox save --enable-sudo       # 记住此标志,以便未来的运行继承它

保存的标志会存储在本地,并自动应用到后续的 claudebox 命令。

剪贴板支持 (仅限 macOS)

claudebox --clipboard               # 启动一个可以读取/写入主机剪贴板的会话

此桥接会创建一个绑定到 localhost 的短效 HTTP 监听器;会话令牌作为密钥。基于安全考量,默认禁用。

清理与维护

  • claudebox clean – 交互式菜单,用于删除配置文件、项目数据、Docker 镜像,或当前项目的所有内容。
  • claudebox clean --containers / --image / --cache / --volumes – 全局 Docker 清理选项。
  • claudebox rebuild – 强制重新构建项目的 Docker 镜像。

数据存放位置

  • ~/.claudebox/source/ – 已安装的脚本。
  • ~/.claudebox/projects/<project-id>/ – 项目状态(配置文件、Docker 镜像标签、防火墙规则、Python venv 等)。
  • ~/.claudebox/projects/<project-id>/<slot-id>/.claude/ – Claude 验证令牌、会话历史记录和配置文件。
  • 主机工作区以读写模式挂载在容器内的 /workspace;主机的 ~/.gitconfig 以只读模式挂载。

适用对象

  • 希望为 Claude Code 建立可重现、隔离环境,且不想手动配置 Docker、语言运行时或安全设置的开发者。
  • 需要进行项目级沙盒隔离(不同的 Python 版本、独立的网络白名单等),同时共享单一主机的团队。
  • 任何寻求“即插即用”AI 辅助编码设置,且能镜像完整开发工作站的人。

授权

  • MIT (请参阅 LICENSE)。

以上所有信息均直接取自仓库的 README;未推论出任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目