Duo 是一个 HyperFrames 组合技能,用途是把任意两块 HTML 屏幕内容合成到一张固定照片上:照片是双手握着一部展开的折叠屏手机,两屏均被留白。你只需填充两个屏幕插槽,rig 会按手机真实的圆角几何做遮罩。
主要能力:固定 1448×1086 @ 30fps 组合;左屏 495×849、右屏 498×849 的 DOM 视口;内置一个缓慢推镜作为唯一 rig 运动;可选复制真实的 TikTok / Instagram 图标资源;提供快照、检查与渲染命令。手机、手、边框与铰链均为照片内容,不可重绘、重建或用 CSS 模拟,也不要替换成别的图片;屏幕矩形、圆角半径与铰链分隔是逐像素测量所得,不要编辑 rig。
使用方式:需 Node 18+ 与 HyperFrames CLI(通过 npx hyperframes@latest,@latest 可变,若要字节一致的重渲染建议固定版本)。脚手架命令:node <SKILL_DIR>/scripts/build.mjs --out ./foldable-meme --duration 10 --icons tiktok,instagram。之后在每个 .content 内做正常 DOM 布局,视频用 <video class="clip" data-start data-duration muted playsinline>,所有补间加到标记钩子内的 tl,不新建第二个 gsap.timeline。检查与快照:npx hyperframes@latest check ./foldable-meme 与 npx hyperframes@latest snapshot ./foldable-meme --at 1,4,7 --no-end;仅在用户要求时渲染:npx hyperframes@latest render ./foldable-meme -o ./foldable-meme/renders/v1.mp4。
适用场景:需要“手机上两件事并排”的镜头,如应用对应用、信息流对信息流、两个聊天回答同一提示、同一产品两个版本。不适用单部手机、笔记本或用户自备真实设备边框的情形。
限制与副作用:渲染非完全离线,预览/渲染时从 cdn.jsdelivr.net 加载 GSAP(固定 3.14.2);CLI 来自 registry.npmjs.org。禁止 repeat:-1、Math.random 和时钟,因为渲染是定位寻帧。检查要求 lint 0 错误,固定头部下文字或视频上白字等布局/对比警告在应用 UI 中属预期。不要为适配内容调整屏幕尺寸或圆角,应缩放应用内部字号。真实内容需真实:用户要 TikTok 或 Instagram 应取实时站点的真实 UI 字形与布局指标及真实帖子。输出保持 1448×1086(4:3),16:9 或 1:1 裁剪作为后续渲染提供。素材图中两块屏幕已留白,源自公开照片,图标为各所有者商标,仅用于戏仿/评论。