- 人工智能
- AI 应用
- AI Agent
- RAG
- AI 写作
- 后端
- 桌面应用
【免费下载链接】Toonflow-app
Toonflow 是一款 AI 短剧漫剧工具,能够利用 AI 技术将小说自动转化为剧本,并结合 AI 生成的图片和视频,实现高效的短剧创作。借助 Toonflow,可以轻松完成从文字到影像的全流程,让短剧制作变得更加智能与便捷。
Toonflow 是一款开源的 AI 短剧漫剧创作平台,将剧本创作、资产管理与图片/视频生成整合在同一个无限画布上。本文以官方 README 为骨架,结合仓库中的 Dockerfile、Compose 配置与服务端源码,完整讲解桌面端、Docker、Linux 服务器三种部署方式的实操步骤、数据目录与备份管理、多语言支持机制以及许可证约束,读完即可独立完成安装、配置与日常运维。
一、项目定位与核心特性
Toonflow 面向 AI 短剧、漫剧与短视频创作者,定位是"一站式 AI 短剧创作平台":在同一个入口里编写剧本、管理资产、生成图片与视频,并用无限画布组织完整的创作工作流。仓库根目录 package.json 的项目描述将其概括为"利用 AI 技术将小说自动转化为剧本,并结合 AI 生成的图片和视频,实现高效的短剧创作"。
官方 README 归纳的核心特性如下:
| 特性 | 说明 |
|---|---|
| 🏠本地运行 | 项目和资产保留在你的设备或服务器上,提供桌面应用、Docker 与服务器三种运行方式 |
| 🖼️无限画布 | 在同一个画布上组织剧本、角色、场景与视频 |
| 🔌MCP 支持 | 通过 MCP 接入外部工具与第三方服务 |
| 🧩插件市场 | 通过官方插件市场扩展节点、工具与创作能力 |
| 🤖开放的 Agent | 开放提示词、工具与 A2A 协议,可自定义 Agent 行为并与外部 Agent 协作 |
| 🔧灵活对接模型 | 可配置外部 API 接口,也可对接自建 ComfyUI 与本地大语言模型 |
| 🌐多语言支持 | 界面支持 21 种语言 |
多语言与 RTL 支持
文档列出的 21 种语言为:简体中文、繁體中文、English、日本語、Русский、Tiếng Việt、ไทย、한국어、हिन्दी、Bahasa Indonesia、Bahasa Melayu、Filipino、বাংলা、اردو、தமிழ்、తెలుగు、मराठी、ਪੰਜਾਬੀ、العربية、فارسی、Türkçe。
这一数量与仓库实现完全吻合:在 packages/i18n/src/index.ts 中导入了 zhTw、en、ja、ru、vi、th、ko、hi、id、ms、fil、bn、ur、ta、te、mr、pa、ar、fa、tr 等 locale 目录,对应 packages/i18n/src/locales/ 下的 JSON 文件。值得关注的是其 RTL(从右到左)排版支持:源码通过isRtlLocale函数识别ar(阿拉伯语)、fa(波斯语)、ur(乌尔都语)三种从右到左书写的语言,并在服务端通过detectLocale与normalizeLocale自动探测用户语言环境(见 apps/server/src/app.ts)。
二、部署方式总览
官方提供三种部署形态:桌面应用(Windows/macOS)、Docker、Linux 服务器直装。三者共享同一套 Web 前端与服务端,仅运行环境和数据目录不同。下文依次给出完整步骤。
三、桌面端安装:Windows 与 macOS
3.1 Windows:WebView2 自动检测与安装
Windows 安装包内置 WebView2 运行时检测逻辑:安装器会自动检测系统是否存在 WebView2 运行时,缺失或版本过旧时自动安装/更新。仓库中的 NSIS 脚本 apps/desktop/installer/webview2.nsh 展示了这一流程的实现细节:
- 调用
checkWebView2.exe检测运行时版本,返回码 0 表示已就绪,直接放行; - 检测失败或版本过旧时,携带微软官方安装器
MicrosoftEdgeWebview2Setup.exe执行安装(静默模式下加/silent /install参数,交互模式下弹出微软安装窗口); - 安装完成后再次调用检测程序验证实际版本——源码注释明确指出"安装返回码不能证明运行时已更新",因此以二次检测结果为准;
- 若二次检测仍失败,则中止安装并引导用户前往微软官方 WebView2 下载页手动修复。
因此,如果应用安装后立即闪退,官方文档给出的排障建议是:从微软 WebView2 下载页手动下载并安装运行时。
3.2 macOS:拖入应用程序目录即可运行
在 Apple Silicon 的 macOS 上,把 Toonflow 拖入"应用程序"文件夹后直接打开即可,无需预先在终端执行任何命令。若 macOS 弹出安全提示,按以下顺序处理:
第一步:在"隐私与安全性"中允许运行。出现"无法验证开发者"或"Apple 无法检查 App 是否包含恶意软件"的提示时,先尝试直接打开 Toonflow;随后进入 系统设置 → 隐私与安全性,找到"已阻止 Toonflow"的提示,点击"仍要打开"并确认。
第二步:若隔离属性仍阻止打开,移除 quarantine 属性。确认应用来自官方 Releases 页面且位于"应用程序"目录后,在终端执行:
sudo xattr -rd com.apple.quarantine /Applications/toonflow.app若应用名或安装位置不同,请相应调整路径。
第三步(兜底方案):临时允许运行来自任意位置的 App。前两步无效且信任应用来源时,可执行:
sudo spctl --master-disable随后进入 系统设置 → 隐私与安全性,在安全区域将"允许从以下位置下载的 App"改为"任何来源"(不同 macOS 版本可用选项与命令支持可能不同)。此操作会放宽对所有应用的安全限制,官方建议处理完毕后将设置恢复为"App Store 与已认可的开发者"。
四、Docker 部署
Docker 部署的完整前提:Git、Docker Engine、Docker Compose;Windows/macOS 上可使用 Docker Desktop 的 Linux 容器模式。仓库根目录自带的 Dockerfile 与 compose.yaml 已把构建与运行参数全部内置。
从 Dockerfile 可以确认镜像的关键事实:
- 基础镜像为
oven/bun:1.3.14,即 Bun 1.3.14 运行时; - 镜像内通过 apt 安装了
ffmpeg(视频处理依赖); - 构建阶段执行
bun run build:server并预创建data/workspaces/myProject目录; - 环境变量
TOONFLOW_DATA_DIR=/app/data指定数据目录,容器监听EXPOSE 3000; - 启动命令为
bun build/server/index.js。
compose.yaml 进一步明确了运行时行为:服务名toonflow,端口映射127.0.0.1:3000:3000(仅本机可访问),数据挂载到命名卷toonflowData,并配置了restart: unless-stopped自动重启。
4.1 安装步骤
克隆源码后,在仓库根目录执行:
git clone https://gitcode.com/HBAI-Ltd/Toonflow-app.git cd Toonflow-app docker compose up -d --build首次构建会安装依赖并构建随附的节点、工具、Web 与 Server。启动成功后打开http://127.0.0.1:3000即可使用。首次运行会自动初始化随附插件,并提供默认工作区myProject。
4.2 数据卷与日常运维
设置、插件与项目文件都保存在 Docker 命名卷toonflowData中,容器内对应路径为/app/data/(卷的实际名称会带有 Compose 项目名前缀)。停止或重建容器时数据不会丢失,因此切勿执行docker compose down -v——该命令会连同数据卷一并删除。
常用运维命令:
docker compose logs -f toonflow # 查看日志 docker compose stop # 停止服务 docker compose start # 重新启动 docker compose down # 移除容器,保留数据卷服务运行期间也可以从命令行新建项目目录:
docker compose exec toonflow mkdir -p /app/data/workspaces/newProject备份时先停止服务,再复制数据,最后重新启动:
docker compose stop docker compose cp toonflow:/app/data ./toonflowBackup docker compose start五、Linux 服务器部署
适合直接在 Linux 服务器上运行 Web 与 Server 的场景。以下示例以 Ubuntu/Debian 和 Bun 1.3.14 为例。
5.1 安装运行时与依赖
sudo apt-get update sudo apt-get install -y git curl unzip ffmpeg curl -fsSL https://bun.com/install | bash -s "bun-v1.3.14" export PATH="$HOME/.bun/bin:$PATH" bun --version5.2 克隆、构建并启动
git clone https://gitcode.com/HBAI-Ltd/Toonflow-app.git cd Toonflow-app bun install --frozen-lockfile # 构建随附的节点、工具、Web 与 Server bun run build:server mkdir -p data/workspaces/myProject bun run start:serverbuild:server由 apps/server/scripts/buildStandalone.ts 实现:它会遍历packages/nodes与packages/tools下各子包执行生产构建,再依次构建 Web 与 Server,产物统一输出到仓库根目录的build/下。
当终端输出「服务启动成功」时,即可在服务器本机访问http://127.0.0.1:3000。上述命令以前台方式运行,按Ctrl+C停止。若需开机自启与进程托管,可参考 Bun 官方 systemd 部署指引:将仓库目录设为工作目录,启动命令设为 Bun 的绝对路径加run start:server,并以对该目录有读写权限的普通用户运行。
服务启动的实际端口与日志可在源码 apps/server/src/index.ts 中确认:realPort固定为 3000,启动时会打印[服务启动成功]: http://localhost:3000与启动耗时。
六、访问控制与数据管理
6.1 端口与访问限制
服务目前使用固定端口 3000,且 Web 界面与 API没有独立的登录认证。因此服务器部署时务必用防火墙或安全组限制 3000 端口的访问;若需公网开放,必须前置带认证的反向代理。
个人远程访问推荐 SSH 隧道,无需在公网暴露 3000 端口:
ssh -N -L 3000:127.0.0.1:3000 username@server-address保持连接开启后,本机访问http://127.0.0.1:3000即可。
6.2 数据目录
- 服务器直装:设置、插件与工作区默认存放在仓库内的
data/目录; - Docker 部署:存放于
/app/data/(即数据卷内)。
数据目录可通过环境变量TOONFLOW_DATA_DIR覆盖:Dockerfile 中即通过该变量指定/app/data;服务端配置模块 apps/server/src/utils/conf/index.ts 会读取该变量并自动mkdirSync创建目录。迁移或备份时应整体保留该目录。
打开页面后,在"服务器工作区"中选择myProject即可开始创作;后续可在workspaces/下新建子目录作为更多项目。也可以在界面弹窗中通过"新建文件夹"创建项目,弹窗同时支持文件/文件夹的重命名与删除。
两种部署方式都自带系统级 FFmpeg;仍需在界面中为模型服务配置 API 密钥后即可开始生成。
6.3 云部署
官方合作伙伴提供了经过官方认证的 Toonflow 商业镜像,开箱即用的云端环境,适合希望跳过自建环境的用户,具体以合作伙伴的图文部署教程为准。
七、服务启动与插件初始化的源码视角
服务端入口 apps/server/src/index.ts 完成三件事:解析数据目录(TOONFLOW_DATA_DIR或仓库内data/)、调用createApp组装应用、监听 3000 端口并在启动后初始化 MCP 运行时。
应用组装逻辑见 apps/server/src/app.ts,其中有两点值得关注:
- 插件自动初始化:首次启动时调用
initializePlugins把内置工具、节点、媒体供应商与技能复制到数据目录;供应商与技能允许用户编辑,因此只做首次安装、不会随应用版本覆盖; - 接口能力配置:JSON 与文件上传类接口(如
/api/workspaces/files/write、/api/assets/save)设置了 100MB 的请求体上限,适配大体积资产传输。
八、示例作品与成本参考
官方 README 记录了一个真实创作示例:约 2 小时的人工操作产出约 2 分钟成片,其参数如下:
| 项目 | 数值 |
|---|---|
| 制作时长 / 最终视频长度 | 约 2 小时 / 约 2 分钟 |
| 视频模型 | Seedance 2.0 |
| 图片模型 | GPT Image 2 |
| 语言模型 | Claude Opus 4.6 |
| API 模型成本 | 约 ¥130 人民币:语言约 ¥10、视频约 ¥120、图片不足 ¥1 |
文档特别说明:该成本仅为该示例的实测记录,实际费用取决于所用模型服务、生成次数与参数设置;展示视频为 480p 压缩版。
九、TF-Router:官方模型网关
TF-Router 是 Toonflow 官方自运营的模型网关,其全部源码开源,可自行托管与审计。其诞生背景是大量用户申请不到 Seedance 2.0 的接入权限,官方因此与火山引擎签订年度框架协议,并决定在平台推广期内以成本价提供 Seedance 2.0 接入,之后仅收取极低的平台服务费。若不愿使用官方网关,也可以阅读其源码自行部署运行。
十、开源许可证与版本约束
Toonflow 采用 MIT License。需要特别注意文档中的非追溯条款:
- 使用 v1.0.8 之前旧版本的用户,仍受 AGPL-3.0 约束;
- v1.0.8 至 v1.1.8 版本仍受 Apache-2.0 及其附加协议约束;
- 本次许可证变更不适用于上述用户群体。
第三方依赖与资产仍遵循各自的许可证与版权声明。
十一、社区与联系
项目维护了微信社区(扫描仓库文档中的二维码加入)与 Discord 社群;功能请求与缺陷报告建议通过官方反馈渠道提交。商业合作可发送邮件至 ltlctools@outlook.com;该邮箱仅用于商务咨询,不提供技术答疑。项目致谢中特别提到了提供 Codex 20x 算力支持的贡献者,以及为 macOS 应用完成 Apple 证书签名的西安中星数字智能科技有限公司。
- 人工智能
- AI 应用
- AI Agent
- RAG
- AI 写作
- 后端
- 桌面应用
【免费下载链接】Toonflow-app
Toonflow 是一款 AI 短剧漫剧工具,能够利用 AI 技术将小说自动转化为剧本,并结合 AI 生成的图片和视频,实现高效的短剧创作。借助 Toonflow,可以轻松完成从文字到影像的全流程,让短剧制作变得更加智能与便捷。
相关推荐
pgai Vectorizer 结合 LiteLLM 评估多个 Embedding 模型的完整实践
pgai Vectorizer 结合 LiteLLM 评估多个 Embedding 模型的完整实践 本文基于 pgai 仓库中的示例 examples/eval
人工智能AI 应用AI AgentRAGAI 写作后端桌面应用gogcli 表格行操作实战:用 `gog docs table-row` 增删、固定表头与定制 Google Docs 原生表格行
gogcli 表格行操作实战:用 gog docs table row 增删、固定表头与定制 Google Docs 原生表格行 导读 Google Docs
人工智能AI 应用AI AgentRAGAI 写作后端桌面应用Agent Spec
Agent Spec Overview 描述 Agent 的目的及其工作方式。 Example Use Cases 具体的用例,含预期输入与输出。 Tools
人工智能AI 应用AI AgentRAGAI 写作后端桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考