Think it. Build it. Ship it.
PRD · 代码 · 设计 · 原型,AI 一站生成。从一句话需求到可交付产品的 AI 产品工作室。
Bun Workspaces + Turborepo 单仓多包,包含 Web 前端、桌面端、统一 API 服务,外加共享的 UI / Store / Lib / Database 包。
| 模块 | 描述 | 端口 |
|---|---|---|
clients/web |
Next.js 16 前端(首页 + AI 工作台 + 会员中心 + /admin 管理后台) |
3000 |
clients/desktop |
Electron 桌面端(复用 shared-ui,HashRouter,自带托盘/全局快捷键/Deep Link/自动更新) | — |
services/api |
NestJS API 服务(认证/RBAC + 多 Agent + RAG + 多模型对战 + 模板生成 + 图片生成 + 会员积分 + SSE) | 4000 |
packages/shared-ui |
跨端共享 React 组件库(HeroUI 封装:chat / arena / artifact / template / admin / docs / models / ...) | — |
packages/shared-store |
跨端 Zustand stores(auth / chat / arena / artifact / template / ...) | — |
packages/shared-lib |
跨端 API 客户端 + 工具函数 + 平台适配器 | — |
packages/database |
统一 Prisma Schema + 迁移 + 种子 | — |
packages/types |
共享 TypeScript 类型 | — |
packages/i18n |
国际化配置(zh-CN / en / ja / fr / ru / vi / zh-TW) | — |
| 层级 | 技术 |
|---|---|
| 运行时 & 包管理 | Bun 1.3 + Workspaces |
| 构建编排 | Turborepo |
| Web 前端 | Next.js 16 (App Router) + React 19 + Tailwind CSS 4 + HeroUI |
| 桌面端 | Electron 33 + electron-vite + React 19 + HashRouter |
| 后端 | NestJS 11 + Passport JWT |
| 数据库 | PostgreSQL 16 + Prisma 7 + pgvector |
| AI / LLM | LangChain + LangGraph + OpenAI 兼容 API |
| 实时通信 | SSE(Server-Sent Events) |
| 对象存储 | Cloudflare R2(可选,图片/文档) |
| 容器化 | Docker Compose(生产镜像发布到 GHCR) |
git clone <repo-url> amux-studio
cd amux-studio
bun install# 启动 PostgreSQL(含 pgvector),自动创建 autix 数据库
docker compose up postgres -d如果使用已有 PostgreSQL,手动执行:
CREATE DATABASE autix;
\c autix
CREATE EXTENSION IF NOT EXISTS vector;所有环境变量收敛到根目录 .env,子包通过 dotenv-cli 注入(dotenv -e ../../.env -- ...),无需在子目录单独配置。
cp .env.example .env关键变量:
| 变量 | 说明 |
|---|---|
DATABASE_URL |
统一 PostgreSQL 连接串,指向合并后的 autix 数据库 |
JWT_SECRET |
JWT 签名密钥(>= 32 字符,所有服务共享) |
CORS_ORIGIN |
服务端 CORS 白名单(含 file://、app://desktop 以支持桌面端) |
SUPER_ADMIN_* |
超管账号(首次启动自动创建,幂等) |
API_URL |
Web BFF 反向代理目标,默认 http://localhost:4000 |
NEXT_PUBLIC_AMUX_HOST / NEXT_PUBLIC_AMUX_CLIENT_ID |
Amux 凭据代理(amux-proxy)配置 |
R2_* / S3_API / Access_key_ID 等 |
Cloudflare R2 对象存储(可选) |
bun run --filter @autix/api db:deploy
bun run --filter @autix/api db:push
bun run --filter @autix/api db:flat-migrate # 仅 RUN_FLAT_MIGRATION=true 时执行旧库平迁
bun run --filter @autix/api db:seed
bun run --filter @autix/api seed:membership
bun run --filter @autix/api seed:templates
bun run --filter @autix/api seed:resources# 回到根目录
bun run devTurborepo 按依赖顺序启动:
| 服务 | 地址 |
|---|---|
| API | http://localhost:4000 |
| Web | http://localhost:3000 |
桌面端单独启动(依赖 API 已就绪):
bun run dev:desktop生产镜像已发布到 GHCR(ghcr.io/cookieboty/autix-{api,web}:latest)。
cp .env.example .env # 填好 JWT_SECRET / POSTGRES_PASSWORD / SUPER_ADMIN_*
docker compose up -d启动顺序:postgres → api → web,全部带 healthcheck 自动等待。
旧 split DB 切流到单库时,必须只在一次性迁移窗口设置:
RUN_FLAT_MIGRATION=true
FLAT_MIGRATION_TRUNCATE_TARGET=true
LEGACY_USER_DATABASE_URL=postgresql://...
LEGACY_CHAT_DATABASE_URL=postgresql://...api 容器启动时会执行 db:prepare-cutover:migrate deploy → db push → db:flat-migrate → 生产 seed。未设置 RUN_FLAT_MIGRATION=true 时平迁脚本会跳过;设置为 true 但旧库 URL 缺失会直接失败,避免线上静默启动空库。
用户输入需求
↓
extractAgent 结构化 JSON(需求类型 / 核心功能 / 目标用户)
↓
clarifyAgent 判断是否需要澄清,不完整则追问
↓
analysisAgent ┐ 功能分解 / 用户故事 / 验收标准
riskAgent ┘ 风险评估(技术 / 范围 / 业务) — 并行
↓
summaryAgent 综合报告(含 RAG 知识库引用)
↓
SSE 流式推送 Markdown
模型按场景返回结构化的 UI 组件指令(form / selection / card / table / confirmation / steps / action_buttons / text),前端按 schema 渲染交互组件,让对话能直接驱动表单、确认、进度、表格。
同一 Prompt 同时打到多个模型,并排查看响应、做 A/B 评估。对应 arena_sessions / arena_turns / arena_responses。
社区/个人提示词模板的发布、订阅、运行;运行结果记录到 template_generations / generation_turns。
每个会话可关联一个 Artifact(Markdown / 代码 / 文档),自动按版本归档(artifact_versions),支持回滚和按 tag 过滤。
- 三档会员:Plus / Pro / Ultra,月/季/年 + 连续订阅
- 数据库驱动计费:等级、价格、积分、折扣全部可在
/admin管理后台配置 - 首单折扣 + 积分加油包(独立购买)
- 按任务类型扣减积分(
task_point_costs配置,task_events记录) - 邀请系统:每人固定 aff 码,被邀请方注册并审批通过后双方获积分
- 完整订单流程:下单 → 支付 → 履约
- 多系统架构:System → Role → Menu → Permission
- 注册审批:用户注册 → 管理员审批
- 本地鉴权/RBAC:API 内部直接使用统一 Prisma Client 查询用户、角色、菜单与权限
- 复用 web 的全部业务(共享
shared-ui/shared-store/shared-lib) - 主进程能力:托盘、全局快捷键、Deep Link(
autix://)、单实例锁、自动更新(GHCR Releases)、原生通知 - 跨平台打包:
bun --filter @autix/desktop dist:mac/dist:win/dist:linux
# 开发
bun run dev # 启动 Web 前后端
bun run dev:web # 启动 Web + API
bun run dev:api # 仅 API 服务
bun run dev:desktop # 仅桌面端
# 构建 & 检查
bun run build # 构建所有包
bun run typecheck # TypeScript 类型检查
bun run clean:ports # 终止占用 3000/4000/5173 的进程
# 数据库
bun run --filter @autix/api db:studio # 统一 DB GUI
# 种子
bun run --filter @autix/api db:flat-migrate
bun run --filter @autix/api db:seed
bun run --filter @autix/api seed:membership
bun run --filter @autix/api seed:templates
bun run --filter @autix/api seed:resources单一 PostgreSQL 数据库:autix。packages/database 是唯一 Prisma Schema / Client 来源。
- 会话与产物:
conversations/messages/artifacts/artifact_versions - 知识库:
documents/document_chunks(pgvector) - 模型与任务:
model_configs/task_events - 多模型对战:
arena_sessions/arena_turns/arena_responses - 提示词模板:
prompt_templates/template_generations/generation_turns - 会员积分:
membership_levels/membership_plans/user_memberships/points_packages/user_points/points_records - 订单与邀请:
orders/invite_codes/invite_records/task_point_costs - Amux 凭据代理:
amux_credentials - 用户与权限:
users/roles/user_roles/menus/permissions/systems/system_registrations/user_sessions/oauth_clients
MIT