Skills

Douyin Publish

使用 Camoufox 持久化创作者会话登录并发布抖音视频或图文;支持本地预览、分步填表与配乐、短信续接和取链。

Install

npx skills add TeamWiseFlow/xiaobei --skill douyin-publish -g -a claude-code -y
Repository
TeamWiseFlow/xiaobei8.7k
Category
Engineering
Updated
6d ago
License
See repository
Context cost
Lightabout 821 tokens
Runs scripts
Yes, review before use

What it does

使用 Camoufox 持久化创作者会话登录并发布抖音视频或图文;支持本地预览、分步填表与配乐、短信续接和取链。

抖音发布

发布使用 Camoufox 持久化 session douyin,登录态保存在 profile。本人作品取数由 douyin-engagement 通过 HTTP 完成,仅在进程内临时读取同一 profile 的 cookie/UA。不手工导出或导入 cookie,不使用 hunter 的 API 会话代替发布会话。

登录与检查

douyin-publish login
douyin-publish check

login 打开有头创作者中心,请用户完成扫码或页面验证;返回 awaiting_user_login 不代表已经登录。用户完成后用 check 验证创作者接口,检查会关闭浏览器进程并保留 profile。未登录返回 exit 2;验证码、风控和接口异常停止处理,不无限重试。

check 返回 PUBLISH_PENDING 是已有视频提交未结案,不是登录失效或取数故障;先用 douyin-publish video resume 只读核查原任务,不重新扫码、重传或清状态。核查确认原作品后工具自动结案,后续发布才可继续。

视频与图文

先展示目标账号、文件、标题和正文,执行不带 --confirm 的命令生成本地预览;用户已授权后在同一命令加 --confirm。

douyin-publish video run --video /绝对路径/video.mp4 --title "标题" --caption @/绝对路径/body.txt --cover-vertical /绝对路径/vertical.jpg --cover-horizontal /绝对路径/horizontal.jpg
douyin-publish note run --images /绝对路径/1.png /绝对路径/2.png --title "标题" --caption @/绝对路径/body.txt --original-sound

video/note run 是一键流程;原来的 video --video …、note --images … 简写仍可用。分步提交 video publish 和 note publish 同样必须加 --confirm;不带时只返回核对提示,不操作浏览器。上传、填表、配乐等分步操作按下方参考说明执行。

先将已确认的纯正文和话题写入 UTF-8 body.txt,用 --caption @/绝对路径/body.txt 由脚本读取。相对路径按当前工作目录解析;路径含空格时给整个 @路径 参数加引号。文件读取失败或正文超长时在浏览器操作前停止;预览的 caption 是实际正文。文件须有真实换行,不把标题或交付说明放进正文,不用 $(cat ...) 或将多行正文拼进命令。短文字仍支持直接传入;以 @ 开头的参数一律按文件路径处理,文件内容只读取一次,正文里的 @提及 按原文保留。video/note fill/run --caption 均支持文件。

视频入口保留浏览器 AIGC 声明流程,不支持 --declaration none。图文默认声明 AI,可按实际来源传 --declaration none;原声图文必须明确传 --original-sound。视频分步操作、草稿修复与短信续接先读 视频操作说明;图文配乐和分步操作先读 图文操作说明。

视频提交必须有 3:4 竖封面与 4:3 横封面。比例不符时等比补底保留完整内容,不裁掉边缘文字;补底过宽也可能被平台拒绝,两张封面都要通过页面检测。COVER_BORDER_TOO_LARGE / COVER_QUALITY_REJECTED 时按目标比例重新构图或更换封面,不反复加宽补底或跳过检测。缺视频、标题或双封面即停止,不点击发布。

封面与 AIGC 声明必须在唯一可见的目标弹窗内保存;支持 dialog/modal/Semi Modal,不能只看 role="dialog" 或页面文字就判断已完成。已有声明弹窗时用 video fill / cover 续编,脚本先完成声明再操作正文/封面;同类弹窗不唯一或设置未保存时停止并保留草稿。浏览器异常的安全定位字段见 references/video.md。

Read the whole SKILL.md on GitHub

More in Engineering