Communitygithub.com

VoxFlowStudio/skills

將長篇文章、筆記或報告轉換為 1080×1920 豎版卡片影片(VoxFlow Slice)。提供 13 種主題,支援 CLI 與網頁 App。

skills 是什麼?

這個技能(原命名 `paper-slide`,已更名為 `slice`)的核心功能是將文字內容(如文章、筆記、報告)自動轉換為結構化的豎版 1080×1920 卡片影片,並搭配 13 種視覺主題。它支援多種操作路徑:使用者可以透過 CLI 指令 `voxflow slice` 快速取得標準化的 5-8 張卡片 JSON,用於腳本化處理或後續編輯;也能使用 `voxflow slice stage` 啟動本機預覽伺服器,即時熱更新卡片內容,並提供文字匯出工具(純文字、Markdown),方便跨平台發布草稿。最終的完整影片渲染(包含精確主題與 TTS 配音)僅在網頁 App 上提供;CLI 可透過 `voxflow present` 或 `voxflow picstory` 產生近似輸出。技能內建 13 套主題(如紙面、編輯刊、大字海報、Notion 卡、粗野、玻璃夜等),每套主題均對應特定的平台與內容風格,使用者應參考 `references/themes.md` 選擇最適主題。

相容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/VoxFlowStudio/skills/tree/HEAD/skills/slice

在你喜歡的 AI 中提問

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

說明文件

Slice 技能

將文章、筆記、論文或粗略主題轉換為豎版 1080×1920 卡片影片——搭配旁白、按 TTS 節奏分頁,並提供 13 套視覺主題,涵蓋 抖音 / 小红书 / 知乎 / X / 公众号 / 飞书 / TikTok / LinkedIn / 雪球 / 微博 / 即刻 / B 站 / 播客。

從 paper-slide 更名為 slice。 產品現在稱為 Slice (voxflow.studio/apps/slice);舊的 slug 已不再使用。paper-slide 僅作為 13 個主題 ID 之一留存。

選擇路線

情境路線說明
使用者想要 deck JSON(不渲染)——快速、可腳本化、可管線化CLI:voxflow slice <article.md> --theme <id>直接呼叫 /api/slice/deck 後端(200 配額;從 #3307 Deploy 2 起由 /api/paper-slide/slice 改名)。回傳與網頁 App 相同的標準 5–8 張卡片 deck JSON,接受全部 13 個主題。無 mp4——將 --json 管線至自訂工具、本機 Remotion 組合(貢獻者),或貼入網頁 App 進行渲染。
使用者正在迭代 deck——在提交渲染前對文案/結構進行多輪編輯CLI:voxflow slice stage <deck.json>啟動本機預覽頁面(無配額成本),每次儲存 deck JSON 時會熱重新載入。實用循環:voxflow slice ... -o deck.json → voxflow slice stage deck.json → 調整提示詞 → 重新執行 slice → 預覽即時更新。參閱下方的 Stage 路線。
使用者想要完成的 mp4 + 封面(預設消費者流程)網頁 App:https://voxflow.studio/apps/slice唯一能端到端執行精確 6 套 Slice 主題的地方。免費方案提供 9:16 mp4 + 多重比例封面(9:16/3:4/1:1)。
使用者希望透過 CLI 離線取得類似影片,但僅有 deck 的 voxflow slice 不夠voxflow present 或 voxflow picstory --style sketchnote僅為近似輸出。 不同的視覺方案;無法輸出 Slice 的 editorial-mag / notion-card / brutalist / glass-dark 主題。參閱下方的 CLI 近似路線。
本機 checkout 含有 video-present/src/compositions/PaperSlide(僅限 VoxFlow 貢獻者)本機 Remotion 實驗腳本參閱 本機 Remotion 路線。注意:實驗腳本僅演練原始的 paper-slide 組合;其他 12 個主題僅透過雲端 worker 渲染。
使用者只需要策略或文案透過 voxflow slice(或依照 schema 手動)產生 deck JSON;告知他們使用哪個渲染器。Deck schema 與渲染器無關;同一份 JSON 可在任何主題中渲染。
使用者要求開源/打包保持私有 API、Token、產生的音訊、MP4 輸出不出現在技能套件中。

工作流程

  1. 選擇符合平台的主題。 閱讀 references/themes.md 一次——它列出了所有 13 個主題、其視覺特徵,以及每個主題適合的平台 / 內容類型。不要什麼都用 paper-slide。
  2. 選擇一個場景。 具體用例勝過泛泛填充:論文摘要、產品更新、會議總結、職涯建議、創始人課程、市場評論、事件回顧。
  3. 撰寫精簡的 deck。 4-6 張卡片:一個標題 + 3-5 個主體。每張主體卡片一個想法。標題要夠短,一行能容納。
  4. 從受控關鍵詞中選擇視覺元素。 不要在渲染時搜尋網路或產生隨機圖片——選一個標準的 figureKeyword;渲染器會將其對應到本機的手繪場景 / 姿勢 / 圖示。(參閱 references/deck-schema.md。)
  5. 透過選定的路線渲染。 精確主題使用網頁 App;近似使用 CLI;貢獻者使用本機腳本。
  6. 驗證成品。 檢查時長、尺寸(1080×1920),並在回報完成前至少檢查一個標題影格和一個主體影格。
  7. 回報路徑。 MP4 / 海報 / 道具的絕對路徑。

撰寫 deck JSON、選取關鍵詞或除錯版面時,請閱讀 references/deck-schema.md。參考 references/example-decks.md 取得種子 deck。選擇主題或解釋主題取捨時,請閱讀 references/themes.md。

網頁 App 路線(預設——適用於所有人)

https://voxflow.studio/apps/slice

工作流程:

  1. 將文章 / 筆記貼入主編輯器。
  2. AI 將其切片為 5–8 張卡片。
  3. 選擇一個主題(13 個選項——參閱 references/themes.md)+ 一個聲音(6 個生產級聲音:男主播 / 霸总男声 / 闲聊男声 / 小美 / 小心 / 小徐)。
  4. 渲染 → 1080×1920 mp4 + 多重比例封面(9:16 / 3:4 / 1:1)。

告知使用者這是唯一能針對所有 13 個主題產生精確 Slice 渲染的路線——它們是私有 Remotion 組合,未隨 CLI 發佈。

CLI Deck 路線(voxflow slice)

適用於想要結構化 deck JSON 但不需要渲染的使用者——快速(單趟往返,200 配額)、可管線化、支援主題。呼叫與網頁 App 相同的 /api/slice/deck 後端,因此 deck 形狀是標準的。

voxflow slice article.md                                  # 預設主題:paper-slide
voxflow slice article.md --theme editorial-mag -o deck.json
voxflow slice --text "長篇文章..." --theme bold-poster --json | jq .deck

何時使用此路線:

  • 使用者想在提交渲染前檢查 / 迭代 AI 的切片品質。
  • 使用者想將 deck 貼入網頁 App 的「匯入 deck」流程,以使用不同主題渲染。
  • 使用者是擁有私有 video-present/src/compositions/PaperSlide Remotion 組合的貢獻者,並希望在本機渲染 deck——voxflow slice ... --json -o props.json 然後將 props.json 餵入實驗腳本。
  • 使用者正在建構需要結構化輸出的自動化(例如從 deck.cards[*].caption + narration 以文字形式在 Twitter / 即刻上發佈知識卡片)。

限制:

  • 無 mp4。產生 1080×1920 影片的雲端渲染器位於網頁 App 中。
  • 無 TTS。如果你想要每張卡片的音訊而不渲染,請將 voxflow slice 與 voxflow narrate 配對使用。

Stage 路線——voxflow slice stage(迭代預覽)

適用於提交雲端渲染之前的人機協作迭代階段。Stage 會啟動一個本機 HTTP 伺服器,支援熱重新載入——每次儲存 deck JSON 時,頁面都會即時更新。無配額成本,無網路往返。

voxflow slice deck.md -o deck.json     # 1. 產生 deck(200 配額)
voxflow slice stage deck.json          # 2. 開啟本機預覽(免費)
                                       # 3. 手動編輯 deck.json 或重新執行 slice
                                       # 4. 儲存後預覽熱重新載入

想要一個無配額、無需登入的入門範例?直接使用內建範例:

voxflow slice stage examples/11-slice-stage/sample-deck.json

標誌:

voxflow slice stage <deck.json> [--port <n>] [--theme <id>] [--no-open]
  --port      預設 5180。發生衝突時會自動跳號 +1 直到 5189。
  --theme     將預覽鎖定到一個主題(必須是 13 個有效 ID 之一)。
  --no-open   不要自動開啟瀏覽器(CI / SSH / 代理環境)。

何時使用 Stage:

  • 使用者處於多輪編輯循環中——文案調整、卡片重新排序、主題 A/B 測試——每次迭代重新開啟 mp4 會造成高昂的摩擦。
  • 使用者想要在純文字優先的平台(X / Twitter / 即刻 / Threads / Mastodon / 部落格評論)上將個別卡片發布為純文字。Stage 為每張卡片提供「複製文字」按鈕(標題 + 標題 + 旁白),deck 層級的工具列則提供「複製 JSON / 下載 .json / 複製為 Markdown」用於貼入 Notion / 部落格 / 飞书。針對 小红书 / 微博 / 公众号 頭圖的圖片 / 輪播匯出將在未來階段推出,屆時才會有每張卡片的靜止畫面。
  • AI 驅動的循環:代理重新產生 deck.json,人類透過瀏覽器審查——頁面會更新,代理無需重新列印路徑。

文字匯出工具(Phase 1.4 純文字)

Stage UI 提供純文字優先的匯出控制項,讓卡片無需支付完整渲染費用即可在純文字平台上重複使用:

  • 每張卡片的「複製文字」——點擊任何卡片上的小按鈕 → 剪貼簿中會得到 {title}\n\n{caption (如果不同)}\n\n{narration}(已修剪)。貼入推文、即刻貼文或部落格片段。
  • Deck 工具列——「複製 JSON」——將完整的 deck JSON 複製到剪貼簿(用於管線至自訂工具 / 與另一個代理分享 / 儲存快照)。
  • Deck 工具列——「下載 .json」——將 deck 儲存為 <seriesTitle>.json(檔案名稱會自動清理,上限 60 個字元 + .json)。
  • Deck 工具列——「複製為 Markdown」——將整個 deck 格式化為 Markdown(H1 = seriesTitle,每個卡片 H2,旁白為 blockquote)。貼入 Notion / 部落格編輯器 / 飞书文件。

格式化器位於 lib/stage-core/deck-format.js(formatCardAsText、formatDeckAsMarkdown、suggestDeckFilename),並在 tests/deck-format.test.js 中有單元測試。它們的原始碼透過 Function.prototype.toString() 被字串化到提供的 HTML 中,因此瀏覽器執行的是與測試相同的程式碼——單一事實來源,無需雙重維護。

針對 小红书 / 微博 / 公众号 頭圖的圖片 / MP4 輪播匯出不屬於 Phase 1.4 純文字。它們將在未來階段推出,屆時才會有每張卡片的 renderStill 縮圖(這需要一個尚不存在的後端 Remotion 端點)。

Stage 不是什麼:

  • 還不是完整的 Remotion 預覽。MVP 顯示 deck 結構(卡片 + JSON);雲端渲染的主題縮圖將在 Phase 1.3 透過 renderStill 提供。
  • 不是完整渲染像素的替代品——主題是伺服器端組合。Stage 預覽的是 deck 文字,而非最終的影片影格。

使用 AI 編輯循環(實際的迭代工作流程)

Stage 不試圖成為 Cursor——它是一個視覺回饋閉環,將提示詞傳遞給使用者已開啟的任何 AI 工具(Claude Code、Cursor、ChatGPT 等)。兩種設計涵蓋整個編輯循環:

意圖使用者體驗輸出
整張卡片重寫(「重新產生這張卡片,保留其他」)滑鼠懸停在卡片上 → 角落按鈕 使用 AI 編輯彈出視窗,內含提示詞:檔案路徑 + cards[N] JSON 片段 + <你的指令> 欄位
區域性短語重寫(「就這個短語不對」)選取卡片內的文字 → 浮動按鈕 使用 AI 編輯選取內容 出現彈出視窗,內含提示詞:檔案路徑 + 精確選取的子字串(含引號)+ 完整卡片 JSON 作為上下文

使用者輸入指令(例如「縮短到 12 個字,更有衝擊力」),點擊 複製提示詞,貼入他們的 AI。AI 使用其原生的檔案編輯工具(Claude Code 的 Edit、Cursor 的 Apply 等)來改寫檔案。Stage 的 SSE 監視器會在大約 150 毫秒內熱重新載入預覽。循環直到滿意為止。

為什麼選擇這種設計而不是內嵌聊天/MCP 伺服器:請參閱 #3330 以了解完整的設計理由(通用複製貼上 vs. 僅限 Claude Code 的 MCP、成本 vs. 覆蓋率的權衡、未來根據使用情況遙測決定是否升級為 MCP)。

CLI 近似路線(完整 mp4 備案)

如果使用者必須從 CLI 取得 mp4(沒有網頁 App,沒有貢獻者的 Remotion 存取權限),則使用 voxflow present 或 voxflow picstory 作為備案——它們涵蓋相同的文章轉影片形式,但使用其各自的視覺方案,而非精確的 13 個 Slice 主題。

voxflow present --text "貼入文章或摘要" --style editorial --output slice-approx.mp4
voxflow picstory --topic "主題" --style sketchnote --scenes 4 --output slice-sketch.mp4

每個 Slice 主題最接近的 CLI 方案:

Slice 主題最接近的 CLI 路線
paper-slidevoxflow picstory --style sketchnote
editorial-magvoxflow present --style editorial
bold-postervoxflow present --style brutalist(最接近的重量)
notion-cardvoxflow present --style minimal
brutalistvoxflow present --style brutalist
glass-darkvoxflow present --style noir 或 --style aurora
editorial-stencilvoxflow present --style editorial(無 letterbox / 雙色調等效方案)
broadsheetvoxflow present --style editorial(無 FT 鮭魚色調色盤)
blueprintvoxflow picstory --style chalkboard(最接近的網格/圖表感覺)
daisy-pastelvoxflow picstory --style sketchnote(無粉彩插圖等效方案)
showa-catalogvoxflow picstory --style vintage_newspaper(無城市流行等效方案)
photo-featurevoxflow picstory --style photo(photo-feature 需要每張卡片的 imageUrl——參閱 deck-schema)
atmosphericvoxflow present --style noir

務必告知使用者:「這是 Slice 的近似草稿。精確的 13 種主題渲染器位於 voxflow.studio/apps/slice。」

本機 Remotion 路線(僅限貢獻者)

如果您的 checkout 中沒有 video-present/src/compositions/PaperSlide,請跳過——這是私有程式碼;npm / skills 使用者不會有。

從貢獻者 checkout 根目錄開始:

cd video-present
node scripts/paper-slide-experiments.mjs

渲染子集:

cd video-present
PAPER_SLIDE_EXPERIMENT_FILTER=research-reading node scripts/paper-slide-experiments.mjs

驗證輸出:

ffprobe -v error -select_streams v:0 \
  -show_entries stream=width,height,duration \
  -of default=nw=1 out/paper-slide-experiments/research-reading.mp4

ffmpeg -y -hide_banner -loglevel error -ss 9 \
  -i out/paper-slide-experiments/research-reading.mp4 \
  -frames:v 1 -q:v 2 out/paper-slide-experiments/research-reading-body.jpg

預期:1080×1920,20-35 秒,無黑色閃爍,無標題溢出,圖形未裁切。

Deck 撰寫規則(適用於所有 13 個主題)

  • 標題卡片:鉤子、對比或承諾。避免像「介紹」這樣的抽象標籤。
  • 主體卡片:一個想法。標題通常少於 16 個中文字元或 7 個英文單詞。
  • 旁白:對話式,每張主體卡片 25-60 個中文字元。
  • 場景關鍵詞(適合時優先使用):problem-framing、evidence-board、customer-pain、timeline-review、owner-deadline、risk-guardrail、cashflow-ledger、team-alignment、before-after、learning-loop、decision-fork、growth-system。
  • 圖形 / 圖示關鍵詞(視覺強調):thinking、running、climbing、stuck、celebrating、briefcase、users、target、clock。

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

VoxFlowStudio/skills

Use when the user wants to turn text content into a set of polished, shareable visual CARD IMAGES or narrated card VIDEOS — knowledge cards, quote cards, 小红书图文, carousel cards, poster cards — rendered as HTML/CSS and exported via Playwright at ratios like 1:1 / 3:4 / 9:16; optionally produces a narrated MP4 video from those cards via `voxflow card render` (per-card TTS + FFmpeg static-image clips with optional subtitle bar / intro+outro cards / BGM mix). Triggers: card / 卡片 / 知识卡 / 文字卡片 / 金句卡 / 图文卡片 / 卡片生成 / make cards / card video / 卡片视频. For article → Slice-themed card VIDEO use voxflow:slice; for short videos / AI clips use voxflow:video; for podcasts use voxflow:podcast.

VoxFlowStudio/skills

Use when the user wants to read text aloud (TTS), search VoxFlow voices, sample AI stories, or set up VoxFlow install/auth/quota — the entry-point voice toolkit. For podcasts use voxflow:podcast; for short videos / AI clips use voxflow:video; for article-to-card reels (Slice) use voxflow:slice; for shareable card images or narrated card videos use voxflow:card; for transcription / dubbing / subtitle translation use voxflow:transcribe.

VoxFlowStudio/skills

Use when the user wants AI-generated short-form video — knowledge cards (picstory / 小红书 / TikTok / Reels), narrated explainers, presentations, AI clips, or slides — covering picstory, present, slides, explain, and image generation. For article-to-card reels (Slice — 13 themes including paper-slide), use voxflow:slice. For shareable HTML/CSS card images or narrated card MP4 videos (`voxflow card render`) use voxflow:card.

相關技能