Monkeys
开源开发

本地开发

为开源开发在本地运行 Monkeys 服务

当你需要修改 Monkeys 代码、调试服务或准备贡献时,使用这条路径。

推荐工作区

把仓库放成同级目录:

INFMONKEYS/
  monkeys/
  monkeys-server/
  monkeys-studio/
  monkeys-kernel/
  monkeys-compute/
  ...

只启动当前改动需要的服务。并不是每个贡献都需要跑完整生态。

启动共享基础设施

cd monkeys/docker/infrastructure
docker compose up -d

这会启动 PostgreSQL、Redis、Elasticsearch、Conductor、MinIO、Prometheus 和 Grafana。

以开发模式运行后端

cd monkeys-server
yarn install --frozen-lockfile
cp config.yaml.example config.yaml
yarn migration:run
yarn start:dev

常用后端命令:

命令用途
yarn start:dev以 watch 模式启动 NestJS。
yarn build编译后端。
yarn lint执行 ESLint 并自动修复。
yarn test运行单元测试。
yarn test:e2e运行 e2e 测试。
yarn migration:create创建 TypeORM migration 文件。
yarn migration:run通过 migration_script.js 运行 migration。

涉及数据表变更时,需要在 src/database/migrations/ 下创建 migration。migration 创建的表名应使用 config.server.appId 作为前缀。

以开发模式运行 Studio

cd monkeys-studio
yarn install --frozen-lockfile
cp .env.example .env
yarn dev

.env 中配置后端地址:

SERVER_ENDPOINT=http://127.0.0.1:3000
SERVER_PORT=2048

Studio 常用命令:

命令用途
yarn dev启动 Vite 开发服务器。
yarn build构建生产产物。
yarn lint执行 ESLint 并自动修复。
yarn test运行 Vitest 测试。
yarn preview预览构建产物。

运行能力服务

如果修改可选能力服务,先阅读对应仓库自己的 README 和 AGENTS.md。大多数能力服务都有自己的示例配置、Dockerfile、测试命令和构建命令。

先从 monkeys/docker/infrastructure 启动相关基础设施,再直接以开发模式运行该服务,或通过 monkeys/docker/services 中的 profile 运行。

调试清单

  • docker compose ps 确认基础设施健康。
  • 确认后端能连接 PostgreSQL、Redis、Elasticsearch、Conductor 和 MinIO。
  • 确认 Studio .env 指向你正在运行的后端。
  • 检查浏览器网络请求里 /api/v1/socket.io 的代理行为。
  • 凭证应放在本地未跟踪配置文件或密钥系统中。

本页目录