本地开发
September 14, 2026 · View on GitHub
环境要求
- Go 1.25 或与
go.mod一致的版本; - Node.js 24;
- Corepack;仓库根目录、客户端和管理台统一使用锁定的 pnpm 10.33.3;
- Docker 与 Docker Compose;
- PostgreSQL 16(也可使用 Compose 启动)。
启动依赖
先指定独立于源码仓库的私有运维目录。仓库内的示例配置只用于初始化,不会被程序直接读取:
# 在整合仓库根目录先运行 pnpm run setup,然后进入 server/:
export CLAWEE_OPS_DIR="$HOME/clawee-ops"
node ../scripts/clawee.mjs init --ops-dir "$CLAWEE_OPS_DIR"
初始化会生成安全密钥。默认数据库位于本机 15932 端口;其他部署请修改私有配置或 $CLAWEE_OPS_DIR/.env。
docker compose -f deploy/docker-compose.yaml up -d postgres
确认数据库就绪:
docker compose -f deploy/docker-compose.yaml exec postgres \
pg_isready -U claw_gateway -d claw_gateway
初始化数据库
make db-migrate-up
迁移只支持向上执行。运行迁移前应确认配置指向开发数据库;集成测试数据库名称必须以 _test 结尾。
启动后端和管理控制台
一条命令启动本地依赖、后端和 Web 开发服务器:
./scripts/dev.sh
默认地址:
- 后端:
http://127.0.0.1:1904 - Web 开发服务器:
http://127.0.0.1:5904
Gateway 和管理台开发服务器默认监听 0.0.0.0,其他设备用开发机实际 IP 或域名访问。上面的回环地址用于本机访问。已有外部配置不会被初始化命令覆盖;可通过 CLAW_GATEWAY_SERVER_ADDR=0.0.0.0:1904 显式覆盖 Gateway 监听,WEB_DEV_HOST 可覆盖联合开发脚本的页面监听。
也可以分别启动:
./scripts/dev-backend.sh
./scripts/dev-web.sh
验证服务
curl --fail http://127.0.0.1:1904/healthz
curl --fail http://127.0.0.1:1904/readyz
curl --fail http://127.0.0.1:1904/version
测试与构建
./scripts/test.sh
./scripts/build-all.sh
仅运行后端单元测试:
go test ./...
仅运行前端测试:
cd web
pnpm install --frozen-lockfile
pnpm test
开发数据
db/seeds/mcp_gateway_admin_test_data.sql 只用于演示和测试。不要向共享或生产数据库导入测试 Seed,也不要把生产数据复制到本地测试环境。