Opencat Creator logo

Opencat Creator

Community
ZhouXiaolin
opencat-creator

用 OpenCat JSX 设计并生成有质感的视频合成。只要用户要做一个视频、动效、标题卡、产品演示、品牌短片、社交广告、发布预告、数据故事、片头,或要写/改 .jsx 合成文件,就用这个 skill。覆盖意图澄清、视觉设计、节奏规划、动画编排、CanvasKit 绘制、ly 效果内核、three.js 3D 场景、字幕和转场。输出为一个可渲染的 .jsx 文件。

Overview

PublisherZhouXiaolin
Repositoryopencat
Skill nameopencat-creator
Stars
71
Forks
12
Bundled files
8
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.

  • 8 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

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

Installation

Install the Opencat Creator 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/ZhouXiaolin/opencat/tree/main/skills/opencat-creator
  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/ZhouXiaolin/opencat.git /tmp/opencat
mkdir -p .claude/skills
cp -r /tmp/opencat/skills/opencat-creator .claude/skills/opencat-creator
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Opencat Creator 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 Opencat Creator 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 Opencat Creator 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.

OpenCat Creator

你的任务是把用户的想法变成一个 .jsx 合成。这个合成能渲染成视频。

能跑起来只是底线。有质感的合成让观众记住一句话,并且每一帧都经得起看。所以先想清楚要说什么、给谁看、什么语气,再动手写代码。

第一步:揣摩意图

先推断,再确认。用户很少一次说清全部。你要补全这几项:

  • Message:观众最终要记住的一句话。只能有一个主张。
  • Audience:谁在看。开发者、消费者、投资人、内部团队。
  • Platform:社交短视频、官网 hero、产品演示、发布预告。
  • Duration:任意时长,由 message 的复杂度决定。时长决定 beat 数量,不是内容数量。
  • Tone:克制、精密、热烈、奢华、温暖、实验、戏剧化。

用户的话通常很短。你要读出话外之意:

  • "做个酷炫的发布视频" —— 缺受众、缺 message、缺平台。先补全,再给方向。
  • 用户给了一个参考 —— 提取它的节奏、构图逻辑和色彩关系,不要照抄。
  • 用户没给时长 —— 按 message 的复杂度定,不要默认塞满。

不要拿着模糊需求直接开写。 先说出你的理解,再给 2-3 个具体方向让用户选。方向要具体到能想象出画面,例如"深色控制台 + 逐条校准的数据条 + 结尾锁定 logo",而不是"现代简约风"。

判断顺序对不对,见 references/design-principles.md 的「叙事顺序」:hook 说观众的语言,价值在第二个 beat 之前落地,画面指向源材料。

用户只是小改现有文件时,跳过这一步。

第二步:定设计方向

读 references/design-principles.md 的「设计身份」。按它确定视觉身份。

优先读取项目里的 frame.md → design.md → DESIGN.md,继承品牌颜色、字体、禁用项。设计文件定义品牌,不定义视频构图——颜色和字体是神圣的,字号和间距要按视频尺度重新判断。

没有设计文件时,自己声明最小设计身份:背景色 / 前景色 / 强调色 / 字体倾向 / 圆角与边框语言 / 动效性格 / 禁用项。

选字体前跑 scripts/font-discover.py,不要凭记忆伸手拿那几个默认字体。它会列出候选,并直接产出可用的 fonts 导出。

开放式任务,把设计方向告诉用户,确认后再继续。

第三步:规划节奏,把计划当提案交出去

每个 scene 是一个 beat。先规划节奏,再规划内容。哪个 beat 快、哪个慢、峰值在哪,先定下来,并给节奏起个名字(例如 hook-hit → hold → peak → CTA settle)。

每个 beat 写清 concept、mood、depth layers、motion verbs。做法见 references/design-principles.md。

节奏基准:约每 2-3 秒一个 beat。6 秒的片子 2-3 个 beat,10 秒约 3-4 个,30 秒约 8-12 个。开头 1.5-2s 是 hook,峰值放在全片 50-60% 处,尾部留 1-2s 收束。beat 数量跟着时长走,不要为了塞满而堆观点。

然后把 beat 列表作为提案交出去,不要闷头开写。开头回显策略("这条片子告诉 [受众]:[message]"),再用表格一行一个 beat:

Beat起止画面为什么
01 — 不再是0-2.4s说出旧的痛,并在同一口气里解掉它在第一个 beat 落地价值主张

「为什么」写这个 beat 在故事里的职责,追溯到 message。追溯不到的 beat 要砍掉。

这一步是最便宜的迭代点:在这里改一个 beat 花 30 秒,建完之后改要花几分钟。

用户只改文件、或明确说"直接做"时,跳过提案。

第四步:写 .jsx

布局先于动画。对每个 scene,先写最完整那一帧的静态布局,检查构图、层级、字号、视觉路径。布局成立后,再写动画。

按需读取:

  • references/jsx-format.md — 文件结构、meta / fonts / audio 导出、use* 钩子、解析硬规则
  • references/animations.md — 动画接口(useGSAP)
  • references/transitions.md — 多场景转场
  • references/canvaskit.md — useCanvas、ly 效果内核、render target
  • references/three.md — useThree 三维场景
  • references/templates.md — 起手骨架

GSAP、CanvasKit、three.js 是通用知识。参考文件只写 OpenCat 特有的接口和差异,不重复这三个库的用法。

references/design-principles.md 是「有质感」的判断核心,按需查它的分节:叙事顺序、设计身份、节奏规划、视频构图、字体、数据、动效、字幕、声音、转场、交付检查。

scripts/font-discover.py 是字体发现工具,用法见 design-principles.md 的「字体」一节。

修改已有 .jsx

  1. 先读实际文件,不从记忆重建
  2. 只改用户要求的区域
  3. 需要格式能力时读对应 reference

硬规则

  • 元素是静态的。 元素只描述静止状态,不带动效。动效只来自 useGSAP 或每帧脚本。先在 class 里把最终构图摆好,再用 useGSAP 把它从起点动到这个状态。
  • 钩子各管一件事。 useGSAP 只做 GSAP 式 tween;useCanvas 只做 CanvasKit 式绘制;useThree 只做 three.js 式三维。三者不混写。在 useGSAP 里调 getCanvasById 加绘制,或在 useCanvas 里建 timeline,都算错。
  • 只输出一个完整可渲染的 .jsx 文件。不默认启动预览、渲染或截图。
  • 只有一个默认导出组件作为可视根。所有时间行为走 use* 钩子。
  • 动画必须可 seek:写成对时间的纯函数。不用 wall-clock、异步回调、非种子随机。
  • 用 class,不用 style / className / parentId。class 里不写动画类(transition-* / animate-* / translate-* 等,实测会被忽略)。
  • 时间分两条时钟。 ctx.global 是整条合成,ctx.current 是钩子所属的 scene。在 <tl> 里写 useGSAP,ctx.current.time 自动是该 scene 的局部时间,不用手抄起点;单 scene 时两者相等。
  • 多 scene 中,scene 内只做入场和呼吸;scene 间退出交给 <transition>。
  • 每个 scene 至少有背景层、中景内容、前景细节。
  • 所有 id 在整份合成内全局唯一。

质量门

交付前自检:

  • 结构符合 jsx-format.md,动画符合 animations.md
  • 用 canvas 时,ref 来自 useRef(),入口是 useCanvas(ref, draw)
  • 每个 scene 有明确 concept、至少两个焦点、三层结构、持续微运动
  • 字号、边框、装饰透明度按视频尺度处理,不照搬网页尺寸
  • 动效符合 design-principles.md 的「动效」:ease 和时长有变化,入场 .out、退场 .in,没有全片统一的 delay
  • 转场服务叙事,不是全片机械 crossfade
  • meta.duration 等于所有 scene duration 加所有 <transition> duration

最后按 design-principles.md 的「交付检查」逐项核对:有设计文件时对照品牌核对颜色、字体、圆角、间距、禁用项;没有时核对配色一致性和默认味清单。

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Opencat Creator AI skill do?

用 OpenCat JSX 设计并生成有质感的视频合成。只要用户要做一个视频、动效、标题卡、产品演示、品牌短片、社交广告、发布预告、数据故事、片头,或要写/改 .jsx 合成文件,就用这个 skill。覆盖意图澄清、视觉设计、节奏规划、动画编排、CanvasKit 绘制、ly 效果内核、three.js 3D 场景、字幕和转场。输出为一个可渲染的 .jsx 文件。

Why use Opencat Creator on TypingMind?

Because you install it once and use it with any model. Opencat Creator 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 Opencat Creator in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/ZhouXiaolin/opencat/tree/main/skills/opencat-creator. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Opencat Creator?

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 Opencat Creator?

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

Is the Opencat Creator AI skill free?

Yes. It is published on GitHub by ZhouXiaolin 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 👇