Communitygithub.com

svemyh/launch-video

從一篇 X 貼文(網址或文字)與品牌網站(或品牌設定檔)自動生成 25–40 秒的 1080p60 暗色調產品發表影片,內建 Remotion 模板與自動配樂。

launch-video 是什麼?

這是一套自包含的 Remotion 技能,能將一篇 X 貼文(網址或文字)和一個品牌的網站(或已保存的 `brand.json` 設定檔)轉換為 25–40 秒、1920×1080、60 fps 的 H.264 產品發表影片,並且包含音軌。所有創意與佈局參數都集中在兩個小 JSON 檔案(`brand.json` 和 `launch.json`)中,編譯、畫面佈置、配樂合成以及 Remotion 渲染流程都是確定性的。 技能支援多平台(Claude Code、Cursor、Codex 等),腳本使用 Bun 執行,並依賴 ffmpeg/ffprobe 與 ImageMagick 進行編碼與影像處理。主要工作流程包括:讀取 X 貼文(透過 fxtwitter 公開端點,無需登入或 API 金鑰)、引導品牌設定檔(含螢幕截圖、標誌、調色盤等)、撰寫 `launch.json` 定義節奏(beats)、渲染半草稿進行視覺檢查,最後輸出全尺寸 1080p60 影片。各步驟會產出蜂巢六角形開場、品牌鎖定標誌、產品功能節拍搭配生態系六角磚、大字報卡片、CTA 按鈕點擊動畫、蜂巢爆破轉場、打字機效果網域結尾,以及自動對拍配樂,非常適合將功能介紹串轉換為產品發表短片或品牌宣傳影片。

相容平台✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/svemyh/public-skills/tree/HEAD/launch-video

在你喜歡的 AI 中提問

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

說明文件

Launch Video(發表影片)

將一篇 X 貼文(網址或文字)與品牌的網站(或已保存的 brand.json 設定檔)轉換為 25–40 秒的 1920×1080 60 fps H.264 規格影片(含音軌)。所有創意決策都集中在兩個小 JSON 檔案(brand.json 與 launch.json)中;編譯、畫面佈置、配樂合成與 Remotion 渲染均為確定性流程。

前置需求

  • Bun(bun >= 1.1)
  • 系統 PATH 上需有 ffmpeg 與 ffprobe(用於 H.264/AAC 編碼、 loudnorm 音量正規化與接觸表檢查)
  • ImageMagick(建議在 PATH 上提供 magick,用於 WebP 轉換、透明背景修剪與視窗裁切)

以下 <SKILL_DIR> 指的是包含此 SKILL.md 的目錄(例如 ~/.claude/skills/launch-video 或 ~/.agents/skills/launch-video)。

端到端工作流程

1. 讀取 X 貼文(如有提供網址)

bun <SKILL_DIR>/scripts/post.ts "https://x.com/<handle>/status/<id>"

透過公開的 fxtwitter 端點取得貼文文字、作者、統計數據以及附加媒體(無需登入或 API 金鑰)。

2. 建立或載入品牌設定檔(brand.json)

如果您已經有整理好的 brand.json,可以直接重複使用。若指定的是線上網站(例如 https://fomo.family 或 https://acme.dev),請先建立品牌資料夾:

bun <SKILL_DIR>/scripts/bootstrap.ts "https://fomo.family" --out ./work/brand

然後手動視覺化整理 ./work/brand/brand.json(請勿跳過此步驟):

  1. 標誌(mark):檢查 inline-*.svg、favicon.svg 與 mark.png。場景背景為深色(#000000 或網站本身的暗色背景如 #060510),因此 mark 必須是白色/淺色且帶透明背景(PNG32 或 SVG)。如果網站的圖示位於不透明深色方塊上,請用 ImageMagick 將淺色標誌提取到透明背景上(magick raw.png -colorspace gray -level 6%,92% alpha.png && magick -size WxH xc:white alpha.png -compose CopyOpacity -composite -trim +repage PNG32:mark-white.png)並檢查預覽樣色。
  2. 螢幕截圖(screens):檢視 screens/ 中的所有下載圖片(或使用無頭 Playwright 以 2x DPI 捕捉產品相關頁面)。只保留真實產品的 UI 截圖(4–8 張),刪除純裝飾背景紋理,並為每張截圖撰寫準確的 description。如果桌面截圖有外側桌布邊緣,請加入 crop: {x, y, w, h}。透明 PNG(如浮空手機、卡片、通知)會自動被裁切並以無邊框方式呈現。
  3. 合作夥伴/生態系標誌(logos):針對節奏中提到的平台、鏈、模型或工具,加入清晰的 SVG/PNG 圖示(例如 logos/x.svg、logos/apple.svg、logos/slack.svg 等)。在深色單色點陣圖示上設定 "fill": "#F2F2F2",使其在六角磚上更醒目。
  4. 調色盤與 CTA:確認 palette.bg、palette.fg、palette.accent、mosaicColors(6–10 種品牌主色 + 中性石板色,避免紫色漸層)、website(純網域,例如 "fomo.family")以及 cta(big、title、body、button)。

3. 撰寫 launch.json

{
  "brand": "./brand/brand.json",
  "open": { "tagline": "Where traders become legends." },
  "beats": [
    { "id": "spot", "headline": "See it on X, trade it.", "screen": "desktop-terminal", "hexes": ["x", "solana"] },
    { "id": "social", "headline": "Follow what top traders buy.", "screen": "social-feed" },
    { "id": "alerts", "headline": "Real-time alerts before it moves.", "screen": "live-alerts" },
    { "id": "sync", "headline": "Phone to desktop, in sync.", "screen": "desktop-and-phone" },
    { "id": "fund", "headline": "Fund instantly with Apple Pay.", "screen": "apple-pay", "hexes": ["apple", "solana", "base"], "hexLayout": "top" }
  ],
  "cta": {},
  "outro": { "seconds": 6.5 },
  "music": "profile"
}

關於精準節拍的規則(詳見 references/format-guide.md):

  • 標語(open.tagline):5 個單詞以內,描述產品的本質。
  • 4 到 6 個節拍:第一個節拍以 X 貼文的鉤子為開端,接著依序展示具體產品頁面。每個標題維持 2–5 個單詞並以句號結尾,以便在 64 px 字型下保持單行顯示。
  • 螢幕精準對應:每個標題都必須與其 screen 所顯示的內容完全一致。切勿將標題與不相關的截圖配對。
  • 六角磚佈局(hexLayout):"auto"(預設值:3 個標誌整齊堆疊在 left;1–2 個則放在 sides)、"top"(在 y = 340 的擷取畫面上方顯示水平列)或 "sides"。
  • 音檔(music):"profile" 會使用 brand.json 中的 music 檔案(若有設定),否則會合成一段以 92 bpm 為基礎的極簡電子背景配樂,並正規化至 -15 LUFS;"synth" 則一律合成;"none" 會產生無聲影片;或傳入自訂 .m4a/.mp3/.wav 的路徑。

4. 渲染快速草稿、檢查影格,再渲染完整 1080p60 版本

# 半尺寸草稿,用於視覺驗證(約 20–40 秒)
bun <SKILL_DIR>/scripts/render.ts ./work/launch.json --out ./work/draft.mp4 --scale 0.5
ffmpeg -v error -y -i ./work/draft.mp4 -vf "fps=1,scale=480:-1,tile=6x6:padding=2:color=gray" -frames:v 1 ./work/draft-sheet.png

檢查 ./work/draft-sheet.png 以及關鍵節點的完整影格:

  • 影格 0 應顯示邊緣到邊緣的蜂巢六角形馬賽克;鎖定標誌在深色背景上清晰可見。
  • 每個標題都應在寬邊距內以單行顯示,並與其截圖內容相符。
  • 透明產品渲染應乾淨浮現,無灰色邊框;六角磚與截圖之間保有足夠的呼吸空間。
  • CTA 游標應準確落在點擊影格中的按鈕上。
  • 結尾應從完整的蜂巢牆爆破而出,並乾淨地保留打字機效果網域。

在 brand.json / launch.json 中修正任何文案、裁切或佈局問題,然後以完整 1920×1080 60 fps 品質渲染:

bun <SKILL_DIR>/scripts/render.ts ./work/launch.json --out ./work/launch.mp4
ffprobe -v error -show_entries format=duration:stream=codec_name,width,height,r_frame_rate -of default=noprint_wrappers=1 ./work/launch.mp4

回報 ./work/launch.mp4 的完整絕對路徑以及節奏表。

相關技能