feat: 统一 AI 设计 Workspace 与生成任务链路

需求:以设计项目组织固定设计 Agent 对话、方向确认和图片视频任务。

实现:新增 Works Square 云端适配与开发态本地适配,统一 Host API、Quote 确认、任务轮询及私有媒体 Range 代理。
This commit is contained in:
2026-07-31 13:56:55 +08:00
parent 80e8386fa6
commit 3d9dd14918
22 changed files with 2506 additions and 1707 deletions

View File

@@ -5,7 +5,7 @@
Makelore 是一个面向软件与视觉创作的 AI 桌面工作台。当前版本为 `2.0.0`,包含两个已开通产品模块,并保留一个学习模块入口:
- `Makelore CodeAI 编程`:管理本地项目、项目 Agent、会话、文件上下文、代码变更和运行时。
- `Makelore CanvasAI 绘画`:以项目、Agent 对话组织云端视觉创作
- `Makelore CanvasAI 绘画`:以设计项目Workspace组织 Agent 对话、方向确认、图片/视频生成任务和私有结果
- `Makelore LearningAI 学习`:数学与知识宇宙主题的学习入口,当前暂未开通;开屏页和模块切换菜单保留置灰入口,不能进入。
作品广场、素材广场、发布上传和云部署页面不属于 Makelore 2.0 工作台。项目成果预览 `/deliverables` 继续保留。
@@ -15,7 +15,7 @@ Makelore 是一个面向软件与视觉创作的 AI 桌面工作台。当前版
- 桌面技术栈Electron、React 19、Vite、TypeScript、Zustand、Tailwind CSS。
- AI 编程运行时Electron Main 管理项目内声明的 `opencode-ai` 依赖Renderer 不直接启动或调用运行时。
- 后端边界Renderer 通过 Main 所有的 Host API 访问认证、模型、同步、更新、语音、图像与运行时能力。
- AI 绘画:生产环境使用云端工作区契约上游不可用时展示明确的不可用状态。未打包开发环境可使用隔离的本地适配器
- AI 绘画:每个设计项目固定一个设计 Agent。Agent 先通过持续对话收敛 Brief用户确认服务端 Quote 后才创建图片或视频任务;任务进度与对话互不阻塞,并在统一列表中展示。生产环境使用 Works Square 云端 Workspace 契约上游不可用时明确报错
- 视觉系统:单一浅色主题,品牌蓝 `#3A5578`、星火橙 `#F26A3D`、白色画布与低饱和蓝灰层级。
- 品牌资产:生产 SVG、PNG、应用图标、托盘图标与安装器视觉位于 [`resources/brand/`](resources/brand/README.md) 和 `resources/icons/`
@@ -28,13 +28,13 @@ pnpm install --frozen-lockfile
pnpm run dev
```
开发环境中的 AI 绘画创作空间默认使用仅供开发的本地适配器;它会把项目数据保存在本机用户数据目录,并生成本地占位图。也可以使用下面的显式命令启动同一模式:
开发环境中的 AI 绘画创作空间默认使用仅供开发的本地适配器;它会把设计项目、对话、Quote 和生成任务保存在本机用户数据目录,并生成本地预览。也可以使用下面的显式命令启动同一模式:
```bash
pnpm run dev:image-workspace:local
```
该模式只允许在未打包应用中启用,使用独立开发数据,并保持与生产界面相同的工作区结构。打包应用和生产环境使用云端工作区契约
该模式只允许在未打包应用中启用,使用独立开发数据,并保持与生产相同的 Workspace-first 接口。打包应用和生产环境使用云端适配器,云端失败不会回退到本地
## 质量检查
@@ -79,8 +79,9 @@ pnpm run package:linux
- Renderer 不直接调用 Electron IPC 或本地运行时 HTTP 地址。
- Electron Main 负责认证、秘密存储、运行时生命周期、代理、同步和系统集成。
- AI 编程项目配置以项目内 `.niancode/project.json` 为准;项目文件和会话保持本地。
- AI 绘画使用独立的云端工作区边界,不回退到 AI 编程项目数据
- Agent 配置是项目所有的;稳定 id 用于保持会话兼容,显示名称可以修改
- AI 绘画 Renderer 只调用 Main-owned Host APIMain 负责 Works Square Token 刷新、snake_case 契约映射、结构化错误和私有媒体 Range 转发
- AI 绘画使用独立的云端 Workspace 边界,不回退到 AI 编程项目数据,也不向 Renderer 暴露 Provider、模型、Prompt、存储 URI 或远端登录 Token
- AI 编程的 Agent 配置是项目所有的;稳定 id 用于保持会话兼容显示名称可以修改。AI 绘画的设计 Agent 是固定产品能力,不作为用户可增删的项目实体。
### 项目联系人与会话