Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add kangarooking/promo-creator-skills --skill promo-editorgit clone --depth 1 https://github.com/kangarooking/promo-creator-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kangarooking/promo-creator-skills/promo-editor)<a href="https://agentmods.dev/skills/kangarooking/promo-creator-skills/promo-editor"><img src="https://agentmods.dev/badge/skills/kangarooking/promo-creator-skills/promo-editor/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/kangarooking/promo-creator-skills/promo-editor"><img src="https://agentmods.dev/badge/skills/kangarooking/promo-creator-skills/promo-editor.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00054 | $0.03492 |
| Opus 5 | $0.00027 | $0.01746 |
| Sonnet 5 | $0.00011 | $0.00698 |
| Haiku 4.5 | $0.00005 | $0.00349 |
Grade A, and why
promo-editor scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 359 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Promo Editor — HyperFrames 视频合成
定位
你是宣传片剪辑师和动效师。把所有素材 + 文字 + 动画写入一个 HyperFrames master HTML,渲染成完整的 1-2 分钟宣传片 MP4。
HyperFrames 核心规范
基本结构
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;600&display=swap" rel="stylesheet">
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #000; overflow: hidden; font-family: 'Inter', sans-serif; }
.clip, video, img {
position: absolute; top: 0; left: 0;
width: 1920px; height: 1080px;
}
img { object-fit: cover; }
</style>
</head>
<body>
<div id="root"
data-composition-id="promo"
data-start="0" data-duration="60"
data-width="1920" data-height="1080">
<!-- Shots go here -->
</div>
<script src="https://cdn.jsdelivr.net/npm/gsap@3/dist/gsap.min.js"></script>
<script>
window.__timelines = window.__timelines || {};
const tl = gsap.timeline({ paused: true });
// Animations go here
window.__timelines["promo"] = tl;
</script>
</body>
</html>
关键规则
- 每个可见元素必须有唯一
id+class="clip"+data-start+data-duration+data-track-index - track-index:0 = 主画面层,1 = 文字层,2 = 装饰层,5 = 转场层
- 动画用 GSAP timeline,必须
paused: true - 分辨率:1920×1080,不能变
- 不能用
repeat: -1(改为有限次数) - 字体用 Google Fonts(Inter / Playfair Display / JetBrains Mono / Noto Sans SC)
编辑决策表(EDL)
写 HTML 之前先输出时间线:
## 编辑决策表
| 序号 | Shot | 入点 | 出点 | 时长 | 转场 | 主要动效 |
|------|------|------|------|------|------|---------|
| 1 | Hook: 数据冲击 | 0:00 | 0:05 | 5s | — | 数字 elastic 弹入 |
| T1 | 转场 | 0:04.5 | 0:05.5 | 1s | Black Dip | — |
| 2 | Problem: 痛点 | 0:05 | 0:12 | 7s | — | 截图 slide-in + 金句 fade |
| T2 | 转场 | 0:11.5 | 0:12.5 | 1s | Scale Blur | — |
| 3 | Product: 登场 | 0:12 | 0:22 | 10s | — | 代码 typewriter + reveal |
| ... | | | | | | |
[PAUSE] 输出 EDL → 等用户确认
Shot 编写模式
模式 1: 纯文字 Shot(Hook / CTA)
<div id="shot1" class="clip" data-start="0" data-duration="5" data-track-index="0"
style="position:absolute;inset:0;background:#000;display:flex;align-items:center;justify-content:center;flex-direction:column">
<div id="s1-number" style="font-size:180px;font-weight:100;color:#fff;letter-spacing:-4px">
10,000+
</div>
<div id="s1-sub" style="font-size:24px;font-weight:300;color:rgba(255,255,255,.5);margin-top:24px;letter-spacing:2px">
videos rendered this month
</div>
</div>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 359 lines · 54 tokens per session scan A 646a7e3b0349
promo-editor is a skill published in the GitHub repository kangarooking/promo-creator-skills (94 stars, last pushed 4mo ago), licensed MIT. It adds 54 tokens to every session and 3,492 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
video-hyperframes
Hyperframes / Remotion-compatible continuous frame animation with autoplay support.
paperclip-capsules
Generate, implement, or review Paperclip capsule visuals. Use for capsule art, agent capsules, heartbeat status capsules, identicons, capsule banks, or brand-usage validation.
video-hyperframes
A web-based sequence of video frames designed for Hyperframes or Remotion, with each frame presenting one visual idea.
p5-paint-animation
Turn a text prompt, a photo, or a live video clip into hand-made-looking p5.js animation — pencil handwriting that writes itself, photos repainted as brushstroke art with paint-on animation and camera moves, and short videos (iPhone Live Photos included) repainted frame-by-frame as a living painting. Trigger on…
duo
Composite any two HTML screens into a locked photo plate of hands holding an open foldable phone — a 1448×1086 still with two blank 495×849 / 498×849 screen slots (left and right) — to make side-by-side meme and comparison videos: TikTok vs Reels, ChatGPT vs Claude, "me vs my friend", before/after, two apps racing.…
x-posting-license
Turn any X (Twitter) profile into a 10.3s animated "POSTING LICENSE" card video — a fake driver's license in X's branding: the card slides in over an animated dot-matrix ground, license text types on letter-by-letter, follower / following / post counters tick up, a diagonal glimmer sweeps as the card tilts in 3D, it…