claude-code-runner
v0.3.3
Published
Run Claude Code as an autonomous agent in Docker & Podman containers
Downloads
73
Maintainers
Readme
Claude Code Runner
[!WARNING]
- 这项工作处于 alpha 阶段,可能存在安全问题,使用风险自负。
- 如有疑问,请发送邮件至 [email protected]。
在 Docker 容器内将 Claude Code、OpenCode、Codex、Kimi Code 或 Qwen Code 作为自主代理运行,并自动集成 GitHub。安全地绕过所有权限提示。
支持的代码运行器
Claude Code Runner 支持多个 AI 编程助手:
| 运行器 | 命令 | 描述 |
|--------|------|------|
| Claude Code | claude-run | Anthropic 官方的 Claude Code CLI |
| OpenCode | claude-run --runner opencode | 支持多提供商的开源替代方案 |
| Codex | claude-run --runner codex | OpenAI 的 Codex CLI |
| Kimi Code | claude-run --runner kimi | 月之暗面的 Kimi Code CLI |
| Qwen Code | claude-run --runner qwen | 阿里巴巴的 Qwen Code CLI |
你可以通过以下方式切换运行器:
- CLI 参数:
--runner claude、--runner opencode、--runner codex、--runner kimi或--runner qwen - 配置文件: 在
claude-run.config.json中设置"codeRunner": "codex"(或"kimi"、"qwen"等)
为什么选择 Claude Code Runner?
Claude Code Runner 的主要目标是通过允许 Claude Code、OpenCode、Codex、Kimi Code 或 Qwen Code 在没有权限提示的情况下执行,从而实现 完全异步的智能体工作流。通过在隔离的 Docker 容器中使用危险/自动批准模式标志运行 AI 助手,AI 可以:
- 无需请求权限即可立即执行任何命令
- 自主进行代码更改
- 运行构建工具、测试和开发服务器
- 创建提交并管理 Git 操作
- 在不打断用户的情况下持续工作
通过 基于浏览器的终端 访问代码助手,让你可以在处理其他任务的同时监控 AI 助手并与之交互。这创建了一个真正自主的开发助手,类似于 OpenAI Codex 或 Google Jules,但在你的本地机器上运行,并且完全可控。
概述
Claude Code Runner 允许你在隔离的 Docker 容器中运行 Claude Code、OpenCode、Codex、Kimi Code 或 Qwen Code,为 AI 辅助开发提供安全的环境。它会自动:
- 为每个会话创建新的 Git 分支
- 监控 AI 助手所做的提交
- 提供交互式的更改审查
- 安全地转发凭证
- 启用推送/PR 创建工作流
- 运行自定义设置命令以初始化环境
安装
从 npm 全局安装 Claude Code Runner:
npm install -g claude-code-runner前置要求
- Node.js >= 22.13.0
- Docker 或 Podman
- Git
使用方法
快速开始
提示:为了最快的启动速度,使用预构建的官方镜像:在配置中设置
buildImage: false。默认镜像会自动使用与 CLI 版本匹配的标签(例如ghcr.io/yanranxiaoxi/claude-code-runner:v0.3.2)。
只需在任何目录中运行:
claude-run这将:
- 创建一个新分支 (
claude/[timestamp]) - 启动一个包含 Claude Code 的 Docker 容器
- 在
http://localhost:3456上启动 Web UI - 自动打开浏览器
[!WARNING]
非 Git 目录支持
如果你在非 Git 目录中运行
claude-run,工具会提示你初始化 Git 仓库。如果你同意,它会自动运行git init,创建初始提交,并启动容器。重要:初始化后,你必须手动设置远程仓库(例如在 GitHub 上)并配置上游以保存更改。使用如下命令:git remote add origin <你的仓库 URL> git push -u origin main如果不设置上游,你的更改将仅存在于容器内的本地。
[!NOTE]
使用带密码的 SSH 密钥
如果你的 SSH 密钥设置了密码保护,在运行
claude-run之前先启动 SSH agent:eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa # 输入一次密码 claude-run # SSH agent 会被转发到容器这样 Claude Code 就可以使用你的 SSH 密钥,而不会反复提示输入密码。
[!TIP]
中国大陆用户配置代理
如果你在中国大陆地区,可能需要配置代理以访问 Claude API。参考
claude-run.config.cn-example.json创建配置文件:{ "buildImage": false, "environment": { "ANTHROPIC_AUTH_TOKEN": "<YOUR_ANTHROPIC_AUTH_TOKEN>", "ANTHROPIC_BASE_URL": "https://api.ai.soraharu.com", "ANTHROPIC_MODEL": "anthropic/claude-sonnet-4-5", "ANTHROPIC_SMALL_FAST_MODEL": "anthropic/claude-haiku-4-5" } }将
<YOUR_ANTHROPIC_AUTH_TOKEN>替换为你的实际令牌,ANTHROPIC_BASE_URL替换为你的代理地址。
命令
快捷命令
以下命令是 claude-run 的快捷方式:
clauderunccrunocrun(OpenCode 别名)opencoderun(OpenCode 别名)opencode-run(OpenCode 别名)cxrun(Codex 别名)codexrun(Codex 别名)codex-run(Codex 别名)kmrun(Kimi Code 别名)kimirun(Kimi Code 别名)kimi-run(Kimi Code 别名)qwrun(Qwen Code 别名)qwenrun(Qwen Code 别名)qwen-run(Qwen Code 别名)
claude-run(默认)
使用 Web UI 启动新容器(推荐):
claude-run使用 OpenCode
要使用 OpenCode 而不是 Claude Code:
# 通过 CLI 参数
claude-run --runner opencode
# 或使用 OpenCode 别名
ocrun
opencoderun
opencode-run使用 Codex
要使用 OpenAI Codex:
# 通过 CLI 参数
claude-run --runner codex
# 或使用 Codex 别名
cxrun
codexrun
codex-run使用 Kimi Code
要使用月之暗面的 Kimi Code:
# 通过 CLI 参数
claude-run --runner kimi
# 或使用 Kimi Code 别名
kmrun
kimirun
kimi-run使用 Qwen Code
要使用阿里巴巴的 Qwen Code:
# 通过 CLI 参数
claude-run --runner qwen
# 或使用 Qwen Code 别名
qwrun
qwenrun
qwen-runclaude-run start
显式启动带选项的新容器:
claude-run start [选项]
选项:
-c, --config <path> 配置文件(默认: ./claude-run.config.json)
-n, --name <name> 容器名称前缀
--runner <runner> 要使用的代码运行器: 'claude'、'opencode'、'codex'、'kimi' 或 'qwen'
--shell <shell> 启动时使用的 shell: 'claude'、'opencode'、'codex'、'kimi'、'qwen' 或 'bash'
--no-web 禁用 Web UI(使用终端附加)
--no-push 禁用自动分支推送
--no-pr 禁用自动 PR 创建claude-run attach [container-id]
附加到现有容器:
# 交互式选择
claude-run attach
# 指定容器
claude-run attach abc123def456
选项:
--no-web 使用终端附加而不是 Web UIclaude-run list
列出所有 Claude Runner 容器:
claude-run list
claude-run ls # 别名
选项:
-a, --all 显示所有容器(包括已停止的)claude-run stop [container-id]
停止容器:
# 交互式选择
claude-run stop
# 指定容器
claude-run stop abc123def456
# 停止全部
claude-run stop --allclaude-run logs [container-id]
查看容器日志:
claude-run logs
claude-run logs abc123def456
选项:
-f, --follow 跟踪日志输出
-n, --tail <lines> 显示的行数(默认: 50)claude-run clean
删除已停止的容器:
claude-run clean
claude-run clean --force # 删除所有容器claude-run config
显示当前配置:
claude-run configclaude-run self-update
更新 Claude Code Runner 到最新版本:
claude-run self-update
claude-run update # 别名此命令会自动将全局安装的包更新到 npm 上可用的最新版本。
配置
创建一个 claude-run.config.json 文件(参考 claude-run.config.example.json):
{
"dockerImage": "claude-code-runner:latest",
"buildImage": true,
"dockerfile": "./custom.Dockerfile",
"detached": false,
"autoPush": true,
"autoCreatePR": true,
"autoStartClaude": true,
"envFile": ".env",
"environment": {
"NODE_ENV": "development"
},
"setupCommands": ["npm install", "npm run build"],
"volumes": ["/host/path:/container/path:ro"],
"mounts": [
{
"source": "./data",
"target": "/workspace/data",
"readonly": false
},
{
"source": "/home/user/configs",
"target": "/configs",
"readonly": true
}
],
"allowedTools": ["*"],
"maxThinkingTokens": 100000,
"bashTimeout": 600000,
"containerPrefix": "my-project",
"claudeConfigPath": "~/.claude.json",
"dockerSocketPath":"/run/user/1000/podman/podman.sock",
"forwardSshKeys": true,
"forwardGpgKeys": true,
"forwardSshAgent": true,
"forwardGpgAgent": false,
"enableGpgSigning": false
}配置选项
dockerImage: 要使用的基础 Docker 镜像 (默认:claude-code-runner:latest;当buildImage为false时,默认使用与 CLI 版本匹配的官方镜像,如ghcr.io/yanranxiaoxi/claude-code-runner:v0.3.2)buildImage: 在本地构建镜像(默认:true)或从仓库拉取(设置为 false)dockerfile: 自定义 Dockerfile 的路径(可选)detached: 在分离模式下运行容器autoPush: 提交后自动推送分支autoCreatePR: 自动创建拉取请求autoStartClaude: 自动启动 Claude Code (默认: true)codeRunner: 要使用的代码运行器:"claude"、"opencode"、"codex"、"kimi"或"qwen"(默认:"claude")defaultShell: 启动时使用的 shell:"claude"、"opencode"、"codex"、"kimi"、"qwen"或"bash"(默认: 与codeRunner一致)envFile: 从文件加载环境变量 (例如.env)environment: 额外的环境变量setupCommands: 容器启动后要运行的命令(例如安装依赖)volumes: 旧版卷挂载(字符串格式)mounts: 现代挂载配置(对象格式)allowedTools: Claude 工具权限 (默认: 全部)maxThinkingTokens: Claude 的最大思考令牌数bashTimeout: bash 命令超时时间(毫秒)containerPrefix: 容器名称的自定义前缀claudeConfigPath: Claude 配置文件的路径opencodeConfigPath: OpenCode 配置文件的路径(默认:~/.config/opencode/opencode.json)codexConfigPath: Codex 配置目录的路径(默认:~/.codex)kimiConfigPath: Kimi Code 配置目录的路径(默认:~/.kimi)qwenConfigPath: Qwen Code 配置目录的路径(默认:~/.qwen)dockerSocketPath: 自定义 Docker/Podman 套接字路径(默认自动检测)forwardSshKeys: 将~/.ssh中的 SSH 密钥转发到容器(默认:true)forwardGpgKeys: 将~/.gnupg中的 GPG 密钥转发到容器(默认:true)forwardSshAgent: 转发 SSH agent 以支持带密码的密钥(默认:true)forwardGpgAgent: 转发 GPG agent 以支持带密码的 GPG 密钥(默认:false,需显式启用)enableGpgSigning: 在容器中启用 GPG 提交签名(默认:false)
OpenCode 配置
要使用 OpenCode 而不是 Claude Code,创建一个配置文件:
{
"codeRunner": "opencode",
"defaultShell": "opencode",
"environment": {
// Anthropic 提供商
"ANTHROPIC_API_KEY": "your-api-key",
// 自定义 API 端点(例如代理服务)
"ANTHROPIC_BASE_URL": "https://your-proxy-url"
}
}OpenCode 支持多个提供商。详情请参阅 OpenCode 提供商文档:
- OpenAI、Anthropic、Google Vertex AI、Azure OpenAI
- OpenRouter、Groq、Together AI 等
- 通过 Ollama 或 LM Studio 使用本地模型
使用 oh-my-opencode 插件
容器已预装 oh-my-opencode。要启用它:
1. 在宿主机上创建配置(推荐方式):
在宿主机上创建 ~/.config/opencode/opencode.json:
{
"plugin": ["oh-my-opencode"],
"agents": {
"sisyphus": { "model": "anthropic/claude-opus-4-6" }
}
}在容器启动时,配置文件会自动复制到容器中。
2. 在容器内运行安装器:
# 在容器内执行
npx oh-my-opencode install --no-tui --claude=yes --gemini=no --copilot=no注意:在宿主机上创建配置是首选方式,因为:
- 配置文件通常包含敏感的 API 密钥
- 你可以将它排除在 git 跟踪之外(将
opencode.json添加到.gitignore)- 同一配置可以在多个容器之间重用
- 你可以在
claude-run.config.json中使用opencodeConfigPath自定义路径
有关详细配置选项,请参阅 oh-my-opencode 安装指南。
Codex 配置
要使用 OpenAI Codex,创建一个配置文件:
{
"codeRunner": "codex",
"defaultShell": "codex",
"environment": {
"OPENAI_API_KEY": "your-openai-api-key"
}
}Codex 在容器中使用 --dangerously-bypass-approvals-and-sandbox 模式运行。你也可以在容器内通过 codex login 进行认证。
配置存储在 ~/.codex/(包括 config.toml 和 auth.json)。你可以在 claude-run.config.json 中使用 codexConfigPath 自定义路径。
详情请参阅 Codex CLI 文档。
Kimi Code 配置
要使用月之暗面的 Kimi Code,创建一个配置文件:
{
"codeRunner": "kimi",
"defaultShell": "kimi",
"environment": {
"KIMI_API_KEY": "your-kimi-api-key",
"KIMI_BASE_URL": "https://api.kimi.com/coding/v1"
}
}Kimi Code 在容器中使用 --yolo 模式(自动批准所有操作)运行。你也可以在 ~/.kimi/config.toml 中配置默认模型和其他选项。
配置存储在 ~/.kimi/。你可以在 claude-run.config.json 中使用 kimiConfigPath 自定义路径。
详情请参阅 Kimi Code CLI 文档。
Qwen Code 配置
要使用阿里巴巴的 Qwen Code,创建一个配置文件:
{
"codeRunner": "qwen",
"defaultShell": "qwen",
"environment": {
"DASHSCOPE_API_KEY": "your-dashscope-api-key"
}
}Qwen Code 在容器中使用 --yolo 模式(自动批准所有操作)运行。它支持通过配置 ~/.qwen/settings.json 使用多个模型提供商。
配置存储在 ~/.qwen/。你可以在 claude-run.config.json 中使用 qwenConfigPath 自定义路径。
Qwen Code 还支持通过 settings.json 中的 modelProviders 配置使用 OPENAI_API_KEY、ANTHROPIC_API_KEY 和 GEMINI_API_KEY。
详情请参阅 Qwen Code 文档。
挂载配置
mounts 数组允许你将文件或目录挂载到容器中:
source: 宿主机上的路径(相对路径从当前目录解析)target: 容器中的路径(相对路径从 /workspace 解析)readonly: 可选布尔值,使挂载为只读(默认: false)
示例用例:
- 挂载不应包含在 Git 中的数据目录
- 在宿主机和容器之间共享配置文件
- 挂载构建产物或依赖项
- 访问宿主系统资源(谨慎使用)
使用预构建的容器镜像
默认情况下,Claude Code Runner 在本地构建 Docker 镜像。如果你更喜欢从仓库拉取预构建镜像:
方案 1:使用官方预构建镜像(推荐)
最简单的方式是使用官方维护的镜像,只需设置 buildImage: false:
{
"buildImage": false
}会自动使用与 CLI 版本匹配的官方镜像(例如 ghcr.io/yanranxiaoxi/claude-code-runner:v0.3.2)。
然后运行:
claude-run可用的官方镜像:
- GitHub 容器镜像仓库(默认):
ghcr.io/yanranxiaoxi/claude-code-runner:v<version> - Docker Hub:
docker.io/yanranxiaoxi/claude-code-runner:v<version> - GitLab 镜像仓库:
registry.gitlab.soraharu.com/xiaoxi/claude-code-runner:v<version>
注意:镜像标签中的
<version>会自动匹配 CLI 版本号(例如v0.3.2)。每个版本同时也提供:latest标签。
所有镜像都具有以下优势:
- ✅ 定期维护和更新
- ✅ 已预配置并测试
- ✅ 开箱即用
- ✅ 启动速度更快
- ✅ 使用默认镜像(GitHub 容器镜像仓库)时无需指定完整的镜像 URL
- ✅ 镜像标签自动与 CLI 版本匹配,确保版本一致性
要使用 Docker Hub:
{
"buildImage": false,
"dockerImage": "docker.io/yanranxiaoxi/claude-code-runner:v0.3.2"
}要使用 GitLab 镜像仓库:
{
"buildImage": false,
"dockerImage": "registry.gitlab.soraharu.com/xiaoxi/claude-code-runner:v0.3.2"
}方案 2:使用自定义镜像
如果你在仓库中维护自己的镜像:
{
"dockerImage": "myregistry.com/claude-code-runner:latest",
"buildImage": false
}方案 3:本地构建(默认)
从仓库中的 Dockerfile 构建镜像:
{
"dockerImage": "claude-code-runner:latest",
"buildImage": true
}这对以下场景很有用:
- 开发:在本地定制镜像
- 团队工作流:构建一致的环境
- CI/CD 流水线:生成自定义版本
功能特性
Podman 支持
Claude Code Runner 还支持 Podman 作为 Docker 的替代方案。该工具通过检查可用的套接字路径自动检测你是使用 Docker 还是 Podman:
- 自动检测: 工具在标准位置检查 Docker 和 Podman 套接字
- 自定义套接字路径: 使用
dockerSocketPath配置选项指定自定义套接字 - 环境变量: 设置
DOCKER_HOST来覆盖套接字检测
[!IMPORTANT]
如果你使用 Podman 的 rootless(无根)模式,需要启用 Podman socket 服务:
systemctl --user enable --now podman.socket验证 socket 服务是否正在运行:
systemctl --user status podman.socket
Podman 的示例配置:
{
"dockerSocketPath": "/run/user/1000/podman/podman.sock"
}工具将在以下情况下自动检测并使用 Podman:
- Docker 套接字不可用
- 在标准位置找到 Podman 套接字(
/run/podman/podman.sock或$XDG_RUNTIME_DIR/podman/podman.sock)
SSH 和 GPG 密钥支持
Claude Code Runner 会自动将你的 SSH 和 GPG 密钥转发到容器中,让你可以无缝地对任何远程仓库(GitHub、GitLab、Bitbucket、自托管等)进行 git 操作。
自动 SSH 密钥转发
默认情况下,你的 ~/.ssh 目录会自动挂载到容器中并设置正确的权限:
- ✅ 支持所有 git 托管提供商(不仅仅是 GitHub)
- ✅ 支持 SSH 协议(
[email protected]:user/repo.git) - ✅ 自动处理密钥权限
- ✅ 支持多个 SSH 密钥
对于带密码的 SSH 密钥,在运行 claude-run 之前先在宿主机上启动 SSH agent:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa # 输入你的密码
claude-run # SSH agent 会被转发到容器容器将使用宿主机的 SSH agent,因此你无需再次输入密码。
[!NOTE]
故障排除:SSH Agent 无法连接
如果在容器内运行
ssh-add -l显示 "communication with agent failed":
- 验证宿主机 agent:确保宿主机上
ssh-add -l能正常工作- 检查启动日志:容器启动时查看是否显示 "✓ SSH agent forwarding enabled via socat relay"
- 备用方案:禁用 agent 转发,直接使用密钥:
(如果密钥有密码保护,首次使用时可能需要输入密码){ "forwardSshAgent": false, "forwardSshKeys": true }
GPG 密钥支持
来自 ~/.gnupg 的 GPG 密钥会自动转发到容器。GPG 提交签名默认是禁用的,以避免在非交互式环境中出现密码提示。
三种使用方式:
直接使用 GPG 密钥(推荐用于无密码密钥)
- GPG 密钥文件自动复制到容器
- 无需额外配置
- 仅适用于没有密码的 GPG 密钥
通过 GPG agent 转发(推荐用于密码保护的密钥)
- 需要在配置中启用:
{ "forwardGpgAgent": true, "enableGpgSigning": true }- 宿主机 GPG agent 会在容器启动时自动转发
- 支持密码保护的密钥(无需在容器内输入密码)
- 需要宿主机
gpg-agent正在运行
完全禁用 GPG 签名
- 默认行为(如果不配置
enableGpgSigning) - 即使宿主机配置了
commit.gpgsign = true,容器内也会禁用签名 - 这是为了避免在无法访问
/dev/tty的容器环境中出现签名失败
- 默认行为(如果不配置
[!NOTE]
为了安全起见,建议使用 SSH 提交签名(如果 Git 服务器支持)。这样不需要配置 GPG 就能实现签名。
禁用 SSH/GPG 转发
如果你不想转发密钥,可以禁用此功能:
{
"forwardSshKeys": false,
"forwardGpgKeys": false,
"forwardSshAgent": false,
"forwardGpgAgent": false
}Git 配置
你的 git 配置(姓名、邮箱等)会自动从宿主机复制。容器已预先配置为:
- 自动接受所有 SSH 主机密钥(为了安全,请在首次连接时手动验证)
- 使用 SSH agent 进行身份验证
- 同时支持 SSH 和 HTTPS 协议
对于使用令牌的 HTTPS,设置 GITHUB_TOKEN 环境变量或使用内置的 gh CLI 令牌发现功能。
Web UI 终端
启动基于浏览器的终端界面以与 Claude Code 交互:
claude-run --web这将:
- 以分离模式启动容器
- 在
http://localhost:3456上启动 Web 服务器 - 自动打开浏览器
- 提供完整的终端界面,具有:
- 实时终端流
- 复制/粘贴支持
- 终端调整大小
- 重新连接功能
非常适合在处理其他任务时监控 Claude 的工作。
自动凭证发现
Claude Code Runner 会自动发现并转发:
Claude 凭证:
- Anthropic API 密钥(
ANTHROPIC_API_KEY) - macOS 钥匙串凭证(Claude Code)
- AWS Bedrock 凭证
- Google Vertex 凭证
- Claude 配置文件(
.claude.json、.claude/)
GitHub 凭证:
- GitHub CLI 身份验证(
gh auth) - GitHub 令牌(
GITHUB_TOKEN、GH_TOKEN) - Git 配置(
.gitconfig)
沙箱执行
- 代码运行器使用各自的危险/自动批准模式标志(在容器中安全):
- Claude Code:
--dangerously-skip-permissions - OpenCode: 无需标志(交互式 TUI;仅在非交互
-p模式下自动批准) - Codex:
--dangerously-bypass-approvals-and-sandbox - Kimi Code:
--yolo - Qwen Code:
--yolo
- Claude Code:
- 为每个会话创建隔离的分支
- 在容器内完全访问运行任何命令
- 文件被复制到容器中(而不是挂载),实现真正的隔离
- 保留 Git 历史以进行适当的版本控制
提交监控
当 Claude 进行提交时:
- 出现实时通知
- 显示带语法高亮的完整差异
- 交互式菜单提供选项:
- 继续工作
- 将分支推送到远程
- 推送分支并创建 PR
- 退出
使用多个容器
同时运行多个 Claude 实例:
# 终端 1: 启动主开发
claude-run start --name main-dev
# 终端 2: 启动功能分支工作
claude-run start --name feature-auth
# 终端 3: 列出所有运行中的容器
claude-run list
# 终端 4: 附加到任何容器
claude-run attachDocker 环境
默认镜像
默认 Docker 镜像包含:
- AlmaLinux 10
- Git、GitHub CLI
- Node.js、npm
- Python 3
- Claude Code
- OpenCode(含 oh-my-opencode 插件)
- Codex (OpenAI)
- Kimi Code CLI
- Qwen Code
- 构建必需工具
自定义 Dockerfile
创建自定义环境:
FROM claude-code-runner:latest
# 添加你的工具
RUN apt-get update && apt-get install -y \
rust \
cargo \
postgresql-client
# 安装项目依赖
COPY package.json /tmp/
RUN cd /tmp && npm install
# 自定义配置
ENV CUSTOM_VAR=value在配置中引用:
{
"dockerfile": "./my-custom.Dockerfile"
}工作流示例
启动 Claude Runner:
cd my-project claude-run与 Claude 交互:
> 帮我重构认证模块以使用 JWT 令牌Claude 自主工作:
- 探索代码库
- 进行更改
- 运行测试
- 提交更改
审查并推送:
- 查看提交通知
- 审查带语法高亮的差异
- 选择推送并创建 PR
安全考虑
- 凭证以只读方式挂载
- 容器与宿主机隔离
- 分支限制可防止意外修改主分支
- 所有更改在推送前需要明确的用户批准
故障排除
Docker 权限问题
将你的用户添加到 docker 组:
sudo usermod -aG docker $USER
# 注销并重新登录以使更改生效容器清理
删除所有 Claude Runner 容器和镜像:
npm run purge-containers凭证发现失败
显式设置凭证:
export ANTHROPIC_API_KEY=your-key
export GITHUB_TOKEN=your-token或使用 .env 文件配合 envFile 配置选项。
构建错误
确保使用 Node.js >= 22.13.0:
node --version开发
从源代码构建
从源代码构建和开发 Claude Code Runner:
git clone https://gitlab.soraharu.com/XiaoXi/claude-code-runner.git
cd claude-code-runner
npm install
npm run build
npm link # 创建全局 'claude-run' 命令可用脚本
npm run build- 将 TypeScript 构建为 JavaScriptnpm run dev- 开发的监视模式npm start- 构建并运行 CLInpm run lint- 运行 ESLintnpm run fix- 运行 ESLint 并修复格式错误npm run purge-containers- 清理所有容器
贡献
- Fork 仓库
- 创建功能分支
- 进行更改
- 运行代码检查:
npm run lint - 提交拉取请求
感谢
许可证
MIT
