首页 / 全部技能 / 内容创作 / color-motion
内容创作 · iart-ai/motion-design-skills

color-motion

This skill should be used when the user asks to "build a color palette for a motion piece", "make a gradient background", "animate a color transition", "interpolate colors smoothly", "fix muddy/gray gradients", "convert colors to OKLCH", "color-grade a video for mood", "fix washed-out After Effects renders", "gamma shift", "Rec.709 vs sRGB", "colors shifted after rendering", or "match preview to final video". Covers palette construction, gradients, perceptual interpolation (OKLCH/Lab), grading order, and video/render color management.

L4 高权限 · 分级授权与审计V1 已固定执行命令联网读写文件Dual-pass Audit
Author iart-aiGitHub iart-ai/motion-design-skills ↗Stars 35License MIT(仓库根 LICENSE:'MIT License' / Copyright (c) 2026 iart.ai;.claude-plugin/plugin.json 的 license 字段亦为 MIT)Commit 3c129f769d
管控等级描述 skill 的能力与建议配套的管控措施,不代表质量或安全认证,也不表示可用或不可用。是否使用由用户和管理者决定。不同 agent 宿主对权限的约束各不相同,请勿假定宿主一定会提供安全兜底。第三方 skill 版权归原作者,使用风险由使用者自行承担。

1实现原理 · 为什么它能做到

调色板用数量纪律替代品味争论:1 主 + 1 强调 + 2-3 中性;对比与层次靠明度/彩度而非堆色相。

skills/color-motion/SKILL.md
Limit hues. A strong motion palette is **1 primary + 1 accent + 2-3 neutrals**.
这里在做什么:把「配色好不好看」转成可执行构造规则;下一段进一步解释为何暗场里强调色要用低-中彩度 + 高明度,而不是最大饱和度。

插值必须在感知均匀空间(OKLCH/OKLab/Lab)——sRGB 线性插值的中间点会掉进灰/浑。

skills/color-motion/SKILL.md
Linearly interpolating two colors in sRGB passes through a desaturated, often gray or muddy midpoint (blue->yellow goes through gray; blue->red through muddy purple).
这里在做什么:给出「渐变发灰」这一最常见症状的机理,并直接对应 CSS 的 `linear-gradient(in oklch, …)` 与 @property 注册(见下条)。

「贵」的渐变是配方而非灵感:多径向叠加 + 颗粒 + 8-20s 慢漂移。

skills/color-motion/SKILL.md
- **Animate slowly**: drift gradient positions over 8-20s with `ease-in-out alternate`. Slow is premium; fast gradient motion looks like a screensaver.
这里在做什么:把「高级感」量化成三条可执行动作(慢、叠、加颗粒),并给出周期区间与理由(快 = 屏保感)。

颜色要真的补间而不是跳变,必须用 @property 注册(未注册的 CSS 自定义属性是离散跳变)。

skills/color-motion/SKILL.md
`@property` registration is what makes the color actually interpolate (unregistered custom properties jump instantly).
这里在做什么:解释一个极常见的 CSS 陷阱,并给出可复制的注册 + transition 片段;这也是「单文件 HTML 交付」能自洽的技术前提。

调色是有序操作:曝光/白平衡 → 对比 → 中间调/饱和 → 分离调色 → 整体统一;顺序改变结果。

skills/color-motion/SKILL.md
Apply grading operations in this order; reordering changes the result:
这里在做什么:把调色从「拖滑块」变成有依赖关系的流水线,并给经典电影感配方(teal 阴影 + orange 高光、保持克制)。

渲染颜色管理把「预览对、导出灰」归因到四段 gamma 不匹配(工作空间、内嵌 tag、播放器解释、系统显示),而不是画面问题。

skills/color-motion/SKILL.md
the cause is a gamma/transfer mismatch across four stages — AE working space, the render's embedded tag, the player's interpretation, and the display/OS gamma — not the artwork.
这里在做什么:给出定位思路(问题在链路而非素材),配套可验的数值法(放 50% 灰补丁,导出后回读 128→150+ 即证明被提亮)与 ffprobe 查 tag。

验收环境必须避开 QuickTime:以 Chrome/Premiere/Resolve 为准。

skills/color-motion/SKILL.md
**Never grade or approve to QuickTime** — Chrome, Premiere, or Resolve is the correct reference for web delivery.
这里在做什么:把「同一文件两处不一样」的裁决权明确交给 web 交付侧播放器,避免按 QuickTime 调色后在浏览器翻车。

交付回路是「单文件 HTML + 冻结帧截图」:?t=N 用负延迟把动画钉在指定秒,再逐帧查 banding 与浑浊中点并迭代。

skills/color-motion/SKILL.md
**Verify loop — render → freeze → screenshot → check:**
这里在做什么:把「动画类视觉产物如何被 agent 检查」变成确定性流程;随后用 npx playwright 截图(见 external_deps,也是本 skill 判橙的原因)。

2核心能力

01调色板构建:OKLCH 记号、等视觉重量的色相旋转、中性色向主色相微染
02渐变配方库:双停止/网状(多径向)/锥形/漂移动画/颗粒去条带
03感知插值与调色板代码:culori / d3-interpolate / @property 三种实现路径
04调色顺序清单与实现层(CSS filter 快速版 / GLSL 分离调色)
05视频/渲染颜色管理:决策树、AE 项目与输出模块设置、逐平台导出色彩标签、QuickTime gamma 规避
06数值化验证:50% 灰测试补丁法 + ffprobe 查 color_primaries/color_transfer/color_space
07独立 HTML 交付契约(单文件、单一动画驱动、freeze harness、reduced-motion)
08验收回路:渲染 → 冻结 → 截图 → 查 banding/浑浊中点 → 原地迭代重截

3外部依赖

KindDependency / Endpoint
clinpx playwright screenshot(冻结帧截图,验收回路唯一命令)
cli打包助手 scripts/seek-shot.sh 与 scripts/contact-sheet.sh(仓库根,不在本 skill 目录;内部同样走 playwright 截帧 + ffmpeg 拼图)
packageculori(感知插值示例与色相路径控制)
packaged3-interpolate / d3-scale-chromatic(Lab/HCL 插值与色阶量化)
network交付 HTML 的可选 CDN 引用(仅当需要 JS 插值库时才引;属产物期由浏览器加载)
cliffprobe / ffmpeg(校验内嵌色彩标签 color_primaries / color_transfer / color_space)

4管控建议与判定依据

建议配套管控措施
面向 Agent
分级或逐次授权,建议在沙箱运行
面向管理者
审批流程、可回滚、全程审计
判定依据(文件路径与关键语句摘要)
  • scripts/: 执行本地脚本或命令: npx playwright screenshot --wait-for-timeout=500 "file://$PWD/color.html?t=
  • 网络端点: 声明外部网络访问: npx 包解析:未装 playwright 时会从 npm registry 拉取 playwright 包(首次还会下载 Chromium 二进制)
  • 本地工作目录: 文件读写与工件输出: frame-mid.png / frame-0.png 等截图文件写入当前工作目录(由 playwright 写出,非 skill 代码)。
审计说明: 。触发橙档的是「依赖第三方远程包/镜像」:SKILL.md 的验收回路直接给出 `npx playwright screenshot …`——本机未缓存 playwright 时会从 npm registry 拉包并首次下载 Chromium 二进制(同仓 logo-animation、remotion-video 的先例为同一判定)。无凭证读取、无环境变量、无业务 API、无 TLS 降级、无绕过行为;触发条件明确(仅当 playwright 未预装/未缓存时发生网络拉取,预装后即纯本地)。另注:正文引用的 scripts/seek-shot.sh 与 contact-sheet.sh 位于仓库根目录、不在本 skill 目录内,按判级口径只写入 risks 不改档位。

5第二遍独立确认

  • [ok] npx playwright 是否真的写在 SKILL.md(橙档关键证据) — SKILL.md 的 Verify loop 步骤 4 之后给出该命令原文(含 --wait-for-timeout=500 与 file://$PWD/color.html?t=8);同段第 3 步要求检查 banding 与浑浊中点。命令是验收回路的组成部分,不是可选项。
  • [discrepancy] 正文引用的 scripts/ 助手是否随本 skill 目录分发 — SKILL.md 写「**Packaged helper** (`scripts/`)」,但 pin 目录下 skills/color-motion/ 只有 SKILL.md、references/、0 字节 README —— `scripts/` 实际在**仓库根**(scripts/README.md 自述为 verify-loop toolkit)。因此只装单个 skill 目录的镜像包里该引用悬空;同名写法也出现在 logo-animation、motion-background、remotion-video。对 pin commit 有效,属真实出入。
  • [ok] 是否有其他隐藏的执行路径(下载/接口调用) — 全目录搜 curl/wget/fetch/XMLHttpRequest/api/child_process/process.env:零命中;唯一网络相关字符串是 npx 与交付 HTML 的 CDN 说明。
  • [ok] culori / d3-interpolate 是否只是代码示例而非被执行的依赖 — 两处 import 均在 references/palettes-and-interpolation.md 的 Perceptual interpolation in code 小节内,作为给实现者抄的片段;skill 无 package.json、无安装步骤、不解析这些模块。
  • [unlocatable] 颜色管理结论(QuickTime gamma、四段链路)是否可在源码内验证 — 这些是有明确立场的技术断言,但 pin 仓库内没有引用来源、没有测量脚本或样本文件;本次只读侦查也不运行渲染。文中给出的自证方法(50% 灰补丁回读、ffprobe 查 tag)用户可自行复现,故不视为空口断言,但数值本身未在本次核对。
  • [ok] iart.ai 链接的性质 — reference 页脚为署名/营销链接(utm_source=github&utm_content=skill_footer),无跟踪脚本、不参与执行。

6结论

  • 同时覆盖 web 与视频两端,且把「为什么」讲到可验证层(sRGB 中点掉灰、gamma 四段链路)
  • 「高级感」被拆成可执行配方(多径向 + 颗粒 + 8-20s 慢漂移),不是形容词
  • 给出可机械验收的交付契约(单 HTML、单一动画驱动、?t=N 冻结、reduced-motion)
  • 颜色管理有「不靠眼睛」的验证法:50% 灰测试补丁与 ffprobe 标签检查
  • 把裁决环境写死(不要按 QuickTime 验收),避免大量无谓返工
  • 适合: 适合做动效配色与渐变背景、需要颜色过渡真正平滑(按钮态、主题切换、loader)、要修「渐变发灰/条带」,以及遇到 AE 导出后发灰、跨平台颜色不一致、需要决定导出色彩标签的场景。也适合需要交付可截图验收的独立 HTML 颜色样张的流水线。
    不适合: 不适合:① 需严格离线、不能拉取 npm 包的环境(验收回路会失败或需预装 playwright);② 需要 HDR/广色域完整色彩科学(只到 Rec.709/sRGB 与 PQ/HLG 的导出提示层面);③ 期望 skill 自带截帧脚本的用法(本目录无 scripts/);④ 需要真实视频渲染与编码能力(那属 after-effects / remotion 类),本 skill 只做颜色决策与校验。
    Install Agent-Ready
    ① Verified Mirror 2026-09-28
    Option A · Direct DownloadDownload color-motion.tar.gz
    sha256: cb1e39e4a0e5b855…
    Option B · Copy Guide for Agent
    install.json
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 3c129f769d.