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 liusencomic-cyber/douyin-agent-kit --skill favorites-archivegit clone --depth 1 https://github.com/liusencomic-cyber/douyin-agent-kitWrote 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/liusencomic-cyber/douyin-agent-kit/favorites-archive)<a href="https://agentmods.dev/skills/liusencomic-cyber/douyin-agent-kit/favorites-archive"><img src="https://agentmods.dev/badge/skills/liusencomic-cyber/douyin-agent-kit/favorites-archive/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/liusencomic-cyber/douyin-agent-kit/favorites-archive"><img src="https://agentmods.dev/badge/skills/liusencomic-cyber/douyin-agent-kit/favorites-archive.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.00035 | $0.09361 |
| Opus 5 | $0.00017 | $0.04680 |
| Sonnet 5 | $0.00007 | $0.01872 |
| Haiku 4.5 | $0.00003 | $0.00936 |
Grade A, and why
douyin-favorites-archive scanned grade A with 1 finding 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 11d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
1. **解析博主**:抖音号无法免登录搜索(网页搜索强制登录+签名)。让 用户 在 APP 分享主页链接,`curl -sL` 解析 `v.douyin.com` 短链 → `iesdouyin.com/share/user/<sec_uid>` 即得主页 ID。**注意核对**:先用 Playwright 开主页确认昵称和抖音号与 用户 描述一致再抓(本次发现 用户 给的号码≠今早视频博主,核对避免了抓错人)。 How it starts
The opening of the file, as written. The whole thing — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agent 无关声明:本技能与具体 Agent 解耦,可在 Hermes / OpenClaw / WorkBuddy / Claude Code / Codex / 任意本地 Agent 上运行。文中提到的
vision_analyze等工具名 仅为示例:如你的 Agent 无此能力,请按agents/adapter-contract.md适配,视觉/OCR 走douyin_agent_kit.config.yaml的vision.ocr_provider/vision.fallback_ocr。 各 Agent 接入方式见agents/<你的agent>.md(设置向导生成的AGENT_SETUP.md会指向对应文档)。
抖音收藏自动归档 / 博主蒸馏(已认证批量工作流)
单条链接的转录归档走 douyin-video-transcribe skill;本 skill 管需要本人 Cookie 的批量工作流:收藏列表同步、博主全量扒取、定时增量归档。
工具选型(2026-08 实测)
- ❌ JoeanAmier/TikTokDownloader:X-Bogus/A-Bogus 签名算法已停止维护,README 明示"部分功能无法正常工作"。不要再用。
- ✅ jiji262/douyin-downloader(9.1k Star,活跃维护):
- 本人收藏:
link: ["https://www.douyin.com/user/self?showTab=favorite_collection"]+mode: [collect] - 博主全量:
link用博主主页 URL +mode: [post],number.post: 0= 全部 - SQLite 去重、浏览器兜底(
browser_fallback)、REST 模式(--serve) - 收藏/喜欢是私密数据,必须本人 Cookie;
collect模式不支持增量停止(靠 SQLite 去重防重复下载)
- 本人收藏:
- 部署位置:仓库根(可用环境变量
DOUYIN_SYNC_DIR覆盖工作目录;上游 douyin-downloader clone 到douyin-downloader/子目录,独立 venv + config.yml +qr_login.py)。 - 运行方式:PATH 加依赖 venv 的 bin +
PYTHONPATH=<venv>/lib/python3.x/site-packages,裸python3 run.py -c config.yml。注意./venv/bin/python这种相对路径调用解释器同样会被守卫拦截,不只绝对路径。
账号安全五条铁律(用户 明确要求"不能封号")
- 只读自己收藏列表(最低风险端点,≈ 手动刷收藏的同类请求)。不用本人账号批量扒别人主页——实证:连续下载 35+ 博主会触发 Cookie 风控(TikTokDownloader issue #478)。博主蒸馏需求单独评估,优先免登录/公开端点 + 更保守限速。
- 低频增量:每天最多同步一次;首次跑
number.collect设小批量(如 30)验证后再放大。 - 拟人节奏:单线程(
thread: 1),不并发轰炸。 - 同 IP:家里直连,不走代理乱跳(IP 跳变比频率更容易触发风控)。
- 遇风控立即停:返回滑块/验证/异常即停止并通知 用户,绝不自动重试硬闯。
诚实口径:任何工具都无法承诺绝对零封号风险,说"保证零风险"是吹牛。真实风险是限流/滑块/Cookie 失效;封号主要打击黑灰产画像(批量注册、矩阵号、刷量、营销导流),个人只读自己收藏不在画像内。对 用户 如实说明,不拍胸脯。
扫码登录流程(用户 不在 Mac 旁也能完成)
脚本:仓库根 qr_login.py(headless Playwright)
- 打开抖音首页——登录弹窗自动出现,无需点"登录"按钮(点选择器会超时,属正常)。
- 抓二维码:data-URI 的
<img>,512×512(过滤条件要naturalWidth <= 600,<400会漏掉)。 - 二维码图发给用户(MEDIA:),手机抖音扫码 + 确认;码 1–2 分钟过期,脚本自动刷新文件,用户说过期就重发。
- 轮询
sid_guard/sessionidcookie 出现即登录成功(15 分钟窗口)。 - 收集
msToken(从请求 query 抓)、ttwid、odin_tt、passport_csrf_token、sid_guard,写config/cookies.json并回填 config.yml。
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.
- references/mlx-whisper-gpu-transcription.md 3.6 KB
- references/single-report-distillation.md 4.4 KB
- references/smart-transcription-judgment.md 5.6 KB
- references/visual-judge-long-input-defect.md 2.1 KB
- scripts/fetch_klines.py 2.0 KB runs code
- scripts/rerun_visual_needs.py 5.0 KB runs code
- scripts/resolve_creator.py 3.6 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.
- 11d ago First seen · 182 lines · 35 tokens per session scan A b7510849171e
douyin-favorites-archive is a skill published in the GitHub repository liusencomic-cyber/douyin-agent-kit (2 stars, last pushed 11d ago), licensed MIT. It adds 35 tokens to every session and 9,361 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
extracting-lab-tables
Detects and extracts tabular laboratory panels from PDFs, scans, and images into structured rows ready for OpenMed and FHIR. Use when the user has a CBC, CMP, lipid panel, or other lab report as a scanned image / PDF / spreadsheet and needs the test name, value, unit, reference range, and abnormal flag as clean rows.…
ingesting-clinical-documents
Turn scanned faxes, images, and CSV/CDA exports into clean text ready for OpenMed de-identification and NER, fully on-device. Use when the user has clinical documents (image scans, photographed/faxed notes, tabular CSV/TSV exports, C-CDA XML) and needs OCR or structured intake before openmed.deidentify and…
parsing-ccda-documents
Parses C-CDA / CCD XML clinical documents to extract human-readable section narrative plus coded entries, keyed by section LOINC codes and templateIds. Use before OpenMed processing when ingesting C-CDA R2.1 documents (CCD, Discharge Summary, H&P, Consultation Note) exported from an EHR and you need the narrative…
structuring-radiology-reports
Converts free-text radiology narratives into structured findings and impression — with measurements, laterality, anatomy, and follow-up recommendations — after OpenMed NER. Use when the user has a CT/MRI/X-ray/ultrasound/mammography report and needs the sections split (technique, comparison, findings, impression)…
summarizing-clinical-notes
Produces structured, citation-anchored summaries of clinical notes — one-liner, hospital course, and problem-oriented views — where every claim cites a source span so nothing is hallucinated. Use after de-identifying notes when the user wants a discharge summary draft, handoff/SBAR, problem list, or chart-abstraction…
bank-statement-parsing
Guidelines for parsing bank statements using YOLO layout detection + OCR + LLM.