douyin
- Repo stars 28
- Author updated Live
- Author repo douyin
- Domain
- Other
- Compatible agents
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- Trust score
- 88 / 100 · community maintained
- Author / version / license
- @Youhai020616 · no license declared
- Token usage
- Lean
- Setup complexity
- Plug-and-play
- External API key
- Not required
- Operating systems
- Unspecified (assume cross-platform)
- Runtime requirements
- No special requirements
- Permissions
-
- Read-only
- Write / modify
- Network behavior
- Local-only
- Install commands
- 26 variants
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: douyin
description: | │ ├── engines/ │ │ ├── api_client.py │ │ └── playwright_client.py │ ├── commands/ │ │ ├── sear…
category: other
runtime: no special runtime
---
# douyin output preview
## PART A: Task fit
- Use case: | │ ├── engines/ │ │ ├── api_client.py │ │ └── playwright_client.py │ ├── commands/ │ │ ├── search.py, download.py, publish.py runs entirely locally. Works with Claude Code, Cursor, Cline and 23 more..
- Inputs: target material, constraints, expected output, and acceptance criteria.
- Evidence boundary: follow “目录结构 / 工具选择指南 / Part 1: API 工具(搜索/下载/采集)” and do not present inference as author intent.
## PART B: Execution result
- **01** The card summarizes the use case; runtime output centers on “| │ ├── engines/ │ │ ├── api_client.py │ │ └── playwright_client.py │ ├── commands/ │ │ ├── search.py, download.py, publish.py runs entirely locally. Works with Claude Code, Cursor, Cline and 23 more.”.
- **02** When the source has headings, the agent prioritizes “目录结构 / 工具选择指南 / Part 1: API 工具(搜索/下载/采集)” so the result follows the author’s structure.
- **03** Typical output includes task judgment, concrete steps, required commands or file edits, validation, and follow-up options.
- **04** Risk context follows the fingerprint: read files, write/modify files; mostly runs locally; usually needs no extra API key.
## Running Rules
- read files, write/modify files; mostly runs locally; usually needs no extra API key.
- Validate with a small sample before expanding scope.
- Return the result, validation criteria, and next iteration options. The source does not require a stable slash command. After installation, invoke the skill by name and describe the task.
Name target files or source material, expected output, forbidden changes, and whether network or shell access is allowed. Permission fingerprint: read files, write/modify files.
Start with a small task and check whether the result follows “目录结构 / 工具选择指南 / Part 1: API 工具(搜索/下载/采集)”. Inspect diffs, logs, previews, or tests before expanding scope.
Confirm the final output includes a concrete result, evidence, and next action. If it stays generic, tighten inputs, boundaries, and acceptance criteria.
---
name: douyin
description: | │ ├── engines/ │ │ ├── api_client.py │ │ └── playwright_client.py │ ├── commands/ │ │ ├── sear…
category: other
source: Youhai020616/douyin
---
# douyin
## When to use
- | │ ├── engines/ │ │ ├── api_client.py │ │ └── playwright_client.py │ ├── commands/ │ │ ├── search.py, download.py, pu…
- Use it when the task has clear inputs, repeatable steps, and validation criteria.
## What to provide
- Target material, scope, expected result, and forbidden changes.
- Whether network, commands, file writes, or external services are allowed.
## Execution rules
- Organize steps around “目录结构 / 工具选择指南 / Part 1: API 工具(搜索/下载/采集)” and keep inference separate from source facts.
- read files, write/modify files; mostly runs locally; usually needs no extra API key.
- Validate with a small sample before expanding the task.
## Output requirements
- Return the deliverable, key evidence, validation method, and next action.
- Mark missing information as unknown; do not invent commands, platforms, or dependencies. The author source anchors workflow facts; repository files anchor sources and commands; Fluxly only adds fit, limitations, and quality judgment.
skill "douyin" {
input -> user goal + target files + boundaries + acceptance criteria
context -> 目录结构 / 工具选择指南 / Part 1: API 工具(搜索/下载/采集)
rules -> SKILL.md triggers / order / output contract
runtime -> no special runtime | read files, write/modify files | mostly runs locally
guardrails -> usually needs no extra API key + small-sample validation + diff/log review
output -> copyable result + checklist + next iteration
} 抖音统一 Skill
本 Skill 整合两套引擎:
- API Client(httpx 逆向 API):搜索、下载、评论、热榜、直播、用户 — 即时响应
- Playwright(浏览器自动化):发布、登录、数据看板、通知 — 按需启动
目录结构
douyin/
├── SKILL.md
├── src/dy_cli/
│ ├── main.py
│ ├── engines/
│ │ ├── api_client.py
│ │ └── playwright_client.py
│ ├── commands/
│ │ ├── search.py, download.py, publish.py
│ │ ├── trending.py, live.py, analytics.py
│ │ └── auth.py, profile.py, interact.py, ...
│ └── utils/
│ ├── config.py, output.py, signature.py
├── scripts/
│ ├── douyin_login.py
│ ├── douyin_publisher.py
│ ├── douyin_analytics.py
│ └── chrome_launcher.py
└── config/
└── accounts.json.example
工具选择指南
| 操作 | 用哪个 | 命令 |
|---|---|---|
| 搜索视频 | API | dy search "关键词" |
| 无水印下载 | API | dy download URL |
| 热榜 | API | dy trending |
| 视频详情 | API | dy detail AWEME_ID |
| 评论列表 | API | dy comments AWEME_ID |
| 用户资料 | API | dy profile SEC_USER_ID |
| 直播信息 | API | dy live info ROOM_ID |
| 直播录制 | API + ffmpeg | dy live record ROOM_ID |
| 发布视频/图文 | Playwright | dy publish -t 标题 -c 描述 -v 视频 |
| 扫码登录 | Playwright | dy login |
| 数据看板 | Playwright | dy analytics |
| 通知消息 | Playwright | dy notifications |
Part 1: API 工具(搜索/下载/采集)
搜索
dy search "AI创业"
dy search "咖啡" --sort 最多点赞 --time 一天内
dy search "科技" --type video --count 50 --json-output
dy search "风景" --type atlas # 图文搜索
参数:
--sort: 综合 | 最多点赞 | 最新发布--time: 不限 | 一天内 | 一周内 | 半年内--type: general | video | user
下载
dy download https://v.douyin.com/xxxxx/
dy download 1234567890
dy download URL --music --output-dir ~/Videos
dy download URL --json-output # 仅输出链接
热榜
dy trending
dy trending --count 20
dy trending --watch # 每 5 分钟刷新
dy trending --json-output
视频详情
dy detail AWEME_ID
dy detail AWEME_ID --comments
dy detail AWEME_ID --json-output
评论
dy comments AWEME_ID
dy comments AWEME_ID --count 50 --json-output
用户
dy profile SEC_USER_ID
dy profile SEC_USER_ID --posts --post-count 30
dy me
直播
dy live info ROOM_ID
dy live info ROOM_ID --json-output
dy live record ROOM_ID # 需要 ffmpeg
dy live record ROOM_ID --quality HD1
Part 2: Playwright 工具(发布/登录/数据)
前置条件
pip install playwright
playwright install chromium
登录
dy login # 打开浏览器扫码
dy status # 检查登录状态
dy logout # 退出登录
Cookie 存储位置: ~/.dy/cookies/{account}.json
发布
# 视频
dy publish -t "标题" -c "描述" -v video.mp4
dy publish -t "标题" -c "描述" -v video.mp4 --tags 旅行 --tags 美食
# 图文
dy publish -t "标题" -c "描述" -i img1.jpg -i img2.jpg
# 选项
dy publish ... --visibility 仅自己可见 # 私密
dy publish ... --schedule "2026-03-16T08:00:00+08:00" # 定时
dy publish ... --thumbnail cover.jpg # 封面
dy publish ... --headless # 无头模式
dy publish ... --dry-run # 预览不发布
数据看板
dy analytics
dy analytics --csv data.csv
dy analytics --json-output
通知
dy notifications
dy notifications --json-output
Part 3: 配置与运维
配置文件
~/.dy/config.json:
dy config show
dy config set api.proxy http://127.0.0.1:7897
dy config set api.timeout 60
dy config set playwright.headless true
dy config set default.download_dir ~/Videos
多账号
dy account list
dy account add work
dy account default work
dy login --account work
dy search "关键词" --account work
登录态维护
- Cookie 存储在
~/.dy/cookies/ - 过期后需重新
dy login扫码 - 不同账号 Cookie 文件独立
注意事项
- 抖音签名算法 (a-bogus) 频繁更新,搜索/下载功能可能需要定期适配
- 创作者中心 UI 也会更新,发布功能可能需要调整选择器
- 批量操作建议加 2-5 秒延时,避免触发风控
- 所有命令支持
--json-output输出机器可读格式 - 所有命令支持
--account指定账号
Decide Fit First
Design Intent
How To Use It
Boundaries And Review