TypeScript MIT

open-ai-canvas

【影策】面向 AI 影视创作的开源无限画布工作台,集成多模态生成、分镜编排、素材管理与 Agent 工作流。

D

ddcat-ai

Dernière activité 29 sept. 2026
ddcat-ai/open-ai-canvas

1 k

étoiles

331

forks

50

issues ouvertes

Ce README est souvent en anglais.

影策 logo

影策

让一个故事,从文字走向银幕

GitHub · 功能 · 文档 · 安全策略

影策是一个开源的 AI 影视与短剧创作工作台:用自由画布组织创作,用结构化工作流管理剧本、角色、场景和分镜,并通过统一的任务系统完成图片、视频、音频与文本生成。

项目仍在快速开发,数据结构和外部接口可能调整。默认适合个人、本地或可信环境部署;未经安全配置,不要直接作为公网多人服务使用。

在线演示:https://yingce.tv

账号/密码:test/test123456

赞助商

感谢以下赞助商对影策项目的支持:

LOGO 类型 赞助商名称 说明 网站
ArtDance 商业 ArtDance 本项目 Seedance 模型的天使投资人。 artbox.top
soonstudio 商业 soonstudio API 一站式网站,自研系统,非 New API;支持手机、短信接码,覆盖国内外几乎所有模型 API 接口,并发高、稳定性强。源于开源,步入 AI 领域,感谢开源。 soonstudio.ai
Fluxion AI 商业 Fluxion AI 面向个人开发者、技术团队与企业,通过统一 API 接入并管理全球主流 AI 模型,根据不同模型与线路,API 调用成本较官方或基准价格可降低 40%—98%。 注册送 $3.88 试用福利
快乐机艺术小组 团队 快乐机艺术小组 一支跨学科的艺术创作团队,持续探索数字与艺术的全新表达形式。 暂无
秘塔 企业 秘塔 提供 MiniMax H3 视频生成 API,支持原生 2K、音画同步和 OpenAI 兼容协议。 metaso.cn
浮瑞万相AI 企业 浮瑞万相AI 一家专注于AI视听的AI Native公司 暂无
喜马抓马 团队 喜马抓马 中国AI视听先锋厂牌/AI 视听全链路综合服务平台 himadrama.com
羽宇科技 企业 羽宇科技 一站式AI应用平台。提供模型算力入口、AI短剧视频制作(Studio)、企业数字员工(Agent)及内容出海(OPC)全栈解决方案。 暂无

3D 预演台赞助用户

感谢以下用户赞助 3D 预演台的开发:

TripsCoder sugtex Leyi813 daoge05178 AetherNo2332

GitHub 用户:@TripsCoder · @sugtex · @Leyi813 · @daoge05178 · @AetherNo2332

赞助用户 联系方式
vv 2838033228@qq.com
克里斯 artbox.top
宇熙 53121904@qq.com
落羽 luoyyv66@gmail.com
今夕何在 809321478@qq.com
Alpha-M·Break 15739564793@qq.com
不吃鸭梨 elio02519@gmail.com
九月 563641352@qq.com
A jiaboxuan1205@gmail.com

核心能力

  • 自由画布:节点、连线、框选、缩放、小地图、撤销重做、导入导出和只读分享。
  • 影视创作工作流:剧本、角色、场景、风格板、参考素材、结构化分镜和 3D 导演台。
  • 多媒体生成:文本、图片、视频、音频任务,支持参考图、首尾帧、运镜、续写、局部修改和批量生成。
  • 任务与素材管理:异步队列、进度与日志、取消/重试、素材库、资源引用校验和登录后的跨设备同步。
  • 时间线剪辑:片段编排、拆分、修剪、字幕转写和服务端成片导出,并支持插件化编辑面板。
  • 云端 Agent:支持持久化对话、画布摘要和流式事件回放;当前为只读阶段,真实环境能力以文档和验收清单为准。
  • Agent 技能生态:内置技能覆盖生产流程;社区技能库 judian-skills 提供 34 个场景域包索引,完整卡片通过 GitHub 安装后按需读取。安装:技能页 → 安装技能 → GitHub 标签 → 仓库地址填 https://github.com/itsWyatt-K/judian-skills,子目录填 skills/drama/story-structure-engine 这类域包路径。
  • 管理与渠道:系统渠道、逻辑模型、用量/积分、功能开关、对象存储、响应拦截和管理后台。

完整功能以功能清单为准。

快速开始

环境要求

  • Bun:前端和文档站
  • Go 1.25:后端
  • Docker Compose:仅在使用容器开发或部署时需要

宿主机启动

git clone https://github.com/ddcat-ai/open-ai-canvas.git
cd open-ai-canvas

# 使用 Git 忽略的目录保存本地开发数据和缓存
mkdir -p .local/project-workbench-debug .local/cache/go-build .local/cache/go-mod

# 终端一:后端
cd backend
CANVAS_BACKEND_ADDR=127.0.0.1:8080 \
CANVAS_BACKEND_DATA_DIR=../.local/project-workbench-debug \
GOCACHE=../.local/cache/go-build \
GOMODCACHE=../.local/cache/go-mod \
go run ./cmd/server

# 终端二:前端
cd ../web
bun install --frozen-lockfile
bun run dev

打开 http://localhost:3000。首次使用时注册管理员账号,并在设置中配置模型渠道。前端默认将 /api 代理到 http://127.0.0.1:8080;如需修改代理目标,可设置 VITE_API_PROXY_TARGET。

Windows PowerShell 用户可在仓库根目录执行:

.\scripts\start-local.ps1

Docker 开发与本地构建

源码热更新:

LOCAL_UID=$(id -u) LOCAL_GID=$(id -g) \
  docker compose -f docker-compose.dev.yml up --build

本地构建并运行 release 镜像:

docker compose -f docker-compose.local.yml up -d --build

默认前端端口为 3000、后端端口为 8080;端口冲突时可通过 CANVAS_WEB_HOST_PORT 和 CANVAS_BACKEND_HOST_PORT 覆盖。

更多本地开发说明(包括时间线字幕转写)见本地开发文档。

架构概览

浏览器(web/)
  ├─ React 工作区、画布、任务中心和素材库
  ├─ Zustand / localForage 本地状态与降级缓存
  └─ 登录态 API、资源请求和 SSE
          │
          ▼
后端(backend/)
  ├─ Gin handler -> service -> repository/model
  ├─ SQLite(本地)或 PostgreSQL + Redis(部署)
  ├─ 异步任务 worker、权限、资源存储和模型中转
  └─ provider / outbound -> 外部模型渠道

前端业务 API 统一经 web/src/services/api/request.ts 调用。生产环境由 Nginx 托管前端并代理后端,公网只需暴露 web 入口;SSE 仅在明确的流式路径关闭代理缓冲。

服务器部署

源码构建(推荐)

适用于 Linux 云服务器。脚本会安装 Docker、拉取源码、生成受保护的 .env,并启动 PostgreSQL、Redis、后端和网页:

curl -fsSL https://raw.githubusercontent.com/ddcat-ai/open-ai-canvas/main/scripts/install-server.sh | sudo bash

默认访问 http://服务器IP:3000。更新或排查:

cd /opt/open-ai-canvas
sudo docker compose --env-file .env \
  -f docker-compose.deploy.yml -f docker-compose.build.yml ps
sudo docker compose --env-file .env \
  -f docker-compose.deploy.yml -f docker-compose.build.yml logs -f --tail=200

使用 GHCR 镜像

不需要源码时,可使用镜像部署脚本:

curl -fsSL https://raw.githubusercontent.com/ddcat-ai/open-ai-canvas/main/scripts/install-server-image.sh \
  | sudo env CANVAS_IMAGE_TAG=v1.5.7.1 bash

脚本会先按指定 Release 拉取镜像,再解析并写入 CANVAS_BACKEND_IMAGE、CANVAS_WEB_IMAGE 的 GHCR digest;生产 Compose 不接受缺失 digest 的默认镜像或 latest。更新流程、数据库迁移、备份和回退说明见系统更新文档。

安全边界

  • 首次管理员注册应在受控网络完成,公网部署保持 CANVAS_REGISTRATION_ENABLED=false。
  • 设置准确的 CANVAS_CORS_ORIGINS,不要在公网使用 *;使用 HTTPS 并正确转发代理头。
  • 后端默认拒绝本机、私网和链路本地模型地址。开发时只通过 CANVAS_ALLOWED_PRIVATE_UPSTREAM_HOSTS 精确放行可信主机,不要使用全量放行开关。
  • 用户 API Key 不应出现在 URL、日志、错误上报或服务端长期明文存储中;只在可信部署和 HTTPS 链路中使用真实密钥。
  • 后端 8080 应留在 Compose 网络内,不要直接暴露到公网;限制 .env、数据库、上传目录、备份和 .settings-key 的权限。
  • 媒体资源可使用后端数据目录、阿里云 OSS 或腾讯云 COS;删除素材前会检查业务引用。

安全问题请按 SECURITY.md 报告,不要在公开 Issue 中粘贴密钥、Cookie、数据库或生产日志。

文档与验证

文档导航

验证命令

按改动范围运行最小验证:

# 前端
cd web && bun run lint && bun run build

# 后端
cd backend && go test ./...

# 文档站
cd docs && bun run types:check

许可证和上游

本项目采用 MIT 协议。影策基于 basketikun/infinite-canvas 的早期版本进行二次开发,上游作者和贡献者保留其对应代码的权利与署名。


贡献者与团队

感谢参与产品设计、开发、测试、内容和社区建设的成员。以下为紧凑展示,完整保留每位成员的头像、昵称、联系方式和个性签名:

ddCat ddCat
项目发起者 · 微信:ddcat0829

ddcat666@126.com
在计算机里头没有任何黑魔法,所有的东西只不过是我现在不知道而已,总有一天我会把所有的细节、所有的内部的东西全搞明白的。
爱笑的毛毛虫 爱笑的毛毛虫
用户名:sikongyue

315515767@qq.com
正在啃 main 分支,争取下次 merge 的时候变成蝴蝶
delve-s delve-s
3013141136@qq.com
我亦无他,惟手熟尔
CyrusAuyeung CyrusAuyeung
cyrusauyeungho@gmail.com
HKUST(GZ) UG
奶大佬 奶大佬
1304634970@qq.com
人生就是要不断的探索
dyh dyh
1613203335@qq.com
无
kyori kyori
1771634408@qq.com
励志成为未来最好用的画布仓库的贡献者
Bowen Bowen
admin@bowen.games
剑走偏峰,雷厉风行。
ken ken
2506802@qq.com
走自己的路
fish fish
cihai.sea@gmail.com
AI 界热于助人的拖油瓶
QAyong QAyong
ID:QAyong
B站:QAyong

2110491559@qq.com
AI 短剧合规,资产确权
_K37ix. _K37ix.
2773843782@qq.com
Making things that think
Rou Rou
rou325089@163.com
上善若水
vv vv
dy/xhs:荣灵

2838033228@qq.com
就是水水
Dominic1556 Dominic1556
184026530@qq.com
Done is better than perfect
宇熙 宇熙
53121904@qq.com
年轻的时候不狂,老了拿什么回忆
影子 影子
305818148@qq.com
年纪大佬才明白人要顺势而为。
Ray Ray
cnraylee@qq.com
AI时代的全栈落地工,欢迎找我聊需求
不见山谷 不见山谷
VV:yu170718

1762202553@qq.com
空山不见人,但闻人语响
yep yep
1239738103@qq.com
思考,坚持
汉堡爸爸 汉堡爸爸
VV:jxs62888

309151651@qq.com
没什么大不了
bensharp bensharp
VV:jiahezuiai

275008147@qq.com
在哪跌倒,就在哪睡一觉
daqzia daqzia
VV:wangzhiwei-8234

wzwzcb@gmail.com
NullPointerException
醒梦 醒梦
VV:love-is-heart-is

1948863412@qq.com
Always believe that good things will happen
morrow morrow
VV:morrow0127

3201190041@qq.com
最难不过坚持
春秋 春秋
Agent记忆核心贡献者 · VV:A13068788886

558328@qq.com

亿媒网老宋 亿媒网老宋
61731514@qq.com
亿媒网 em8.top
全国10W+媒体、自媒体,助力企业品牌传播

Projets similaires

面向 AI 创作的开源无限画布工作台,集成 AI 生图、参考图编辑、视频生成、Agent 智能助手、画布编排、对话创作、提示词库与素材管理等能力,支持可视化创作流程与多 Agent 协同工作。兼容 OpenAI 接口生态,支持 chatgpt2api、grok2api、flow2api、newapi 等渠道接入。

TypeScript
Bbasketikun
7,2 k étoiles1,8 k

开源 AI 创作工作台,集成无限画布、Agent、导演台、全景图、AI 生图、图片编辑、视频生成、画布编排等,兼容 OpenAI 接口及多种 API 服务

TypeScript
Ttigerowo
1,1 k étoiles239

Toonflow 是开源 AI 创作平台,融合无限画布、AI Agent 与可视化工作流,支持图像生成、视频生成、智能分镜及短剧创作。支持本地部署、自由接入模型,提供跨平台桌面端,并可通过 MCP 与插件扩展创作能力。Open-source AI creative platform with an infinite canvas, AI agents and visual workflows for image generation, video generation and filmmaking, with a canvas-based approach similar to LibTV and TapNow.

TypeScriptaiai-agentsai-content-creation
HHBAI-Ltd
16,2 k étoiles2,9 k