## Aurask Aurask 当前按产品边界拆分为四个主要目录: - `api/`:后端 API、会话登录、套餐 TBU、工作流与知识库桥接 - `protal/`:用户门户,保留既定目录拼写 - `manager/`:管理员面板 - `deploy/`:k3s 与 DevCloud 部署配置 ## 当前实现范围 - `/signin` 登录页 - Google 首次注册 / 登录后自动创建独立 workspace - 登录后双标签工作台: - `Workflows` 内嵌 `Langflow` - `Knowledge Base` 内嵌 `AnythingLLM` - 右上角个人中心与退出登录 - 门户双语支持: - `/signin` 提供 `EN / 中文` 语言切换 - `/app` 工作台壳层跟随已保存语言 - 首次访问默认读取浏览器语言 - 用户选择写入 `localStorage` - Google 登录按钮默认灰色禁用,只有在配置完成且 Google SDK 就绪后才替换为真实按钮 ## 本地运行 启动 API: ```powershell $env:PYTHONPATH='api' py -3 -m aurask serve --reset --host 127.0.0.1 --port 8080 ``` 运行演示数据: ```powershell $env:PYTHONPATH='api' py -3 -m aurask demo --reset ``` 门户静态文件位于 `protal/`,部署到静态 Web 服务后即可使用。开发时可直接通过本地静态服务器打开 `protal/index.html`。 ## 当前接口 公开接口: - `GET /health` - `GET /plans` - `GET /auth/config` - `POST /auth/google/login` - `POST /demo/bootstrap` - `POST /tenants` 鉴权后接口: - `GET /auth/session` - `POST /auth/logout` - `GET /me` - `GET /quota` - `GET /workflow-templates` - `GET /workspaces` - `POST /workspaces` - `POST /documents` - `POST /orders` - `POST /payments/match` - `POST /workflow-runs` - `GET /workflow-runs/{run_id}` - `GET /admin/bridge-status` Aurask 目前同时支持两类 Bearer Token: - API Key:用于原生 API / 集成访问 - Session Token:用于门户登录态 ## 关键环境变量 门户与登录: ```text AURASK_PUBLIC_BASE_URL=https://aurask.xyz AURASK_PUBLIC_API_BASE_URL=https://aurask.xyz/api AURASK_PUBLIC_LANGFLOW_URL=https://aurask.xyz/runtime/langflow/ AURASK_PUBLIC_ANYTHINGLLM_URL=https://aurask.xyz/runtime/anythingllm/ AURASK_GOOGLE_ENABLED=true AURASK_GOOGLE_CLIENT_ID= AURASK_SESSION_TTL_DAYS=7 ``` 说明: - 未设置 `AURASK_GOOGLE_CLIENT_ID` 时,`/signin` 会显示灰色禁用的 Google 按钮 - 当 `auth.google.enabled` 为真、`client_id` 存在且 Google SDK 加载完成后,前端才会挂载真实按钮 - 语言偏好保存在浏览器 `localStorage` 的 `aurask.portal.locale` 运行时桥接: ```text AURASK_USE_EXTERNAL_BRIDGES=true AURASK_DATABASE_URL=postgresql://aurask:@postgres.aurask-data.svc.cluster.local:5432/aurask AURASK_REDIS_URL=redis://redis.aurask-data.svc.cluster.local:6379/0 AURASK_ANYTHINGLLM_BASE_URL=http://anythingllm.aurask-runtime.svc.cluster.local:3001 AURASK_ANYTHINGLLM_API_KEY= AURASK_LANGFLOW_BASE_URL=http://langflow-runtime.aurask-runtime.svc.cluster.local:7860 AURASK_LANGFLOW_API_KEY= ``` ## DevCloud 默认值 已按 `devcloud` 仓库当前配置对齐默认镜像与路由: - API 镜像:`registry.mydevcloud.love/devcloud/aurask-api:latest` - Web 镜像:`registry.mydevcloud.love/devcloud/aurask-web:latest` - `https://aurask.xyz/api/*` → `45.113.2.55:30091` - `https://aurask.xyz/*` → `45.113.2.55:30090` 对应的基础 k3s 清单位于: - `deploy/k3s/base/aurask-api.yaml` - `deploy/k3s/base/aurask-web.yaml` - `deploy/k3s/base/aurask-config.yaml` - `deploy/k3s/base/secrets.example.yaml` ## 测试 ```powershell $env:PYTHONPATH='api' cmd /c "py -3 -m unittest discover -s tests -v" ``` 当前覆盖: - MVP 业务闭环 - PostgreSQL / PGVector / Redis / AnythingLLM / Langflow 桥接契约 - Google 登录与 session - 门户双语登录与工作台壳层 ## 相关文档 - `api/README.md` - `protal/README.md` - `deploy/k3s/README.md` - `Aurask_Technical_Operations_Plan.md`