AI Coding Supervision & Collaboration Platform — 面向「AI 编码为主、人做监理」场景的 Web 应用:统一管理云开发机、SSH/Git/Claude 等环境配置、编码任务全生命周期与验收记录。
仓库内另有静态 产品原型(根目录 index.html)与 需求说明 PDF(PRD.pdf,由 PRD.md 导出,适合在本地用 PDF 阅读器查看完整版式与流程图)。
- 控制台:服务器与任务总览、统计信息(与原型页面对齐的产品目标)。
- 云服务器:增删改查、在线/离线/忙碌状态;每台机器关联独立配置。
- 服务器配置:SSH、Git 仓库与凭证、Claude API/模型与 Token 上限、预览端口与构建/启动命令等(敏感字段按产品设计应加密存储,见
drizzle/schema.ts注释)。 - 编码任务:创建任务、列表与详情、执行日志、验收(通过/拒绝/反馈)、任务维度统计。
- 认证:基于会话 Cookie 的登录态;服务端通过 Manus SDK 校验请求(
server/_core/context.ts)。
更细的模块说明与开发进度可参考根目录 todo.md。
| 层级 | 技术 |
|---|---|
| 前端 | React 19、Vite 7、TypeScript、Tailwind CSS 4、Wouter、TanStack Query、tRPC 客户端、Radix UI 等 |
| 后端 | Node.js、Express、tRPC 11、SuperJSON |
| 数据 | MySQL、Drizzle ORM(drizzle/schema.ts) |
| 构建 | 生产构建:vite build 打包前端 + esbuild 打包服务端入口 |
├── client/ # SPA 源码(Vite root)
│ ├── index.html # 应用 HTML 入口,挂载 #root
│ └── src/ # 页面:Dashboard、Servers、Tasks、CreateTask 等
├── server/
│ ├── _core/ # Express 启动、Vite 中间件、OAuth、tRPC 上下文
│ ├── routers.ts # appRouter 聚合
│ └── routers/ # servers、tasks 等业务路由
├── drizzle/ # schema 与迁移产物
├── shared/ # 前后端共享常量等
├── index.html # 独立静态原型(多 Tab 切换的 PRD 级 UI 示意,非 SPA)
├── PRD.pdf # 产品需求说明(PDF 元数据标题为 PRD.md)
├── package.json
└── vite.config.ts
- 运行中的 Web 应用:以
client/为前端、server/_core/index.ts为服务端;开发模式下由 Express 挂接 Vite。 - 根目录
index.html:单文件 HTML/CSS/JS 原型,用于对齐信息架构与关键页面(登录、控制台、服务器配置、任务监控、MR Review 等),不参与pnpm dev的构建管线;可在浏览器中直接打开该文件查看原型。
- Node.js(建议当前 LTS)
- pnpm(
package.json中指定了packageManager) - 可访问的 MySQL 实例与连接串(
DATABASE_URL)
pnpm install配置环境变量(可在项目根目录自行维护 .env,勿提交密钥;下列变量名来自 server/_core/env.ts 与客户端 client/src/const.ts 等):
| 变量 | 说明 |
|---|---|
DATABASE_URL |
MySQL 连接 URL(Drizzle 与运行时数据库) |
JWT_SECRET |
会话/Cookie 相关密钥 |
VITE_APP_ID |
应用 ID(前后端一致使用) |
VITE_OAUTH_PORTAL_URL |
OAuth 门户地址(前端登录跳转) |
OAUTH_SERVER_URL |
OAuth 服务端点 |
OWNER_OPEN_ID |
可选;所有者 OpenId |
PORT |
可选;默认 3000,占用时自动尝试后续端口 |
BUILT_IN_FORGE_API_URL / BUILT_IN_FORGE_API_KEY |
可选;服务端 Forge API |
VITE_FRONTEND_FORGE_API_URL / VITE_FRONTEND_FORGE_API_KEY |
可选;前端地图等能力 |
数据库迁移(需已设置 DATABASE_URL):
pnpm db:push开发(热重载服务端 + Vite HMR):
pnpm dev浏览器访问终端输出的 http://localhost:<端口>/(若 3000 被占用会自动递增端口)。
生产构建与启动:
pnpm build
pnpm start其他脚本:pnpm check(TypeScript)、pnpm test(Vitest)、pnpm format(Prettier)。
PRD.pdf:完整产品需求说明;若需检索正文,可在本机用 PDF 阅读器打开或使用 PDF 转文本工具处理(仓库内未保留同名PRD.md)。index.html:高保真页面流程原型,与实现中的路由/数据模型在概念上对应,便于产品与设计对齐。
MIT(见 package.json 中 license 字段)。