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 zenstory-ai/oh-story-dsh --skill video-referencegit clone --depth 1 https://github.com/zenstory-ai/oh-story-dshWrote 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/zenstory-ai/oh-story-dsh/video-reference)<a href="https://agentmods.dev/skills/zenstory-ai/oh-story-dsh/video-reference"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-dsh/video-reference/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/zenstory-ai/oh-story-dsh/video-reference"><img src="https://agentmods.dev/badge/skills/zenstory-ai/oh-story-dsh/video-reference.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.00098 | $0.02936 |
| Opus 5.5 | $0.00039 | $0.01174 |
| Sonnet 5.5 | $0.00020 | $0.00587 |
| Haiku 4.5 | $0.00010 | $0.00294 |
Grade A, and why
video-reference 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.
Copies of this mod
1 near-identical copy found in the catalogue:
- video-reference — 100% identical, 0 lines differ
How it starts
The opening of the file, as written. The whole thing — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.
1. 定位
本技能把一部已完成的成片拆成下一次制作可参考的方法与数值,按需在本地运行。它只写自己的测量、标注与导出物,不调用 MiMo,也不对生产流程评分或拦截。
Agent 的角色是拆片编辑:先如实记录"这部片子怎么做的"(事实),再提炼"换一部素材还能怎么用"(方法)。 两者必须分开:事实只留在本地工作目录,导出物只含方法和测得的数值。
2. 输入
- 成片文件(
.mp4 / .mov / .mkv / .webm)。 - 对这部成片跑出的视频理解产物目录
U(建议ASR_SEGMENT_SECONDS=5,窗口越短,旁白语速越准)。 本技能读取其中可选的asr_result.json、asr_timing_evidence.json、background_research.json、understanding_index.json(其characters的名字、别名与 ASR 提及都进入人名泄漏扫描); 标注时 Agent 还应看故事板 / contact sheet 与vlm_analysis.json。
没有理解产物也能跑,但旁白语速为空,泄漏扫描只剩 Agent 自己写的 entities,check 会给出警告;
看画面可用 frames --span 0,<时长> --step 2 生成的抽帧拼图。
下面的 scripts/... 均相对于本技能目录。
3. 流程
python3 scripts/reference.py measure <成片> --work-dir U # 一次 ffmpeg:切点 + 响度,按文件身份缓存
python3 scripts/reference.py frames <成片> --work-dir U --review # 逐帧看被压下的疑似切点
python3 scripts/reference.py frames <成片> --work-dir U --longest 5 # 看最长镜头里有没有漏切
python3 scripts/reference.py check --work-dir U [--json] # 校验并打印派生值
python3 scripts/reference.py export --work-dir U --out <下次运行的 work_dir>/production_reference.json
- measure 写
U/reference_measurements.json(只由脚本写):镜头切点、镜长分布、每分钟切点数、10 秒切点曲线、 整体响度 / LRA / 真峰值、逐秒短期响度。它要解码整片:5 分钟 720p 约 15–70 秒,4K 约 7 分钟;成片不变时复用, 只改--soft-score/--hard-score不重新解码。切点规则:scdet 分数 ≥10 必算;≥4 且是前后 0.3 秒内其他帧(相邻帧除外) 两倍以上的孤立峰才算。运动镜头、急推拉、闪光会被压下,并列进shots.review_windows;scdet 分数会减去前一帧的帧差, 从快速运动切进静止镜头的硬切可能只有 1 分,所以帧差本身的单侧峰(mafd_peaks)也进待复核窗口,但不会自动算切点。 - 复核切点:固定阈值在真实成片上两头都错(暗场硬切只有 5–7 分;快速运动的单个镜头每 0.2 秒一个 7–8 分的峰),
所以每次都要看图。
frames --review逐帧拼出每个待复核窗口,frames --longest 5在最长的 5 个镜头里均匀取 12 帧; 页面在U/reference_frames/,命令打印每格对应的秒数。看完写labels.cut_fixes:add漏掉的切点秒数,remove误报的切点秒数(±0.1 秒内对上测得的切点);看过无需改动就写{}。重新measure后待复核窗口数变了,旧的cut_fixes不再算数,按新窗口重看一遍。之后所有镜头数值、段内切点密度和导出都用复核后的切点。 - 标注:Agent 写
U/reference_breakdown.json的labels——音轨归属audio_spans、叙事段落sections、 字幕形态subtitles、标注依据basis。audio_spans的边界放在声音实际起止处(听得到的人声起点与止点), 不放在字幕或旁白块的开始处(按字幕出现帧定的旁白结束点实测晚 0.24–0.42 秒)。U/speech_boundary_anchors.json存在时, 用它的acoustic_pauses(start是人声停下处,end是下一句开口处)对齐边界;switch_on_cut_share只容差 ±0.25 秒, 边界放错它就只反映标注习惯。原片自带的画外音、内心独白也是原片音轨,记original_dialogue;要区分时写进 fact 和方法。 只有 labels 时就可以跑 check,它会打印derived(各音轨占比、段内切点密度、 旁白语速、声音切换与画面切点的对齐比例、分数位置的结构、第一次原声出现位置)。 - 事实与方法:在同一文件写
source_facts(带时间或测量锚点、显式entities)和methods(rule、applies_when、avoid_when、applies_to、evidence、targets)。targets只写{"from": "<测量路径>"}, 数值由 export 从当前测量填入,Agent 永远不手写数字。 - check → export:零 error 才导出;导出后对产物再做一次泄漏扫描。
What ships with it
7 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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 Changed · -4 lines eba7399c9021
- 24d ago First seen · 109 lines · 98 tokens per session scan A 88940900b89b
video-reference is a skill published in the GitHub repository zenstory-ai/oh-story-dsh (629 stars, last pushed today), licensed MIT. It adds 98 tokens to every session and 2,936 once invoked, about $0.0004 per session on Opus 5.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-10-04.
Other skills, from other repositories
story-deslop
A writing editor for Chinese web novels that detects writing patterns often associated with AI-generated text and makes the prose feel more natural.
story-long-analyze
A long-form fiction analysis workflow for breaking down a novel’s opening chapters, characters, pacing, turning points, relationships, and overall structure.
browser-cdp
Use this skill when you need to control a Chrome browser via CDP (Chrome DevTools Protocol) to reuse existing login sessions. Covers: launching Chrome in debug mode, opening URLs, waiting for page load, evaluating JavaScript, taking snapshots, and extracting auth tokens. Trigger phrases: browser automation, CDP…
workflow-manager
A writing workflow tracker for chapter-based projects. It records whether each chapter is being assembled, drafted, reviewed, confirmed, polished, or archived.
review-chapter
A six-part review of a manuscript chapter. It compares the chapter with the outline and reports quality, coverage, review status, and problems supported by evidence from the text.
revise-span
A revision workflow for changing selected passages in a manuscript. It shows the original and proposed text, then applies changes only after the author confirms them.