Communitygithub.com

demo-maker

將示範影片化作程式碼 — YAML + Playwright → 精美、一致的產品功能影片。可無限次重新執行。

demo-maker 是什麼?

demo-maker 是一款開源的產品示範影片製作工具,專為網站設計。它讓開發者能夠透過 YAML 配置檔,結合 Playwright 自動化瀏覽器操作,產出高品質的 MP4 影片。核心價值在於將影片製作「版本化」:當產品 UI 變更時,只需更新 YAML 腳本並重新執行,無需手動重新錄製,大幅節省時間與成本。此技能支援 npm 套件安裝,並提供 CLI 介面 (run, check, record, import 等指令),可於任何 Node.js 20+ 環境中運作。透過編寫穩定的定位器 (locators),除了能產出影片,還能順帶發現 UI 可訪問性的潛在問題,一舉兩得。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add a1knowhow/demo-maker

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

預覽

來自技能 README

說明文件

demo-maker 是做什麼的?

🎬 開源的網站產品示範影片製作工具。 透過 YAML 配置與 Playwright,建立一致的網站示範影片 — 無需手動點擊或重新錄製。

將版本化的場景配置轉化為一致的產品功能影片 — 重新配置、重新執行,無需手動重新錄製。

為什麼?

產品 UI 不斷變更,導致示範影片過時。手動重新錄製(或要求 AI 代理「直接製作影片」)既慢又昂貴,而且仍需要人工檢查。

使用 demo-maker,您可以將逐步操作流程版本化為 YAML:編輯步驟、重新執行,即可獲得相同的 MP4。片段 (Fragments) 和匯入 (Imports) 功能讓流程可重複使用;您或 AI 代理可以像維護程式碼一樣維護腳本。

副作用: 編寫穩定的定位器 (locators) 會暴露真實的 UI 缺口 — 遺失的標籤、重複的可訪問名稱、難以定位的列表列 — 因此在建立示範的同時,您也常能修復可訪問性問題。

需求

  • Node.js 20+
  • Playwright Chromium (npx playwright install chromium)
  • ffmpeg 需在 PATH 環境變數中(MP4 重新編碼、cut_video 剪輯、背景音訊)

安裝

已發佈至 npm,套件名為 @a1knowhow/demo-maker:

npm install -D @a1knowhow/demo-maker
npx playwright install chromium

或從專案克隆安裝:

npm install
npx playwright install chromium

此套件包含 TypeScript 原始碼,並透過 tsx 執行。程式庫匯入 (import … from "@a1knowhow/demo-maker") 需要支援 TypeScript 的工具鏈(tsx、Vitest 或 bundler)。安全性相關資訊請參閱 Security。

快速開始

npx demo-maker run examples/smoke.yaml --headless --fast

逐步教學(安裝 → 第一個 MP4 → 錄製 → 片段):Getting started · GitHub 上的文件

範例操作說明

入門導覽:開啟此 GitHub 儲存庫,依序瀏覽 getting-started → actions → locators(匯入、標題卡、字幕、節奏控制):

npx demo-maker run examples/demo1-introduction.yaml

檢視執行紀錄

更豐富的 CI 導覽(Actions → 綠色執行 → 測試工作):

npx demo-maker run examples/demo2-github-actions.yaml

(examples/demo1-introduction.yaml · examples/demo2-github-actions.yaml · examples/smoke.yaml 為最小化檢查範例)

文件

網站:https://a1knowhow.github.io/demo-maker/

主題文件網站原始碼
首頁docs sitedocs/index.md
入門指南getting starteddocs/getting-started.md
CLICLIdocs/cli.md
動作 (Actions)actionsdocs/actions.md
定位器 (Locators)locatorsdocs/locators.md
影片與節奏控制video & pacingdocs/video-and-pacing.md
錄製recordingdocs/recording.md
UI 變更後修復repairingdocs/repairing-scenarios.md

型別定義:src/types.ts。

指令

指令用途
demo-maker run <scenario.yaml>執行場景(可選輸出影片)
demo-maker check <scenario.yaml>以 --fail-fast --fast 模式執行 run
demo-maker record即時錄製動作至 YAML
demo-maker import將 DevTools / 錄製器 JSON 轉換為 YAML
demo-maker export-chapters將時間戳 JSON 轉換為 YouTube 章節行

安全性

請私下回報漏洞 — 請參閱 SECURITY.md。請勿為安全性問題開啟公開議題。

授權條款

Apache License 2.0 — 請參閱 LICENSE。

關於 A1KnowHow

demo-maker 最初是為了為 A1KnowHow 建立示範影片而開發的 — A1KnowHow 是一個整合 AI 工作流程、文件組織、聊天、搜尋,以及具備技能和 MCP 工具整合的 AI 代理平台。

相關技能