• Together

    本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:

    - 我的帖子已经打上 开源推广 标签: 是

    - 我的开源项目完整开源,无未开源部分: 是

    - 我的开源项目已链接认可 LINUX DO 社区: 是

    - 我帖子内的项目介绍,AI 生成、润色内容部分已截图发出: 是

    - 以上选择我承诺是永久有效的,接受社区和佬友监督: 是

    以下为项目介绍正文内容,AI 生成、润色内容已使用截图方式发出


    更新说明:本帖原为 VOZEB PRO v0.0.1 的项目介绍,现已按照 v0.0.6 的实际功能、流程图、部署方式和界面截图完整更新。旧版独立图片/视频工作台、五阶段短剧导航、模型能力检测和旧部署变量不再代表当前版本。

    面向统一创作 Agent、Canvas 和短剧生产的开源 AI 创作平台。文字问答、图片、视频和音频创作已经统一进入 /create,并与 Canvas、短剧项目、素材库、作品发布和商业运营后台共用服务端数据与生成任务链路。

    项目地址:

    github.com

    图片

    GitHub - csyqlz/VOZEB-PRO: VOZEB PRO:从创作简报、视觉方向、物料规划到一致性生成与自动视觉复盘的 AI 创作工作台。

    VOZEB PRO:从创作简报、视觉方向、物料规划到一致性生成与自动视觉复盘的 AI 创作工作台。

    图片

    图片

    图片

    更新重点

    - 首页:重做公开首页首屏、导航、输入体验和作品展示;作品区域读取作品广场中的真实图片与视频,并适配手机端和浅深主题。

    - 统一创作:统一 /create 的 Agent、图片、视频和音频入口,保留附件、Skill、智能规划、逻辑模型和生成参数,完善素材引用、历史恢复和失败重试。

    - Canvas:升级自研画布、节点编辑、连线、框选、项目保存与 Agent 协作,补齐素材引用、视频首尾帧和服务端持久化。

    - 短剧:将单集生产收敛为剧本、内容审核、分镜和镜头生成四个阶段,角色、场景、道具和线索统一进入项目资产管理。

    - 生成任务:完善文本、图片、视频和音频任务状态、上游协议和异常处理,支持多结果,避免重复生成和重复扣费。

    - 商业后台:优化模型渠道、生成运维、成本保护、数据维护、支付、经营看板、权限和移动端布局。

    - 安全:新增管理员 TOTP MFA、注册协议确认、请求级 CSP nonce 与脱敏审计,强化账户、媒体、备份和部署安全边界。

    - 性能:优化 Worker 调度、服务端分页、PostgreSQL 定向查询和长会话加载,减少后台和创作页面的无效请求。

    项目功能流程

    所有流程图默认折叠,点击对应标题后即可查看,不会一次展示全部内容。

    01|公开页面与登录注册流程```
    flowchart LR
    HOME["首页 /<br/>产品介绍、功能入口、公告"] --> ACTION{"访客选择"}

    ACTION --> ANN["公告中心 /announcements<br/>查看置顶公告和平台通知"]
    ACTION --> GALLERY["作品广场 /gallery<br/>浏览、检索和查看公开作品"]
    ACTION --> LOGIN["登录 /login<br/>账号密码校验"]
    ACTION --> REGISTER["注册 /register<br/>注册策略与可选邮箱验证码"]
    ACTION --> FORGOT["找回密码 /forgot-password<br/>邮箱验证码与密码重置"]
    ACTION --> PRIVACY["隐私政策 /privacy"]
    ACTION --> TERMS["服务条款 /terms"]

    GALLERY --> SHARE["作品详情 /share/:slug<br/>预览、点赞、关注和举报"]
    SHARE --> CREATOR["作者主页 /u/:username<br/>查看公开作品"]

    REGISTER --> LOGIN
    FORGOT --> LOGIN
    LOGIN --> SESSION["创建登录 Session"]
    SESSION --> ROLE{"账号角色"}
    ROLE -->|普通用户| USER["用户工作区"]
    ROLE -->|管理员| ADMIN["商业 SaaS 管理后台"]

    INSTALL["安装向导 /install"] --> CHECK["检查运行环境和 PostgreSQL"]
    CHECK --> SCHEMA["初始化数据库表结构"]
    SCHEMA --> FIRST_ADMIN["创建首个管理员"]
    FIRST_ADMIN --> ADMIN
    ``02|用户工作区页面导航``
    flowchart TB
    USER["用户工作区<br/>加载用户、lao1、模型和站点配置"]

    USER --> CREATE["统一创作 Agent /create<br/>文本、图片、视频、音频与服务端会话"]

    USER --> CANVAS["Canvas 项目 /canvas<br/>创建、搜索、重命名和删除"]
    CANVAS --> CANVAS_ID["Canvas 编辑器 /canvas/:id"]

    USER --> DRAMA["短剧项目 /drama<br/>项目和生产进度管理"]
    DRAMA --> DRAMA_ID["短剧编辑器 /drama/:id"]

    USER --> PROMPTS["公共提示词 /prompts"]
    USER --> MY_PROMPTS["我的提示词 /my-prompts"]
    USER --> ASSETS["我的素材 /assets"]
    USER --> HELP["帮助中心 /help"]
    USER --> PROFILE["个人中心 /profile"]
    USER --> BILLING["充值中心 /billing"]

    PROMPTS --> CREATE
    MY_PROMPTS --> CREATE
    ASSETS --> CREATE
    ASSETS --> CANVAS_ID
    ASSETS --> DRAMA_ID
    ``03|统一创作 Agent 生成流程``
    flowchart TB
    START["用户输入文字或参考素材"] --> AGENT["统一创作 Agent /create"]
    AGENT --> CONTROL["选择 Skill、智能规划或逻辑模型"]
    CONTROL --> PARAM["设置图片、视频或音频生成偏好"]
    PARAM --> CHECK["能力、素材、参数与lao1校验"]

    CHECK --> ROUTER["逻辑模型路由"]
    ROUTER --> CREATE_TASK["创建幂等生成任务"]
    CREATE_TASK --> PROVIDER["调用文本、图片、视频或音频上游"]
    PROVIDER --> POLL["查询同一个上游任务"]
    POLL --> RESULT{"任务结果"}

    RESULT -->|成功| NORMALIZE["下载并规范化媒体"]
    RESULT -->|失败| FAILED["保留失败记录并退款"]
    FAILED --> RETRY["用户主动点击重试"]
    RETRY --> CREATE_TASK

    NORMALIZE --> SAVE["登记媒体归属和稳定地址"]
    SAVE --> MESSAGE["返回当前创作会话"]
    MESSAGE --> OPERATE["预览、下载、保存素材或继续创作"]
    ``04|Canvas 创作流程``
    flowchart LR
    LIST["Canvas 项目 /canvas"] --> CREATE["创建画布"]
    LIST --> SEARCH["搜索项目"]
    LIST --> RENAME["重命名项目"]
    LIST --> DELETE["删除项目"]
    LIST --> OPEN["打开项目"]

    CREATE --> EDITOR["Canvas 编辑器 /canvas/:id"]
    OPEN --> EDITOR

    EDITOR --> NODE{"添加节点"}
    NODE --> TEXT["文本节点"]
    NODE --> IMAGE["图片节点"]
    NODE --> VIDEO["视频节点"]
    NODE --> AUDIO["音频节点"]
    NODE --> GENERATE["生成节点"]

    TEXT --> CONNECT["拖拽、缩放和节点连线"]
    IMAGE --> CONNECT
    VIDEO --> CONNECT
    AUDIO --> CONNECT
    GENERATE --> CONNECT

    CONNECT --> AGENT["启动 Canvas Agent Run"]
    AGENT --> PLAN["分析节点和连接关系"]
    PLAN --> TASK["创建图片、视频或音频子任务"]
    TASK --> RESULT["结果写回对应节点"]
    RESULT --> HISTORY["撤销、重做和历史记录"]
    HISTORY --> SAVE["自动保存到服务器"]
    SAVE --> EDITOR
    ``05|短剧生产流程``
    flowchart LR
    LIST["短剧项目 /drama"] --> CREATE["创建短剧项目"]
    CREATE --> CONFIG["设置剧集数、画幅和镜头"]
    CONFIG --> EDITOR["短剧编辑器 /drama/:id"]

    EDITOR --> SCRIPT["第一阶段:生成或编辑剧本"]
    SCRIPT --> REVIEW["第二阶段:内容审核和人工确认"]
    REVIEW --> STORYBOARD["第三阶段:分镜和镜头设计"]
    STORYBOARD --> SHOTS["第四阶段:生成镜头图片和视频"]

    SHOTS --> AUDIO["生成配音、音效和背景音乐"]
    AUDIO --> SUBTITLE["生成并校对字幕"]
    SUBTITLE --> VERSION["保存剧本、分镜和媒体版本"]
    VERSION --> COMPOSE["使用 FFmpeg 合成成片"]
    COMPOSE --> CHECK{"合成结果"}

    CHECK -->|成功| EXPORT["预览并导出成片"]
    CHECK -->|失败| FIX["定位失败镜头或音频"]
    FIX --> SHOTS
    ``06|提示词、素材、账户和支付流程``
    flowchart TB
    PROMPTS["公共提示词 /prompts"] --> FIND["分类、标签和关键词检索"]
    FIND --> USE["用于统一 Agent 创作"]

    MY["我的提示词 /my-prompts"] --> MANAGE["创建、编辑、分类、标签和删除"]
    MANAGE --> SAVE_ASSET["保存为文本素材"]
    MANAGE --> USE

    ASSETS["我的素材 /assets"] --> FILTER["按图片、视频、音频和文本筛选"]
    FILTER --> PREVIEW["预览或下载"]
    FILTER --> CONTINUE["发送到 Agent、Canvas 或短剧"]
    FILTER --> DELETE["检查业务引用后删除"]

    HELP["帮助中心 /help"] --> GUIDE["查看 Agent、图片、视频、Canvas、短剧和账户说明"]

    PROFILE["个人中心 /profile"] --> INFO["修改资料和密码"]
    PROFILE --> RIGHTS["查看lao1、套餐、订单和消费记录"]
    PROFILE --> EXPORT["导出个人数据"]
    PROFILE --> CANCEL_ACCOUNT["提交账号注销申请"]
    CANCEL_ACCOUNT --> ADMIN_REVIEW["管理员受理或拒绝"]

    BILLING["充值中心 /billing"] --> PRODUCT["选择套餐或lao1商品"]
    PRODUCT --> ORDER["创建待支付订单"]
    ORDER --> CHECKOUT["订单支付 /billing/checkout"]
    CHECKOUT --> CHANNEL["选择可用支付渠道"]
    CHANNEL --> PAY{"支付结果"}

    PAY -->|成功| SUCCESS["支付成功 /billing/success"]
    SUCCESS --> CONFIRM["确认支付回调和订单状态"]
    CONFIRM --> GRANT["套餐或lao1入账"]
    GRANT --> REFRESH["刷新用户余额和订单记录"]

    PAY -->|取消或失败| CANCEL["支付取消 /billing/cancel"]
    CANCEL --> CHOICE{"订单处理"}
    CHOICE -->|继续支付| CHECKOUT
    CHOICE -->|放弃支付| CLOSE["关闭或保留待支付订单"]
    ``07|商业 SaaS 后台经营和财务流程``
    flowchart TB
    ADMIN["管理后台 /admin"] --> ANALYSIS["经营分析"]
    ADMIN --> PRODUCT["商品运营"]
    ADMIN --> FINANCE["财务管理"]

    ANALYSIS --> OVERVIEW["经营看板<br/>用户、收入、lao1负债、订单和生成指标"]
    ANALYSIS --> USERS["用户运营<br/>创建用户、角色、状态、套餐和lao1"]
    ANALYSIS --> LOGS["调用记录<br/>用户、入口、模型、状态和失败原因"]
    ANALYSIS --> GENERATION["生成运营<br/>任务查询、取消、失败记录和重试"]

    PRODUCT --> PRODUCTS["套餐管理<br/>商品价格、权益、支付类型和上下架"]
    PRODUCT --> ORDERS["订单管理<br/>查询、人工完成、关闭和退款"]

    FINANCE --> POINTS["lao1规则<br/>免费额度、模型单价和参数倍率"]
    FINANCE --> PAYMENTS["支付渠道<br/>商户配置、回调地址和启停"]
    FINANCE --> CDK["CDK 兑换<br/>批量生成、筛选、停用和兑换追踪"]
    FINANCE --> WALLET["财务流水<br/>充值、扣费、退款和余额变化"]

    BILLING_ADMIN["财务运营 /admin/billing"] --> ORDERS
    BILLING_ADMIN --> PRODUCTS
    BILLING_ADMIN --> PAYMENTS

    PRODUCTS --> USER_BUY["用户选择商品"]
    USER_BUY --> ORDERS
    ORDERS --> PAYMENTS
    PAYMENTS --> PAY_RESULT{"支付结果"}

    PAY_RESULT -->|成功| WALLET
    PAY_RESULT -->|失败| REFUND["关闭订单或执行退款"]
    REFUND --> WALLET

    POINTS --> GENERATION
    GENERATION --> WALLET
    ``08|后台模型、系统、存储和内容管理``
    flowchart TB
    ADMIN["管理后台 /admin"] --> UPSTREAM["上游配置"]
    ADMIN --> SYSTEM["系统管理"]
    ADMIN --> STORAGE["存储与备份"]
    ADMIN --> CONTENT["内容运营"]

    UPSTREAM --> CHANNELS["模型渠道<br/>协议、Base URL、API Key 和模型目录"]
    CHANNELS --> LOGICAL["同步逻辑模型、优先级和默认模型"]
    LOGICAL --> VERIFY["在统一 Agent、Canvas 或短剧入口发起真实业务请求"]
    UPSTREAM --> SKILLS["Agent Skills<br/>分类、触发规则、能力约束和启停"]

    SYSTEM --> SITE["站点资料<br/>名称、Logo、SEO、首页内容和友情链接"]
    SYSTEM --> SETTINGS["基础设置<br/>注册、SMTP、默认参数、并发和安全"]
    SYSTEM --> DELETION["注销申请<br/>筛选、受理、拒绝和处理备注"]
    SYSTEM --> UPDATES["版本更新<br/>当前版本、Release、日志和升级检查"]

    STORAGE --> LOCAL["本地媒体<br/>分类、归属、期限和引用保护删除"]
    STORAGE --> S3["外部存储<br/>S3 配置、连接检测、对象管理和迁移"]
    STORAGE --> BACKUP["数据备份<br/>导入导出和完整备份边界"]

    CONTENT --> ANNOUNCEMENT["公告管理<br/>创建、编辑、置顶、发布和下线"]
    CONTENT --> PROMPT["提示词管理<br/>搜索、分类、标签和展示状态"]

    SETUP["初始化配置 /admin/setup"] --> SITE
    SETUP --> CHANNELS
    SETUP --> SETTINGS
    SETUP --> PRODUCTS["套餐商品"]
    SETUP --> PAYMENTS["支付渠道"]
    SETUP --> S3
    SETUP --> BACKUP

    ANNOUNCEMENT --> PUBLIC_ANN["用户公告中心"]
    PROMPT --> PUBLIC_PROMPT["用户公共提示词库"]
    LOGICAL --> GENERATION["用户生成任务"]
    SKILLS --> GENERATION
    ``09|全平台服务端数据流程``
    flowchart LR
    PAGE["所有用户页和管理页"] --> CLIENT["前端 API Service"]
    CLIENT --> ROUTE["Next.js Route Handler"]
    ROUTE --> AUTH["Session、用户归属和角色鉴权"]
    AUTH --> SERVICE["业务服务和任务编排"]

    SERVICE --> REPO["Repository<br/>参数化查询和事务"]
    REPO --> PG[("PostgreSQL 16")]

    SERVICE --> ROUTER["逻辑模型路由"]
    ROUTER --> PROVIDER["外部 AI 模型"]
    PROVIDER --> TASK["幂等任务和状态轮询"]

    TASK --> BILLING["lao1扣费和套餐用量"]
    BILLING --> PG

    TASK -->|失败或取消| REFUND["幂等退款"]
    REFUND --> PG

    TASK --> MEDIA["媒体下载、规范化和登记"]
    MEDIA --> SWITCH{"存储位置"}
    SWITCH -->|本地| LOCAL["服务器数据目录"]
    SWITCH -->|外部| S3["S3 兼容对象存储"]
    MEDIA --> PG

    PG --> RESPONSE["统一返回 code / data / msg"]
    LOCAL --> RESPONSE
    S3 --> RESPONSE
    RESPONSE --> PAGE

    
    统一创作 Agent
    
    统一创作支持文字与图片、视频、音频参考素材,支持普通参考、视频首帧和首尾帧、Skill、智能规划、手动逻辑模型、比例、画质、清晰度、时长、数量和自定义像素。会话和生成记录保存在服务端,刷新或更换设备后可以继续恢复。
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/0/b/1/0b13006c3807afdb8db32496ad2e5a48e8c704eb_2_690x323.jpeg)
    
    Canvas 编辑器
    
    Canvas 支持文本、图片、视频、音频、生成配置、创作简报和品牌规范节点,并提供拖拽、连线、框选、多选、缩放、小地图、撤销重做和导入导出。Canvas Agent 可以读取当前画布和选区,规划多物料依赖并把结果写回节点。
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/0/d/4/0d414c797d75e930e667753010ffcdc787642da9_2_690x315.jpeg)
    
    短剧生产线
    
    短剧模块按照剧本、内容审核、分镜和镜头生成四个单集阶段组织生产;角色、场景、道具和线索属于整个项目,通过独立的项目资产入口管理。模块还支持配音、字幕、版本快照、失败镜头重试、剪映草稿和 FFmpeg 合成。
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/b/b/5/bb5a056b2b433f6cc3365a6b930e16a40e01a3fb_2_690x431.webp)
    
    作品广场
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/d/0/0/d00c210c94fc264f4f1cc7ba02c5c4feb238a6cc_2_690x320.jpeg)
    
    个人主页
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/e/9/c/e9cc0e72da711722a77503e446bd0a5e6dd7a748_2_690x317.jpeg)
    
    展开素材与提示词截图
    
    我的素材
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/2/d/4/2d453fe95570c38b19d33a2f5e3c9806bd0f3598_2_690x431.webp)
    
    公共提示词
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/3/9/0/3906c53a1113f8d5d282bf7e1d4db407d56ae82b_2_690x431.webp)
    
    商业化 SaaS 管理后台
    
    管理员可以统一管理:
    
    - 经营看板、用户运营、调用记录和生成运营
    
    - 套餐商品、促销、优惠券、邀请奖励、lao1和 CDK
    
    - 订单、支付渠道、退款、对账和财务流水
    
    - 模型渠道、协议中心、真实模型、逻辑模型和 Agent Skills
    
    - 站点资料、注册、SMTP、管理员职责和 TOTP MFA
    
    - 本地媒体、S3 兼容对象存储、对象迁移和业务备份
    
    - 作品、公告、公共提示词和内容治理
    
    经营看板
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/f/8/3/f831d7bf7ea344add59b8814bd9672913846dbdb_2_690x431.webp)
    
    模型渠道管理
    
    模型渠道页用于维护协议、Base URL、凭据、模型目录、真实模型和逻辑模型绑定。渠道启用后
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/2/7/9/279acf0a5abdcbb2003b2b053c05d45cc496a60b_2_690x431.webp)
    
    生成运营
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/7/5/e/75eb759f8f29a38035db3175803c2dde14e288af_2_690x431.webp)
    
    展开更多 SaaS 后台截图
    
    商品与套餐
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/f/c/2/fc2088313fb39d1138fe894f68f738366ebb53af_2_690x431.webp)
    
    支付渠道
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/b/5/f/b5f439bf3b76ebc691630cbc675c4be149e13fdd_2_690x431.webp)
    
    财务流水
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/9/e/0/9e017639785435de538ce24fd732ae52a47f6103_2_690x431.webp)
    
    Agent Skills
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/4/a/2/4a29122ca9384a8447bd7cf6a105a4f3ca58c974_2_690x431.webp)
    
    外部存储
    
    ![图片](https://cdn3.ldstatic.com/optimized/4X/9/5/b/95b265f7f7a341df2621284e0ef5bcafef588907_2_690x431.webp)
    
    技术栈
    
    - Next.js 16 App Router
    
    - React 19 + TypeScript
    
    - Ant Design 6 + Tailwind CSS
    
    - Zustand
    
    - Next.js Route Handler
    
    - PostgreSQL 16
    
    - S3 兼容对象存储
    
    - 独立生成 Worker
    
    - Docker Compose
    
    - FFmpeg / FFprobe
    
    模型密钥、支付密钥、数据库操作、业务规则、模型路由、计费和媒体权限全部在服务端处理。浏览器只保存页面瞬时状态和极少量偏好,不使用 localStorage、IndexedDB 或大 JSON 持久化业务列表与生成记录。
    
    杂说
    
    这个项目从最开始的 v0.0.1 一直做到现在,花的时间比我当初预想的多很多。中间也有过想停下来的时候,毕竟现在关注项目的人还不多,帖子热度也一直比较低,有时候确实会怀疑是不是自己做的方向太小众了。
    
    不过这个项目我自己还在用,也还有很多想继续补的地方,所以暂时还不会停。
    主楼
  • Eric

    ^-^ 看起来不错的样子,已经给星.并且加入fork

    #1
  • Together

    谢谢佬,后续还有多项功能待持续完善如:客服端账户子权限

    #2
  • will1106

    牛的,我自己也在做,奈何太菜了 一直在摸着石头过河,速度去学习了哈哈

    #3
  • Together

    可以参考我的项目,文件分布非常的详细

    #4
  • zzzqq

    感谢分享,这就去试试,这种综合类的是趋势吧

    #5
  • Together

    有问题可以反馈一下,目前也是第一版

    #6
  • Unic

    看起来很完善啊. 感谢佬友的付出, 感谢捏. 感谢

    #7
  • Together

    给个star就是最大的支持哈哈哈

    #8
  • denvey

    很完善呢,佬是完全自己开发的吗,商业版什么价格呢

    #9
  • Together

    画布采用了文章那个作者的其他的都是自开发,商业版不收费呀 文章里面的就是开源

    #10
  • ldq

    功能很完善,期待佬的下一次更新 ^-^

    #11
  • Together

    这几天即将更新功能;作品广场、个人主页、促销折扣、优惠卷、邀请奖励

    #12
  • lwimanutd

    佬这套系统太强了,迟点部署看看。

    #13
  • Together

    准备更新0.0.4版本了,等一会部署

    #14
  • qidian

    更新了吗,正在做短剧准备部署研究一下。

    #15
  • Together

    0.0.5版本了,可以去试试 ^-^

    #16
  • Angus-linuxdo

    看着还不错,支持一下,期待后续更新

    #17
  • paidaxing1934

    佬 可以自己拿来商业运营嘛 ^-^

    #18
  • Together

    可以的,建议等0.0.6版本

    图片

    图片

    #19

发表回复

登录后回复