/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"] {},否則字體不會生效,頁面會繼承瀏覽器的預設襯線字體(請參閱「組合結構陷阱」第 1 項)。 這項規則不可協商,也非選項,除非操作員明確對該任務說「換字體」。(操作員於 2026-06-24 設定;2026-06-26 升級為最高規則。)
這是操作員為 Minara 影片制定的標準作業流程,源自於 2026-05-26 ~ 27 製作 Strategy Studio 公開發布影片時遇到的問題。
⚠️ 路線優先:此為 HyperFrames 合成動作影片(行銷 / 發布 / 展示,每幀都以程式碼建置)的工作流程。 如果任務是產品指南 / 教學影片 - 操作員會自行錄製螢幕,您只需加入旁白與字幕並交付成品 - 請改用
minara-guide-video子技能,而非此技能。如何判斷:是否有現有的螢幕錄影 / 需求是否為「為此錄影加入旁白與字幕」?兩者在旁白、字幕和交付方式上有所不同。
⛔️ 啟動先決條件:載入 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→ 然後Read $BRAND_DIR/design.md(Minara v2 視覺系統) → 然後讀取固定的樣式規則 → 最後遵循下方的工作流程。 - 您必須讀取
$BRAND_DIR/design.md(必選;2026-06-24 的教訓):這是官方的 Minara v2 視覺系統,也是顏色值、字體比例、間距、圓角、卡片和佈局的真實來源。此技能的固定樣式規則是「影片氛圍層」;design.md 是「設計 token 的真實來源」- 兩者都必須在上下文中。⚠️ design.md 中列出的品牌漸層#EB53FF/#FF538E/#FF9A32不會在影片中使用(操作員於 2026-09-02 移除;請參閱下方的固定樣式規則)。僅取其黑白 / 灰色 token、語義顏色、字體比例和 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 橫幅。- 用法:將您需要的資產
cp到專案的assets/中,並在 HTML 中以<img src="assets/xxx.png">引用;HyperFrames 會在渲染時內聯本地圖片。當透過截圖自我驗證時,也要複製一份到/tmp/<test-dir>/assets/(只有這樣相對路徑才能解析)。
🎬 video-shotcraft 本機鏡頭庫載入規則(2026-07-21)
- 固定的本機庫路徑:
$VIDEO_WORKSPACE/video-shotcraft/。每次啟動/minara-video時,都需完整讀取其SKILL.md。不要僅根據卡片名稱或記憶來使用它。 - 翻譯卡片的固定方法位於下方「用戶端『成長 / 自寫』鏡頭課程 § B」中(卡片幀 × TEMPO,使用 clip-path 而非紙張顏色遮罩,PageCam2D 烘焙到關鍵影格中,zoom ≥ 1,focus 限制在畫布範圍內)。
- 其預設角色是參考庫;它不會自動切換技術棧:
minara-video仍以 HyperFrames 的 seek-safe 組合、逐場景預覽和渲染流程為核心;video-shotcraft提供鏡頭語言、攝影機移動配方、節奏結構、音效設計、經批准的示範和資產。當採用其 Remotion 實作之一時,請先將該方法轉換為確定性、可 seek 的 HyperFrames 時間軸。不要直接複製Date.now()、Math.random()或非 seek-safe 的動畫。 - 不要觸發獨立技能的模板提示:在
/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/。這是一個 shadcn 風格的複製貼上元件庫,用於 Remotion,不是 HyperFrames 外掛程式,也不是影片專案的執行時期依賴項。 - 按需載入;非每次啟動的必要部分:僅當故事板需要現成的 Remocn 動作 / 轉場 / UI 模擬,或操作員明確指定
Remocn/Remotion時,才完整讀取本機skills/remocn/SKILL.md。對於整部電影,則讀取skills/remocn/references/anatomy.md和對應的references/archetypes/<type>.md;不要一次載入所有原型。 - HyperFrames 仍為預設棧:在一般的
/minara-video工作中,僅將 Remocn 視為鏡頭 / 動作參考,並將所選元件的動作邏輯轉換為可 seek、確定性的 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.5s 的轉場仍須遵循此技能的規則。Remocn 文件中的
Length是元件本身動作結束的影格,而不是場景總持續時間;請根據逐秒腳本加入停頓時間。其預設的1280×720 @ 30fps也不會覆蓋目前 Minara 專案的輸出規格。 - 區分兩種 API 類型:動畫層是影格驅動的,並接受
speed;remocn-ui基本元件是時間軸狀態驅動的,沒有speedprop。兩者都必須可逐影格重現,且仍禁止使用Math.random()/Date.now()/ 間隔驅動動畫。
📸 snapcn 本機 Remotion 產品展示元件庫規則(2026-09-04)
- 固定的本機庫路徑:
$VIDEO_WORKSPACE/snapcn/(GitHubsnapcndev/snapcn,MIT)。與 Remocn 類似 - 是一個 shadcn 風格的複製貼上元件庫,用於 Remotion - 但專注於軟體產品展示鏡頭: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(包含「用途」/「避免用於」/「長度」/「氛圍」)挑選元件,並且僅開啟所選的references/components/<name>.md;不要全部讀取。對於影片結構,請參閱references/anatomy.md(鉤子 → 定位 → 產品展示 → 功能 → 證明 → 行動呼籲)和references/archetypes/。 - HyperFrames 仍為預設棧:在一般的
/minara-video工作中,僅將 snapcn 視為鏡頭 / 動作 / 時機參考,並將所選元件的動作邏輯轉換為可 seek、確定性的 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),而不是場景總持續時間;請根據逐秒腳本加入停頓時間。低於預算會被截斷;超出預算則會產生空白。 - 三個值得直接採用的規則(它們已經與此技能的規則方向一致):①
MOTION.md中的攝影機模型 - 鏡頭不是剪輯,而是一台虛擬攝影機在同一個世界中推拉 / 搖攝:向外移動快速 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.5s 的轉場仍須遵循此技能的規則。其預設的
1280×720 @ 30fps不會覆蓋目前 Minara 專案的輸出規格。 - 區分兩種 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、極簡、不複製產品(由操作員設定)
…
[此處內容因原始檔案截斷而截斷]
