DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-douyin-publish

7

dsh-douyin-publish

Manifest valid

Take a local video all the way to a Douyin creator post: open the upload page, trigger the picker, hand the file over with verification, fill the title, set visibility - then stop before publishing un

hasBundlePatch

dsh-douyin-publish(抖音发布器)

把一段本地视频,一路送到抖音投稿页的"待发布"状态。

打开投稿页 → 真实点上「上传视频」→ 把文件交给系统对话框(含回读校验)→ 填标题 → 设可见性 → 默认停手。

这是四个作品里唯一的"功能"(前三个都是工具):它不止给 AI 加一个动作, 而是替使用者跑完一条链 —— 开页面、点按钮、交文件、填表、判断该不该发。 也正因为如此,它的默认值必须保守。


两条默认值是刻意的

参数默认要改成别的必须显式说
visibilityprivate(仅自己可见)visibility: 'public' / 'friends'
modedraft(不点发布)mode: 'publish'

发布是不可逆且对外可见的动作。所以这个插件默认只做到"表填好、停发布前", 你要发,就再说一次。想先看看会发生什么,用 dryRun: true。

它做什么(每一步都留证据)

步动作细节
①检查视频大小 / 分辨率 / 时长 / 编码(ffprobe,拿不到也不拦)
②借浏览器会话用自己的会话键,和别的任务不串台
③打开投稿页creator.douyin.com/creator-micro/content/upload
④等上传控件轮询到 input[type=file] 出现为止
⑤真实点击「上传视频」程序化 click() 不会弹系统对话框,必须真点
⑥递文件等对话框 → 填路径(走剪贴板)→ 回读逐字比对 → 点确认
⑦等编辑页轮询到 URL 含 /content/post/video
⑧填标题按页面上真实的 placeholder 定位
⑨设可见性按页面上真实的中文标签点(公开 / 好友可见 / 仅自己可见)
⑩发布,或故意不发布mode=draft 时这一步记 skipped

失败会分类说清:no-browser / no-dialog / handover / edit-page-timeout / visibility / publish。

它依赖什么

  • 浏览器插件(借宿主的 ctx.browser 服务)—— 没有时明确报错,不会假装能用。 这是刻意的:官方浏览器插件的工具层也是同一条路(inject 里带 browser)。
  • 系统"打开文件"对话框能力:自带 lib/handover.ps1(与作者的 dsh-file-handover 同源, 但四个插件各自独立成仓,不互相依赖)。
  • 可选:ffprobe(没有也能发,只是少了元信息)。

安装

市场收录后在 DSH 里搜 dsh-douyin-publish 安装。手动安装:

New-Item -ItemType Junction -Path "$env:USERPROFILE\.dsh\profiles\desktop\node_modules\dsh-douyin-publish" -Target "D:\dsh\projects\dsh-douyin-publish"
# profile 的 package.json:dependencies 加 "dsh-douyin-publish": "link:D:/dsh/projects/dsh-douyin-publish"
# 并把 "dsh-douyin-publish" 加进 dsh.profile.bundles(漏了不加载)→ 重启 DSH

发布前先做这两件事:① 装好浏览器插件;② 在浏览器窗口里登录抖音创作者中心 (登录态存在浏览器 profile 里,一次登录可跨重启复用)。

用法

工具(在 DSH 里)

douyin_upload videoPath=D:\videos\a.mp4 title="标题" [topics="猫,狗"] [visibility=private] [mode=draft|publish] [dryRun]

典型流程:dryRun: true 看一眼 → 正式跑一次(停发布前)→ 到浏览器里核对 → mode: 'publish' 真发。

命令(不依赖浏览器的那一半)

dsh-douyin-publish check --video "D:\videos\a.mp4"

已知限制

  • 版式绑定:选择器基于 2026-10-16 实测的创作者中心版式;抖音改版后需要同步更新。
  • 话题(topics)v0.1 只记进回执,不代填 —— 话题框的行为要先摸清再说。
  • 验证码 / 风控不硬试:检测到就停下请人到浏览器窗口处理,再继续。
  • 仅 Windows:递文件那一段依赖 EnumWindows / UI Automation / PowerShell。
  • 不做内容创作:剪片、封面、文案是内容管线的事(用 ffmpeg 等),这个插件只负责"送上去"。

自测

node test/smoke.mjs   # 假浏览器 + 假 spawn:断言编排序列、默认值、失败分类;不碰抖音

License

MIT

Comments

Loading…

Similar plugins

dsh-file-uploads

by l541402398

Upload arbitrary local files from the DeepSeek Harness Web composer and manage them in Settings.

UI & ExperienceManifest valid

★ 3

MIT

JavaScript

Aug 14, 2026

dsh plugin --profile web add dsh-file-uploads

TikTok-style video feed in a floating sidebar window: swipe local or SMB-NAS folders, or paste online video URLs (yt-dlp, bilibili/YouTube, cookies.txt login state); the window auto-fits the video asp

UI & ExperienceManifest valid

★ 0

dsh plugin --profile web add dsh-plugin-video-player

by seeingrain

Upload any file to DSH, isolated per workspace and session — a composer file library with server-side thumbnails and a context menu to open, copy, re-download or delete.

UI & ExperienceManifest valid

★ 0

MIT

TypeScript

Sep 5, 2026

dsh plugin --profile web add dsh-upload-file

by a903067276-rgb

One upload button plus drag-and-drop files into the conversation as local paths: save to project uploads/, path text into the input box, works with any vision tool

UI & ExperienceManifest valid

★ 10

↓ 1.2k/wk

MIT

JavaScript

Sep 25, 2026

dsh plugin --profile web add dsh-file-upload

by zhanghuqqqq

DSH plugin: drag & drop anything into the composer - local files upload with absolute-path references, web images/links download host-side, plain text inserts. Per-session .dropped/<sessionId>/ landin

Tools & CapabilitiesManifest valid

★ 0

↓ 45/wk

MIT

JavaScript

Sep 8, 2026

dsh plugin --profile web add dsh-drop-in

by Gty2408

Publish a DSH plugin to GitHub and submit it to the plugin marketplace from a settings page. Validates the manifest against the listing requirements, creates the repository, uploads the tree, and open

Development & InfrastructureManifest valid

★ 0

MIT

JavaScript

Oct 6, 2026

dsh plugin --profile web add dsh-plugin-publisher