c7a73e3715
已完成当前仓库知识库初始化,已创建 .helloagents/ 目录骨架和首批文档,覆盖根工作区、前端、后端、远程桌面网关四个模块。 已生成入口与上下文文档:INDEX.md、context.md、CHANGELOG.md 已生成模块文档:workspace-root.md、frontend.md、backend.md、remote-gateway.md 已创建空目录:plan/、user/ 验收结果:核心文件存在且非空,目录结构完整,未残留模板级占位骨架 未执行项:configure_codex.py 因当前环境不可用 Python 解释器而跳过,这不影响本次知识库初始化 提示:当前 .gitignore 还没有 .helloagents/ 条目;按 ~init 规则,我只提示,不自动修改
1.8 KiB
1.8 KiB
workspace-root
职责
管理仓库根目录的 npm workspaces、共享依赖、patch-package 补丁应用以及 Docker Compose 部署编排。该模块不是业务运行时服务,但决定了三个子包如何安装、构建和协同运行。
接口定义(可选)
模块对外暴露的公共 API 和数据结构
公共 API
| 函数/方法 | 参数 | 返回值 | 说明 |
|---|---|---|---|
package.json#workspaces |
packages/* |
npm workspace 列表 | 声明后端、前端、远程网关三个子包属于同一工作区。 |
package.json#postinstall |
无 | shell 命令 | 安装依赖后自动执行 patch-package。 |
docker-compose.yml |
环境变量、卷、端口映射 | 服务编排 | 统一启动 frontend、backend、remote-gateway、guacd。 |
数据结构
| 字段 | 类型 | 说明 |
|---|---|---|
packages/* |
目录集合 | Monorepo 子包入口。 |
patches/ |
目录 | 第三方依赖补丁存放位置。 |
data/ |
运行时卷目录 | Docker 部署时挂载到后端 /app/data。 |
行为规范
依赖安装
条件: 在仓库根目录执行 npm install。
行为: npm 解析 workspaces,统一安装根依赖与子包依赖,并在安装结束后运行 patch-package。
结果: 三个子包共享锁文件与依赖树,补丁在安装阶段自动落地。
容器化部署
条件: 使用根目录 docker-compose.yml 启动服务。
行为: frontend 暴露 18111:80,backend 读取根 .env 并挂载 ./data:/app/data,remote-gateway 依赖 guacd 和 backend。
结果: Web 入口、REST API、远程桌面网关与 guacd 形成完整运行拓扑。
依赖关系
依赖: frontend, backend, remote-gateway, docker-compose, .env
被依赖: frontend, backend, remote-gateway