Communitygithub.com

Slice スキル

長い記事・ノート・レポートを縦型 1080×1920 のカード動画(VoxFlow Slice)に変換します。13 種類のテーマと、ウェブアプリ・CLI・開発者向けローカルプレビューを提供します。

Slice スキル とは?

このスキルは、ブログ記事、研究ノート、レポートなどの長文コンテンツを、縦型 1080×1920 のカードベース動画「Slice」に変換するためのエージェントスキルです。13 種類のテーマ(紙面、編集刊、大字海报、Notion カード、粗野、玻璃夜、编辑・海报、财经刊、蓝晒图、雏菊、昭和目录、摄影刊、深夜刊)をサポートし、TTS でナレーション付きのページ送り動画を生成します。主に 3 つのルートを提供します:ウェブアプリ(voxflow.studio/apps/slice)での完全レンダリング、CLI `voxflow slice` によるテーマ対応の JSON デッキ生成、そして `voxflow slice stage` によるローカルプレビューと反復編集です。CLI ルートは高速でスクリプト化可能、ステージルートはホットリロード対応のブラウザプレビューを提供し、コストやネットワーク往復なしでデッキのテキスト・構造を調整できます。また、貢献者向けのローカル Remotion 実験スクリプトや、厳密な Slice テーマが必要ない場合の近似 CLI ツールも用意されています。デッキスキーマはレンダラーに依存せず、同じ JSON をどのテーマでもレンダリング可能で、テキスト書き出し(Markdown、JSON、プレーンテキスト)機能も内蔵されています。

対応✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/VoxFlowStudio/skills/tree/HEAD/skills/slice

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Slice スキル は何をしますか?

記事、ノート、論文、ざっくりしたトピックを縦型 1080×1920 のカード動画に変換します — TTS のリズムに合わせてページ送りされ、13 のビジュアルテーマで 抖音 / 小红书 / 知乎 / X / 公众号 / 飞书 / TikTok / LinkedIn / 雪球 / 微博 / 即刻 / B 站 / 播客 に対応。

paper-slide から slice に名称変更。 製品名は Slice(voxflow.studio/apps/slice)になりました。レガシースラッグは登録されていません。paper-slide は 13 のテーマ ID の 1 つとしてのみ存続しています。

ルートの選択

コンテキストルート備考
ユーザーがデッキ JSON のみを望む(レンダリングなし) — 高速、スクリプト化可能、パイプ可能CLI: voxflow slice <article.md> --theme <id>/api/slice/deck に直接アクセス(200 クォータ)。標準の 5~8 カードのデッキ JSON を返します。全 13 テーマ対応。mp4 は出力しません。--json をカスタムツールにパイプするか、ウェブアプリに貼り付けてレンダリングします。
ユーザーがデッキを反復編集している — レンダリング前にコピーや構造を複数ラウンドで調整CLI: voxflow slice stage <deck.json>ローカルホストのプレビューページを起動(クォータ消費なし)。デッキ JSON を保存するたびにホットリロードします。voxflow slice ... -o deck.json → voxflow slice stage deck.json → プロンプト調整 → スライス再実行 → プレビュー即時更新。ステージルート を参照。
ユーザーが完成した mp4 + カバーを望む(デフォルトの消費者フロー)ウェブアプリ: https://voxflow.studio/apps/slice正確な 6 つの Slice テーマをエンドツーエンドで実行する唯一の場所。無料枠で 9:16 mp4 + マルチアスペクトカバー(9:16/3:4/1:1)を提供。
ユーザーが CLI のみで似たような動画をオフラインで望むが、voxflow slice のデッキのみでは不十分voxflow present または voxflow picstory --style sketchnote近似のみ。 ビジュアルスキームが異なります。Slice の editorial-mag / notion-card / brutalist / glass-dark テーマは出力できません。CLI 近似ルート を参照。
ローカルチェックアウトに video-present/src/compositions/PaperSlide がある(VoxFlow 貢献者のみ)ローカル Remotion 実験スクリプトローカル Remotion ルート を参照。実験スクリプトは元の paper-slide 構成のみを実行します。他の 12 テーマはクラウドワーカー経由でのみレンダリングされます。
ユーザーが戦略やコピーのみを望むvoxflow slice でデッキ JSON を生成するか(スキーマに従って手動で)、どのレンダラーを使うべきかを伝える。デッキスキーマはレンダラーに依存しません。同じ JSON がどのテーマでもレンダリングされます。
ユーザーがオープンソース化 / パッケージ化を依頼プライベート API、トークン、生成音声、MP4 出力をスキルパッケージの外に保持。

ワークフロー

  1. プラットフォームに合ったテーマを選ぶ。 references/themes.md を一度読んでください — 13 のテーマ、それぞれのビジュアルの特徴、どのプラットフォーム / コンテンツタイプに合うかが一覧されています。paper-slide にデフォルトで頼らないでください。
  2. シナリオを選ぶ。 具体的なユースケースが一般的なものより優れています:論文要約、プロダクトアップデート、ミーティングのクロージング、キャリアアドバイス、創業者レッスン、マーケット解説、インシデントレビュー。
  3. タイトなデッキを書く。 4~6 カード:タイトル 1 つ + 本文 3~5 つ。ボディカードは 1 アイデアのみ。キャプションは 1 行に収まる短さに。
  4. 管理されたキーワードからビジュアルを選ぶ。 ウェブ検索やランタイムでのランダム画像生成をしない — 正規の figureKeyword を選びます。レンダラーはそれをローカルの手描きシーン / ポーズ / アイコンにマッピングします。(references/deck-schema.md 参照。)
  5. 選択したルートでレンダリング。 正確なテーマにはウェブアプリ、近似には CLI、貢献者にはローカルスクリプト。
  6. 成果物を確認。 完了報告前に、再生時間、寸法(1080×1920)、少なくとも 1 つのタイトルフレームと 1 つのボディフレームを確認します。
  7. パスを報告。 MP4 / ポスター / props の絶対パス。

デッキ JSON の作成、キーワード選択、レイアウトデバッグ時は references/deck-schema.md を読んでください。シードデッキについては references/example-decks.md を読んでください。テーマ選択やトレードオフの説明時は references/themes.md を読んでください。

ウェブアプリルート(デフォルト — 全ユーザーに有効)

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 デッキルート(voxflow slice)

レンダリングなしで構造化されたデッキ JSON を望むユーザー向け — 高速(1 往復、200 クォータ)、パイプ可能、テーマ認識型。ウェブアプリと同じ /api/slice/deck バックエンドにアクセスするため、デッキ形状は標準的です。

voxflow slice article.md                                  # デフォルトテーマ: paper-slide
voxflow slice article.md --theme editorial-mag -o deck.json
voxflow slice --text "long article ..." --theme bold-poster --json | jq .deck

このルートを使用するタイミング:

  • ユーザーがレンダリング前に AI のスライス品質を検査 / 反復したい場合。
  • ユーザーがデッキをウェブアプリの「デッキをインポート」フローに貼り付けて、別のテーマでレンダリングしたい場合。
  • 貢献者で、プライベートな video-present/src/compositions/PaperSlide Remotion 構成を持っており、デッキをローカルでレンダリングしたい場合 — voxflow slice ... --json -o props.json で props.json を実験スクリプトに入力。
  • 構造化された出力を必要とする自動化を構築している場合(例:deck.cards[*].caption + narration から Twitter / 即刻 にナレッジカードをテキスト公開)。

制限:

  • mp4 は出力しません。1080×1920 動画を生成するクラウドレンダラーはウェブアプリにあります。
  • TTS はありません。レンダリングなしでカードごとの音声が必要な場合は、voxflow slice を voxflow narrate と組み合わせてください。

ステージルート — voxflow slice stage(反復プレビュー)

クラウドレンダリングにコミットする 前 の、人間参加型の反復フェーズ向け。Stage はホットリロード付きのローカル HTTP サーバーを起動します — デッキ JSON を保存するたびにページが即座に更新されます。クォータ消費なし、ネットワーク往復なし。

voxflow slice deck.md -o deck.json     # 1. デッキを生成(200 クォータ)
voxflow slice stage deck.json          # 2. localhost プレビューを開く(無料)
                                       # 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     プレビューを 1 つのテーマに固定(13 の有効な ID のいずれか)。
  --no-open   ブラウザを自動起動しない(CI / SSH / エージェント環境向け)。

Stage を使用するタイミング:

  • ユーザーが複数ラウンドの編集ループ中 — コピーの微調整、カードの並び替え、テーマの A/B 比較 — そのたびに mp4 を開き直すのは高コストで摩擦が大きい。
  • ユーザーが個々のカードをテキスト優先プラットフォーム(X / Twitter / 即刻 / Threads / Mastodon / ブログコメント)にプレーンテキストで公開したい場合。Stage は各カードに「テキストをコピー」ボタン(タイトル + キャプション + ナレーション)を提供し、デッキレベルのツールバーには「JSON をコピー / .json をダウンロード / Markdown としてコピー」があり、Notion / ブログ / 飞书 に貼り付けられます。小红书 / 微博 / 公众号 のアイキャッチ画像 / カルーセル書き出しは、カードごとの静止画が利用可能になる将来のフェーズで実装予定。
  • AI 駆動ループで、エージェントが deck.json を再生成し、人間がブラウザでレビューする場合 — ページはエージェントがパスを再表示しなくても更新されます。

テキスト書き出しユーティリティ(フェーズ 1.4 テキストのみ)

Stage UI にはテキスト優先の書き出しコントロールが搭載されており、フルレンダリングのコストをかけずにカードをテキストのみのプラットフォームで再利用できます:

  • カードごとの「テキストをコピー」 — カード上の小さなボタンをクリック → クリップボードに {title}\n\n{caption (異なる場合)}\n\n{narration}(トリミング済み)がコピーされます。ツイート、即刻投稿、ブログスニペットに貼り付け可能。
  • デッキツールバー — 「JSON をコピー」 — 完全なデッキ JSON をクリップボードにコピー(カスタムツールへのパイプ、別のエージェントとの共有、スナップショット保存用)。
  • デッキツールバー — 「.json をダウンロード」 — デッキを <seriesTitle>.json として保存(ファイル名は自動サニタイズ、60 文字 + .json で制限)。
  • デッキツールバー — 「Markdown としてコピー」 — デッキ全体を Markdown としてフォーマット(H1 = seriesTitle、カードごとに H2、ナレーションは引用ブロック)。Notion / ブログエディター / 飞书ドキュメントに貼り付け可能。

フォーマッターは lib/stage-core/deck-format.js にあります(formatCardAsText、formatDeckAsMarkdown、suggestDeckFilename)。tests/deck-format.test.js でユニットテストされています。ソースは Function.prototype.toString() によって提供される HTML に文字列化されるため、ブラウザはテストがカバーする 同じ コードを実行します — 単一の真実源、二重メンテナンス不要。

画像 / MP4 カルーセル書き出し(小红书 / 微博 / 公众号 アイキャッチ用)はフェーズ 1.4 テキストのみには含まれません。これらは、カードごとの renderStill サムネイルが利用可能になる将来のフェーズで実装予定です(現時点では存在しないバックエンド Remotion エンドポイントが必要)。

Stage が ではない もの:

  • 完全な Remotion プレビューではありません。MVP ではデッキ構造(カード + JSON)を表示します。クラウドレンダリングされたテーマサムネイルは、renderStill 経由でフェーズ 1.3 で実装予定。
  • フルレンダリングのピクセルの代わりにはなりません — テーマはサーバーサイド構成です。Stage はデッキ テキスト をプレビューし、最終的な動画フレームはプレビューしません。

AI による編集ループ(実際の反復ワークフロー)

Stage は Cursor になろうとはしません — それは ビジュアルフィードバックのクローザー であり、ユーザーがすでに開いている任意の AI ツール(Claude Code、Cursor、ChatGPT など)にプロンプトを渡します。2 つのアフォーダンスが編集ループ全体をカバーします:

意図UX出力
カード全体の書き直し(「このカードを再生成、残りはそのまま」)カードにホバー → 角のボタン Edit with AIプロンプトモーダル:ファイルパス + cards[N] JSON スニペット + <あなたの指示> スロット
ローカルフレーズの書き直し(「このフレーズだけがおかしい」)カード内のテキストを選択 → フローティングボタン Edit selection with AI が表示プロンプトモーダル:ファイルパス + 選択された正確な部分文字列(引用符付き) + コンテキスト用の完全なカード JSON

ユーザーは指示を入力し(例:「12 文字に短縮、もっと直感的に」)、Copy prompt をクリックし、自身の AI に貼り付けます。AI はネイティブのファイル編集ツール(Claude Code の Edit、Cursor の Apply など)を使用してファイルを書き換えます。Stage の SSE ウォッチャーは約 150 ms 以内にプレビューをホットリロードします。満足するまでループ。

この設計で組み込みチャット / MCP サーバーではない理由:完全な設計根拠は #3330 を参照(ユニバーサルコピーペースト vs. Claude Code 専用 MCP、コスト vs. カバレッジのトレードオフ、将来の MCP アップグレードパスは使用状況テレメトリに依存)。

CLI 近似ルート(フル mp4 代替)

ユーザーが CLI のみで どうしても mp4 が必要な場合(ウェブアプリも貢献者 Remotion アクセスもない)、voxflow present または voxflow picstory にフォールバック — これらも同様の記事-to-動画の形状をカバーしますが、独自のビジュアルスキームを使用し、正確な 13 の Slice テーマではありません。

voxflow present --text "paste article or summary" --style editorial --output slice-approx.mp4
voxflow picstory --topic "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(レターボックス / デュアルトーン相当なし)
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 ルート(貢献者のみ)

video-present/src/compositions/PaperSlide がチェックアウトにない場合はスキップ — これはプライベートコードです。npm / skills ユーザーは持っていません。

貢献者チェックアウトルートから:

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 秒、黒画面フラッシュなし、キャプションあふれなし、フィギュアのクリッピングなし。

デッキ作成ルール(全 13 テーマに適用)

  • タイトルカード:フック、コントラスト、または約束。「はじめに」のような抽象的なラベルは避ける。
  • ボディカード:1 アイデアのみ。キャプションは通常、中国語 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、globe、chart、stack、arrows、checkmark、exclamation、question、quote、star、heart、book、bulb、gear、shield、rocket、sparkles、link、trash、edit、download、upload、search、filter、sort、plus、minus、close、menu、home、settings、user、users(重複可)。

デッキスキーマの注意点

  • 各カードは type(title、body のいずれか)と caption、narration を持つ。
  • figureKeyword はオプション。指定しない場合、レンダラーは空の背景またはコンテキストに応じたデフォルトを使用する。
  • seriesTitle はデッキ全体のタイトル(ファイル名や共有時に使用)。
  • カード数は 4~8 を推奨。

完全なスキーマの詳細は references/deck-schema.md を参照。

トラブルシューティング

  • CLI が「unknown command: slice」と表示する場合:voxflow が最新版であることを確認(npm install -g @voxflow/cli でインストール)。voxflow --version でバージョン確認。
  • 「Quota exceeded」エラー:ボディカード数を減らすか、voxflow slice stage を試す(クォータ消費なし)。
  • ステージプレビューポートが競合:--port 5181 などで明示的にポートを指定。
  • ウェブアプリでテーマが表示されない:ブラウザのキャッシュをクリアするか、シークレットウィンドウで開く。
  • デッキ JSON が無効:references/deck-schema.md のスキーマに従っているか確認。必須フィールドは seriesTitle、cards[](各カードは type、caption、narration を持つ)。

実装の詳細

  • デッキ生成 API エンドポイント:/api/slice/deck(旧 /api/paper-slide/slice)。
  • 200 回分のクォータがデフォルトで設定されている(ユーザー別)。
  • ステージルートはポート 5180 をデフォルト使用。
  • テーマ ID リスト:paper-slide、editorial-mag、bold-poster、notion-card、brutalist、glass-dark、editorial-stencil、broadsheet、blueprint、daisy-pastel、showa-catalog、photo-feature、atmospheric。
  • 音声選択:6 つのプロダクション音声(男主播、霸总男声、闲聊男声、小美、小心、小徐)。
  • クォータ消費なしの確認:voxflow slice stage は API 呼び出しを行わないため、クォータは消費されません。

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.

関連スキル