Skip to content

Remote Control

momo edited this page Jul 6, 2026 · 1 revision

远程触发服务

remote-control 是 research-bench 的可选服务,用于在自有域名和云服务器上触发、查看和管理 Claude Code 会话。它不是 Claude Code 插件。

Web 面板支持在 Edge/Chrome 中安装为 PWA。

目录结构

remote-control/
├── server/       FastAPI 后端
├── web/          静态 Web 面板
├── deploy/       systemd、Caddy、环境变量模板
├── docs/         安全设计说明
├── Dockerfile
└── docker-compose.yml

本地运行

cd remote-control
python3 -m venv .venv
source .venv/bin/activate
pip install -r server/requirements.txt

export REMOTE_CONTROL_TOKEN=$(python3 -c "import secrets; print(secrets.token_urlsafe(32))")
export REMOTE_CONTROL_PROJECT_DIRS="demo=$(pwd)/.."

uvicorn server.main:app --reload --port 8000

然后打开:

http://localhost:8000

裸机部署

基本路径:

  1. 准备域名并把 DNS 指向服务器。
  2. 安装 Caddy。
  3. 将仓库放到服务器,例如 /opt/research-bench/。
  4. 复制并填写 remote-control/deploy/.env.example。
  5. 用专用低权限用户运行 remote-control.service。
  6. 用 Caddy 反向代理并自动签发 TLS。
  7. 完整测试触发、运行记录和日志查看。

Docker 部署

cd remote-control
cp deploy/.env.example deploy/.env
cp deploy/Caddyfile.docker.example deploy/Caddyfile
docker compose up -d --build

容器部署时必须配置 ANTHROPIC_API_KEY、REMOTE_CONTROL_TOKEN 和 REMOTE_CONTROL_PROJECT_DIRS。

自动构建镜像

.github/workflows/remote-control-docker.yml 会在 remote-control/** 有改动并 push 到 main 时构建 GHCR 镜像:

ghcr.io/<repo owner>/remote-control

tag 规则:

  • latest:每次 main 构建更新。
  • remote-control-v1.2.3:额外产出 1.2.3 标签。

Clone this wiki locally