docs: clarify account name semantics

This commit is contained in:
home-dev-pookz
2026-03-25 04:38:37 +08:00
parent 02afa4dbee
commit b1f9b1af61
16 changed files with 97 additions and 59 deletions
+13 -11
View File
@@ -96,23 +96,25 @@ Web 端相关代码仍然保留,但已经不是当前主线,不保证可直
当前抖音、快手、Bilibili 已经接入 CLI:
```bash
sau douyin login --account creator
sau douyin check --account creator
sau douyin upload-video --account creator --file videos/demo.mp4 --title "示例标题"
sau douyin upload-note --account creator --images videos/1.png videos/2.png --note "图文示例"
sau douyin login --account <account_name>
sau douyin check --account <account_name>
sau douyin upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题"
sau douyin upload-note --account <account_name> --images videos/1.png videos/2.png --note "图文示例"
sau kuaishou login --account creator
sau kuaishou check --account creator
sau kuaishou upload-video --account creator --file videos/demo.mp4 --title "示例标题"
sau kuaishou upload-note --account creator --images videos/1.png videos/2.png videos/3.png --note "图文示例"
sau kuaishou login --account <account_name>
sau kuaishou check --account <account_name>
sau kuaishou upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题"
sau kuaishou upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --note "图文示例"
sau bilibili login --account creator
sau bilibili check --account creator
sau bilibili upload-video --account creator --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249
sau bilibili login --account <account_name>
sau bilibili check --account <account_name>
sau bilibili upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249
```
补充说明:
- `creator` 之类的名字只是示例值,真正含义是 `account_name`
- 一个 `account_name` 对应一个账号文件,可以准备多个账号,也可以按账号名并发执行任务
- Bilibili CLI 不要求用户手动安装 `biliup`
- 首次运行相关命令时,程序会自动下载 `biliup`
- 后续运行会自动检查上游 release 并更新
+19 -17
View File
@@ -42,32 +42,34 @@ $env:PLAYWRIGHT_DOWNLOAD_HOST="https://npmmirror.com/mirrors/playwright"; patchr
## 抖音 CLI 子命令
```bash
sau douyin login --account creator
sau douyin login --account creator --headless
sau douyin check --account creator
sau douyin upload-video --account creator --file videos/demo.mp4 --title "示例标题" --tags 运动,训练
sau douyin upload-note --account creator --images videos/1.png videos/2.png --note "图文示例" --tags 图文,测试
sau douyin login --account <account_name>
sau douyin login --account <account_name> --headless
sau douyin check --account <account_name>
sau douyin upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --tags 运动,训练
sau douyin upload-note --account <account_name> --images videos/1.png videos/2.png --note "图文示例" --tags 图文,测试
```
## 快手 CLI 子命令
```bash
sau kuaishou login --account creator
sau kuaishou check --account creator
sau kuaishou upload-video --account creator --file videos/demo.mp4 --title "示例标题" --tags 运动,训练
sau kuaishou upload-note --account creator --images videos/1.png videos/2.png videos/3.png --note "图文示例" --tags 图文,测试
sau kuaishou login --account <account_name>
sau kuaishou check --account <account_name>
sau kuaishou upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --tags 运动,训练
sau kuaishou upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --note "图文示例" --tags 图文,测试
```
## Bilibili CLI 子命令
```bash
sau bilibili login --account creator
sau bilibili check --account creator
sau bilibili upload-video --account creator --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249 --tags 足球,测试
sau bilibili login --account <account_name>
sau bilibili check --account <account_name>
sau bilibili upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249 --tags 足球,测试
```
补充说明:
- `creator` 之类的名字只是示例值,真正传的是用户自定义的 `account_name`
- 一个 `account_name` 对应一个账号文件,可以准备多个账号并发使用
- `sau bilibili ...` 会自动准备 `biliup`
- 如果本地没有 `biliup`,第一次运行会自动下载
- 如果上游 GitHub Release 有更新,运行时会先自动更新
@@ -86,11 +88,11 @@ sau bilibili upload-video --account creator --file videos/demo.mp4 --title "示
抖音、快手、Bilibili 的视频上传都支持 `--schedule`。只要传了 `--schedule`,CLI 就会自动切换到对应平台的定时发布策略;不传则默认立即发布。
```bash
sau douyin upload-video --account creator --file videos/demo.mp4 --title "示例标题" --schedule "2026-03-24 21:30"
sau douyin upload-note --account creator --images videos/1.png videos/2.png --note "图文示例" --schedule "2026-03-24 21:30"
sau kuaishou upload-video --account creator --file videos/demo.mp4 --title "示例标题" --schedule "2026-03-24 21:30"
sau kuaishou upload-note --account creator --images videos/1.png videos/2.png videos/3.png --note "图文示例" --schedule "2026-03-24 21:30"
sau bilibili upload-video --account creator --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249 --schedule "2026-03-24 21:30"
sau douyin upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --schedule "2026-03-24 21:30"
sau douyin upload-note --account <account_name> --images videos/1.png videos/2.png --note "图文示例" --schedule "2026-03-24 21:30"
sau kuaishou upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --schedule "2026-03-24 21:30"
sau kuaishou upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --note "图文示例" --schedule "2026-03-24 21:30"
sau bilibili upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249 --schedule "2026-03-24 21:30"
```
## 运行时参数
+12 -10
View File
@@ -95,30 +95,32 @@ sau bilibili --help
### 7. 抖音主线示例
```bash
sau douyin login --account creator
sau douyin check --account creator
sau douyin upload-video --account creator --file videos/demo.mp4 --title "示例标题"
sau douyin login --account <account_name>
sau douyin check --account <account_name>
sau douyin upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题"
```
### 8. 快手主线示例
```bash
sau kuaishou login --account creator
sau kuaishou check --account creator
sau kuaishou upload-video --account creator --file videos/demo.mp4 --title "示例标题"
sau kuaishou upload-note --account creator --images videos/1.png videos/2.png videos/3.png --note "图文示例"
sau kuaishou login --account <account_name>
sau kuaishou check --account <account_name>
sau kuaishou upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题"
sau kuaishou upload-note --account <account_name> --images videos/1.png videos/2.png videos/3.png --note "图文示例"
```
### 9. Bilibili 主线示例
```bash
sau bilibili login --account creator
sau bilibili check --account creator
sau bilibili upload-video --account creator --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249
sau bilibili login --account <account_name>
sau bilibili check --account <account_name>
sau bilibili upload-video --account <account_name> --file videos/demo.mp4 --title "示例标题" --desc "示例简介" --tid 249
```
补充说明:
- `creator` 之类的名字只是示例值,真正传的是用户自定义的 `account_name`
- 一个 `account_name` 对应一个账号文件,可以准备多个账号并发使用
- 用户不需要手动安装 `biliup`
- 首次运行 Bilibili 相关命令时,程序会自动下载 `biliup`
- 后续运行会自动检查上游 release 并自动更新
+8 -8
View File
@@ -342,12 +342,12 @@ def build_parser() -> argparse.ArgumentParser:
for action_name in ("login", "check"):
action_parser = douyin_actions.add_parser(action_name, help=f"Douyin {action_name}")
action_parser.add_argument("--account", required=True, help="Douyin account alias")
action_parser.add_argument("--account", required=True, help="Douyin user-defined account_name")
if action_name == "login":
add_runtime_flags(action_parser)
upload_video_parser = douyin_actions.add_parser("upload-video", help="Upload one video to Douyin")
upload_video_parser.add_argument("--account", required=True, help="Douyin account alias")
upload_video_parser.add_argument("--account", required=True, help="Douyin user-defined account_name")
upload_video_parser.add_argument("--file", required=True, type=existing_file_path, help="Video file path")
upload_video_parser.add_argument("--title", required=True, help="Video title")
upload_video_parser.add_argument("--tags", default="", help="Comma-separated tags, such as tag1,tag2")
@@ -358,7 +358,7 @@ def build_parser() -> argparse.ArgumentParser:
add_runtime_flags(upload_video_parser)
upload_note_parser = douyin_actions.add_parser("upload-note", help="Upload one note to Douyin")
upload_note_parser.add_argument("--account", required=True, help="Douyin account alias")
upload_note_parser.add_argument("--account", required=True, help="Douyin user-defined account_name")
upload_note_parser.add_argument("--images", required=True, nargs="+", type=existing_file_path, help="Image file paths")
upload_note_parser.add_argument("--note", required=True, help="Note content")
upload_note_parser.add_argument("--tags", default="", help="Comma-separated tags, such as tag1,tag2")
@@ -370,12 +370,12 @@ def build_parser() -> argparse.ArgumentParser:
for action_name in ("login", "check"):
action_parser = kuaishou_actions.add_parser(action_name, help=f"Kuaishou {action_name}")
action_parser.add_argument("--account", required=True, help="Kuaishou account alias")
action_parser.add_argument("--account", required=True, help="Kuaishou user-defined account_name")
if action_name == "login":
add_runtime_flags(action_parser)
kuaishou_upload_video_parser = kuaishou_actions.add_parser("upload-video", help="Upload one video to Kuaishou")
kuaishou_upload_video_parser.add_argument("--account", required=True, help="Kuaishou account alias")
kuaishou_upload_video_parser.add_argument("--account", required=True, help="Kuaishou user-defined account_name")
kuaishou_upload_video_parser.add_argument("--file", required=True, type=existing_file_path, help="Video file path")
kuaishou_upload_video_parser.add_argument("--title", required=True, help="Video title")
kuaishou_upload_video_parser.add_argument("--tags", default="", help="Comma-separated tags, such as tag1,tag2")
@@ -384,7 +384,7 @@ def build_parser() -> argparse.ArgumentParser:
add_runtime_flags(kuaishou_upload_video_parser)
kuaishou_upload_note_parser = kuaishou_actions.add_parser("upload-note", help="Upload one note to Kuaishou")
kuaishou_upload_note_parser.add_argument("--account", required=True, help="Kuaishou account alias")
kuaishou_upload_note_parser.add_argument("--account", required=True, help="Kuaishou user-defined account_name")
kuaishou_upload_note_parser.add_argument("--images", required=True, nargs="+", type=existing_file_path, help="Image file paths")
kuaishou_upload_note_parser.add_argument("--note", required=True, help="Note content")
kuaishou_upload_note_parser.add_argument("--tags", default="", help="Comma-separated tags, such as tag1,tag2")
@@ -396,10 +396,10 @@ def build_parser() -> argparse.ArgumentParser:
for action_name in ("login", "check"):
action_parser = bilibili_actions.add_parser(action_name, help=f"Bilibili {action_name}")
action_parser.add_argument("--account", required=True, help="Bilibili account alias")
action_parser.add_argument("--account", required=True, help="Bilibili user-defined account_name")
bilibili_upload_video_parser = bilibili_actions.add_parser("upload-video", help="Upload one video to Bilibili")
bilibili_upload_video_parser.add_argument("--account", required=True, help="Bilibili account alias")
bilibili_upload_video_parser.add_argument("--account", required=True, help="Bilibili user-defined account_name")
bilibili_upload_video_parser.add_argument("--file", required=True, type=existing_file_path, help="Video file path")
bilibili_upload_video_parser.add_argument("--title", required=True, help="Video title")
bilibili_upload_video_parser.add_argument("--desc", required=True, help="Video description")
@@ -15,6 +15,9 @@ sau bilibili login --account <account>
- 作用:
- 自动准备 `biliup`
- 触发 Bilibili 登录流程
- 账号说明:
- `--account` 传的是用户自定义的 `account_name`,不是固定只能叫 `creator`
- 一个 `account_name` 对应一个账号文件,可用于多账号隔离和并发任务
- 登录方式说明:
- 这个命令应该由用户自己在本地真实终端里运行
- 如果终端二维码显示不完整,可直接打开当前目录下的 `qrcode.png` 扫码
@@ -9,6 +9,9 @@ from utils.constant import VideoZoneTypes
def main() -> None:
account = "account_a"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
cli_path = Path(BASE_DIR) / "sau_cli.py"
command = [
sys.executable,
@@ -16,7 +19,7 @@ def main() -> None:
"bilibili",
"upload-video",
"--account",
"creator",
account,
"--file",
str(Path(BASE_DIR) / "videos" / "demo.mp4"),
"--title",
@@ -1,14 +1,18 @@
# 登录
# 建议由用户自己在本地真实终端里执行。
# 如果终端二维码显示不完整,可以打开当前目录下的 qrcode.png 扫码。
sau bilibili login --account creator
$account = "account_a"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
sau bilibili login --account $account
# 校验
sau bilibili check --account creator
sau bilibili check --account $account
# 上传视频
sau bilibili upload-video `
--account creator `
--account $account `
--file .\videos\demo.mp4 `
--title "Bilibili CLI Demo" `
--desc "Bilibili CLI Demo" `
@@ -1,14 +1,18 @@
# login
# Run this in a local interactive terminal.
# If the terminal QR code is incomplete, open ./qrcode.png and scan that image.
sau bilibili login --account creator
account="account_a"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
sau bilibili login --account "$account"
# check
sau bilibili check --account creator
sau bilibili check --account "$account"
# upload video
sau bilibili upload-video \
--account creator \
--account "$account" \
--file ./videos/demo.mp4 \
--title "Bilibili CLI Demo" \
--desc "Bilibili CLI Demo" \
@@ -15,6 +15,9 @@ sau douyin login --account <account>
- 作用:
- 启动抖音登录流程,为指定账号生成或刷新 cookie 文件
- 如果登录过程中生成本地二维码图片,agent 应优先直接把图片展示/发送给用户扫码,而不是只回传路径
- 账号说明:
- `--account` 传的是用户自定义的 `account_name`,不是固定只能叫 `creator`
- 一个 `account_name` 对应一个账号文件,可用于多账号隔离和并发任务
### 校验 cookie
@@ -10,7 +10,9 @@ def run_command(command: list[str]) -> None:
def main() -> None:
account = "creator"
account = "account_a"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
commands = [
["sau", "douyin", "login", "--account", account, "--headless"],
@@ -1,6 +1,8 @@
# PowerShell examples for the installed sau CLI.
$account = "creator"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
$account = "account_a"
$video = "videos/demo.mp4"
$thumbnail = "videos/demo.png"
$noteImages = @("videos/1.png", "videos/2.png")
@@ -2,7 +2,9 @@
set -euo pipefail
account="creator"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
account="account_a"
video="videos/demo.mp4"
thumbnail="videos/demo.png"
@@ -15,6 +15,9 @@ sau kuaishou login --account <account>
- 作用:
- 启动快手登录流程,为指定账号生成或刷新 cookie 文件
- 如果登录过程中生成本地二维码图片,agent 应优先直接把图片展示/发送给用户扫码,而不是只回传路径
- 账号说明:
- `--account` 传的是用户自定义的 `account_name`,不是固定只能叫 `creator`
- 一个 `account_name` 对应一个账号文件,可用于多账号隔离和并发任务
### 校验 cookie
@@ -10,7 +10,9 @@ def run_command(command: list[str]) -> None:
def main() -> None:
account = "creator"
account = "account_a"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
commands = [
["sau", "kuaishou", "login", "--account", account],
@@ -1,6 +1,8 @@
# PowerShell examples for the installed sau CLI.
$account = "creator"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
$account = "account_a"
$video = "videos/demo.mp4"
$thumbnail = "videos/demo.png"
$noteImages = @("videos/1.png", "videos/2.png", "videos/3.png")
@@ -2,7 +2,9 @@
set -euo pipefail
account="creator"
# account_name is user-defined. One account_name maps to one account file.
# You can prepare multiple account names and run them in parallel.
account="account_a"
video="videos/demo.mp4"
thumbnail="videos/demo.png"