douyin-auth

douyin-auth is a skill for Claude Code, Codex from zJay26/douyin-skills. It costs 41 tokens per session (1,113 once invoked), scanned A, original, MIT.

A command-line tool for signing in to Douyin, a Chinese short-video platform, and managing named accounts. It supports QR-code and phone-code login through a browser.

In plain words
What is it for?
Use it to list or select accounts, check whether an account is signed in, obtain a QR code, wait for a scan, or request a phone verification code.
Why use it?
It provides one defined way to reuse browser login sessions and handle account selection, login checks, and verification prompts. This avoids using unrelated Douyin login tools or repeatedly signing in.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to list or select accounts, check whether an account is signed in, obtain a QR code, wait for a scan, or request a phone verification code.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/zjay26/douyin-skills/douyin-auth
Install

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.

Any agent
npx skills add zJay26/douyin-skills --skill douyin-auth
Clone the repo
git clone --depth 1 https://github.com/zJay26/douyin-skills

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for douyin-auth

README.md
[![agentmods](https://agentmods.dev/badge/skills/zjay26/douyin-skills/douyin-auth/github.svg)](https://agentmods.dev/skills/zjay26/douyin-skills/douyin-auth)
Your own site
<a href="https://agentmods.dev/skills/zjay26/douyin-skills/douyin-auth"><img src="https://agentmods.dev/badge/skills/zjay26/douyin-skills/douyin-auth/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.

agentmods 80×15 button for douyin-auth

Your own site · 80×15
<a href="https://agentmods.dev/skills/zjay26/douyin-skills/douyin-auth"><img src="https://agentmods.dev/badge/skills/zjay26/douyin-skills/douyin-auth.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 41 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,113 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00041 $0.01113
Opus 5.5 $0.00016 $0.00445
Sonnet 5.5 $0.00008 $0.00223
Haiku 4.5 $0.00004 $0.00111

Measured yesterday against content hash 75f6d7dd69c1, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

douyin-auth scanned grade A with 0 findings 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 yesterday.

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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/douyin-auth/SKILL.md · 90 lines

How it starts

The opening of the file, as written. The whole thing — 90 lines — stays where its author put it; the contents beside it link to each section on GitHub.

管理抖音登录与账号

只使用 python "{baseDir}/../../scripts/cli.py" <子命令>。如果系统只有 python3,替换命令名。不要使用其他抖音登录工具。

先确认账号

用户指定账号时,在子命令前加入 --account <名称>。用户未指定时,CLI 自动使用默认命名账号;需要展示或切换账号时运行:

python "{baseDir}/../../scripts/cli.py" list-accounts

多个账号且用户意图不明确时,展示名称和描述并询问一次。选定后,本次流程保持同一账号。

检查状态

python "{baseDir}/../../scripts/cli.py" check-login
  • CLI 会优先复用已有的本地 Chrome 调试实例和其中的登录会话;已有 headed Chrome 不会因为默认模式偏好被重启。
  • 导航后的短暂验证码/风控中间页会由 CLI 做有限稳定重检;切到 headed 后还会重新读取当前页面,不沿用切换前的旧风险结果。
  • logged_in: true:可以继续。
  • logged_in: false:进入登录流程;退出码 1 不是程序崩溃。
  • action: risk_recovered_after_headed_switch、risk_recovered: true 且 logged_in: true:临时风险状态已经消失,直接继续,不要请用户验证。
  • needs_user_verification: true:浏览器已切为 headed 或已停在验证页,请用户人工处理,不要绕过或连续重试。

二维码登录

  1. 获取二维码:
python "{baseDir}/../../scripts/cli.py" get-qrcode
  1. 从 JSON 的 qrcode_path 读取本地图片并展示给用户,不输出二维码内容到日志。二维码使用唯一私有临时目录;扫码结束或二维码过期后删除该文件及其空目录。
  2. 用户扫码后单次等待:
python "{baseDir}/../../scripts/cli.py" wait-login

wait-login 最多等待 120 秒。超时后重新获取二维码,不要高频轮询。

短信验证码登录

普通手机号页先取得用户明确提供的中国大陆手机号:

python "{baseDir}/../../scripts/cli.py" send-code --phone-stdin

通过进程标准输入传入一行手机号;交互终端会隐藏输入。不要把手机号拼入 shell 命令或 echo/printf 参数。普通短信登录页已由用户填写手机号时,可以不传手机号:

python "{baseDir}/../../scripts/cli.py" send-code

收到用户提供的 6 位验证码后提交:

python "{baseDir}/../../scripts/cli.py" verify-code --code-stdin

通过进程标准输入传入一行验证码。也可用 --phone-env <变量名> / --code-env <变量名> 读取工具安全注入的环境变量;变量在本进程读取后移除,stdin 为首选。旧的 --phone / --code 仅为兼容保留并发出弃用警告,仍可能出现在进程列表和命令历史中。不要在回复中重复完整手机号或验证码;不要保存这些一次性信息。出现平台验证码、安全验证或风险页面时停止,交由用户人工处理。

多账号

python "{baseDir}/../../scripts/cli.py" add-account --name work --description "工作号"
python "{baseDir}/../../scripts/cli.py" set-default-account --name work
python "{baseDir}/../../scripts/cli.py" update-account --name work --description "创作账号"
python "{baseDir}/../../scripts/cli.py" --account work check-login
python "{baseDir}/../../scripts/cli.py" remove-account --name work

Read the full file on GitHub · 90 lines

Changes

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.

  1. yesterday Changed 75f6d7dd69c1
  2. 2mo ago Changed · +1 lines 4da9be8abf2a
  3. 2mo ago First seen · 89 lines · 41 tokens per session scan A 3f0beb3cd77a

Subscribe to this mod's changes

douyin-auth is a skill published in the GitHub repository zJay26/douyin-skills (60 stars, last pushed yesterday), licensed MIT. It adds 41 tokens to every session and 1,113 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

douyin-auth compared with skills from other repositories

douyin-auth next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
douyin-authzJay26/douyin-skillsSkill60yesterdayMITA41Claude Code, Codex
skillredf0x1/camofox-mcpSkill12412d agoMITA38Claude Code, Codex
chrome-agentsderosiaux/chrome-agentSkill9626d agoMITA44Claude Code, Codex
revergreekr4/rever-browserSkill51yesterdayMITA82Claude Code, Codex
browser-bridgekoltyakov/browser-bridgeSkill29yesterdayMITA49Codex
scrape-structured-datasderosiaux/chrome-agentSkill9626d agoMITA111Claude Code, Codex
fanqie-publisheramm10090/fanqie-publisher-skillSkill2412d agoMITA59Claude Code, Codex