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 agentmods add skills/microsoft/researchstudio/paper2reelnpx skills add microsoft/ResearchStudio --skill paper2reelgit clone --depth 1 https://github.com/microsoft/ResearchStudioWrote 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/microsoft/researchstudio/paper2reel)<a href="https://agentmods.dev/skills/microsoft/researchstudio/paper2reel"><img src="https://agentmods.dev/badge/skills/microsoft/researchstudio/paper2reel.svg" alt="Measured on agentmods" 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 | $0.00043 | $0.04072 |
| Opus 5 | $0.00022 | $0.02036 |
| Sonnet 5 | $0.00009 | $0.00814 |
| Haiku 4.5 | $0.00004 | $0.00407 |
Grade A, and why
paper2reel 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 4d 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 — 417 lines — stays where its author put it; the contents beside it link to each section on GitHub.
paper2reel - aligned artifact viewer
paper2reel builds a browsing layer over existing artifacts. It does
not replace or mutate paper2poster, ppt-master, paper2blog, or
paper2video outputs.
The key artifact is:
content_alignment.json
It maps the canonical section ids from paper2assets's assets/meta/sections.json to:
- poster DOM targets, usually
[data-section="<id>"]; - slide frame targets, usually one or more slide indexes;
- blog blocks rendered from the same paper2blog content used for final DOCX;
- video clips cut from the same final, Bottom-Bar-subtitled MP4 and timeline used for paper2video delivery.
This sidecar lets a wrapper UI switch between Poster / Slides / Blog and jump to the corresponding location without adding visible engineering tags to the deliverables themselves.
Viewer UX Contract
The user-facing viewer must preserve the original poster as the default screen.
When reel.html first opens, it should show only the poster itself:
no permanent wrapper bar, no tab strip, and no visible instructions outside the
poster. The wrapper controls are discoverable through keyboard shortcuts and
section interactions:
vtoggles the top section menu.htoggles keyboard shortcut help.atoggles the poster's existing audio controls.stoggles fullscreen.dtoggles the poster debug/hover controls.- double-clicking a poster section opens a large modal.
- clicking or double-clicking the poster title opens the full-paper modal.
The modal must use the section-media layout: video with baked Bottom Bar subtitles on the left, blog on the right, EN/中文 switching, slide thumbnails below the video, and a draggable splitter. Do not replace this with a Poster / Slides / Video / Blog tabbed viewer. A tabbed viewer is a regression because it drops the section-level interaction contract.
Video seekability is part of the contract, not a hosting detail. The modal's
video progress bar and slide thumbnails must actually seek playback. Serve and
test reels with the Range-capable paper2reel server below; do not use
python -m http.server as a passing preview or QA environment because it may
answer MP4 Range requests with 200 OK instead of 206 Partial Content.
What ships with it
9 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.
- assets/reel-wordmark.png 15 KB
- assets/section_modal_contract.json 2.6 KB
- README.md 6.4 KB
- scripts/build_poster_slides_view.py 112 KB runs code
- scripts/build_reel_from_paper.py 22 KB runs code
- scripts/build_section_media_from_timeline.py 21 KB runs code
- scripts/check_reel_package.py 136 KB runs code
- scripts/reel_downloads.py 32 KB runs code
- scripts/serve_reel.py 8.4 KB runs code
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.
- 4d ago First seen · 417 lines · 43 tokens per session scan A 1f60d2ac1bce
paper2reel is a skill published in the GitHub repository microsoft/ResearchStudio (2,654 stars, last pushed yesterday), licensed MIT. It adds 43 tokens to every session and 4,072 once invoked, about $0.0002 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
guizang-ppt-skill
生成横向翻页网页 PPT(单 HTML 文件),含 WebGL 背景、演讲者视图、观众屏同步、讲稿备注、章节幕封、数据大字报、图片网格等模板。提供两种风格:① "电子杂志 × 电子墨水"(衬线 + 流体背景 + 暖色) ② "瑞士国际主义"(无衬线 + 网格点阵 + IKB/柠檬黄/柠檬绿/安全橙高亮)。当用户需要制作分享 / 演讲 / 发布会风格的网页 PPT,或提到"杂志风 PPT"、"瑞士风 PPT"、"Swiss Style"、"horizontal swipe deck"时使用。.
fin-arch-diagram
生成研究/项目架构图、流程图、层次图(swimlane / processflow / hierarchytree)。适合 PPT 汇报、技术文档、综述插图。输出风格接近 draw.io,可选 graphviz(高质量)/ matplotlib(零依赖)双后端。.
impress-presentations
Use when creating, opening, or editing LibreOffice Impress ODP presentations, or PPTX decks only when PowerPoint compatibility is explicitly required.
presentation-forge
创建中文商业汇报,从主题、文档或 slides.md 生成原生可编辑 PPTX,提供 Markdown-first 实时画布、样式切换和同版导出,使用 image-2 辅助生成独立视觉资产,把截图或图片型幻灯片重建为可编辑 PPTX/SVG,或用原生 PPTX 模板填充新内容。用户要求制作售前方案、项目汇报、产品介绍、行业分析、培训材料、像 Markdown 一样编辑并导出、AIPPT 式可编辑演示、套用 PowerPoint 模板、图片页转可编辑 PowerPoint、重建幻灯片或输出 SVG 时使用。.
dayan-deck
大衍演示设计:当用户要把主题、提纲或资料做成可读、可演示、可验证的 HTML 幻灯片时使用;先锁定叙事和视觉系统,再生成逐页可编辑的单文件演示,并运行确定性检查。不要用于只需长文档、静态海报或未经核实的数据包装。.
humanize-ppt
A presentation system for agent-made PPTs — born for the talk, not just the template. It turns raw material into an AST (audience-state-transfer) outline with per-page visual-enhancement decisions (image / SVG diagram / video), hands a production brief to a downstream renderer (HTML-PPT skills or native PPTX), then…