com um clique
viral-chaser
下载分析抖音/B站/小红书爆款视频,生成追爆报告。仅产出报告,脚本另外使用 video-product 技能根据 追爆报告.md 生成。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
下载分析抖音/B站/小红书爆款视频,生成追爆报告。仅产出报告,脚本另外使用 video-product 技能根据 追爆报告.md 生成。
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
智能搜索路由器。根据用户意图选择最佳搜索源,构造 URL 并导航,获取内容。 仅在默认搜索手段效果不佳、或需要登录自媒体平台(抖音/小红书/微博等)搜索时启用本技能; 常规通用搜索请先用 onboard 配置的搜索供应商(火山/serper/Tavily 等)。
Search WeChat Official Accounts, retrieve the account's latest post list, and fetch full article content by URL. Also supports interactive QR-code login flow for session management.
通过浏览器自动化发布视频到抖音创作者中心。纯浏览器操作方案。
平台登录态管理。约定各平台登录流程(强制有头手动登录)、探活规则、中央 cookie+UA 存储路径约定。仅管 4 个平台(douyin/kuaishou/bilibili/xhs-browse)。
发布记录追踪。使用 SQLite 数据库记录所有平台发布内容及其互动数据,按平台分表管理。三大块:与发布技能结合(发布记录 1B;打分+预测 1A 由 content-calibrator 负责)、数据更新、查询与平台设置。
小红书图文内容调研与对标分析。搜索小红书图文笔记,下载图片和正文进行深度分析。当用户要求小红书竞品分析、对标分析、图文内容调研时触发。视频内容请使用 viral-chaser 技能。
| name | viral-chaser |
| description | 下载分析抖音/B站/小红书爆款视频,生成追爆报告。仅产出报告,脚本另外使用 video-product 技能根据 追爆报告.md 生成。 |
| metadata | {"openclaw":{"emoji":"🎯","requires":{"bins":["node","ffmpeg"],"env":["VOLC_ASR_APP_ID"]}}} |
本技能的语音转写(ASR)使用火山引擎豆包语音 · 录音文件极速版(资源 ID volc.bigasr.auc_turbo)。即便账号已订购火山 Code Plan,语音模型仍需单独开通,否则调用会返回鉴权/权限错误。
判断是否已开通:直接跑 Step 3 分析器,若 ASR 报错含 status=45xxxxx 或权限相关码,说明未开通,按下面流程开通一次即可。
开通流程(未开通时,根据下面提示并引导用户在火山引擎控制台操作一次):
Speech_Recognition_Seed_AUC2000000854311547266,资源 ID volc.bigasr.auc_turbo),点击 「试用」(赠送 20 小时,可先用,后续再点开通付费)VOLC_ASR_APP_ID + VOLC_ASR_ACCESS_KEY);Secret Key 不需要给(旧控制台账号用不上,填进 X-Api-App-Key 反而会报 45000010 appid mismatch)。由小贝写入实例环境变量。环境变量(开通后由小贝配置,用户无需手动设置):
| 变量 | 说明 |
|---|---|
VOLC_ASR_APP_ID | 旧控制台数字 APP ID(如 1216386473),用于 X-Api-App-Key。旧控制台双头鉴权必需 |
VOLC_ASR_ACCESS_KEY | 旧控制台 Access Token,用于 X-Api-Access-Key。与 VOLC_ASR_APP_ID 成对使用 |
VOLC_ASR_APP_KEY | 新控制台 APP Key,用于 X-Api-Key 单头鉴权。仅新控制台账号需要;旧控制台账号不要把 Secret Key 填到这里(会报 45000010 appid mismatch) |
VOLC_ASR_RESOURCE_ID | 资源 ID,默认 volc.bigasr.auc_turbo,一般无需改 |
鉴权二选一(脚本优先旧控制台双头):同时给出
VOLC_ASR_APP_ID+VOLC_ASR_ACCESS_KEY→ 旧控制台双头;否则用VOLC_ASR_APP_KEY→ 新控制台单头。旧控制台X-Api-App-Key要的是数字 APP ID,不是 Secret Key。
写入流程:用户把
VOLC_ASR_APP_ID/VOLC_ASR_ACCESS_KEY(或新控制台的VOLC_ASR_APP_KEY)交给小贝后,小贝应 spawn 一个IT engineer作为 subagent 去把这两个变量添加到实例环境变量中——IT engineer 掌握如何在本机环境变量 / 服务配置里安全添加此类密钥的规范。小贝本人不要直接写环境变量文件。
关于接口选型:火山 ASR 分录音文件标准版 2.0(
volc.seedasr.auc,单价最低,但只接受音频公网 URL,需自备 TOS 对象存储)、极速版(本技能采用,支持本地文件 base64 直传、一次返回)、闲时版(24h 内返回,不适合交互流程)、流式(实时上屏用)。viral-chaser 输入是本地 audio.wav,极速版免托管、原生返回时间戳,综合最合适。若后续为降本要切标准版 2.0,需额外引入 TOS 上传环节。
Use this skill when:
本技能仅产出追爆报告,不生成脚本,不制作视频。报告产出后,直接进入 video-product 技能,按追爆报告生成脚本并完成后续生产。
Supported platforms: 抖音(Douyin)、B 站(Bilibili)、小红书(XHS — 仅视频笔记)
Not supported: 微信视频号、TikTok
本技能涉及多步骤生产流程,你应该 self-spawn 一个 subagent 来执行,原因:subagent 独立上下文,不会因对话历史积累而降低输出质量。
你只负责跟进subagent的执行,避免它们长时间卡在某个步骤,必要时可以提供提示或调整执行策略。
Before anything else, create the working directory for this video under output_videos/:
VIDEO_SLUG="<platform>-<contentId>" # e.g. douyin-7389abc or bilibili-BV1xx
mkdir -p "output_videos/${VIDEO_SLUG}/references"
All downloaded files, analysis results, and generated reports will be saved under this directory. The references/ subdirectory holds the raw assets (video, audio, key frames) downloaded by the analyzer script.
一条命令闭环:先探活、再下载、再 ASR、再抽帧。探活已合并进脚本,无需单独跑 check-login。
viral-chaser <url> [--no-frames]
<url>: Full or short-link URL of the video(支持短链,如 xhslink.com/o/xxx、v.douyin.com/xxx、b23.tv/xxx,脚本内部跟随重定向解析)--no-frames: Skip key frame extraction (faster, audio-only analysis)OUTPUT_DIR(环境变量):落盘目录,必须指向 Step 1 建的 references/ 子目录⚠️ exec allowlist 注意:
OUTPUT_DIR=... viral-chaser ...内联 env 前缀会触发 allowlist miss。通过 exec 工具调用时,把OUTPUT_DIR放到 exec 的env字段里传,不要写成内联前缀;同理避免mkdir ... ; echo这类分号复合命令。脚本本身已正确读取OUTPUT_DIR落盘,问题只在调用规范。
内置探活(_shared/check-session.ts):douyin 抓取前先做两层探活(Tier1 cookie 关键字段 + Tier2 平台 pong,pong 带 TTL 缓存);bilibili 公开视频免登录,跳过探活。xhs 走无 cookie HTML 路线(见下),不依赖签名/cookie,跳过探活——探活 user/me 通过也不代表 feed 签名路径被接受,HTML 路线根本不走签名,无需探活。
The script outputs a JSON object to stdout. Read it and proceed with analysis.
Output JSON structure:
{
"ok": true,
"platform": "douyin",
"metadata": {
"contentId": "...",
"title": "...",
"desc": "...",
"author": "...",
"durationSeconds": 89,
"coverUrl": "...",
"stats": { "playCount": 0, "likeCount": 0, "commentCount": 0 }
},
"transcript": {
"text": "全文转录...",
"segments": [{ "start": 0.0, "end": 5.2, "text": "开场文案" }],
"estimated": false
},
"frames": ["output_videos/<slug>/references/frames/frame_00_0s.jpg", "..."],
"localPaths": {
"video": "output_videos/<slug>/references/video.mp4",
"audio": "output_videos/<slug>/references/audio.wav",
"tmpDir": "output_videos/<slug>/references"
}
}
transcript.estimated: false 表示 segments 是火山 ASR 返回的真实时间戳(utterance 级,毫秒精度转秒);true 仅在接口异常未返回 utterances 时出现,此时按句切分全文并按字数比例在音频时长上估算分段,时间区间为近似值。正常情况下始终为 false。Exit codes:
0 = Success1 = Error(URL invalid / download failed),或 SIGN_UNAVAILABLE(签名缺 OFB_KEY,重登救不了,交 IT engineer 配凭证)2 = SESSION_EXPIRED(cookie 失效)— 走 login-manager 重登(login-manager --platform <p> 导出+验证),重试一次For each path in frames, use the Read tool to load the image and analyze it visually.
Read: output_videos/<slug>/references/frames/frame_00_0s.jpg
Read: output_videos/<slug>/references/frames/frame_01_3s.jpg
...
After receiving the JSON output and reading the frames, generate a 追爆报告 in Markdown and save it to output_videos/<slug>/raw_article.md.
1–2 sentences: what core value does this video deliver to viewers?
Based on transcript.segments where start < 10:
Based on transcript segments, divide into logical sections:
| 段落 | 时间区间 | 功能 | 核心内容 |
|---|---|---|---|
| 开场 | 0–Xs | 钩子/引入 | ... |
| 主体一 | X–Ys | 价值/信息传递 | ... |
| 主体二 | Y–Zs | 深化/转折 | ... |
| 收尾 | Z–结束 | CTA/情绪收尾 | ... |
Rate each element as 强 / 中 / 弱 with a one-line explanation:
| 元素 | 评级 | 说明 |
|---|---|---|
| 前 3 秒吸引力 | ||
| 痛点共鸣度 | ||
| 悬念设置 | ||
| 情绪触发 | ||
| 价值清晰度 | ||
| CTA 效果 | ||
| 视觉冲击(基于关键帧) | ||
| 节奏把控 |
After reading the frame images:
If --no-frames was used or frames is empty, note: "(跳过视觉分析,请重新运行不带 --no-frames 参数)"
3–5 concise, directly actionable techniques. One sentence each.
One sentence describing the primary audience persona.
追爆报告产出后,直接进入 video-product 技能流程,并应该明确提示后续工作流程:工作目录为 output_videos/<slug>/,直接按raw_article.md制作脚本.
output_videos/<slug>/ — all downloaded assets and analysis reports are kept together. The references/ subdirectory contains raw assets from the analyzer.mediaFormat is DASH, the video and audio streams are separate. The downloaded video.mp4 contains the video stream only; audio is in audio.wav after extraction. This is transparent to the analysis workflow.platforms/xhs.ts 直接 GET www.xiaohongshu.com/explore/{note_id}?xsec_token=... 笔记详情页 HTML,解析 og:meta + window.__INITIAL_STATE__ 拿标题/封面/视频地址/时长/互动计数(_shared/xhs-html-note.ts)。不走 feed API(/api/sns/web/v1/feed 需 xRap relay 签名,极易 406/500/滑块,且探活 user/me 通过不代表 feed 签名路径被接受,会出现「探活绿、feed 红」假绿)。输入必须是带 xsec_token 的分享链接(xhslink.com/... 或 www.xiaohongshu.com/explore/...?xsec_token=...),脚本从短链展开后的 URL 抽 token。无 cookie 抓不到(滑块/空页)时,若本机有 xhs-browse cookie 则用同指纹 UA + cookie 回退重试一次。volc.bigasr.auc_turbo),原生返回 utterance 级真实时间戳(start_time/end_time,毫秒),脚本转成秒后填入 transcript.segments,estimated=false。仅在接口异常未返回 utterances 时,才按句切分全文并按字数比例在音频时长上估算分段(estimated=true)作为兜底。开通/鉴权见文首「前置:开通火山语音模型」。