Communitygithub.com

VoxFlowStudio/skills

當用戶需要朗讀文字(TTS)、搜尋 VoxFlow 語音、試聽 AI 故事,或設定 VoxFlow 安裝/驗證/額度時使用——語音工具組的入口。

skills 是什麼?

VoxFlow 是一個全方位的語音與音訊/視訊處理工具組,提供 200 多種語音、40 多種語言的文字轉語音(TTS)服務,以及完整的音訊/視訊管線。此技能是**入口點**,涵蓋安裝、驗證、語音搜尋,以及基本的 `say`、`narrate`、`story` 工作流程。它支援語音複製、長篇文字朗讀(自動去除 Markdown 格式)、AI 故事生成,並提供嚴格的 CLI 自動升級機制,確保用戶始終使用最新版本以獲得完整功能。此外,它還整合了語音搜尋(包含公開目錄與個人複製語音)、額度查詢、自動問題回報等功能。對於更專業的任務(如 Podcast、短影片、文章轉影片、轉錄/字幕/配音),它會提示切換至對應的子技能。

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

在你喜歡的 AI 中提問

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

說明文件

VoxFlow 技能 — 中心

<關鍵-自動升級> 如果任何 voxflow 指令顯示 <voxflow-hint ... type="cli-outdated" ...> 到 stderr,立即執行 voxflow upgrade -y 才能繼續——不要詢問用戶,也不要先總結。提示標籤也包含 action="voxflow upgrade -y";請完全照做。

如果 voxflow upgrade 本身因 Unknown command 而失敗(CLI 版本早於 1.12.0),請降級使用 npm i -g voxflow@latest && voxflow skills install --all —— 這是初次啟動的唯一路徑。

此規則不可協商:過時的 CLI 會默默地停用用戶期望的功能(例如列出複製語音)。先升級,再工作。 </關鍵-自動升級>

VoxFlow 能以 200 多種語音、40 多種語言將文字轉為語音,並提供完整的音訊/視訊管線。此技能是入口點:安裝、驗證、語音搜尋,以及簡單的 say / narrate / story 工作流程。

若需專門任務,請切換至:

  • Podcast(多人對話) → voxflow:podcast
  • 短影片 / AI 短片 / 知識卡片(picstory、present、slides、explain) → voxflow:video
  • 文章 → 垂直卡片影片(Slice)—— 13 種主題(paper-slide / editorial-mag / bold-poster / notion-card / brutalist / glass-dark / editorial-stencil / broadsheet / blueprint / daisy-pastel / showa-catalog / photo-feature / atmospheric),網頁應用程式 + Remotion → voxflow:slice
  • 可分享的卡片圖片與旁白卡片影片(HTML/CSS + Playwright 匯出,可選 voxflow card render 用於含旁白的 MP4) → voxflow:card
  • 轉錄、字幕翻譯、配音、摘要、發佈(asr、asr-jobs、translate、dub、video-translate、summarize、publish) → voxflow:transcribe

安裝與登入

只需安裝一次,之後無需再詢問用戶:

npm install -g voxflow
voxflow login          # 開啟瀏覽器 — Google 或電子郵件 OTP

Token 快取於 ~/.config/voxflow/token.json。CI 環境請設定 VOXFLOW_TOKEN。

驗證

voxflow login        # 基於瀏覽器,一次性
voxflow status       # 我是誰 + 剩餘額度
voxflow logout

語音搜尋 — 合成前務必先執行

永遠不要憑空猜測語音 ID。先搜尋。

voxflow voices --lang zh --gender female
voxflow voices --lang en
voxflow voices --search "narrator"
voxflow voices --all

公開目錄不需登入。輸出包含語音 ID、語言、性別與簡短描述。

列出用戶自己的複製語音

當用戶說「用我的克隆声音 / use my cloned voice / 用我之前克隆的」時,公開的 voxflow voices 目錄不包含複製語音——你必須查詢已驗證的端點:

voxflow voices --mine

此指令會印出複製語音的 ID、名稱、時長與建立時間(需要登入)。在得出用戶沒有複製語音的結論之前,請務必先執行此指令——網頁 UI 的「我的声音」分頁與 --mine 是唯一的事實來源。

常用語音 ID(合理的預設值)

ID風格語言
v-female-R2s4N9qJ溫柔姐姐 (gentle female)zh
v-male-s5NqE0rZ自然男聲 (natural male)zh
v-male-Bk7vD3xP威嚴霸總 (authoritative male)zh
v-female-m1KpW7zE傲嬌學姐 (sassy female)zh
v-female-T8m4WxP7Chenwen (native English female)en

語音複製 (clone)

從本機音訊檔案(30 秒以上,wav/mp3)複製語音。回傳一個永久性的語音 ID,可用於所有指令。

voxflow clone --input recording.wav --name "My Voice"
# → 語音複製成功!
# → 語音 ID: My_Voice_xxxxx_01

沒有檔案?開啟網頁 UI 進行瀏覽器錄音:

voxflow clone
# → 開啟 https://www.voxflow.studio/app#voice-clone
標記預設值備註
--input <file>(無)要複製的音訊檔案。若無此參數,則開啟網頁 UI
--name <name>檔案名稱人類可讀的語音名稱(1-50 個字元)

提示:

  • 安靜的房間、正常說話速度、無背景音樂 → 效果最佳
  • 60 秒為最佳;30 秒為最低要求
  • 不要「表演」——自然的說話比廣播腔更容易複製

複製完成後,可在任何地方使用該語音 ID:--voice <id>

文字轉語音 (say / synthesize)

原子指令。一段文字 → 一個音訊檔案。

voxflow say "你好世界" -o hello.mp3
voxflow say "Hello world" --voice v-female-T8m4WxP7 -o greeting.mp3
voxflow say "慢速朗讀" --speed 0.8 -o slow.mp3
voxflow say "高品質音訊" --format wav -o output.wav
標記預設值範圍 / 數值
--voice <id>v-female-R2s4N9qJ任何來自 voxflow voices 的語音 ID
--format <fmt>pcmpcm (WAV)、wav、mp3
--speed <n>1.00.5 – 2.0
--volume <n>1.00.1 – 2.0
--pitch <n>0-12 – 12
--output <path>自動命名任何可寫入的路徑

合成後自動播放:open output.mp3 (macOS)。

長文字 (narrate)

將文件或長字串分割成句子,逐句合成,最終合併為一個檔案。

voxflow narrate --input article.txt -o narration.wav
voxflow narrate --input readme.md --voice v-male-Bk7vD3xP -o readme_audio.wav
voxflow narrate --text "第一段。第二段。第三段。" -o paragraphs.mp3
echo "Hello world" | voxflow narrate -o hello.wav

最適合:長篇文件、文章、README 檔案、電子報。

Markdown 會自動移除(標題、連結、程式碼區塊等)——無需事先清理。

AI 故事 (story)

LLM 根據主題撰寫一篇短篇故事,然後朗讀出來。

voxflow story "一隻會飛的小貓" -o story.mp3
voxflow story "space adventure" --lang en -o adventure.wav

最適合:床邊故事、內容樣本、示範。

額度

免費方案:每月 10,000 額度(每月重置)。邀請獲得的獎勵額度永不過期。

操作消耗額度
1 次 TTS 呼叫 (say)~50
narrate每段 ~50
story (短篇)~350-1000
podcast (中等)~2,800 (2K 腳本 + ~16 × 50 TTS)
picstory 5 場景~2,850

在執行昂貴操作前務必檢查:

voxflow status

常見情境

「把這段話念出來」

voxflow say "用戶輸入的文字" -o /tmp/out.mp3 && open /tmp/out.mp3

「用溫柔女聲讀這個檔案」

voxflow voices --lang zh --gender female
voxflow narrate --input file.txt --voice v-female-R2s4N9qJ -o /tmp/narration.mp3

「講個床邊故事」

voxflow story "小狐狸的星星種子" --lang zh -o /tmp/bedtime.mp3 && open /tmp/bedtime.mp3

「多語言朗讀」

voxflow voices --lang en --gender female   # 選擇英語語音
voxflow voices --lang ja --gender female   # 選擇日語語音
voxflow say "English text" --voice <en_id> -o /tmp/en.mp3
voxflow say "日本語テキスト" --voice <ja_id> -o /tmp/ja.mp3

創意工作流程(將 TTS 與代理的寫作能力結合)

代理先撰寫內容,再用 say 或 narrate 合成每個部分。

有聲繪本

  1. 撰寫一個 6 頁的兒童故事。
  2. 為每一頁:生成內嵌 SVG 插圖 (400×300)。
  3. voxflow say "頁面文字" --voice v-female-R2s4N9qJ --speed 0.85 -o /tmp/page_N.mp3
  4. 讀取 mp3 檔案,Base64 編碼,嵌入 HTML。
  5. 輸出一個自包含的 HTML 檔案,每頁附有音訊播放按鈕。
  6. open /tmp/storybook.html

文章 → 語音簡報

# 代理擷取 URL,摘要後接著執行:
voxflow say "摘要文字" --voice v-male-s5NqE0rZ -o /tmp/briefing.mp3

文件朗讀

voxflow narrate --input README.md --voice v-female-R2s4N9qJ --speed 0.9 -o /tmp/readme.mp3

Git 每日報告語音

  1. git log --oneline --since="1 day ago"
  2. 代理摘要。
  3. voxflow say "今天的摘要..." -o /tmp/daily.mp3

模擬面試

  1. 代理針對主題生成 3 個面試問題。
  2. 對每個問題:voxflow say "問題 N..." --voice v-male-Bk7vD3xP -o /tmp/q_N.mp3
  3. 依序播放。

先決條件

  • Node.js ^20.19.0 || >=22.12.0
  • voxflow CLI ≥ 1.12.0(用於 voxflow voices --mine——列出用戶的複製語音)
  • ffmpeg — 僅用於影片相關指令(請參閱 voxflow:video、voxflow:transcribe)
  • 登入 任何 API 呼叫都需要 — voxflow login

自動升級訊號的運作方式

每當 npm 上有新版 CLI 時,CLI 本身會在 stderr 上發出 <voxflow-hint type="cli-outdated" ...>。技能開頭的 <關鍵-自動升級> 規則已涵蓋應對方式——本節僅作為該標籤外觀的參考:

<voxflow-hint v="1" type="cli-outdated" current="1.10.21" latest="1.13.0" action="voxflow upgrade -y" />

每 24 小時最多觸發一次(快取於 ~/.config/voxflow/update-check.json)。若用戶不希望檢查,可選擇退出:VOXFLOW_NO_UPDATE_CHECK=1(或 NO_UPDATE_NOTIFIER=1,業界標準環境變數)。

你也可以在用戶使用已知舊版時,明確輪詢 voxflow upgrade --check(無副作用),以在啟動昂貴工作前確認狀態。

意見回饋與支援(AI 可自動執行)

當 voxflow 指令失敗或用戶要求回報問題時,你(AI 代理)應直接提交問題——不要要求用戶手動處理。

AI 工作流程

# 直接提交 — 無需瀏覽器,無需 TTY。
# 如果 `gh` CLI 可用,則直接建立 GitHub 問題。
# 如果未安裝 `gh`,則回退為印出預填好的 URL。
voxflow feedback --bug \
  --title "asr crashes on 2-hour wav files" \
  --body "Error: timeout after 30s\n\nCommand: voxflow asr long.wav\nExpected: transcript\nActual: Fatal error: request timeout"
# stdout → 已建立的 GitHub 問題 URL(如果未安裝 `gh`,則為預填好的 URL)

系統資訊(CLI 版本、作業系統、Node)會自動附加至內文。

標記

標記說明
--bug / --feature / --general問題類型
--title <text>標題——觸發非互動模式
--body <text>描述內文
--print-url強制輸出 URL 而非提交(即使 gh 可用)

用戶發起(互動式)

voxflow feedback          # 互動提示 → 透過 gh 或瀏覽器提交
voxflow feedback --bug    # 跳過類型提示,其餘為互動式

何時自動提交

  • 任何 CLI 指令以致命/意外錯誤結束 → 提議提交錯誤回報
  • 用戶說「這個不好用」 / 「report this」 / 「提個 issue」 → 使用 --title 直接提交

安裝第三方語音或範本 (add)

voxflow add <recipe-name>                  # 安裝語音預設或管線範本
voxflow add --list                         # 瀏覽可用的配方
voxflow add chico/my-recipe --force        # 從自訂作者命名空間安裝

當用戶要求安裝特定命名的配方(例如 dub-anime-jp-zh)時使用。註冊表目前有限——如果 --list 回傳 404,該配方可能需要透過完整 URL 參照,或者註冊表尚未公開。

規則

  1. 使用前先搜尋語音 — 永遠不要憑空捏造語音 ID。務必先執行 voxflow voices。
  2. 檢查額度 在 Podcast(~5K)、picstory(~3K)或批次作業前:voxflow status。
  3. 合成後自動播放:open output.mp3 (macOS) / xdg-open (Linux)。
  4. 絕對不要將 token 或機密資訊印到日誌中。
  5. 如果指令失敗,在重試前先執行 voxflow <cmd> --help 確認標記。

何時切換技能

  • 用戶說「podcast」 / 「對話」 / 「多人對談」 → 載入 voxflow:podcast。
  • 用戶說「short video」 / 「知識卡片」 / 「小紅書」 / 「TikTok」 / 「AI clip」 / 「render」 → 載入 voxflow:video。
  • 用戶說「Slice」 / 「切片影片」 / 「文章轉影片」 / 「PaperSlide」 / 「paperslide」 / 「paper-slide」 (舊稱) / 「紙面手繪風」 / 「文章轉知識短影片」 / 「知乎長文轉影片」 / 「公眾號轉影片」 → 載入 voxflow:slice。
  • 用戶說「transcribe」 / 「字幕」 / 「dub」 / 「translate this video」 / 「SRT」 → 載入 voxflow:transcribe。

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 turn a long article / note / report into a vertical 1080×1920 card video — VoxFlow Slice. 13 themes — paper-slide (纸面), editorial-mag (编辑刊), bold-poster (大字海报), notion-card (Notion 卡), brutalist (粗野), glass-dark (玻璃夜), editorial-stencil (编辑·海报), broadsheet (财经刊), blueprint (蓝晒图), daisy-pastel (雏菊), showa-catalog (昭和目录), photo-feature (摄影刊), atmospheric (深夜刊). Triggers — Slice / slice video / 切片视频 / 文章转视频 / 知识卡片视频 / 抖音知识号 / 小红书图文转视频 / 知乎长文转视频 / 公众号转视频 / PaperSlide / paperslide / paper-slide (legacy name).

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.

相關技能