/minara-video
🅖 フォントルール: MinaraのすべてのビデオはテキストにGeistを使用
タイトル/本文/数字/ボタン/テーブル - すべて
font-family: 'Geist', system-ui, -apple-system, sans-serifを使用します。 Inter、セリフ体、およびセリフにフォールバックするシステムデフォルトフォントは使用禁止。 読み込み:@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&display=swap'); 数字はfont-variant-numeric: tabular-numsとペアにします。 CSSセレクター#root, [data-composition-id="root"] {}の両方を記述しないと、font-familyが適用されず、ページがブラウザのデフォルトのセリフフォントを継承します(「コンポジション構造の落とし穴」項目1参照)。 オペレーターがそのジョブについて明示的に「换字体」(フォント変更)と言わない限り、交渉不可であり、オプションでもありません。(2026-06-24にオペレーターが設定; 2026-06-26にトップルールに昇格。)
これは、2026-05-26〜27に行われたStrategy Studioパブリックリリースビデオの制作中に遭遇した問題から抽出された、Minaraビデオに関するオペレーターの標準作業手順書です。
⚠️ 最初にルート確認: これはHyperFramesコンポジットモーションビデオ(マーケティング/ローンチ/デモ、すべてのフレームがコードで構築される)のワークフローです。 タスクがプロダクトガイド/チュートリアルビデオの場合 - オペレーター自身が画面を録画し、あなたはナレーション+キャプションを追加して納品するだけです - このスキルではなく、
minara-guide-videoサブスキルを使用してください。見分け方: 既存の画面録画があるか/依頼が「この録画にナレーションとキャプションを追加して」であるか。この2つは、音声、キャプション、納品方法が異なります。
⛔️ 起動前提条件: HyperFrames + video-shotcraft の読み込み(必須)
このスキルが開始したらすぐに、Skillツールを使用して hyperframes スキルを呼び出し、そのすべてのコンポジションルールをコンテキストに入れてから、ローカルの video-shotcraft ショットライブラリエントリポイントを全文読み込み、その後でのみ以下のワークフローを続行します。
- これはハードな前提条件であり、オプションではありません -
minara-videoはより厳格なワークフローラッパーにすぎません; 実際のコンポジション構文/タイムライン/レンダリングルールはすべてhyperframesにあります。それをロードせずにシーンHTMLを記述すると、既知の問題(タイムラインの一時停止、window.__timelinesの登録、Math.random()/repeat:-1なしなど)が発生します。 - このセッションでhyperframesが既に使用されていても、
/minara-videoを開始するときに再度呼び出して、ルールを現在のコンテキストに配置します。 - ロード順序:
Skill(hyperframes)を最初に → 次に$VIDEO_WORKSPACE/video-shotcraft/SKILL.mdを全文読む → 次に$BRAND_DIR/design.md(Minara v2 ビジュアルシステム) を読む → 次に固定スタイルルールを読む → その後で以下のワークフローに従います。 $BRAND_DIR/design.mdを必ず読むこと(必須; 2026-06-24の教訓): これは公式のMinara v2ビジュアルシステムであり、色の値、タイプスケール、スペーシング、コーナー半径、カード、レイアウトの信頼できる情報源です。このスキルの固定スタイルルールは「ビデオのムードレイヤー」であり、design.mdは「デザイントークンの信頼できる情報源」です - 両方ともコンテキスト内にある必要があります。⚠️ design.mdにリストされているブランドグラデーション#EB53FF/#FF538E/#FF9A32はビデオでは使用されません(2026-09-02にオペレーターによって削除されました; 以下の固定スタイルルールを参照)。その白/黒/グレートークン、セマンティックカラー、タイポグラフィスケール、4ptスペーシングのみを取得します。- デフォルトでブランドアセットフォルダ
$BRAND_DIR/logo/を読み込む(2026-06-24にオペレーターが設定): ロゴ/アバター/ワードマークが必要な場合、最初にここにある公式アセットを使用してください; 代わりに独自のSVGを描かないでください。 現在の在庫(最初にlsを実行して確認; 変更される可能性があります):Minara Avatar.png- Minara白黒ピクセルアバター(眼鏡の少女、ハーフトーン); エンディングの丸いロゴのデフォルト。Minara Logo.png- Minaraプライマリロゴマーク。MInara Text Logo Light.png/MInara Text Logo Light Dark.png- テキストワードマーク(ライト/ライトアンドダークバージョン)。Minara Avatar Japan.png- 日本市場向けアバターバリアント。128_128.png- 小さな正方形アイコン。minara X banner.jpeg- Xバナー。- 使用方法: 必要なアセットをプロジェクトの
assets/にcpし、HTML内で<img src="assets/xxx.png">として参照します; HyperFramesはレンダリング時にローカル画像をインライン化します。スクリーンショットで自己検証する場合は、コピーを/tmp/<test-dir>/assets/にもcpします(相対パスはそのようにのみ解決されます)。
🎬 video-shotcraft ローカルショットライブラリ読み込みルール(2026-07-21)
- 固定ローカルライブラリパス:
$VIDEO_WORKSPACE/video-shotcraft/。/minara-videoが開始するたびに、そのSKILL.mdを全文読み込みます。カード名やメモリのみに基づいて使用しないでください。 - カードを翻訳する固定メソッド は、以下の「クライアントの「成長/自己記述型」ショットの教訓 § B」にあります(カードフレーム×TEMPO、ペーパーカラーマスクの代わりにclip-path、PageCam2Dをキーフレームに組み込み、ズーム≥1、フォーカスをキャンバスにクランプ)。
- デフォルトの役割は参照ライブラリです; 技術スタックを自動的に切り替えません:
minara-videoは依然としてHyperFramesのシークセーフコンポジション、シーンごとのプレビュー、レンダリングフローを中心としています;video-shotcraftはショット言語、カメラ移動レシピ、ペーシング構造、サウンドデザイン、承認済みデモ、アセットを提供します。そのRemotion実装の1つを採用する場合は、まずそのメソッドを決定論的でシーク可能なHyperFramesタイムラインに翻訳します。Date.now()、Math.random()、またはシークセーフでないアニメーションを直接コピーしないでください。 - スタンドアロンスキルのテンプレートプロンプトをトリガーしないでください: このライブラリを
/minara-video内で読み込む場合、Ink Pressを使用するかどうかを毎回尋ねず、そのためにロックされたMinaraワークフローを中断しないでください。オペレーターが明示的にInk PressまたはRemotionと命名した場合、またはそのテンプレートを複製するように依頼した場合のみ、template/TEMPLATE.mdを全文読み込み、テンプレートルートに切り替えてください。 - 使用するショットカードの信頼できる情報源を読み込む: ショットカードを使用することに決めたら、
references/shots/<card-name>.mdと対応するdemos/<card-name>/実装ソースを全文読み込みます; 映画全体の構造が必要な場合はreferences/sequences/を、サウンドが必要な場合はreferences/sound-design.mdとassets/audio/ATTRIBUTION.mdを読み込みます。106枚すべてのカードを一度にコンテキストにロードしないでください。 - 必要なアセットのみをコピーする:
assets/lib/、assets/audio/、またはdemos/から現在のビデオプロジェクトにコピーします; プロジェクトが実行時にこのライブラリの相対パスに依存しないようにします。オーディオを使用する場合は、ライセンス表示を保持して確認します。
🧰 Remocn ローカルRemotionコンポーネントライブラリルール(2026-08-13)
- 固定ローカルライブラリパス:
$VIDEO_WORKSPACE/remocn/。これはRemotion用のshadcnスタイルのコピー&ペーストコンポーネントライブラリであり、HyperFramesプラグインでもビデオプロジェクトのランタイム依存関係でもありません。 - オンデマンドで読み込む; すべての起動の一部ではない: ストーリーボードで既製のRemocnモーション/トランジション/UIシミュレーションが必要な場合、またはオペレーターが明示的に
Remocn/Remotionと命名した場合のみ、ローカルのskills/remocn/SKILL.mdを全文読み込みます。長編映画の場合は、次にskills/remocn/references/anatomy.mdと対応するreferences/archetypes/<type>.mdを読み込みます; すべてのアーキタイプを一度に読み込まないでください。 - HyperFramesはデフォルトのスタックのまま: 通常の
/minara-videoジョブでは、Remocnをショット/モーションの参照としてのみ扱い、選択したコンポーネントのモーションロジックをシーク可能で決定論的なHyperFrames GSAP/DOMタイムラインに翻訳します。React/Remotion TSXをシーンHTMLに直接配置せず、既製のコンポーネントが存在するという理由だけでスタックを切り替えないでください。 - Remotionが明示的に選択された場合のみ直接使用: 既存のRemotionプロジェクトで、
components.jsonがない場合は、最初にnpx shadcn@latest initを実行します; 次に、ストーリーボードが選択したコンポーネントのみをインストールします:npx shadcn@latest add @remocn/<name>。shadcnは依存関係を再帰的に解決します; コードが現在のプロジェクトにコピーされた後、コードを変更します。すべてをインストールせず、最終的な映画がローカルのRemocnリポジトリパスを参照しないようにします。 - コンポーネントパラメータはライブドキュメントに従う: 最初に
https://remocn.dev/llms-components.txtを読んでフィルタリングし、次にテーブルが指す特定の.../<component>.mdページを読みます; props、デフォルト、期間を推測しないでください。実装を調査するには、ローカルライブラリのregistry/ソースとcontent/docs/に戻ります。 - Minaraルールに適応する; デフォルトの外観をコピーしない: Remocnのショット構造、モーション、タイミングは再利用できますが、フォントはGeistに変更する必要があり、色、タイプサイズ、情報密度、シグネチャイージング、および≤0.5秒のトランジションはこのスキルのルールに従います。Remocnドキュメントの
Lengthは、コンポーネント自身のアクションが終了するフレームであり、シーン全体の期間ではありません; 秒単位のスクリプトに従ってホールド時間を追加します。そのデフォルトの1280×720 @ 30fpsも、現在のMinaraプロジェクトの出力仕様をオーバーライドしません。 - 2つのAPIタイプを区別する: アニメーションティアはフレーム駆動で
speedを受け入れます;remocn-uiプリミティブはタイムライン状態駆動であり、speedプロップはありません。どちらもフレームごとに再現可能である必要があり、Math.random()/Date.now()/ インターバル駆動アニメーションは依然として禁止されています。
📸 snapcn ローカルRemotionプロダクトデモコンポーネントライブラリルール(2026-09-04)
- 固定ローカルライブラリパス:
$VIDEO_WORKSPACE/snapcn/(GitHubsnapcndev/snapcn、MIT)。Remocnと同じ種類の、Remotion用のshadcnスタイルのコピー&ペーストコンポーネントライブラリですが、ソフトウェアプロダクトデモショットに焦点を当てています: AIチャットフロー、プロンプト入力、端末、デバイスフレーム、キャプション。HyperFramesプラグインではなく、ビデオプロジェクトのランタイム依存関係でもありません。 - Remocnとの役割分担: Remocnは一般的なモーション/トランジション/アーキタイプに傾いています; snapcnは「ショットにプロダクトUIを配置する」ことに傾いています。MinaraはAIトレーディングコパイロットであるため、snapcnのAIチャット入力グループ(
search-typing/prompt-zoom/answer-stream/prompt-send/answer-highlight/agent-steps)およびスクリーン&デバイスグループ(phone-frame/laptop-frame/terminal-simulator/screen-recording/cursor-track)が推奨される参照です。「ストラテジーをプロンプト」、Copilot回答、またはAutopilot実行ステップなどのシーンでは、最初にここを確認してください。 - オンデマンドで読み込む; すべての起動の一部ではない: ストーリーボードで上記のプロダクトデモショットが必要な場合、またはオペレーターが明示的に
snapcn/Remotionと命名した場合のみ、ローカルのskills/snapcn/SKILL.mdを読み込みます。skills/snapcn/references/components/index.mdのルーティングテーブル(Use for / Avoid for / Length / Vibe付き)を介してコンポーネントを選択し、選択したreferences/components/<name>.mdのみを開きます; すべてを読まないでください。映画構造については、references/anatomy.md(フック → ポジショニング → プロダクトの披露 → 機能 → 証明 → CTA)およびreferences/archetypes/を参照してください。 - HyperFramesはデフォルトのスタックのまま: 通常の
/minara-videoジョブでは、snapcnをショット/モーション/タイミングの参照としてのみ扱い、選択したコンポーネントのモーションロジックをシーク可能で決定論的なHyperFrames GSAP/DOMタイムラインに翻訳します; 実装の詳細についてはregistry/snap-cn/<name>/ソースを参照してください。React/Remotion TSXをシーンHTMLに直接配置せず、既製のコンポーネントが存在するという理由だけでスタックを切り替えないでください。 - Remotionが明示的に選択された場合のみ直接使用:
npx shadcn@latest add @snapcn/<name>(@snapcnは既にshadcnレジストリディレクトリにあるため、registries設定は不要です)。Remotionプロジェクトには最初にcomponents.jsonが必要であり、@/エイリアスはtsconfig.jsonとremotion.config.tsの両方で設定する必要があります - Remotionバンドラーはtsconfigパスを読み取りません。ストーリーボードが選択したコンポーネントのみをインストールします; すべてをインストールせず、最終的な映画がローカルのsnapcnリポジトリパスを参照しないようにします。 - コンポーネントパラメータはドキュメントに従う: ライブドキュメントは
https://snapcn.dev/llms.txt(フルバージョンはllms-full.txt)にあります; props/デフォルト/期間を推測しないでください。Lengthはコンポーネント自身のアクションの自然なフレーム長(例:answer-stream150f、search-typing420f)であり、シーン全体の期間ではありません; 秒単位のスクリプトに従ってホールドを追加します。予算未満は切り捨てられ、超過は無音時間になります。 - 直接採用する価値のある3つのルール(これらはすでにこのスキルのルールと同じ方向を指しています): ①
MOTION.mdのカメラモデル - ショットはカットではなく、同じ世界をドリー/クレーン移動する1つの仮想カメラです: アウトバウンド高速移動8-14f + 着地スプリングセトル10-16f + テキストホールド30-45f、このスキルの「カメラプッシュインフォロー」レシピと同じ起源; ②skills/snapcn/references/design.mdのAIスロップ防止デフォルト - 装飾的な文字間隔なし、すべて大文字なし、グラデーションテキストなし、グローシャドウなし、2026-09-02のグラデーション削除と一致; ③ ベースラインをピボットとしてテキストをスケーリング +text-rendering: geometricPrecision、これによりジッターが0.284pxから0.014pxに削減されました(motion-qualityルール); 大きなテキストのスケーリングアニメーションに使用します。 - Minaraルールに適応する; デフォルトの外観をコピーしない: フォントはGeistに変更する必要があります; 色、タイプサイズ(電話で読み取り可能な大きなUI)、情報密度、シグネチャの弾力性のあるイージング、および≤0.5秒のトランジションは、このスキルのルールに従います。そのデフォルトの
1280×720 @ 30fpsは、現在のMinaraプロジェクトの出力仕様をオーバーライドしません。 - 2つのAPIタイプを区別する:
snapcnアニメーションティアはフレーム駆動でspeedを持ちます;snap-cn-uiプリミティブ(input/caret)はタイムライン状態駆動であり、speedはありません。どちらもフレームごとに再現可能である必要があります; カーソルの点滅はMath.floor(frame/15) % 2を使用し、ターミナルスクロールはイージングではなくステップを使用し、Math.random()/Date.now()/ インターバルは依然として禁止されています。
🎵 すべての音楽と効果音は /minara-music を通す(2026-10-14)
秒単位のスクリプトが確認された後、minara-music スキルを使用して、各セクションのムードと画面上のアクションを cues.json に記述します。最初にオペレーターにキュ―シートを表示します; 確認後、BGM + SFXをローカルでレンダリングします(ナレーションがある場合は、ダックされたバージョンも出力します)。気まぐれでウェブから音楽をダウンロードしないでください。
📱 UIシーンルール - 大規模UI、ミニマル、プロダクトをコピーしない(オペレーター設定)
…[翻訳のため省略]
