Douyin Publish logo

Douyin Publish

Community
zJay26
douyin-publish

在抖音创作者中心填写并发布图文或视频作品,包括本地素材上传、视频封面设置、音乐选择、发布前校验和显式确认点击。用户要求发布抖音图文/视频或检查待发布内容时使用;不用于草稿管理或定时发布。

Overview

PublisherzJay26
Repositorydouyin-skills
Skill namedouyin-publish
Stars
60
Forks
9
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by zJay26 on GitHub. Read the source before you install it.

Installation

Install the Douyin Publish AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/zJay26/douyin-skills/tree/main/skills/douyin-publish
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/zJay26/douyin-skills.git /tmp/douyin-skills
mkdir -p .claude/skills
cp -r /tmp/douyin-skills/skills/douyin-publish .claude/skills/douyin-publish
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Douyin Publish in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Douyin Publish on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Douyin Publish is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

发布抖音图文或视频

只使用 python "{baseDir}/../../scripts/cli.py" <子命令> 完成抖音页面操作。可以使用普通图片、视频工具准备和肉眼检查素材,但不要换用其他发布实现。

共同强制流程

  1. 确认目标账号并运行 check-login。
  2. 检查全部素材、标题和文案,并确定本次发布类型是图文还是视频。
  3. 使用对应的填表命令,人工查看页面,再使用对应的只读校验命令。
  4. 用户没有预先明确授权发布时,展示最终内容并取得授权。
  5. 只有校验返回 success: true、state: ready 后,才执行对应的 click-publish* --confirm。
  6. 根据 published 与 status 判断结果;点击后未确认时绝不自动重试。

不要把图文校验器用于视频页,也不要把视频校验器用于图文页。任何 wrong_page、验证码/风控、字段不一致、上传未完成或封面缺失都必须先解决。

图文发布

图片必须是存在的绝对路径,格式为 JPG、JPEG、PNG 或 WebP。标题、正文和至少一张图片都不能为空;正文先写入 UTF-8 文本文件。

bash
python "{baseDir}/../../scripts/cli.py" fill-publish-image \
  --title "作品标题" \
  --desc-file "/absolute/path/desc.txt" \
  --images "/absolute/path/01.jpg" "/absolute/path/02.jpg"

只有 success: true、status: filled 且页面中的标题/正文与请求值完全一致时才继续。然后选择音乐:

bash
python "{baseDir}/../../scripts/cli.py" select-music --names "目标音乐1" "目标音乐2"

检查图片数量、裁切、标题、正文和音乐后运行:

bash
python "{baseDir}/../../scripts/cli.py" validate-publish

用户明确要求热点时才加入 --require-topic。最终发布命令为:

bash
python "{baseDir}/../../scripts/cli.py" click-publish --confirm

视频发布

  • 视频必须是存在的绝对路径。支持 AVI、FLV、M4V、MKV、MOV、MP4、MPEG4、MPG、TS、WEBM、WMV。
  • 标题和作品简介不能为空;作品简介先写入 UTF-8 文本文件。
  • 推荐提供 JPG、JPEG、PNG 或 WebP 自定义封面。发布前必须看到至少一个已设置封面,不能把“AI 封面生成中”当成封面已完成。
  • 页面常驻提示里可能出现“上传中”;只有远端视频预览或明确的“重新上传”控件,且没有真实进度条/“上传失败”,才算视频上传完成。

一次上传、填写并设置封面:

bash
python "{baseDir}/../../scripts/cli.py" fill-publish-video \
  --video "/absolute/path/video.mp4" \
  --cover "/absolute/path/cover.jpg" \
  --title "作品标题" \
  --desc-file "/absolute/path/desc.txt"

如果没有在填表时传 --cover,命令可能返回 status: filled_needs_cover。准备好封面后,在当前视频发布页执行:

bash
python "{baseDir}/../../scripts/cli.py" set-video-cover \
  --cover "/absolute/path/cover.jpg"

人工检查视频预览、标题、作品简介、竖/横封面和可见性设置,再运行:

bash
python "{baseDir}/../../scripts/cli.py" validate-publish-video

用户明确要求热点时才加入 --require-topic。任何 errors 都必须先解决。最终发布命令为:

bash
python "{baseDir}/../../scripts/cli.py" click-publish-video --confirm

结果解释

  • published: true、status: publish_confirmed:页面已给出明确成功信号。
  • published: false、status: publish_clicked_unconfirmed:已经点击,但成功状态未知。不要自动重试;先到作品管理核对,避免重复发布。
  • status: publish_outcome_unknown、clicked: null、retry_safe: false:指令期间异常,是否点击未知;先去作品管理核对,禁止自动重试。
  • success: false:先检查上述状态和 retry_safe;只有确认发布前校验失败且未点击时,才按 validation.errors 修复。

会话丢失或页面已关闭时,后续发布步骤不会自动选择另一个标签页。先用 browser-status --include-tabs 在本地确认目标,再通过全局 --target-id 指定现有表单,或重新准备内容。

风控与边界

  • 优先复用已有的本地 Chrome 调试实例;只有 JSON 明确返回 needs_user_verification: true 才停下请用户处理验证码或身份验证。
  • 不尝试绕过验证码、风控或平台限制。
  • 不支持一键跳过复核、草稿管理、定时发布、自动远程素材下载或远程 Chrome 发布承诺。

Frequently asked questions

What does the Douyin Publish AI skill do?

在抖音创作者中心填写并发布图文或视频作品,包括本地素材上传、视频封面设置、音乐选择、发布前校验和显式确认点击。用户要求发布抖音图文/视频或检查待发布内容时使用;不用于草稿管理或定时发布。

Why use Douyin Publish on TypingMind?

Because you install it once and use it with any model. Douyin Publish is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Douyin Publish in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/zJay26/douyin-skills/tree/main/skills/douyin-publish. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Douyin Publish?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Douyin Publish?

As many as you like. As long as a model supports skills, you can use Douyin Publish with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Douyin Publish AI skill free?

Yes. It is published on GitHub by zJay26 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇