Kỹ Thuật22 tháng 4, 2026Cập nhật: 24 tháng 4, 20264 phút đọc

Chúng Tôi Tự Xây Tool Tự Động Hóa Google Flow — Và Giữ Nó Nội Bộ

Google Flow tạo video AI chất lượng cao với VEO 3.1, nhưng chỉ cho phép tạo từng clip một. Chúng tôi xây một Electron app tự động hóa việc generate hàng loạt qua DOM scripting và API reverse-engineered — đây là những gì chúng tôi học được.

L

Lugon

Vibe Engineer

Chia sẻ bài viết
Chúng Tôi Tự Xây Tool Tự Động Hóa Google Flow — Và Giữ Nó Nội Bộ

Google Flow tại labs.google/fx/tools/flow là một trong những công cụ tạo video AI ấn tượng nhất hiện nay. Nhập text prompt, đợi 60–90 giây, và bạn có một clip điện ảnh chạy bằng VEO 3.1. Chất lượng output thực sự đáng kinh ngạc.

Vấn đề: toàn bộ đều thủ công. Một prompt mỗi lần, một click mỗi lần. Với bất kỳ workflow production nào — chạy 50+ prompt với nhiều orientation khác nhau, retry khi lỗi, theo dõi media ID nào ứng với prompt nào — nó hoàn toàn không dùng được theo cách thông thường.

Vậy là chúng tôi tự build automation layer.


I. Tool Làm Được Gì

Tool là một desktop app xây bằng Electron + React + TypeScript. Nó nhúng giao diện web của Flow vào một cửa sổ ẩn và điều khiển nó theo chương trình, trong khi hiển thị panel điều khiển ở cửa sổ riêng.

Các tính năng chính:

  • Batch queue — paste danh sách prompt, đặt batch size, để nó chạy
  • Rolling concurrency — submit prompt mới khi prompt cũ hoàn thành, giữ queue luôn bận
  • Hai chế độ generation — text-to-video và image-to-video (với product asset selection)
  • Retry logic — cấu hình số lần retry tối đa trước khi skip
  • Media ID extraction — trích xuất mediaId từ DOM của từng tile hoàn thành để dùng tiếp
  • Session persistence — cookie và user-agent được lưu qua các lần khởi động lại

II. Kỹ Thuật Bên Trong

1. Tự Động Hóa Slate Editor

Input prompt trên Flow dùng Slate.js, một rich-text editor framework. Không thể chỉ set element.value = "..." như textarea thông thường.

Cách tiếp cận: giả lập ClipboardEvent với DataTransfer chứa text prompt. Slate intercept paste event ở tầng React, nghĩa là đường paste-event là cách đáng tin cậy nhất để inject text mà không phải chiến đấu với state machine nội bộ của editor.

const dataTransfer = new DataTransfer()
dataTransfer.setData('text/plain', prompt)
const pasteEvent = new ClipboardEvent('paste', {
  bubbles: true, cancelable: true, composed: true,
  clipboardData: dataTransfer,
})
promptInput.dispatchEvent(pasteEvent)

Nếu paste path thất bại, chúng tôi fallback sang execCommand('insertText') từng ký tự một.

2. Fingerprinting và User-Agent

Chạy automation trên web app có nguy cơ kích hoạt bot detection. Flow nằm sau reCAPTCHA Enterprise và có session monitoring riêng.

Các biện pháp:

  • Persistent user-agent — tạo một lần khi cài đặt theo pattern Chrome/macOS thực tế, lưu ra file, tái sử dụng qua các lần restart

  • Electron fingerprint spoofing — override navigator.platform, navigator.hardwareConcurrency, canvas fingerprint, và WebGL renderer string qua preload script inject trước khi trang load

  • reCAPTCHA serialization — Google đánh dấu concurrent token request từ cùng session là UNUSUAL_ACTIVITY. Chúng tôi serialize tất cả reCAPTCHA solve bằng mutex để chỉ có một token in-flight tại một thời điểm.


3. Headless API Path

Ngoài DOM automation, chúng tôi cũng reverse-engineer Flow's internal API từ network traffic: gọi thẳng aisandbox-pa.googleapis.com với payload structure giống web UI dùng. Path này bypass DOM hoàn toàn và nhanh hơn đáng kể.

Đánh đổi: cần reCAPTCHA token hợp lệ cho mỗi request, và Google thỉnh thoảng thay đổi cấu trúc endpoint.

4. Theo Dõi Tile

Flow render media dưới dạng "tile" trong grid. Mỗi tile có attribute data-tile-id. Chúng tôi snapshot tile ID trước khi click Generate, rồi watch để phát hiện tile ID mới — đó là cách match tile với prompt trong concurrent batch.

const beforeTileIds = getAllTileIds()
generateButton.click()
const newTileId = await waitForNewTile(beforeTileIds, 5000)

III. Tại Sao Giữ Nội Bộ

Tool này tồn tại trong vùng xám. Nó tự động hóa một sản phẩm của Google không có official API. Chúng tôi dùng nó cho các workflow production nội bộ — không phân phối, không open-source.

Công việc reverse-engineering cũng fragile: Flow cập nhật UI và internal API định kỳ, và tool cần được bảo trì theo.

Nếu Google ra official Flow API có batch support, tool này sẽ lỗi thời. Đến lúc đó, nó vẫn hoạt động tốt.

veo3ai-videoautomationelectrongoogle-flowinternal-tooltypescript
Chia sẻ bài viết
Bắt Đầu Dự Án

Sẵn sàng để chuyển đổi?

Tìm hiểu cách TeguFy có thể giúp doanh nghiệp của bạn simplify, amplify và fortify với AI, Blockchain và công nghệ tiên phong.

Chúng Tôi Tự Xây Tool Tự Động Hóa Google Flow — Và Giữ Nó Nội Bộ