Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/ZJU-REAL/Easelnpx agentmods add skills/zju-real/easel/video-to-articleWrote 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/zju-real/easel/video-to-article)<a href="https://agentmods.dev/skills/zju-real/easel/video-to-article"><img src="https://agentmods.dev/badge/skills/zju-real/easel/video-to-article/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/zju-real/easel/video-to-article"><img src="https://agentmods.dev/badge/skills/zju-real/easel/video-to-article.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00089 | $0.01262 |
| Opus 5 | $0.00044 | $0.00631 |
| Sonnet 5 | $0.00018 | $0.00252 |
| Haiku 4.5 | $0.00009 | $0.00126 |
Grade A, and why
video-to-article 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 8d 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 — 80 lines — stays where its author put it; the contents beside it link to each section on GitHub.
视频转图文(视频 → 笔记/文章)
把视频复用成图文内容:转录 → 结构化成篇 → 抽帧配图。转录与抽帧走确定性脚本 (
asr.py/video_ops.py),结构化成文由你(LLM)完成——这是本 SKILL 的核心价值。
只出字幕文件见 auto-subtitle;翻译字幕见 subtitle-translate; 出成套小红书卡片见 xhs-note-creator;纯文案润色见 text-polisher。
输入
| 字段 | 必填 | 说明 |
|---|---|---|
| 视频文件 | 是 | 口播/讲座/直播/Vlog(没给就问) |
| 目标形态 | 否 | 小红书笔记(默认)/ 公众号文章 / 知乎回答 / 通用图文 |
| 配图数量 | 否 | 从视频抽几张配图(默认 3-6,按内容节点) |
输出(outputs/主题名/)
article.md— 成篇图文(标题 + 正文 + 小标题/要点 + 金句 + 话题标签)assets/frame-*.jpg— 抽取的配图assets/transcript.txt/assets/transcript.json— 转录原文与时间轴(备查)
执行步骤
脚本路径(相对项目根):skills/shared/scripts/asr.py、skills/shared/scripts/video_ops.py。
1. 语音转录(带时间轴)
python skills/shared/scripts/asr.py transcribe -i input.mp4 --format json \
-o outputs/主题名/assets/transcript.json
python skills/shared/scripts/asr.py transcribe -i input.mp4 --format txt \
-o outputs/主题名/assets/transcript.txt
(首次跑 ASR 需外网代理下模型,见 auto-subtitle 前置说明。)
2. 结构化成图文(你来做)
读转录,按目标形态改写成图文,不是照抄口语:
- 提炼结构:口语流水账 → 清晰的标题 + 3-6 个小标题/要点段落。
- 去口水:删"然后、就是、那个"等口头禅,书面化但保留个人风格。
- 抓金句:把视频里最有价值的观点提成金句/加粗句。
- 按形态适配:小红书(emoji、短段、闺蜜语气、话题标签)/ 公众号(成文、有起承转合)/
知乎(专业、有逻辑链)。字数与排版参考
post-formatter/social-content规范。 - 写入
article.md,并在文中标注"【配图1:xx画面 @ 02:15】"指明每张配图对应的视频时间点。
3. 抽取配图
按第 2 步标注的时间点,逐个抽帧:
python skills/shared/scripts/video_ops.py frame -i input.mp4 \
-o outputs/主题名/assets/frame-01.jpg --time 00:02:15 --width 1080
挑画面清晰、有信息量的时间点(避免糊帧/转场帧)。
4.(可选)成套卡片
需要做成小红书卡片组时,把 article.md 交给 xhs-note-creator 或 card-xiaohongshu。
Profile 感知
- 有 Profile:目标形态默认按
platforms.md主平台;语气/称呼/emoji 尺度贴合style.md; 话题标签贴合账号垂类;合规底线遵守preferences.md。 - 无 Profile:默认小红书笔记形态 + 中性口语风,末尾提示可提供 Profile 定制语气。
规则
- 是改写不是照搬转录——口语要书面化、结构化,去口水词。
- 配图从视频真实画面抽取,时间点由内容决定,避免糊帧。
- 不编造视频里没有的信息;转录不清处标注"[听不清]"而非臆测。
- 保留说话人的核心观点与个人风格,别改成千篇一律的 AI 腔(可再过 text-polisher)。
- 最终
article.md放outputs/主题名/,转录和抽帧等中间件放outputs/主题名/assets/。
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.
- 8d ago First seen · 80 lines · 89 tokens per session scan A 3540fb23de64
video-to-article is a skill published in the GitHub repository ZJU-REAL/Easel (841 stars, last pushed yesterday), licensed Apache-2.0. It adds 89 tokens to every session and 1,262 once invoked, about $0.0004 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-09-03.
Other skills, from other repositories
ppt-generation
Generate PPTX presentations from slide plan + content.
chart-visualization
Generate charts: select type, extract data, render image.
jacky-motion2-0-srt
A workflow for turning a Chinese spoken script and matching SRT subtitle file into a single 16:9 HTML information animation. SRT is a subtitle file that stores text with start and end times; the animation follows those times and adds recorded-screen placeholders when needed.
video-podcast-maker
Use when the user gives a topic and wants an automated topic-driven narrated explainer, podcast, or knowledge-summary video (Bilibili / YouTube / Xiaohongshu / Douyin / WeChat Channels), or asks to learn visual design patterns from a reference video/image. Trigger when the user mentions creating a knowledge video…
video-podcast-maker-lite
Minimal personal narrated-video pipeline — a topic becomes a talking-head-free explainer MP4 (1080p or 4K) via script → Azure TTS (SSML) → Remotion. Use when the user wants a quick narrated video from a topic without the full video-podcast-maker machinery (no extra skills, no thumbnails/shorts/publish matrix). Do NOT…
video-podcast-maker-nano
Smallest personal narrated-explainer-video pipeline (spoken narration over visuals, not an audio podcast), fully tool-agnostic and autonomous by default — topic → research ∥ asset collection → script → TTS → video → 4K render ∥ publish info + cover. The skill defines the pipeline logic and self-verified checkpoints…