anymouschina/TapCanvas

面向 AI 影视、漫剧与多模态内容生产的 Agent 原生无限画布, 主推一键成片 agent,编排可控

TapCanvas – 社区版

它是什么

  • TapCanvas 是一个开源的、基于 Web 的“无限画布”,用于创建多模态叙事项目(电影、动画、漫画等)。
  • 画布将脚本、角色、场景资产、故事板、音频、字幕以及完整的制作工作流存储为类型化的节点和连接。
  • AI 智能体读取当前画布状态,规划要执行的操作,调用专门的技能(文本生成、图像/视频合成、编辑等),并记录每一步,生成可验证的交付物。

核心能力

功能 作用
无限类型化画布 节点、端口和边让您可以在一个单一的、版本控制的图中组织叙事元素、媒体资产和工作流步骤。
智能体原生执行 统一的 POST /public/agents/chat 端点通过 DeepSeek Harness 桥接器路由请求;智能体执行语义理解、规划、调用技能、生成子智能体并自我验证结果。
制作骨干 支持章节级上下文、结构化故事板、连续镜头、帧到帧的交接以及视频生成/合成(一键“制作电影”工作流正在进行中)。
多模型网关 Lu-Ban API(apps/new-api)抽象了来自多个提供商(HeyRoute、Factory/Droid 等)的文本、图像、视频和音频模型,并处理计量、定价和动态模型选择。
项目级资产管理 资产库、版本控制、生成历史、任务状态和交付证据被持久化;成功的资产永远不会被丢弃。
工作流与协作 可重用的 DAG 定义、异步工作器、故障恢复、共享/发布、团队范围和实时画布同步。

典型用例流程

  1. 创建项目 – 在画布上添加脚本、角色、场景资产和故事板。
  2. 定义制作 DAG – 连接代表文本生成、图像创建、视频拼接、字幕生成等的节点。
  3. 运行智能体 – 智能体读取画布,决定调用哪些技能,通过 Lu-Ban 调用适当的模型,并将生成的媒体存储回画布。
  4. 迭代与协作 – 团队成员可以编辑图、查看执行日志,并重新运行失败的步骤,而不会丢失之前的工作。
  5. 导出 – 可以下载最终视频(或其他媒体);整个来源图作为可复现的记录。

架构概览

  • apps/web – 使用 Mantine 和 React-Flow 构建的 React UI;渲染无限画布和编辑器。
  • apps/hono-api – Hono 服务器,提供 REST/GraphQL API、身份验证、任务账本和交付证据。
  • apps/agents-cli – DeepSeek Harness 桥接器,将 HTTP 聊天请求转换为智能体循环。
  • apps/new-api – Lu-Ban 模型网关(支持 HeyRoute、Factory/Droid 等渠道),处理计量和模型选择。
  • packages/schemas – 前后端之间的共享 TypeScript 契约。
  • Docker-compose – 所有服务(Web、API、网关、工作器、PostgreSQL)一起运行;单个 ./scripts/dev.sh docker 命令启动整个技术栈。

快速开始(Docker)

git clone https://github.com/anymouschina/TapCanvas.git
cd TapCanvas
./scripts/dev.sh docker   # 构建并启动所有容器
  • 该脚本为 JWT/工作器令牌生成一次性 OpenSSL 密钥,并将其写入 apps/hono-api/.env(git 忽略)。
  • 完成后,打开:
    • UI:http://localhost:5175
    • API:http://localhost:8788
    • 模型网关管理:http://localhost:4455
  • 在 Lu-Ban 管理 UI 中配置您的模型提供商密钥(HeyRoute、Factory/Droid 等)。
  • 对于不使用 Docker 的本地开发,安装 Node 22+ 和 pnpm 10.8.1,然后运行 pnpm -w install && pnpm dev:web。

许可证

  • TapCanvas 核心代码根据 MIT 许可证发布。
  • apps/new-api(模型网关)保留其上游 AGPL-3.0 许可证。
  • 所有其他第三方依赖项保留其原始许可证。

谁可能觉得这有用?

  • 独立电影制作人、漫画创作者、游戏作家,或任何想要一个可复现的、AI 增强的多模态叙事管道的团队。
  • 探索长链 AI 工作流、来源跟踪或智能体驱动内容生成的研究人员。
  • 寻找 AI 智能体中心生产栈参考实现的开发人员。

以上所有信息均直接取自仓库的 README;没有推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目