Unspool · 总裁速览
把视频/音频内容从"必须线性听完"重组为"可扫描结构化阅读"。核心动作是重组,不是压缩 —— 不挑要点、不写 TL;DR、不做主观判断,只把线性内容变成密集分章节的 bullet 笔记。
何时触发(默认触发)
用户发来视频/音频 URL(youtube.com、bilibili.com、douyin.com、xiaohongshu.com、xiaoyuzhoufm.com 等),或分享含媒体链接的消息 → 默认触发本 skill,即使用户说的是"总结一下""帮我看看"。
触发后立即给用户发一条开工消息(单独一条,不与任何候选列表合并),然后不等回复直接执行:
收到,我用「总裁速览」把它整理成不遗漏信息的结构化笔记,需要几分钟。如果你只想要几句话的普通摘要,现在告诉我即可。
(按用户的对话语言微调。)用户若回复只要普通摘要 → 停掉本 skill,按普通对话回应。
何时不触发
- URL 是文章/网页(非视频音频)
- 用户明确说只要 TL;DR / 几句话概括 / 不要全文笔记
使用方法(两步:先预检,再处理)
第一步:预检
python -m scripts.preflight "<URL>"
看输出:
ASR_NEEDED:行(无字幕时出现)→ 转述给用户(让其知道这单需要语音转写、按音频时长计费);CHOOSE 场景下也作为选源参考DECISION: DIRECT(...)→ 直接进第二步,处理原链接DECISION: CHOOSE(...)→ALTERNATIVES:下列出了更好的替代源。把候选用自然语言呈现给用户(平台 / 时长 / 是否有字幕 / 是否可能是全集),让用户选编号或选 0 用原链接- 例:"你发的小红书视频需下载完整视频较慢。我在 YouTube 找到了同一个视频(时长一致、有字幕,可秒出且省钱)。用哪个? 1. YouTube 228min 有字幕 [链接] / 0. 用原链接"
预检规则脚本已实现(<30min 或有字幕 → DIRECT;≥30min 无字幕 → 搜同款,有更优才 CHOOSE),你只管看 DECISION。
第二步:处理(用用户选定的 URL)
python -m scripts.run "<选定的 URL>"
可选 --config /path/to/config.yaml(默认读 ~/.总裁速览/config.yaml)。工作目录在本 Skill 包根目录;未配置时引导用户看 README.md。
前提:建议用户在本机浏览器登录常用网站(B站/抖音等),cookie 自动复用,可免 ASR / 解锁抖音。
返回给用户的内容
仅转发脚本 stdout 输出(一行完成提示 + 文件路径 + 标题·时长)。不要在回复里嵌入文档正文、要点摘录、章节预览 —— 所有内容都在文档里。
出错或需要平台细节时
读 docs/troubleshooting.md(各平台处理路径、抖音三级兜底链、cookie 细节、错误处理表)。日常触发不需要读它。
输出原则(产品哲学)
绝对不要修改 scripts/summarizer.py 中的 SYSTEM_PROMPT,除非用户明确要求调整产品哲学。该 prompt 是产品差异化核心:不筛选、不修辞、不主观评分、电报式密集分章节。