FB/IG 一键分发
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_a751d310/fb-ig-publisher
技能介绍
要解决的问题
视频在本地完成审核之后,通常还差最后一步:把它真正发到 Facebook 主页上。手工上传意味着运营同学要重复点击、等待、再把链接复制回来;想脚本化发布也行,但得自己处理 multipart 上传、失败重试和错误码分类,工作量并不小。这个技能把这条发布链路固定下来,并且带一层失败保护。
工作原理
核心流程
- Validate:检查视频文件存在,且不超过 500MB
- Upload:以
multipart/form-dataPOST 到/{page-id}/videos - Attach Caption:从
caption.json读取文案并挂载 - Retry:最多 3 次重试,指数退避,仅针对可重试错误码 390、1363030
- Fallback:连续失败后自动降级到
/{page-id}/feed发布纯文字帖
凭据机制
技能不允许在无凭据状态下直接发布。首次使用必须交互式索取 Facebook Page ID 与 Page Access Token(以 EAA 开头的长字符串),验证通过后写入 ~/.workbuddy/fb_credentials.yaml。查找优先级依次为环境变量 FB_PAGE_ID / FB_PAGE_ACCESS_TOKEN、全局配置、项目本地 _assets/fb_credentials.yaml。
命令
config:查看凭据状态setup:配置凭据,先验证再保存status:列出03_Approved/下的待发布视频publish:执行发布
成功时返回 video_id、post_id、permalink;失败时返回错误码与消息、重试次数,以及是否走了 /feed 降级。
适用边界
- 需要 Python 3.8+ 与
requests库,无其他核心依赖 - 降级后的纯文字帖不含视频,业务侧需确认能否接受
- 只覆盖 Facebook 主页视频发布,Instagram 分发取决于素材管线是否共用同一套输入
- Token 至少需要
pages_manage_posts与pages_read_engagement权限
使用场景
- 把 03_Approved 目录下审核通过的视频发布到 Facebook 主页并获取视频与帖子 ID
- 首次使用发布功能时,收集 Facebook Page ID 与 Access Token 并保存到全局配置文件
- 执行 status 命令检查 03_Approved 目录下待发布的视频文件
- 视频上传连续失败后,确认是否自动降级为纯文字帖子并查看错误码与重试次数
适合人员
- 负责 Facebook 主页运营的成员,需要定期将审核通过的视频发布上线
- 执行视频发布操作的团队成员,需要确认待发布视频状态并处理上传结果
- 管理发布凭据的成员,需要配置和验证 Facebook Page 的 Access Token 与 Page ID