Douyin Video Strategist
Use this skill for three clearly separated jobs:
- Generate a short-video strategy report from one Douyin video link.
- Create or list reusable IP style profiles.
- Analyze a Douyin account and optionally turn it into an IP style profile.
Do not mix the style-profile creation flow into the video-report flow unless the user explicitly asks to create a new style first.
Do not ask the user to manually copy cookies. If DY_COOKIES is missing, the relevant script opens Edge/Chrome, waits for Douyin login, saves cookies, and continues.
Customer-Facing Entrypoints
When explaining the product to users, use these simple choices:
生成视频报告: Paste a Douyin video link, optionally choose a saved style, and get one final HTML report.创建IP风格: Paste a Douyin account homepage or upload corpus/docx, save it as a reusable style profile.账号分析: Paste a Douyin account homepage, get a concise account analysis, then decide whether to save it as an IP style.
For first-time users, use the default style automatically:
小白投教(技术分析 / 新手教学)
Then remind them they can create their own IP style after the report is generated.
For first-time users, recommend:
- Create an IP style only if they want long-term brand consistency.
- Otherwise, paste a video link and describe the desired style in plain language.
Setup
From the skill folder:
cd scripts
python install_minimal.py
The package bundles the minimal Node dependency used by the Douyin signer (scripts/node_modules/jsrsasign). Do not run npm install.
Flow A: Generate Video HTML Report
Use this when the user gives a Douyin video/work link and wants爆款拆解、可拍脚本、发布包装、HTML报告.
If the user asks for a saved style, list profiles first:
python scripts\llmagent_video\list_ip_profiles.py
Use exactly one style profile per video report.
- If the user does not mention a saved style, do not stop to ask. Use the default profile
小白投教, displayed as小白投教(技术分析 / 新手教学). - If the user chooses another saved style, such as
小白投教, pass only that profile with--profile "小白投教"and do not also use the default style. - If the user writes extra preferences in the requirement, treat them as
本次要求, not as another style. Never say two styles were fused.
Prepare materials:
python scripts\llmagent_video\prepare_video_for_workbuddy.py "DOUYIN_URL" --requirement "USER_REQUIREMENT"
With a saved profile:
python scripts\llmagent_video\prepare_video_for_workbuddy.py "DOUYIN_URL" --requirement "USER_REQUIREMENT" --profile "PROFILE_NAME"
This creates internal material files under:
scripts/llmagent_video/outputs/workbuddy_materials
Read the generated *.workbuddy_prompt.md, use WorkBuddy's own model to produce the final answer, and save that answer as an internal UTF-8 markdown/text file in the current delivery/output directory.
The final answer must include exactly:
内容关键词:关键词1、关键词2、关键词3、关键词4
一、这个视频为什么能爆
核心爆点:...
可复用结构:...
借鉴提醒:...
二、可拍脚本
【0-3秒 开头钩子】...
【3-10秒 痛点放大】...
【10-40秒 方法/案例】...
【40-55秒 总结升华】...
【55-60秒 关注/私信/评论引导】...
三、发布包装
标题:...
标题:...
标题:...
封面字:...
封面字:...
封面字:...
评论区置顶引导:...
Rules for model output:
- Do not use Markdown tables.
- Do not use blockquotes (
>). - Do not use code blocks.
- Do not add extra
##or###headings beyond the three main sections. 内容关键词must be based on the original video content. Use entities, concepts, and topic words only. Do not use style words, time ranges, full title sentences, HTML fragments, or generic words.- Section 2 must be a complete read-aloud shooting script, not an outline. Unless the user asks for a shorter version, keep the script body at least 80% of the original transcript length and usually 450-650 Chinese characters for a 60-second口播.
Render the final visual report:
python scripts\llmagent_video\finalize_video_report.py --material "MATERIAL_JSON" --result-file "FINAL_OUTPUT.md" --output "WORK_ID_final_report.html"
Only show or link one final HTML deliverable:
WORK_ID_final_report.html
The markdown/text result file is internal and should not be shown unless the user explicitly asks for raw text. Do not show multiple HTML variants, intermediate .md, material JSON, task files, or a long change log.
After the HTML is generated, answer the user with a short customer-facing message only:
已生成报告:WORK_ID_final_report.html
本次使用风格:小白投教(技术分析 / 新手教学)
本次要求:USER_REQUIREMENT
可选风格:
1. 小白投教(技术分析 / 新手教学) · 默认
2. 温义飞的急救财经(急救财经 / 新手解释)
3. 毛驴老师(技术分析 / 新手教学)
新建风格:
发送“创建IP风格 + 风格名称 + 抖音账号主页/语料文档”。
例如:创建IP风格 毛驴老师 https://www.douyin.com/user/xxx
也可以上传 docx/txt 语料。创建后,下次生成视频报告时就能选择这个风格。
The line 本次使用风格 must contain exactly one profile name. Do not write phrases like 融合了 A + B, 内置默认 + 用户风格, or 默认风格并融合....
If no saved profiles exist, write:
暂无已保存风格。
新建方式:发送“创建IP风格 + 风格名称 + 抖音账号主页/语料文档”。
例如:创建IP风格 毛驴老师 https://www.douyin.com/user/xxx
也可以上传 docx/txt 语料来创建。
Flow B: Create Or Manage IP Style Profiles
Use this when the user says they want to save a personal/IP/账号 style for future scripts.
First list existing profiles:
python scripts\llmagent_video\list_ip_profiles.py
If the user wants to create a new style, ask for:
- Style name, for example
maolv. - Douyin account homepage URL, uploaded
.docx/.txt, pasted corpus, or both.
Create profile from account:
python scripts\llmagent_video\create_ip_profile.py --name "PROFILE_NAME" --account-url "USER_URL"
Create profile from document/corpus:
python scripts\llmagent_video\create_ip_profile.py --name "PROFILE_NAME" --docx-file "CORPUS.docx"
Create profile from both:
python scripts\llmagent_video\create_ip_profile.py --name "PROFILE_NAME" --account-url "USER_URL" --docx-file "CORPUS.docx"
Profiles are saved under:
scripts/llmagent_video/profiles
After creation, summarize the saved style in user-facing language:
已创建风格档案:毛驴老师(技术分析 / 新手教学)
定位:...
语气:...
常用开头:...
常用结构:...
以后生成视频报告时,可以选择这个风格。
Flow C: Account Analysis
Use this when the user gives a Douyin user homepage link and asks for账号分析、账号信息、作品表现、这个账号怎么样.
Track account:
python scripts\llmagent_video\track_account.py "USER_URL" --max-works 30
Do not export Excel by default in WorkBuddy. Excel is only for explicit user requests like “导出 Excel / 给我表格 / 给领导展示”.
After reading the generated snapshot JSON, answer with a concise account analysis, not raw data dump:
账号分析
基础数据:
- 昵称:
- 粉丝:
- 总获赞:
- 近期作品数:
内容表现:
- 近期最高赞作品:
- 互动较高作品:
- 平均点赞 / 评论 / 收藏:
账号定位判断:
- 这个账号主要讲什么:
- 面向谁:
- 语气和表达方式:
可参考点:
- 值得学习的选题:
- 值得学习的标题/开头:
- 适合复用的内容结构:
是否沉淀为风格:
要不要把这个账号保存成一个 IP 风格?如果要,请告诉我风格名称,例如“毛驴老师”。
Only if the user explicitly asks for Excel, export it:
python scripts\llmagent_video\export_account_excel.py "SNAPSHOT_JSON"
If the user says yes to saving as a style, run:
python scripts\llmagent_video\create_ip_profile.py --name "PROFILE_NAME" --account-url "USER_URL"
Then show:
已创建风格档案:PROFILE_NAME(描述)
以后生成视频报告时,可以选择这个风格。
Notes
- Do not include or expose
.env, cookies, or API keys in answers. - The default ASR model is
tinyfor speed. Use--model smallwhen the user wants better transcript quality. - If Douyin returns
verify_check, tell the user to open Douyin in the authorized browser and complete verification.
微信扫一扫