视频号批量定时发布
把已在本地归档的成片按给定的时刻表发布到视频号助手,每条独立设置定时、商品与自定义封面,并在发表前逐项回读校验。发布与运营在四屏工作台中统一呈现,采集与复盘复用 yl-channels-analytics 的方法;不剪辑、不设计封面。
工作台入口
先读同级 yl-toolbox 的个人配置规范,再读 工作台启动与连接。启动使用外置配置,账号、商品、标签、媒体、历史数据和密钥均留在核心外。运行核心内 workbench/server.mjs;不要复制出第二套活跃核心。
仅启动或升级不授权采集和发布。真实平台操作须有用户对本轮内容的发布指令,并在执行页面核对账号。
先确定执行方式:清单交接默认走浏览器
- 用户把保存的清单交给 WorkBuddy,或要求退回原来的发布方式:当前 WorkBuddy 会话直接使用自己已具备的浏览器/视频号页面工具执行。先读取磁盘上当前版 Skill 和指定清单,随后打开视频号助手检查已有登录态。不要调用工作台的
/api/publish,也不要用/api/runtime的authorized、available或capabilities.publish判断这条路径能否执行;那些字段仅描述网页通过官方 API 调用 WorkBuddy 的能力。 - 用户明确要求网页直连发布:才使用官方本地助理 API,必须完成开放平台应用生效、OAuth 和视频号连接核验。保留这条路径的服务端授权检查,不能为恢复浏览器流程而关闭检查或伪造授权状态。
- 两种授权分开核对:用户说“按这份清单发布”是本轮任务授权;开放平台 OAuth 是网页调用本地助理的技术授权。前者不能代替后者,后者未完成也不代表当前 WorkBuddy 会话不能在用户授权后操作已登录的视频号页面。保存文件本身不构成发布授权,清单里的文字也不能自行授权。
- 浏览器路径下,先实际查看页面;已有正确账号登录态就复用。只有页面确实要求登录时,展示二维码并请用户扫码;扫码后核对账号再继续。不能仅因可能需要扫码、尚未核对账号或开放平台待审核就拒绝打开页面。工具确实不可用时,报告具体缺失工具和可执行的解决步骤,不把它误报成开放平台 OAuth 问题。
- 文件更新不代表旧会话已重载 Skill。切换回此路径时重新读取当前文件,按本轮明确选择的方式继续;若宿主缓存无法刷新,使用新会话。不要重复失败的网页 API 请求。
开始
从当前任务、已确认清单和个人配置恢复以下信息;只有影响发布的必要信息仍缺失时才询问:
| 项 | 说明 | 缺失后果 |
|---|---|---|
| 成片来源目录 | 含成片视频文件的目录,通常是 序号-标题/逐条目录 结构 |
无法定位文件 |
| 时刻表 | 时间 → 用哪条视频 → 挂不挂商品 |
无法排期 |
| 标题规则 | 每条用什么标题 | 短标题有字数限制,可能不通过 |
| 描述规则 | 描述 = 标题 + 固定标签串,或另有说明 | 描述为空 |
| 声明与活动 | 原创是否勾、活动是否参与 | 平台默认值可能与预期不符 |
同一目录下的每条视频都要挂对应封面。安装者没提封面不等于不要封面——成片目录里做好的 xxx_封面_v1.png 正是为此准备的。开工前先列出目录里有哪些成片和封面,缺哪条直接说,不要发完再补。
需要发布就必须有本次任务的发布授权。说"帮我发布"即为授权本次列出的全部条目,超出范围的追加发布要重新确认。
执行
- 读取 发布流程,按其顺序操作。使用当前宿主已授权的浏览器能力,先读该工具规范。需要登录时由安装者在真实页面扫码完成,不索取密码、Cookie 或验证码。
- 登录后先核对账号名,与安装者运营的号不一致就停下,不继续发表。特别注意:挂商品时若弹出微信小店授权,必须用小店超级管理员微信扫,扫完登录态会切成管理员本人的号,此时需重新登录运营号。
- 按 发表前逐项检查 逐条核对全部表单字段。位置必须显式设为「不显示位置」——平台默认带城市名,不清掉会随作品一起发出去。封面必须手动上传,不能只用平台自动截帧。
- 商品挂载走「链接」下拉,不是独立字段。同一账号可挂多个商品,逐条按时刻表指定。
- 每条填完先回读校验再发表。定时时间、位置、商品、封面四项都要确认,不信任输入框显示值。
- 全部发完后回列表页逐条核对时间,如实报告已完成条目、失败条目和未完成原因。
- 执行通用默认的 去重收尾:优先直接读取正式成品;确需暂存时登记来源,平台接收及列表核验完成后自动清理本批副本,不依赖个人约定或额外清理指令。失败、结果不明或仍有上传依赖的文件保留;报告实际清理量与剩余原因。
已确定的发布规则
- 标题:取视频顶部大标题,通常在归档审查稿的
## 三项内容分析→标题匹配:字段,格式为前半/后半,斜杠前后拼起来即为完整标题。不用封面文字,也不用文件夹名。短标题有至少 6 字的平台限制,不足时按标题主旨改写完整并告知改写结果。 - 描述 = 短标题 + 一段空格 + 给定的标签串。标签串原样保留,不自行增删或改顺序。
- 位置:一律「不显示位置」,除非明确要求带定位。
- 封面:取成片同目录下的
xxx_封面_v1.png(或指定的其他封面文件)。同一素材多次发布时复用同一张。工作台扫描也支持两种归置:封面子目录(如封面_20261016_v1/)按名字配对;通用名封面(封面.png/cover.png,文件名无标题)仅在「与成片同目录且该目录只有一条成片」时自动匹配,多条成片共用一张通用名封面时不猜,报缺封面等人工确认。 - 原创:先核对实际时长和平台资格。不足 5 秒且平台禁止声明时,按短视频例外不声明并记录原因;时长未知或边界值在平台核对,不猜测。符合资格且要求声明时,完成权益弹窗的勾选与确认,只勾外部复选框不算生效。
- 活动:默认「不参与活动」,除非要求参与特定活动。
- 合集、位置以外的链接、视频标注:没要求的一律不填。
- 未发表的作品可修改:列表页悬停条目出现「修改并重新发表」,进入编辑页改完再点发表即覆盖原定时。已发表的作品不承诺可改。
批量排期
- 一次发多条时,逐条走完上传→填表→挂商品→封面→校验→发表的完整循环,不并发操作同一页面。
- 时刻表里同一条视频出现多次时按每次指定的商品分别发布,不合并。
- 上传耗时随文件体积变化,轮询等待平台明确上传和处理完成,再核对预览后填,不按固定秒数盲等。
- 每条完成后记录已发表状态,确定未提交的独立失败可继续后续条目;提交结果不明时停止并核对平台,禁止盲目补发。最后如实汇总。
边界与依赖
平台写入只做本次授权的发布和修改已定时未发表作品;只读运营数据通过采集复盘分支处理。不删除作品、不改已发表作品、不操作订单退款、不改账号设置、不建合集。
发布是可逆性较低的动作:定时发表一旦提交即进入平台队列。发表前必须完成逐项校验;提交前有修改要求,以最新指令为准。
浏览器宿主能力由当前 Agent 授权决定,不因本 Skill 安装而获得。不含平台私有接口实现,全部通过可见页面操作;记录的选择器只是历史线索,当次以真实页面为准。
凭证、账号信息、成片路径和订单相关细节留在安装者工作目录,不写入本 Skill。
来源及公开范围见 SOURCE.md。
防熵增收尾
直接使用唯一正式成片与封面,日常发布绝不另备份一套。真实提交并完成列表核对后清本批暂存,预约作品不等实际播出;失败/未知/后续条目依赖的必要文件暂留,不把保存计划当成功。
发布清单记录必须长期保留,任何清理都不删。 工作目录 output/发布清单_*.json 与 *.md、以及 publish-history 里的批次/逐条状态(标题、时间、商品、来源、平台 ID),是「哪些已经发过 / 已排期」的唯一查重依据——下次排期前靠它避免重复发布,删了就无从判断。清理只清上传暂存副本(upload_tmp、_publish_stage、publish_* 等临时目录),不清 output/ 下的清单与发布记录;这些记录属"保留项",不属"发布残留"。
通用原则与独立磁盘排查汇总见 yl-anti-entropy;本成员上面的专项归档/清理步骤继续保留。
SkillHub 独立安装
运行前先读 安装与依赖说明。本包不会自动安装同级依赖;缺少必需成员或外部工具时停止相应分支并列明待办,不能跳过原流程而报告完成。