Remotion Pro logo

Remotion Pro

Community
melgarafael
remotion-pro

Main Remotion Pro orchestrator for GrowthOS — handles first-run onboarding wizard (video-profile.yaml), displays the 8-showcase catalog, routes to the correct showcase skill (product-demo, tech-terminal, before-after, data-story, course-trailer, social-proof, feature-highlight, walkthrough), manages Remotion environment discovery, applies config precedence (briefing > video-profile.yaml > brand-voice.yaml > defaults), and coordinates professional video production output bundles.

Overview

Publishermelgarafael
RepositorygrowthOS
Skill nameremotion-pro
Stars
58
Forks
33
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by melgarafael on GitHub. Read the source before you install it.

Installation

Install the Remotion Pro AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/melgarafael/growthOS/tree/main/skills/remotion-pro
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/melgarafael/growthOS.git /tmp/growthOS
mkdir -p .claude/skills
cp -r /tmp/growthOS/skills/remotion-pro .claude/skills/remotion-pro
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Remotion Pro in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Remotion Pro on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Remotion Pro is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Remotion Pro — Orchestrator Skill

Central dispatcher for all GrowthOS video production powered by Remotion. Handles onboarding, showcase selection, environment discovery, and output coordination.


Trigger Conditions

Activate this skill when the user:

  • Runs /grow video with or without a showcase name
  • Mentions "remotion pro", "video showcase", "criar video", "make a video"
  • References any of the 8 showcase types by keyword
  • Asks for the video catalog or wants to browse showcases

Step 1 — Onboarding Gate

Before doing anything else, check whether video-profile.yaml exists in the GrowthOS root directory (growthOS/video-profile.yaml).

CHECK: does growthOS/video-profile.yaml exist?
  YES → Skip wizard, load profile, proceed to Step 3
  NO  → Run the 6-step onboarding wizard (Step 2)

Step 2 — Onboarding Wizard (First-Run Only)

Run this interactive wizard only when video-profile.yaml is missing. Present each step clearly, collect input, then generate the YAML file.

Wizard Header

╔══════════════════════════════════════════════════════╗
║         REMOTION PRO — FIRST-RUN SETUP               ║
║   Let's configure your video production profile.     ║
╚══════════════════════════════════════════════════════╝

This takes about 2 minutes. You can edit video-profile.yaml
anytime to update these settings.

Step 2.1 — Assets

📁 STEP 1/6 — ASSETS
─────────────────────────────────────────────
Where are your brand assets located?

  Logo path (PNG/SVG):
  > [e.g. assets/logo.png or leave blank to skip]

  Screenshots directory:
  > [e.g. assets/screenshots/ — folder with product screenshots]

  App icon path (optional):
  > [e.g. assets/icon.png]

Collect: logo_path, screenshots_dir, icon_path


Step 2.2 — Design Tokens

🎨 STEP 2/6 — DESIGN TOKENS
─────────────────────────────────────────────
Auto-detecting from brand-voice.yaml...

Attempt to read growthOS/brand-voice.yaml. Extract:

  • brand.colors.primary → primary_color
  • brand.colors.secondary → secondary_color
  • brand.colors.accent → accent_color
  • brand.typography.heading_font → heading_font
  • brand.typography.body_font → body_font
  • brand.design.border_radius → border_radius

If auto-detected, display the values and ask for confirmation:

  Detected from brand-voice.yaml:
    Primary color:   #[value]   ← confirm or override
    Secondary color: #[value]
    Accent color:    #[value]
    Heading font:    [value]
    Body font:       [value]
    Border radius:   [value]

  Press Enter to confirm or type new values:
  Primary color:   > 
  Secondary color: > 
  Accent color:    > 
  Heading font:    > 
  Body font:       > 
  Border radius:   > 

If not auto-detected, ask for each value with defaults:

  • primary_color: #7C3AED
  • secondary_color: #1E1E2E
  • accent_color: #F59E0B
  • heading_font: Inter
  • body_font: Inter
  • border_radius: 12px

Step 2.3 — Device Frames

🖥️  STEP 3/6 — DEVICE FRAMES
─────────────────────────────────────────────
Which device frames will you use in videos?
(Select all that apply — comma-separated numbers)

  1. Browser frame (Chrome/Safari)
  2. Mobile frame (iPhone)
  3. Desktop frame (MacBook)
  4. Terminal frame

  Selection: > [e.g. 1,2 or "all" or "none"]

Map selection to: device_frames: [browser, mobile, desktop, terminal]


Step 2.4 — User Journeys

🗺️  STEP 4/6 — USER JOURNEYS
─────────────────────────────────────────────
Define named flows for your product walkthroughs.
These are sequences of screens used in demo and walkthrough videos.

  How many journeys do you want to define now?
  (You can add more later in video-profile.yaml)
  > [number, or 0 to skip]

For each journey, collect:

  Journey [N] name: > [e.g. "Onboarding Flow"]
  
  Screens in this journey (one per line, blank to finish):
    Screen name:       > [e.g. "Landing Page"]
    Screenshot path:   > [e.g. screenshots/landing.png]
    Actions (comma-separated): > [e.g. "click Sign Up, fill email, submit"]
    
    Add another screen? [y/n]

Structure collected as:

yaml
journeys:
  - name: "Onboarding Flow"
    screens:
      - name: "Landing Page"
        screenshot: "screenshots/landing.png"
        actions: ["click Sign Up", "fill email", "submit"]

Step 2.5 — Maestri Connection

🔗 STEP 5/6 — MAESTRI CONNECTION
─────────────────────────────────────────────
Maestri is GrowthOS's AI orchestration layer.
Connect it to enable automated video triggers.

  Enable Maestri integration? [y/n]
  > 

  [If y:]
  Source project path:
  > [path to your Maestri project, or leave blank for auto-detect]

  Protocol: [http/grpc/stdio] (default: stdio)
  > 

Collect: maestri.enabled, maestri.source_project, maestri.protocol


Step 2.6 — Style Preferences

✨ STEP 6/6 — STYLE PREFERENCES
─────────────────────────────────────────────
Final style settings for your videos.

  Theme:
    1. Dark (recommended for tech/SaaS)
    2. Light
    3. Auto (follows brand-voice.yaml)
  > 

  Pacing:
    1. Fast  (punchy, social-first)
    2. Medium (balanced)
    3. Slow  (detailed, educational)
  > 

  Background music: [y/n] (default: n)
  > 

  Output extras:
    1. Generate thumbnail
    2. Generate caption file (.srt)
    3. Multi-platform renders (9:16, 16:9, 4:5)
    4. All of the above
    5. None
  > 

Collect: style.theme, style.pacing, style.music, style.output_extras


Wizard Complete — Generate video-profile.yaml

After collecting all inputs, write growthOS/video-profile.yaml:

yaml
# GrowthOS Video Profile
# Generated by Remotion Pro onboarding wizard
# Edit anytime to update settings

version: "1.0"
generated_at: "[ISO timestamp]"

assets:
  logo_path: "[collected value]"
  screenshots_dir: "[collected value]"
  icon_path: "[collected value]"

design_tokens:
  primary_color: "[collected value]"
  secondary_color: "[collected value]"
  accent_color: "[collected value]"
  heading_font: "[collected value]"
  body_font: "[collected value]"
  border_radius: "[collected value]"

device_frames:
  - browser
  - mobile
  # (only selected frames)

journeys:
  # (collected journey data)

maestri:
  enabled: false
  source_project: ""
  protocol: "stdio"

style:
  theme: "dark"
  pacing: "medium"
  music: false
  output_extras:
    thumbnail: false
    captions: false
    multi_platform: false

Display confirmation:

✅ video-profile.yaml created at growthOS/video-profile.yaml
   Run /grow video anytime to produce a new video.

Then continue to Step 3.


Step 3 — Remotion Environment Discovery

Before producing any video, locate and validate the Remotion installation.

Discovery Protocol

1. Find brand-voice.yaml
   → Read growthOS/brand-voice.yaml (or growthOS/brand-voice.example.yaml as fallback)
   → Extract project path hint if present under remotion.project_path

2. Locate Remotion project
   Priority order:
     a. growthOS/remotion/          (default GrowthOS location)
     b. value from brand-voice.yaml remotion.project_path
     c. Search upward from cwd for package.json containing "@remotion/core"

3. Determine entry point
   Look for in this order:
     a. src/index.ts
     b. src/Root.tsx
     c. remotion/index.ts
     d. Value of "remotion" key in package.json scripts

4. Discover CLI
   Try in order:
     a. npx remotion --version
     b. ./node_modules/.bin/remotion --version
     c. bunx remotion --version

5. Validate
   If CLI responds → proceed
   If not → display install instructions:
   
     Remotion not found. Install with:
       npm install @remotion/cli @remotion/core
     Then re-run your video command.

Store discovered values:

remotion_root: [path]
entry_point:   [file]
cli_command:   [npx remotion | ./node_modules/.bin/remotion]

Step 4 — Showcase Catalog

When the user runs /grow video without specifying a showcase, display the full catalog:

╔══════════════════════════════════════════════════════╗
║              REMOTION PRO — VIDEO CATALOG            ║
╚══════════════════════════════════════════════════════╝

Choose a showcase to create your video:

  🖥️  1. Product Demo        — Full product walkthrough with device frames
  ⌨️  2. Tech Terminal       — Animated CLI/terminal output for devs
  ⚡  3. Before/After UI     — Split-screen comparison reveal
  📊  4. Data Story          — Animated charts and metric counters
  🎓  5. Course Trailer      — Module previews and learning journey
  ⭐  6. Social Proof        — Testimonials, toasts, and counters
  ✨  7. Feature Highlight   — Zoom-in spotlight on one key feature
  👆  8. App Walkthrough     — Step-by-step guided app tour

  Type a number, name, or keyword to select:
  > 

Step 5 — Showcase Routing

Match user input to the correct showcase skill. Use keyword matching (case-insensitive, handles Portuguese and English):

Input KeywordsShowcase Skill
product-demo, demo, produto, product, 1showcase-product-demo
terminal, cli, tech, código, code, 2showcase-tech-terminal
before-after, antes-depois, comparação, comparison, before, after, 3showcase-before-after
data, dados, métricas, metrics, números, numbers, chart, 4showcase-data-story
course, curso, aula, módulo, module, trailer, 5showcase-course-trailer
proof, depoimento, testimonial, social proof, review, 6showcase-social-proof
feature, funcionalidade, destaque, highlight, spotlight, 7showcase-feature-highlight
walkthrough, tutorial, passo-a-passo, step-by-step, tour, 8showcase-walkthrough

When a match is found, activate the corresponding showcase skill and pass the following context:

yaml
context:
  video_profile: [loaded video-profile.yaml data]
  brand_voice: [loaded brand-voice.yaml data]
  remotion:
    root: [remotion_root]
    entry_point: [entry_point]
    cli: [cli_command]
  briefing: [any user-provided description or requirements]

Step 6 — Config Precedence

When populating showcase parameters, apply values in this priority order (highest to lowest):

1. BRIEFING        — Explicit values provided by the user in this session
2. video-profile.yaml — Saved user preferences from onboarding/edits
3. brand-voice.yaml   — Global brand settings (colors, fonts, tone)
4. DEFAULTS        — Showcase-specific hardcoded fallbacks

Example resolution for primary_color:

briefing["primary_color"]  → use if present
video-profile.yaml["design_tokens"]["primary_color"] → use if present
brand-voice.yaml["brand"]["colors"]["primary"] → use if present
"#7C3AED"  → default fallback

Step 7 — Output Bundle

After the showcase skill produces the composition, assemble the output bundle based on the autonomy level from brand-voice.yaml:

Read autonomy level:

yaml
# From brand-voice.yaml
automation:
  autonomy: manual | semi | auto

Bundle by autonomy level:

LevelOutputs
manualMP4 render + storyboard.md + Remotion composition file
semiEverything in manual + thumbnail PNG + caption file (.srt)
autoEverything in semi + multi-platform renders (9:16, 16:9, 4:5)

Output directory:

growthOS/out/videos/[showcase-name]-[YYYYMMDD-HHmm]/
  ├── video.mp4                  (always)
  ├── storyboard.md              (always)
  ├── composition.tsx            (always)
  ├── thumbnail.png              (semi + auto)
  ├── captions.srt               (semi + auto)
  ├── video-9x16.mp4             (auto only)
  ├── video-16x9.mp4             (auto only)
  └── video-4x5.mp4              (auto only)

Render command:

bash
[cli_command] render [entry_point] [CompositionId] out/videos/[folder]/video.mp4 \
  --props='[JSON props]' \
  --fps=30

For multi-platform (auto mode), run three renders with width/height overrides.


Error Handling

ErrorResponse
video-profile.yaml write failsShow values, ask user to create manually
Remotion CLI not foundShow install instructions, do not proceed
brand-voice.yaml not foundUse all defaults, warn user
Showcase skill not foundDisplay catalog, ask user to select again
Render failsShow Remotion error output, suggest fixes
Screenshot path not foundWarn and use placeholder, list missing paths

Quick Reference — Command Examples

bash
/grow video                          # Show catalog
/grow video demo                     # Product Demo showcase
/grow video terminal                 # Tech Terminal showcase
/grow video before-after             # Before/After UI showcase
/grow video data                     # Data Story showcase
/grow video curso                    # Course Trailer (Portuguese)
/grow video depoimento               # Social Proof (Portuguese)
/grow video feature                  # Feature Highlight showcase
/grow video walkthrough              # App Walkthrough showcase

Notes for Showcase Skills

Each showcase skill (showcase-*) receives the full context object from this orchestrator. They are responsible for:

  1. Collecting showcase-specific briefing from the user
  2. Building the Remotion props object
  3. Writing the composition file (or instructing code generation)
  4. Returning the composition ID and props to this orchestrator for rendering
  5. Generating the storyboard.md

This orchestrator handles rendering and output bundling after the showcase skill completes.

Frequently asked questions

What does the Remotion Pro AI skill do?

Main Remotion Pro orchestrator for GrowthOS — handles first-run onboarding wizard (video-profile.yaml), displays the 8-showcase catalog, routes to the correct showcase skill (product-demo, tech-terminal, before-after, data-story, course-trailer, social-proof, feature-highlight, walkthrough), manages Remotion environment discovery, applies config precedence (briefing > video-profile.yaml > brand-voice.yaml > defaults), and coordinates professional video production output bundles.

Why use Remotion Pro on TypingMind?

Because you install it once and use it with any model. Remotion Pro is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Remotion Pro in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/melgarafael/growthOS/tree/main/skills/remotion-pro. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Remotion Pro?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Remotion Pro?

As many as you like. As long as a model supports skills, you can use Remotion Pro with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Remotion Pro AI skill free?

Yes. It is published on GitHub by melgarafael under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇