# SentAI 阶段1工程骨架 当前仓库已切换为面向服务端数据库的实现,不再使用 SQLite。 ## 当前技术基线 - `apps/web`: Next.js 前端控制台 - `apps/api`: NestJS API + TypeORM - `packages/shared`: 共享类型 - `docs/phase1-implementation-plan.md`: 阶段 1 落地方案 ## 数据库支持 当前代码按两类数据库接入: - `MariaDB 10.4.34` - `人大金仓 V8R6` 配置方式: - `DB_CLIENT=mariadb` 时,TypeORM 使用 `mariadb` 驱动 - `DB_CLIENT=kingbase` 时,TypeORM 使用 `postgres` 兼容模式 ## 已实现 - 演示登录接口 `POST /api/auth/login` - 首页汇总接口 `GET /api/dashboard/summary` - 巡检任务列表/创建接口 `GET/POST /api/tasks` - 手动执行接口 `POST /api/runs/execute/:taskId` - 执行记录列表接口 `GET /api/runs` - 执行详情接口 `GET /api/runs/:runId` - Playwright 真实巡检执行 - 截图证据与步骤日志 - 预置案例站点 - `http://www.huhhot.gov.cn/` - `http://www.tmtyq.gov.cn/` ## 环境变量 ### MariaDB 示例 ```env DB_CLIENT="mariadb" DB_HOST="127.0.0.1" DB_PORT="3306" DB_USERNAME="sentai" DB_PASSWORD="sentai123" DB_DATABASE="sentai" DB_SYNCHRONIZE="true" ``` ### 人大金仓示例 ```env DB_CLIENT="kingbase" DB_HOST="127.0.0.1" DB_PORT="54321" DB_USERNAME="system" DB_PASSWORD="123456" DB_DATABASE="sentai" DB_SYNCHRONIZE="true" ``` ## 本地启动 1. 安装依赖 ```bash npm.cmd install ``` 2. 初始化数据库结构 ```bash npm.cmd run db:init ``` 3. 导入种子任务 ```bash npm.cmd run db:seed ``` 4. 安装 Playwright 浏览器 ```bash npm.cmd run install:browsers ``` 5. 启动后端 ```bash npm.cmd run dev:api ``` 6. 启动前端 ```bash npm.cmd run dev:web ``` ## 默认账号 - 用户名:`admin` - 密码:`admin123` ## 当前边界 当前已完成: - `S1` 基础骨架 - `S2` 任务与执行 - `S3` 异常证据基础版 尚未完成: - 定时调度器 - 内网上下文补证据 - 安全推送 - AI 归因 - 日报页