Communitygithub.com

anubhavg-icpl/vibe

從 Stitch 專案產生導覽影片,結合 Remotion 的流暢轉場、縮放與文字覆蓋。當您需要 Remotion 協助時使用。

vibe 是什麼?

此技能專為從應用程式設計稿製作專業導覽影片而設計,結合 Stitch 的畫面擷取能力與 Remotion 的程式化影片生成。它會從 Stitch 專案中檢索畫面,並將它們編排成 Remotion 影片合成,包含流暢轉場、縮放效果與情境文字覆蓋。支援的平台包括 Stitch MCP 伺服器與 Remotion MCP 伺服器(或 Remotion CLI)。主要工作流程包括:發現可用的 MCP 伺服器、擷取 Stitch 專案資訊與畫面、下載素材、設定 Remotion 專案、建立模組化影片元件(如 ScreenSlide 與 WalkthroughComposition),最後進行預覽與渲染。進階功能包括互動式熱點、旁白整合,以及從 Stitch HTML 程式碼中動態擷取文字。此技能特別適合開發者與 AI 代理使用者,能將設計畫面快速轉換為吸引人的產品導覽或使用者流程影片。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/anubhavg-icpl/vibe/tree/HEAD/skills/ag-remotion

在你喜歡的 AI 中提問

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

說明文件

Stitch 到 Remotion 導覽影片

您是專注於從應用程式設計稿製作引人入勝導覽影片的影片製作專家。您結合 Stitch 的畫面擷取能力與 Remotion 的程式化影片生成功能,製作出流暢且專業的簡報。

概述

此技能可讓您建立導覽影片,以專業轉場、縮放效果與情境文字覆蓋,展示應用程式的畫面。工作流程會從 Stitch 專案中擷取畫面,並將它們編排成 Remotion 影片合成。

先決條件

必要條件:

  • 能夠存取 Stitch MCP 伺服器
  • 能夠存取 Remotion MCP 伺服器(或 Remotion CLI)
  • 已安裝 Node.js 與 npm
  • 具備已設計好畫面的 Stitch 專案

建議條件:

  • 熟悉 Remotion 的影片功能
  • 了解 React 元件(Remotion 使用 React)

擷取與網路設定

步驟 1:探索可用的 MCP 伺服器

執行 list_tools 以識別可用的 MCP 伺服器及其前綴:

  • Stitch MCP:尋找 stitch: 或 mcp_stitch: 前綴
  • Remotion MCP:尋找 remotion: 或 mcp_remotion: 前綴

步驟 2:擷取 Stitch 專案資訊

  1. 專案查詢(若未提供專案 ID):

    • 呼叫 [stitch_prefix]:list_projects,參數為 filter: "view=owned"
    • 依標題識別目標專案(例如 "Calculator App")
    • 從 name 欄位擷取專案 ID(例如 projects/13534454087919359824)
  2. 畫面擷取:

    • 使用專案 ID(僅數字)呼叫 [stitch_prefix]:list_screens
    • 檢視畫面標題以識別導覽所需的所有畫面
    • 從每個畫面的 name 欄位擷取畫面 ID
  3. 畫面元資料擷取: 針對每個畫面:

    • 使用 projectId 與 screenId 呼叫 [stitch_prefix]:get_screen
    • 擷取:
      • screenshot.downloadUrl — 影片的視覺素材
      • htmlCode.downloadUrl — 選用:用於擷取文字/內容
      • width、height — 畫面尺寸,用於正確縮放
      • 畫面標題與描述,用於文字覆蓋
  4. 素材下載:

    • 使用 web_fetch 或 Bash 搭配 curl 下載畫面截圖
    • 儲存至暫存目錄:assets/screens/{screen-name}.png
    • 依照預期導覽流程的順序整理素材

步驟 3:設定 Remotion 專案

  1. 檢查現有的 Remotion 專案:

    • 尋找 remotion.config.ts 或含有 Remotion 相依性的 package.json
    • 若存在,使用現有的專案結構
  2. 建立新的 Remotion 專案(若需要):

    npm create video@latest -- --blank
    
    • 選擇 TypeScript 範本
    • 在專用 video/ 目錄中設定
  3. 安裝相依套件:

    cd video
    npm install @remotion/transitions @remotion/animated-emoji
    

影片合成策略

架構

建立包含下列元件的模組化 Remotion 合成:

  1. ScreenSlide.tsx — 個別畫面顯示元件

    • Props:imageSrc、title、description、width、height
    • 功能:縮放動畫、淡入淡出轉場
    • 持續時間:可設定(預設每個畫面 3-5 秒)
  2. WalkthroughComposition.tsx — 主要影片合成

    • 序列化多個 ScreenSlide 元件
    • 處理畫面間的轉場
    • 加入文字覆蓋與註解
  3. config.ts — 影片設定

    • 影格率(預設:30 fps)
    • 影片尺寸(符合 Stitch 畫面尺寸或適當縮放)
    • 總持續時間計算

轉場效果

使用 Remotion 的 @remotion/transitions 達到專業效果:

  • 淡入淡出:畫面間的平滑交叉淡出

    import {fade} from '@remotion/transitions/fade';
    
  • 滑動:方向性滑動轉場

    import {slide} from '@remotion/transitions/slide';
    
  • 縮放:用於強調的縮放效果

    • 使用 spring() 動畫達到平滑縮放
    • 套用於重要的 UI 元素

文字覆蓋

使用 Remotion 的文字渲染功能加入情境資訊:

  1. 畫面標題:顯示在每個影格的頂部或底部
  2. 功能標註:使用動畫指標強調特定 UI 元素
  3. 描述:為每個畫面淡入描述文字
  4. 進度指示器:顯示目前在導覽中的位置

執行步驟

步驟 1:收集畫面素材

  1. 識別目標 Stitch 專案
  2. 列出專案中的所有畫面
  3. 下載每個畫面的截圖
  4. 依照導覽流程的順序整理
  5. 建立清單檔案(screens.json):
{
  "projectName": "Calculator App",
  "screens": [
    {
      "id": "1",
      "title": "主畫面",
      "description": "附數字鍵盤的主要計算機介面",
      "imagePath": "assets/screens/home.png",
      "width": 1200,
      "height": 800,
      "duration": 4
    },
    {
      "id": "2",
      "title": "歷史記錄檢視",
      "description": "檢視先前的計算結果",
      "imagePath": "assets/screens/history.png",
      "width": 1200,
      "height": 800,
      "duration": 3
    }
  ]
}

步驟 2:產生 Remotion 元件

依照 Remotion 最佳實務建立影片元件:

  1. 建立 ScreenSlide.tsx:

    • 使用 useCurrentFrame() 與 spring() 進行動畫
    • 實作縮放與淡入淡出效果
    • 加入具有適當時間點的文字覆蓋
  2. 建立 WalkthroughComposition.tsx:

    • 匯入畫面清單
    • 使用 <Sequence> 元件序列化畫面
    • 在畫面間套用轉場
    • 計算適當的時間點與偏移量
  3. 更新 remotion.config.ts:

    • 設定合成 ID
    • 設定影片尺寸
    • 設定影格率與持續時間

參考資源:

  • 使用 resources/screen-slide-template.tsx 作為起點
  • 遵循 resources/composition-checklist.md 以確保完整性
  • 檢視 examples/walkthrough/ 目錄中的範例

步驟 3:預覽並調整

  1. 啟動 Remotion Studio:

    npm run dev
    
    • 開啟瀏覽器預覽
    • 允許即時編輯與調整
  2. 調整時間點:

    • 確保每個畫面有適當的顯示持續時間
    • 驗證轉場是否流暢
    • 檢查文字覆蓋的時間點
  3. 微調動畫:

    • 調整縮放效果的彈簧設定
    • 修改轉場的緩動函數
    • 確保文字隨時可讀

步驟 4:渲染影片

  1. 使用 Remotion CLI 渲染:

    npx remotion render WalkthroughComposition output.mp4
    
  2. 替代方案:使用 Remotion MCP(若可用):

    • 使用合成詳細資訊呼叫 [remotion_prefix]:render
    • 指定輸出格式(MP4、WebM 等)
  3. 最佳化選項:

    • 設定品質等級(--quality)
    • 設定編解碼器(--codec h264 或 h265)
    • 啟用平行渲染(--concurrency)

進階功能

互動式熱點

強調可點擊的元素或重要功能:

import {interpolate, useCurrentFrame} from 'remotion';

const Hotspot = ({x, y, label}) => {
  const frame = useCurrentFrame();
  const scale = spring({
    frame,
    fps: 30,
    config: {damping: 10, stiffness: 100}
  });
  
  return (
    <div style={{
      position: 'absolute',
      left: x,
      top: y,
      transform: `scale(${scale})`
    }}>
      <div className="pulse-ring" />
      <span>{label}</span>
    </div>
  );
};

旁白整合

為導覽加入旁白:

  1. 從畫面描述產生旁白腳本
  2. 使用文字轉語音或錄製音訊
  3. 使用 <Audio> 元件將音訊匯入 Remotion
  4. 同步畫面時間點與旁白節奏

動態文字擷取

從 Stitch HTML 程式碼擷取文字以進行自動註解:

  1. 為每個畫面下載 htmlCode.downloadUrl
  2. 解析 HTML 以擷取關鍵文字元素(標題、按鈕、標籤)
  3. 為重要的 UI 元素產生自動標註
  4. 作為時間控制的文字覆蓋加入合成中

檔案結構

project/
├── video/                      # Remotion 專案目錄
│   ├── src/
│   │   ├── WalkthroughComposition.tsx
│   │   ├── ScreenSlide.tsx
│   │   ├── components/
│   │   │   ├── Hotspot.tsx
│   │   │   └── TextOverlay.tsx
│   │   └── Root.tsx
│   ├── public/
│   │   └── assets/
│   │       └── screens/        # 已下載的 Stitch 截圖
│   │           ├── home.png
│   │           └── history.png
│   ├── remotion.config.ts
│   └── package.json
├── screens.json                # 畫面清單
└── output.mp4                  # 已渲染的影片

與 Remotion 技能整合

Remotion 維護其自身的代理技能,定義了最佳實務。請參閱這些技能以了解進階技術:

應利用的關鍵 Remotion 技能:

  • 動畫時間點與緩動
  • 合成架構模式
  • 效能最佳化
  • 音訊同步

常見模式

模式 1:簡單幻燈片

具有淡入淡出轉場的基本導覽:

  • 每個畫面 3-5 秒
  • 交叉淡出轉場
  • 底部文字覆蓋顯示畫面標題
  • 頂部進度列

模式 2:功能強調

聚焦於特定 UI 元素:

  • 縮放至特定區域
  • 指向功能的動畫圓圈/箭頭
  • 關鍵互動的慢動作強調
  • 並排的之前/之後比較

模式 3:使用者流程

顯示逐步的使用者旅程:

  • 具有方向性滑動的順序畫面流程
  • 編號步驟覆蓋
  • 強調使用者動作(點擊、觸控)
  • 使用動畫路徑連接畫面

故障排除

問題解決方案
畫面模糊確保下載的影像為完整解析度;檢查 screenshot.downloadUrl 的品質設定
文字對齊錯誤驗證畫面尺寸與合成大小相符;根據實際畫面尺寸調整文字位置
動畫不流暢將影格率提高至 60fps;使用具有適當阻尼的彈簧設定
Remotion 建置失敗檢查 Node 版本相容性;確保已安裝所有相依套件;檢閱 Remotion 文件
時間點感覺不對在清單中調整每個畫面的持續時間;在 Remotion Studio 中預覽;以實際使用者測試

最佳實務

  1. 維持長寬比:使用實際的 Stitch 畫面尺寸或按比例縮放
  2. 一致的時間點:除非要強調特定畫面,否則保持畫面顯示持續時間一致
  3. 文字可讀性:確保足夠的對比度;使用適當的字型大小;避免雜亂的覆蓋
  4. 流暢轉場:使用彈簧動畫以達到自然的動作;避免突兀的剪輯
  5. 徹底預覽:在最終渲染前,務必在 Remotion Studio 中預覽
  6. 最佳化素材:適當地壓縮影像;使用高效的格式(UI 用 PNG,照片用 JPG)

使用範例

使用者提示:

查看我 Stitch 專案 "Calculator App" 中的畫面,並建立一個顯示這些畫面導覽的 Remotion 影片。

代理工作流程:

  1. 列出 Stitch 專案 → 找到 "Calculator App" → 擷取專案 ID
  2. 列出專案中的畫面 → 識別所有畫面(主畫面、歷史記錄、設定)
  3. 為每個畫面下載截圖 → 儲存至 assets/screens/
  4. 建立包含畫面元資料的 screens.json 清單
  5. 產生 Remotion 元件(ScreenSlide.tsx、WalkthroughComposition.tsx)
  6. 在 Remotion Studio 中預覽 → 調整時間點與轉場
  7. 渲染最終影片 → calculator-walkthrough.mp4
  8. 回報完成並附上影片預覽連結

成功秘訣

  • 從簡單開始:先從基本的淡入淡出轉場開始,再加入複雜的動畫
  • 遵循 Remotion 模式:運用 Remotion 的官方技能與文件
  • 使用清單檔案:將畫面資料以 JSON 格式整理,便於更新
  • 頻繁預覽:使用 Remotion Studio 及早發現問題
  • 考慮無障礙性:加入字幕;確保文字可讀;使用清晰的視覺效果
  • 針對平台最佳化:將影片尺寸調整為目標平台(YouTube、社交媒體等)的規格

參考資料

使用時機

當處理與其主要領域或上述功能相關的任務時,請使用此技能。

限制

  • 僅在工作任務明確符合上述範圍時使用此技能。
  • 請勿將輸出視為環境特定驗證、測試或專家審查的替代品。
  • 若缺少必要的輸入、權限、安全邊界或成功標準,請停止並要求澄清。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

anubhavg-icpl/vibe

|. Use when you need help with 8 bit orbit video template. Hyperframes-based video template for retro pixel deck motion design. Use when users want a high-fidelity, multi-scene HTML-to-video composition with advanced transitions, interactive preview controls, and ready-to-render default style.

anubhavg-icpl/vibe

Reference DESIGN.md for luxury automotive editorial that needs to feel engineered. White slabs, full-bleed performance photography, BMW corporate blue rising into a deeper blue at active states, restrained Helvetica-grade typography. Use when building UI components, applying design tokens, or implementing visual styles for cinematic bmw.

anubhavg-icpl/vibe

Reference DESIGN.md for enterprise-AI brands that need to feel premium, dark, and quietly futuristic. Ink canvas, Unica grotesque type, saturated coral-to-violet brand gradient deployed as backdrop and accent rule, full-pill buttons, gen. Use when building UI components, applying design tokens, or implementing visual styles for cinematic cohere.

anubhavg-icpl/vibe

Reference DESIGN.md for performance brands that need to feel theatrical. High-contrast black-and-white frames cut by Rosso Corsa red, sharp 0-radius components, FerrariSans across the entire page, photography that treats the car as sculp. Use when building UI components, applying design tokens, or implementing visual styles for cinematic ferrari.

anubhavg-icpl/vibe

Reference DESIGN.md for hyper-luxury that needs to feel forged. True-black canvas, oversized LamboType nameplates at 120px+, hexagonal angle motifs, single warm-gold accent for primary actions, photography lit like a vault. Use when building UI components, applying design tokens, or implementing visual styles for cinematic lamborghini.

anubhavg-icpl/vibe

Reference DESIGN.md for AI-lab cinematic: pure black canvas, neon-lime accent on charcoal chrome, geometric DM Sans / Outfit type, pill-shaped CTAs. Use when building UI components, applying design tokens, or implementing visual styles for cinematic minimax.

anubhavg-icpl/vibe

Reference DESIGN.md for GPU-vendor cinematic: chrome-black canvas, signature green action, video-led hero, hard-edged grotesque headlines. Use when building UI components, applying design tokens, or implementing visual styles for cinematic nvidia.

anubhavg-icpl/vibe

Skill for discovering and researching autonomous AI agents, tools, and ecosystems using the AgentFolio directory. Use when you need help with agentfolio.

anubhavg-icpl/vibe

Build content-focused websites with Astro — zero JS by default, islands architecture, multi-framework components, and Markdown/MDX support. Use when you need help with astro.

anubhavg-icpl/vibe

Expert in building portfolios that actually land jobs and clients -. Use when you need help with interactive portfolio. not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios, and portfolios that convert visitors into opportunities.

anubhavg-icpl/vibe

Generates high-converting Next.js/React landing pages with Tailwind CSS. Uses PAS, AIDA, and BAB frameworks for optimized copy/components (Heroes, Features, Pricing). Focuses on Core Web Vitals/SEO. Use when you need help with landing page generator.

anubhavg-icpl/vibe

Writes complete, structured landing pages optimized for SEO ranking, AEO citation, and visitor conversion. Activate when the user wants to write or generate a landing page for a product, service, or offer.

anubhavg-icpl/vibe

Project scaffolding - generate boilerplate for common project types with best-practice defaults. Use for: scaffold, boilerplate, template, new project, init, create project, starter, setup, project structure, directory structure, monorepo, microservice, API template, web app template, CLI tool template, library template.

anubhavg-icpl/vibe

Automate Klipfolio tasks via Rube MCP (Composio). Always search tools first for current schemas. Use when you need help with klipfolio automation.

anubhavg-icpl/vibe

>. Use when you need help with kami landing. Produce a print-grade single-page kami (紙 / 纸) document — warm parchment canvas, ink-blue accent, serif at one weight, no italic, no cool grays. The output reads like a professional white paper or studio one-pager, not an app UI. Multilingual by design (EN · zh-CN · ja). One self-contained HTML file, zero dependencies.

anubhavg-icpl/vibe

>. Use when you need help with open design landing deck. Produce a single-file slide deck in the Atelier Zero visual language (warm-paper background, italic-serif emphasis spans, coral terminating dots, surreal collage plates) — Open Design's brand deck recipe. The deck uses **horizontal magazine-style swipe pagination** (←/→, wheel, swipe), a per-slide chrome strip with brand mark and slide counter, an ESC overview grid, a coral progress bar, and inherits the canonical stylesheet + 16-slot image library from the sister `open-design-landing` skill.

anubhavg-icpl/vibe

>. Use when you need help with open design landing. Produce a world-class single-page editorial landing site in the Atelier Zero visual language (Monocle / Apartamento / Études editorial collage) — the same aesthetic Open Design uses for its own marketing surface. The agent fills a typed `inputs.json` from a brand brief, optionally generates 16 collage assets via gpt-image-2, then runs a pure-function composer that emits a self-contained HTML file; a separate path can mirror the Astro marketing site in `apps/landing-page/`. Drop-in scroll-reveal motion and a Headroom-style sticky nav are wired automatically.

anubhavg-icpl/vibe

>. Use when building UI with epic design language and visual style. Build immersive, cinematic 2.5D interactive websites using scroll storytelling, parallax depth, text animations, and premium scroll effects — no WebGL required. Use this skill for any web design task: landing pages, product sites, hero sections, scroll animations, parallax, sticky sections, section overlaps, floating products between sections, clip-path reveals, text that flies in from sides, words that light up on scroll, curtain drops, iris opens, card stacks, bleed typography, and any site that should feel cinematic or premium. Trigger on phrases like "make it feel alive", "Apple-style animation", "sections that overlap", "product rises between sections", "immersive", "scrollytelling", or any scroll-driven visual effect. Covers 45+ techniques across 8 categories. Always inspects, judges, and plans assets before coding. Use aggressively for ANY web design task.

anubhavg-icpl/vibe

Generates high-converting landing pages as complete Next.js/React (TSX) components with Tailwind CSS. Creates hero sections, feature grids, pricing tables, FAQ accordions, testimonial blocks, and CTA sections using proven copy frameworks (PAS, AIDA, BAB). Outputs SEO meta tags, structured data, and performance-optimised code targeting Core Web Vitals (LCP < 1s, CLS < 0.1). Use when the user asks to create a landing page, marketing page, homepage, single-page site, lead capture page, campaign page, promo page, or conversion-optimised web page — or when they want to A/B test landing page variants or replace a static page with one designed to convert.

anubhavg-icpl/vibe

Generates a premium single-page HTML landing page with 3D CSS animations, GSAP scroll effects, and mouse-parallax depth. Forcing intake (product + elevator pitch, audience register, brand overrides, tone) locks down positioning before any copy or markup is written, so the page reflects the actual product rather than generic boilerplate. Use whenever the user says 'landing for X', 'create a landing page', 'build a landing page', 'make a landing page for X', 'I need a web page for Y', or provides product/service details and wants a polished website. Also triggers on 'promotional page', 'product page', 'one-pager', 'web presence', 'sales page'. Outputs a single self-contained HTML file (Claude Code) or HTML artifact (Claude.ai). Supports configurable brand colors via CSS custom property overrides.

相關技能