一句話結論
gflow-cli 把「Google Flow 網頁 UI」變成可以腳本化的指令列工具:用你自己已登入的 Chrome 接管會話,從終端機批次生成圖片(Nano Banana 2/Pro、Imagen 4)與影片(Omni Flash、Veo 3.1),還能做首尾幀動畫、角色一致性、以及把短片一段段延長成有劇情的長片。
GitHub swissmarley/gflow-cli 於 2026-10-27 查證:20 顆星、8 個 fork、MIT 授權、TypeScript 撰寫、npm 套件 @swissmarley/gflow-cli。專案 2026-06-03 建立,最後一次推送 2026-06-10(約 4.5 個月前)——這個數字很重要,後面會說明為什麼。
為什麼會出現這種工具
Google Flow 是實驗室性質的網頁工具,官方沒有公開 API。想自動化只有兩條路:
| 做法 | 結果 |
|---|---|
| 逆向私有 API | 違反條款、隨時失效、帳號風險高 |
| 用瀏覽器自動化操作 UI | 慢,但走的是正常使用者路徑 |
gflow-cli 走第二條,而且它對「怎麼用瀏覽器」做了一個關鍵設計。
一表看懂
| 項目 | 內容(2026-10-27 查證) |
|---|---|
| 專案 | swissmarley/gflow-cli |
| 星數/Fork/Open issue | 20 ★/8/1 |
| 授權/語言 | MIT/TypeScript |
| 建倉/最後推送 | 2026-06-03/2026-06-10 |
| 安裝 | npm install -g @swissmarley/gflow-cli |
| 執行環境 | Node.js ≥ 20 + 真正的 Google Chrome(不是內建 Chromium) |
| 前置條件 | 有 Google Flow 使用權限的 Google 帳號 |
| 支援模型 | 圖片:Nano Banana 2、Nano Banana Pro、Imagen 4;影片:Omni Flash、Veo 3.1(Lite/Fast/Quality) |
| 主要能力 | 生圖、生影片、首尾幀(Frames)、批次 YAML、角色、工具、Agent、場景延伸、2K/4K 升級下載 |
它怎麼運作:關鍵在「不開隱形瀏覽器」
這是整個專案最值得學的設計。多數自動化工具會偷偷開一個帶 remote-debugging 的瀏覽器 —— Google 對這種瀏覽器會直接拒絕登入(「此瀏覽器或應用程式可能不安全」),甚至觸發反覆 2FA。
gflow-cli 的做法分兩段:
| 階段 | 做什麼 | 為什麼 |
|---|---|---|
1. gflow auth login | 開一個乾淨的 Chrome(無除錯參數),讓你自己完成登入與 2FA | Google 只允許在普通視窗登入 |
2. 第一個自動化指令(doctor、image…) | 把同一個已登入的 profile 以除錯埠重開,透過 **CDP(connectOverCDP)**接管 | 只載入 Flow(帶著有效 cookie),永不載入帳號登入頁 → 不會觸發封鎖 |
之後每個指令都沿用這個視窗,操作 Flow 的正常 UI,並透過 Flow 自己的已驗證媒體網址下載成品。
官方自述:不需要私有 API、不繞過登入、除了磁碟上的瀏覽器 profile 之外不儲存任何東西。
安裝與啟動
# 全域安裝(Node >= 20)
npm install -g @swissmarley/gflow-cli
# 1. 登入(會開一個普通 Chrome,你自己完成 Google 登入)
gflow auth login
# 2. 驗證(把它切成自動化會話)
gflow doctor
# 3. 開始生成
gflow image --id hero --prompt "minimal editorial product still" --out ./out
gflow video --id reveal --prompt "slow dolly over a misty lake" --duration 8 --out ./out
Chrome 不在預設路徑時,指定執行檔:
export GFLOW_CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
指令速查
| 指令 | 用途 | 常用參數 |
|---|---|---|
gflow auth login | 開普通 Chrome 登入 | --profile <name> |
gflow doctor | 確認已登入、可自動化 | — |
gflow image | 生成圖片 | --id、--prompt、--model、--ratio、--outputs 1-4、--upscale 2k/4k |
gflow video | 生成影片 | --duration 4/6/8/10、--start-frame、--end-frame |
gflow batch | 用 YAML 跑多個工作 | --continue-on-failure |
gflow character create/list | 建立可重用的角色參考 | --preset familiar/eccentric/wicked/fantastical |
gflow tool create/list/open | 建立自訂 Flow 工具 | --preset image-filter/style-morph/time-stretcher/voice-over |
gflow agent | 直接驅動 Flow Agent | --prompt、agent settings、instruction add |
gflow extend | 把影片一段段接長 | --media-id/--scene、多個 --prompt、--add-clip |
gflow media list/scene list | 找出可延伸的媒體與場景 id | --project |
輸出結構(檔案直接落在 --out):
out/
gflow-run.json # 批次執行摘要
<job-id>-001.png # 或 .mp4
<job-id>-001.json # 每個成果的中介資料
三個實用工作流
1. 批次流水線(YAML)
jobs:
- id: shot-1
type: image
prompt: "a neon-lit alley at night"
ratio: "16:9"
- id: clip-1
type: video
prompt: "rain falling on the alley"
duration: 8
gflow batch pipeline.yaml --out ./out
工作會依序執行;加 --continue-on-failure 可在一般生成錯誤後繼續。
2. 首尾幀動畫(Frames)
gflow video --id morph --prompt "smooth cinematic transition" \
--start-frame ./first.png --end-frame ./last.png --duration 4 --out ./out
只給 --start-frame 也能做「從單張首幀開始動」。
3. 場景延伸做長片(extend)
每次 --prompt 描述「接下來發生什麼」,約增加 7–8 秒;Flow 單一場景上限約 148 秒(約 20 次延伸)。
gflow media list # 先找要延伸的影片 id
gflow extend --media-id 9b14ed49-... \
--prompt "the camera pulls back to reveal the whole garden in golden light" \
--prompt "a hummingbird lands on the gardener's hand" \
--id garden-story
第一次執行會印出 scene id,之後用 --scene <id> 繼續同一條時間軸(再用 --media-id 會從原片段重新開一個新場景)。
已知限制與風險(誠實揭露)
| 風險 | 說明 |
|---|---|
| 專案很小且已 4 個月沒更新 | 20 顆星、最後推送 2026-06-10。用瀏覽器 UI 自動化的工具對「上游改版」極度敏感,Flow 介面一改就可能失效 |
| 需要 Google Flow 權限 | Flow 本身是實驗室工具,能不能用取決於帳號與地區,不是裝了就有 |
| 一定要真的 Chrome | 內建 Chromium 或 Playwright 的瀏覽器不行(登入會被擋) |
| 自動化仍屬灰色地帶 | 它沒有繞過登入,但用程式操作 Google 服務仍可能違反服務條款;商用/大量執行前請自行評估帳號風險 |
| 下載品質依方案 | --upscale 4k 需要 Flow 方案支援,不是每個帳號都能拿到 |
| 本文沒有實測 | 內容全部來自官方 README 與 GitHub API(2026-10-27),沒有實際安裝、沒有跑過生成流程 |
誰適合/誰不需要
適合:已經在用 Google Flow、想把「重複輸入提示詞」變成腳本的人;需要批次產出分鏡素材的創作者;要在 CI 或本機自動化流程裡插入生圖步驟的開發者。
不需要:沒有 Flow 權限的人(先解決權限再說);只需要偶爾手動生一張圖的人(網頁點一點更快);不能接受「工具可能隨時失效」的人 —— 這類 UI 自動化天生脆弱。
站內延伸閱讀
- ComfyUI 完整教學:本地端 AI 生圖工作流 — 不想依賴雲端服務的另一條路
- MiniMax H3 開源模型+ComfyUI 實作 — 開源影片模型可以做到什麼程度
- HyperFrames:用程式碼做影片的框架 — 影片生成之外的另一種「可重複」路線
資料來源與查證方法
| 來源 | 用途 | 查證時間 |
|---|---|---|
GitHub REST API /repos/swissmarley/gflow-cli | 星數、fork、語言、授權、建倉與最後推送 | 2026-10-27 |
| 專案 README(main 分支,15,390 bytes) | 功能、指令、參數、已知行為 | 2026-10-27 |
| 站內既有文章比對 | 確認無重複專文(swissmarley 命中 0) | 2026-10-27 |
本文為工具介紹與查證整理,未受廠商贊助、未含聯盟連結。所有數字請以官方頁面當下顯示為準。
