/install douyin-upload-skill
Douyin Upload Skill
Overview
Use this skill to publish local videos to Douyin with a deterministic CLI flow:
- Validate local dependencies and env.
- OAuth authorize and store encrypted token locally.
- Prepare video metadata and transcript from local audio.
- Generate 3 caption candidates in chat from transcript.
- Confirm or edit caption, then publish.
- If official publish permission is unavailable, export an outbox package for manual publish.
Use the script at \x3Cskill_root>/scripts/douyin.js.
Required Environment
Set these environment variables before auth or publish:
DOUYIN_CLIENT_KEYDOUYIN_CLIENT_SECRETDOUYIN_REDIRECT_URI
Optional overrides:
DOUYIN_SCOPEDOUYIN_TOKEN_ENC_KEYDOUYIN_ASR_MODE(api/whisper-gpu/whisper-cpu)DOUYIN_ASR_API_URLDOUYIN_ASR_API_MODELDOUYIN_ASR_API_KEYDOUYIN_WHISPER_BINDOUYIN_WHISPER_MODEL_PATHDOUYIN_FFMPEG_BINDOUYIN_FFPROBE_BIN
Workflow
- Run dependency checks:
node \x3Cskill_root>/scripts/douyin.js doctor
- Authorize account (manual code paste flow):
node \x3Cskill_root>/scripts/douyin.js auth
- Prepare transcript and metadata from a local video path. Accept both Linux and Windows path formats.
node \x3Cskill_root>/scripts/douyin.js prepare --video "E:\\videos\\demo.mp4"
- Create 3 caption candidates from
transcript.textwith this structure:
- Line 1: title hook
- Line 2-3: concise description
- Final line: 2-5 hashtags
-
Ask user to select or edit one final caption.
-
Publish with explicit visibility and confirmation policy:
node \x3Cskill_root>/scripts/douyin.js publish \
--video "E:\\videos\\demo.mp4" \
--text "\x3Cfinal caption>" \
--private-status 0 \
--auto-confirm false
Command Behavior
doctor: reports dependency and env readiness plus install hints.auth: opens OAuth URL, accepts pasted callback URL orcode, stores encrypted token.prepare: returns metadata, transcript, and ASR failure detail (without stopping publish flow).publish: uploads and creates video via official API. If permission-like API errors occur, writes fallback files under outbox and returnsmode: fallback.config: stores persistent settings (defaultPrivateStatus,autoConfirm,whisperBin,whisperModelPath,outboxDir, etc.).
Caption Rules
Before publish:
- Keep final text length \x3C= 1000.
- Always show the final draft to the user.
- If
auto-confirmis false, require explicit user confirmation in terminal.
Output Contracts
Treat script stdout as JSON. Always parse and branch by:
okcommandmode(officialorfallbackforpublish)asrError(optional inprepare)
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install douyin-upload-skill - After installation, invoke the skill by name or use
/douyin-upload-skill - Provide required inputs per the skill's parameter spec and get structured output
What is Douyin Upload Skill?
Login and publish Douyin (China mainland) videos from local files with OAuth, local speech-to-text, and generated caption drafts. Use when users ask to autho... It is an AI Agent Skill for Claude Code / OpenClaw, with 546 downloads so far.
How do I install Douyin Upload Skill?
Run "/install douyin-upload-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Douyin Upload Skill free?
Yes, Douyin Upload Skill is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Douyin Upload Skill support?
Douyin Upload Skill is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Douyin Upload Skill?
It is built and maintained by YJLi-new (@yjli-new); the current version is v0.1.0.