Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

chat-motion-overlay — Claude Code skill: install and usage

Builds animated chat scenes from text or screenshots, then prepares them for Remotion rendering. Use it for message bubbles, app-style chat views, and transparent overlays.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add nexu-io/open-design --skill chat-motion-overlay -a claude-code
Open on GitHub

What chat-motion-overlay does

This skill turns a transcript or screenshot into an animated chat scene. It can render standalone bubbles or a wechat, telegram, or messenger container, with an iphone-dynamic-island frame, avatar modes, and configurable nickname display.

For screenshots, it extracts visible messages and infers sides and message groups. scripts/build_chat_overlay_spec.py creates a JSON spec, while scripts/prepare_chat_overlay_bundle.py copies the Remotion template, injects src/chatSpec.ts, and places uploaded avatars in public/.

The output can be mov, webm, a Remotion project, a Hyperframe project, JSON, or a preview. Overlay renders keep a transparent composition root. Bring avatar files when their appearance matters, because preset avatars are used unless uploaded files or screenshot-derived avatars are explicitly requested.

What it helps with

  • turn a transcript into an animated chat scene
  • extract visible messages from a screenshot
  • render chat bubbles with a transparent background
  • prepare a Remotion project for further editing
  • copy uploaded avatars into a render bundle

Example prompts for the agent

  • Create an animated chat overlay from this transcript with standalone bubbles and a transparent background.
  • Extract the visible messages from this screenshot and build a `telegram` chat scene.
  • Prepare a `webm` overlay with my uploaded avatars and `first-message-only` nickname display.

How to install chat-motion-overlay

1Skills CLI (Vercel)

npx skills add nexu-io/open-design --skill chat-motion-overlay -a claude-code

2Manually: put the files in place

~/.claude/skills/chat-motion-overlay/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/chat-motion-overlay/

From the same set106

The whole set →
ui-ux-pro-max nexu-io A discovery catalog entry for the UI/UX Pro Max skill in OpenDesign. It registers design system triggers so agents recognize interface usability requests. Claude Code CX Codex Cursor +1 5,400installs frontend-design nexu-io Skill for building frontend interfaces with considered typography, color and layout — from landing pages to dashboards. Claude Code CX Codex Cursor +1 4,800installs threejs nexu-io Guides the agent in building browser 3D scenes, materials, interactive controls, and post-processing with Three.js. Claude Code CX Codex Cursor +1 3,400installs creative-director nexu-io This skill takes a creative concept from brief to presentation and checks it on three axes. Use it for campaign ideas and creative critique. Claude Code CX Codex Cursor +1 3,400installs design-brief nexu-io Parses an I-Lang design brief into a concrete spec with palette, typography, density, and constraints. Eliminates ambiguity from phrases like "make it professional." Claude Code CX Codex Cursor +1 3,400installs apple-hig nexu-io Integrates Apple Human Interface Guidelines for iOS, macOS, visionOS, watchOS, and tvOS into your coding agent during planning. Claude Code CX Codex Cursor +1 3,200installs hatch-pet nexu-io Creates, validates, and packages 8×9 animated pet spritesheets for Codex. Use it when turning visual references or concept prompts into importable digital pet companions. Claude Code CX Codex Cursor +1 3,100installs design-md nexu-io Creates and maintains DESIGN.md with design direction, tokens, and visual rules. Useful when an agent needs one source of truth for a project’s design system. Claude Code CX Codex Cursor +1 3,100installs

Similar

html plannotator A skill that makes the agent build one self-contained HTML file with styles and scripts inlined: a report, landing page, deck or calculator. It also knows which sibling skill should take the job instead. Claude Code CX Codex Cursor +1 3,800installs interactive-portfolio sickn33 Builds developer and designer portfolios focused on converting visitors into job offers and client leads. Use it when planning or restructuring a personal showcase site. Claude Code CX Codex Cursor +1 1,500installs gif-sticker-maker MiniMax-AI A skill that converts a photo into 4 animated GIF stickers in Funko Pop style with captions. Use it to create expressive stickers, emoji packs, or animated avatars for messengers. Claude Code CX Codex Cursor +1 2,000installs multi-agent-brainstorming sickn33 Runs a sequential design review with a designer, constrained reviewers, and an arbiter. Use it to expose assumptions and failure modes before implementation. Claude Code CX Codex Cursor +1 1,400installs landing-page-design elayadesign Complete system for landing pages: intake, structure, copywriting, visual rules. Consult before choosing fonts, spacing, colors, or writing headlines. Claude Code CX Codex Cursor +1 1,700installs frontend-design official anthropics This skill guides intentional visual design for new interfaces and redesigns. Use it when a generic generated UI is not enough. Claude Code Claude.ai 1,025,790installs grill-me Matt Pocock grill-me interviews you about a plan or design to expose gaps and sharpen decisions. Use it before implementation starts. Claude Code 1,424,476installs design-taste-frontend Leonxlnx This skill directs the design of public pages and work screens, then checks the result in a browser through screenshots. Use it when an interface feels generic or unfinished. Claude Code CX Codex Cursor +1 673,100installs

Questions about chat-motion-overlay

How do I install chat-motion-overlay in Claude Code?

Run npx skills add nexu-io/open-design --skill chat-motion-overlay -a claude-code, then run npx skills add nexu-io/open-design --skill chat-motion-overlay -a claude-code again. The skill file is at ~/.claude/skills/chat-motion-overlay/SKILL.md.

What does chat-motion-overlay do?

It creates animated chat scenes from transcripts or screenshots. The skill generates a JSON scene spec and a Remotion bundle with the selected container, avatar settings, and delivery format.

How does it handle avatars from screenshots?

Screenshot avatars help identify participants and message groups. The render uses preset avatars unless you provide avatar files or explicitly request screenshot-derived avatars.

Source text

SKILL.md · Apache-2.0
---
name: chat-motion-overlay
description: Generate configurable chat motion overlays from a transcript or screenshot, including plain bubble scenes, app-style chat containers, optional device frames, preset or uploaded avatars, nickname display rules, and transparent-video-ready Remotion bundles. Use when Codex needs to create reusable short-form chat clips for Douyin, demo videos, story reenactments, social-message proof scenes, or embeddable alpha overlays for Hyperframe and Remotion workflows.
triggers:
  - "chat motion overlay"
  - "animated chat"
  - "chat bubbles"
  - "message overlay"
  - "transparent chat video"
  - "微信聊天动效"
  - "聊天气泡动效"
  - "透明聊天视频"
od:
  mode: utility
  category: animation-motion
  design_system:
    requires: false
---

# Chat Motion Overlay

Turn chat content into a configurable motion overlay clip instead of a single hard-coded WeChat mock.

## Workflow

1. Normalize the chat input.
   - If the user gives a screenshot, extract the visible messages into the transcript format in `references/input-format.md`.
   - If the user gives plain text, keep one message per beat and preserve exact wording when authenticity matters.
   - For screenshots, use visible avatars as clues for participant count and message grouping, but do not crop or recreate avatar images by default. Infer participants and sides, then render with preset avatars unless the user provides avatar files or explicitly requests screenshot-derived avatars.

2. Choose a scene config.
   - Read `references/config-schema.md`.
   - Decide container style, avatar mode, device frame, nickname mode, and delivery format before generating the bundle.
   - When the user has not provided enough information, follow the question policy in `references/question-strategy.md`.

3. Build the scene spec.
   - Run `scripts/build_chat_overlay_spec.py` with a transcript and optional config JSON.
   - The script outputs a single JSON spec that Remotion can render directly.

4. Prepare a renderable bundle.
   - Run `scripts/prepare_chat_overlay_bundle.py`.
   - It copies the Remotion template, injects `src/chatSpec.ts`, and copies any uploaded avatar files into `public/`.

5. Render the target output.
   - Use the exact export commands in `references/output-modes.md`.
   - Prefer `MOV(透明背景,可直接导入剪映 / PR / FCP 叠加)` for editing, `WebM(透明背景,适合网页 / 浏览器播放)` for browsers, and editable engineering outputs when the user wants to keep composing downstream.

## Supported Dimensions

- `container`: `none`, `wechat`, `telegram`, `messenger`
- `avatarMode`: `preset`, `upload`, `mixed`
- `deviceFrame`: `none`, `iphone-dynamic-island`
- `nicknameMode`: `hidden`, `first-message-only`, `always`
- `deliveryFormat`:
  - `mov`: `MOV(透明背景,可直接导入剪映 / PR / FCP 叠加)`
  - `webm`: `WebM(透明背景,适合网页 / 浏览器播放)`
  - `remotion`: `Remotion 工程(适合继续编辑和拼装)`
  - `hyperframe`: `Hyperframe 工程(适合作为模块继续复用)`
  - `json`: `JSON 数据(适合程序处理 / 自定义渲染)`
  - `preview`: `预览图 / 预览工程(适合先确认效果)`

## Output Rules

- Keep the composition root transparent for overlay outputs.
- Use `container: none` for standalone bubble motion without an app shell.
- Use `container: wechat|telegram|messenger` when the platform chrome is part of the story.
- Treat uploaded avatars as content assets and copy them into `public/` for the render bundle.
- Prefer preset avatars when the user does not specify avatar files. Screenshot avatars may help identify participants, but recommend user-provided avatar files before attempting to crop or recreate avatars from screenshots.
- Keep config-driven behavior explicit; do not silently switch style families.

## Question Policy

- Prefer inference first, questions second.
- If the user gives enough information for a sensible default, continue and clearly state the assumptions.
- Ask only for missing high-impact choices.
- Keep the question set to 1-3 items.
- Prefer user-facing wording over technical wording.
- Ask about `deliveryFormat` using `格式(场景描述)` labels, not internal render terms.
- If the user says they do not care, continue with defaults and note them in the result.

## Resources

- Transcript format: `references/input-format.md`
- Config fields and examples: `references/config-schema.md`
- Question strategy: `references/question-strategy.md`
- Output commands and targets: `references/output-modes.md`
- Transcript/config to spec: `scripts/build_chat_overlay_spec.py`
- Remotion bundle preparation: `scripts/prepare_chat_overlay_bundle.py`
- Remotion render template: `assets/remotion-template/`

© nexu-io · Apache-2.0 · nexu-io/open-design

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor