Prefer using sau as the primary interface.
Do not assume that the current environment can definitely read the repository source code.
Do not start by reading uploader/.
Only fall back to troubleshooting instructions when the command is unavailable or CLI execution fails.
Feature Overview
| Feature | Command Entry | Description |
|---|---|---|
| Douyin Login | sau douyin login --account <name> |
Generate or refresh the cookie for the specified account |
| Cookie Verification | sau douyin check --account <name> |
Check whether the specified account's cookie is valid |
| Video Upload | sau douyin upload-video ... |
Upload and publish a Douyin video |
| Image-Text Upload | sau douyin upload-note ... |
Upload and publish Douyin image-text content |
Metadata conventions:
- Videos use
title + desc + tags - Image-text posts use
title + note + tags
Default Workflow
- First confirm the runtime prerequisites in
references/runtime-requirements.md. - Then confirm the command contract in
references/cli-contract.md. - Execute the matching
sau douyin ...command. - If the command fails, then check
references/troubleshooting.md。
Supported Actions
- Use
sau douyin login --account <name>to log in to Douyin - Use
sau douyin check --account <name>to verify whether the cookie is valid - Use
sau douyin upload-video ...to upload a Douyin video - Use
sau douyin upload-note ...to upload Douyin image-text content
Command Selection Recommendations
- When the user needs a new cookie, or the existing cookie has expired, use
login - When the user only needs to confirm cookie status, use
check - When the user wants to publish a video, use
upload-video - When the user wants to publish image-text content, use
upload-note
Pre-Execution Checks
- First confirm whether
sau - can be invoked in the current shell. If
sauis unavailable, handle it according to the fallback method inreferences/runtime-requirements.mdfallback handling in - When the user explicitly specifies headless or headed mode, explicitly pass
--headlessor--headed - Only when the user explicitly requests scheduled publishing, use
--schedule - If the login process generates a local QR code image, do not just tell the user the image path
- The QR code image itself is for the user to scan, so prioritize directly displaying/sending the local image to the user
Template Files
When you need stable command templates, use the files under scripts/examples/ :
douyin_commands.ps1douyin_commands.shdouyin_cli_template.py
Reference Documentation
- Runtime prerequisites:
references/runtime-requirements.md - CLI contract:
references/cli-contract.md - Troubleshooting:
references/troubleshooting.md