Skip to content
cccskills
FreePublished on GitHub

multi-platform-publish

辅助上传视频并填写小红书、抖音、快手、微信视频号发布页面,由用户检查并完成最终发布的工作流

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (4)

  • SKILL.md8.5 KB
  • config_template.json420 B
  • example_publish.json403 B
  • README.md6.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Multi-Platform Video Publisher

概述

这个 Skill 帮助你将视频和元数据信息依次填写到小红书、抖音、快手、微信视频号的发布页面。支持全平台或选择性处理,但最终发布按钮必须由用户在浏览器中检查并手动点击。

触发条件

用户说以下任何一种:

  • "发布视频到所有平台"
  • "多平台发布"
  • "上传视频到[平台名]"
  • "发布到小红书和抖音"
  • 提供 JSON 配置文件路径

前置条件检查

在开始发布前,自动检查:

  1. ✅ 视频文件是否存在
  2. ✅ 目标平台的 Cookie 文件是否存在
  3. ✅ Python 脚本文件是否存在
  4. ✅ 元数据是否完整
  5. ✅ 用户是否确认目标账号、平台和视频

执行流程

阶段 1: 配置准备

  1. 收集配置信息

    如果用户提供了 JSON 配置文件:

    # 读取配置文件
    cat {config_file}
    

    如果用户没有提供配置,使用 AskUserQuestion 工具询问:

    • 视频文件路径(必填)
    • 标题(必填)
    • 描述(必填)
    • 标签(必填,逗号分隔)
    • 目标平台(可选,默认全部)
  2. 验证配置

    # 检查视频文件
    ls -lh "{video_path}"
    
    # 检查 Python 脚本
    ls -1 *_uploader.py
    
    # 检查 Cookie 文件
    ls -1 cookiesFile/*.json 2>/dev/null || echo "未找到 Cookie 文件"
    
  3. 显示配置摘要并取得明确确认

    使用 AskUserQuestion 工具展示配置并请求确认:

    📹 视频: {video_path} ({file_size})
    📝 标题: {title}
    📄 描述: {description}
    🏷️  标签: {tags}
    🎯 目标平台: {platforms}
    
    配置信息正确吗?
    

阶段 2-5: 平台发布循环

对于每个目标平台(小红书、抖音、快手、微信视频号),按顺序执行:

平台映射:

  • 小红书 → xhs_uploader.py
  • 抖音 → douyin_uploader.py
  • 快手 → kuaishou_uploader.py
  • 微信视频号 → wechat_channels_uploader.py

发布步骤:

  1. 检查 Cookie 文件

    ls cookiesFile/{platform}_*.json 2>/dev/null
    

    如果不存在,提示用户:

    ⚠️  {平台名} Cookie 文件不存在
    请先运行登录命令:python {platform}_uploader.py login
    
    是否跳过该平台继续发布?
    
  2. 执行上传命令

    python {platform}_uploader.py upload \
      --video "{video_path}" \
      --title "{title}" \
      --desc "{description}" \
      --tags "{tags}" \
      --account "{account_path}"
    
  3. 监控上传进度

    • 实时显示脚本输出
    • 等待脚本完成或用户确认
  4. 记录结果

    • 用户确认平台已发布:✅ {平台名}已确认发布
    • 失败:❌ {平台名}发布失败 - {错误信息}
    • 跳过:⏭️ {平台名}已跳过

不要仅根据脚本以退出码 0 结束就报告发布成功。脚本完成只代表自动填写流程结束;最终状态需要用户确认或平台页面提供可检查的成功反馈。

阶段 6: 生成发布报告

汇总所有平台的发布结果:

=== 📊 发布报告 ===
视频: {video_path}
标题: {title}
开始时间: {start_time}
结束时间: {end_time}
总耗时: {duration}

平台发布结果:
✅ 小红书: 用户已确认发布
✅ 抖音: 用户已确认发布
❌ 快手: 上传超时
⏭️  微信视频号: 已跳过

已确认: 2/4
失败: 1/4
跳过: 1/4

失败详情:
- 快手: 网络超时,建议稍后重试

错误处理策略

视频文件不存在

  • 立即停止,提示用户检查文件路径
  • 不继续执行后续平台

Cookie 过期

  • 提示用户重新登录该平台
  • 提供登录命令:python {platform}_uploader.py login
  • 询问是否跳过该平台继续发布

上传失败

  • 记录错误信息
  • 继续下一个平台
  • 在最终报告中显示失败详情

网络超时

  • 记录超时信息
  • 继续下一个平台
  • 在最终报告中提示用户稍后重试

JSON 配置文件格式

如果用户提供 JSON 配置文件,格式如下:

{
  "video": "videos/demo.mp4",
  "metadata": {
    "title": "7分钟赶走脑雾",
    "description": "感觉大脑迟钝、分心或精神疲惫?这个视频教你科学方法快速恢复专注力。",
    "tags": "脑雾,专注力,神经科学,心理技巧,效率提升"
  },
  "platforms": ["xhs", "douyin", "kuaishou", "wechat"],
  "accounts": {
    "xhs": "cookiesFile/xhs_account.json",
    "douyin": "cookiesFile/douyin_account.json",
    "kuaishou": "cookiesFile/kuaishou_account.json",
    "wechat": "cookiesFile/wechat_account.json"
  }
}

字段说明:

  • video: 视频文件路径(必填)
  • metadata.title: 视频标题(必填)
  • metadata.description: 视频描述(必填)
  • metadata.tags: 标签,逗号分隔(必填)
  • platforms: 目标平台列表(可选,默认全部)
  • accounts: 各平台 Cookie 文件路径(可选,默认使用脚本自动查找)

使用示例

示例 1: 交互式发布

用户: 发布视频到所有平台
LLM: 好的,请提供以下信息:
     1. 视频文件路径
     2. 标题
     3. 描述
     4. 标签

用户: 视频是 videos/demo.mp4,标题是"7分钟赶走脑雾"...
LLM: [执行发布流程]

示例 2: 使用 JSON 配置

用户: 使用 publish_config.json 发布视频
LLM: [读取配置文件]
     [显示配置摘要]
     [询问确认]
     [执行发布流程]

示例 3: 选择性发布

用户: 只发布到小红书和抖音
LLM: [收集配置信息]
     [只执行小红书和抖音的发布流程]

注意事项

  1. 默认发布顺序: 小红书 → 抖音 → 快手 → 微信视频号
  2. 人工确认必需: 每个平台都需要用户检查内容并手动点击最终发布按钮
  3. 错误不中断: 某平台失败不影响其他平台发布
  4. Cookie 管理: 确保各平台 Cookie 有效,过期需重新登录
  5. 视频格式: 建议先使用 MP4,实际限制以平台当前页面为准
  6. 标签限制:
    • 抖音:最多 5 个标签
    • 快手:最多 3 个标签
    • 小红书、微信:以平台当前页面为准

常见问题

Q: 如何重新登录某个平台?

python xhs_uploader.py login
python douyin_uploader.py login
python kuaishou_uploader.py login
python wechat_channels_uploader.py login

Q: 如何只发布到部分平台?

在配置阶段指定目标平台,或在 JSON 配置文件中设置 platforms 字段。

Q: 发布失败如何重试?

查看失败原因,修复后重新运行 skill,或单独调用失败平台的脚本。

Q: Cookie 文件保存在哪里?

默认保存在项目根目录的 cookiesFile/ 文件夹下。

Q: 如何在其他项目中使用这个 skill?

将 .claude/skills/multi-platform-publish/ 目录复制到 ~/.claude/skills/ 即可在任何项目中使用。

实现细节

平台特性处理

小红书:

  • 支持标题、描述、标签
  • 自动检测上传完成
  • 手动确认发布

抖音:

  • 标题(30字限制)+ 描述 + 话题标签(最多5个)
  • 自动选择推荐封面
  • 支持两种版本的发布页面

快手:

  • 标题 + 描述 + 话题标签(最多3个)
  • 所有内容填充在同一个描述框
  • 自动检测上传完成

微信视频号:

  • 描述 + 话题标签(建议3个)+ 短标题(6-16字符)
  • 自动格式化短标题
  • 微信扫码登录

错误恢复机制

  1. Cookie 过期检测

    • 检查登录状态
    • 提示重新登录
    • 提供跳过选项
  2. 上传超时处理

    • 设置合理的超时时间
    • 记录超时信息
    • 继续下一个平台
  3. 网络错误处理

    • 记录脚本返回的错误
    • 当前脚本不提供统一自动重试
    • 用户确认后可单独重试失败平台

全局安装指南

要在任何 Claude Code 窗口中使用这个 skill:

  1. 复制 skill 到全局目录

    cp -r .claude/skills/multi-platform-publish ~/.claude/skills/
    
  2. 验证安装

    ls ~/.claude/skills/multi-platform-publish/
    
  3. 在任何项目中使用

    用户: /multi-platform-publish
    或
    用户: 发布视频到所有平台
    
  4. 注意事项

    • 确保目标项目包含 *_uploader.py 脚本
    • 确保 cookiesFile/ 目录存在
    • 视频文件路径使用绝对路径或相对于当前项目的路径

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Report a problem with this skill