crisng95/flowboard

Flowboard — open-source infinite canvas for AI product videos. Drag nodes for model, product, scene, video — connect them, click Generate. Auto-prompts write themselves. Runs locally; powered by Google Flow + Claude CLI.

Flowboard – 用于 Google Flow 媒体生成的本地图形化工作区

它是什么 – Flowboard 是一款桌面级 Web 应用程序,让单一用户能在无限画布上设计AI 生成的媒体管道。节点代表资产(角色、产品)、图像合成和视频渲染。该应用程序通过 Chrome MV3 扩展程序与 Google Flow (Veo 3.1 i2v / GEM_PIX_2) 通讯,并使用本地安装的 LLM CLI (Claude Code、通过 agy 的 Gemini 或 OpenAI Codex) 进行视觉识别、自动提示和规划。所有状态皆存储在本地 SQLite 数据库中;除了付费的 Google Flow 账户外,无需任何云端服务。


为什么存在

  • 电子商务视频制作过程重复性高 – 同一个模特和产品会出现在许多场景中。
  • Flowboard 将整个活动视为一个有向图,因此每个参考资料(角色、产品)只需上传一次即可自动重复使用。
  • 自动提示功能会从设置的 LLM CLI 提取描述,为每个下游节点生成具备情境感知能力的提示词。

核心概念与工作流程

概念 角色 使用方式
参考节点 (角色、视觉资产) 存储单一图像和 aiBrief (LLM 生成的描述) 的锚点。 上传或生成一次;下游节点会自动读取简介。
图像节点 从一个或多个参考资料合成场景。 连接参考资料,点击 Generate (或按 Enter)。应用程序将上游媒体 ID 发送至 Google Flow,并要求 LLM CLI 在单次调用中合成 N 个姿势各异的提示词。
视频节点 通过 Veo i2v 将图像(或其变体)转换为短片。 连接图像节点,选择 Static 或 Dynamic 摄像机,勾选要使用的变体。一次 Flow batchexecute 调用会为每个选定的变体创建一个视频。
自动提示 具备场景情境感知能力的 LLM 驱动提示生成。 LLM 读取上游 aiBrief,决定动作词汇(摄影棚、街道、咖啡厅、户外),并为每个变体返回时尚编辑风格的提示词。

架构概览

Chrome MV3 extension  ←→  FastAPI agent (127.0.0.1:8434)
   │                     │   ├─ SQLite storage (boards, nodes, assets)
   │                     │   └─ Worker queue that shells out to the LLM CLI
   ▼                     ▼
React‑Flow canvas (Vite, TS)   ←→   Google Flow (batchexecute RPC)
  • 前端 – React 18 + React‑Flow 12 渲染无限画布 UI。
  • 代理 – FastAPI 0.115 在本地执行,存储图形,并通过扩展程序调解所有对 Google Flow 的调用。
  • 扩展程序 – 加载于 flow.google.com;它注入一个内容脚本,使用页面的会话 Cookie、Token 和一次性 reCAPTCHA 对每个请求进行签名,然后通过 WebSocket 将原始负载转发给代理。
  • LLM CLI – 任何支持的 CLI (Claude Code、Gemini agy、OpenAI Codex) 必须位于系统 PATH 中。代理会调用它进行视觉识别(图像描述)和自动提示规划。

入门指南(快速摘要)

  1. 先决条件 – Python 3.11+、Node 20+、Chrome、付费的 Google Flow Pro 或 Ultra 方案,以及安装其中一个 LLM CLI。
  2. 克隆并安装 – make install (或使用 uv/venv + npm install)。
  3. 加载 Chrome 扩展程序 – chrome://extensions/ → Load unpacked → extension/。
  4. 开启已登录的 Flow 分页 – 当扩展程序图标变绿时,表示可以与代理通讯。
  5. 设置 – 将 .env.example 复制为 .env,并将 FLOWBOARD_FLOW_PROJECT_ID 设置为您在 UI 中创建的 Flow 项目 UUID。
  6. 运行 – make agent (FastAPI) 和 make frontend (Vite)。开启 http://localhost:5173。
  7. 创建看板 – 新增角色和视觉资产节点,将它们连接到图像节点,然后连接到视频节点。在每个步骤点击 Generate;LLM CLI 会创建提示词,扩展程序将请求转发给 Google Flow,结果会出现在画布上。

显著功能

  • 无限画布 – 无限制平移/缩放;每个节点皆可拖拽。
  • 变体批处理 – 在单次 Flow 调用中请求 N 个图像变体或 N 个视频。
  • 可重复使用资产 – 上传一次的角色或产品可供数十个场景使用。
  • 仅限本地存储 – 所有看板、媒体文件和历史记录皆保存在 storage/ 下的 SQLite 数据库中。
  • 供应商无关的 LLM – 通过设置 UI 切换 Claude、Gemini 或 Codex;应用程序绝不会直接连接云端 LLM 端点。
  • 测试 – 517 个通过的 pytest 套件(截至 README)。

适合对象

  • 已经拥有 Google Flow Pro/Ultra 订阅,且希望拥有可重复、图形驱动工作流程的电子商务或时尚视频广告创作者。
  • 偏好仅限本地数据(无资产云端存储),但仍需要 Google Veo 图像转视频模型强大功能的团队。
  • 熟悉 Python、Node 和 Chrome 扩展程序,且希望扩展管道(例如新增自定义 LLM 提示或额外节点类型)的开发者。

限制

  • 需要 Chrome – 扩展程序必须在即时的 flow.google.com 分页中执行;不支持无头模式。
  • 付费 Flow 方案 – 免费或试用账户无法生成视频,因为 Veo 3.1 i2v 受到限制。
  • 单一用户,仅限本地 – 不支持多用户协作或云端同步。

授权

MIT – 请参阅存储库中的 LICENSE 文件。

相关

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