mcpField
I
instagram-publisher

instagram-publisher

github.com/renatoasse营销与增长2.2k38 次安装29 周前更新
代码仓库

关于 instagram-publisher

Instagram Publisher 是面向 Instagram Business 账号发布轮播帖的技能,可处理图片选择和文案,并支持发布前试运行。

主要功能

  1. 01发布 JPEG 轮播帖
  2. 02选择并排列图片
  3. 03从草稿整理帖子文案
  4. 04使用试运行模式测试
  5. 05检查媒体处理状态

适用场景

  1. 01发布营销图片轮播帖
  2. 02发布前确认图片顺序
  3. 03不实际发布而测试流程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/renatoasse/opensquad --skill instagram-publisher

安装后在 Claude Code 中输入/instagram-publisher确认已加载。

附带文件scripts/publish.js

详细介绍

Instagram Publisher

使用场景

当你需要直接向 Instagram Business 账户发布轮播帖子时,可使用 Instagram Publisher。此技能可处理完整工作流:将图片上传到 imgBB(需要你自己的 API 密钥,获取地址:https://api.imgbb.com/)、通过 Graph API 创建 Instagram 媒体容器,并发布轮播帖子。每篇帖子支持 2-10 张 JPEG 图片。

说明

工作流
  1. 按名称排序,列出 squads/{squad}/output/images/ 中的 JPEG 文件。 如果未找到文件:停止操作,并让用户添加图片后再继续。
  2. 使用 AskUserQuestion 向用户展示图片列表,并确认顺序。
  3. 从内容草稿中提取说明文字:
    • 使用钩子幻灯片文本 + CTA 幻灯片文本
    • 最多 2200 个字符(Instagram 限制)
  4. 运行发布脚本:
    node --env-file=.env squads/{squad}/tools/publish.js \
      --images "<comma-separated-ordered-paths>" \
      --caption "<caption>"
    
    添加 --dry-run,即可测试完整流程,而不实际发布。
  5. 成功后:将帖子 URL 和帖子 ID 保存到步骤输出文件中。
  6. 失败后:显示错误,并询问用户如何继续。
限制
  • 图片:仅限 JPEG,每个轮播帖子 2-10 张
  • 说明文字:最多 2200 个字符
  • 需要 Instagram Business 账户(不能是 Personal 或 Creator 账户)
  • 速率限制:每 24 小时最多发布 25 篇 API 帖子
设置(首次使用)

将 .env.example 复制为 .env,并填写两个必需变量:

INSTAGRAM_ACCESS_TOKEN=
INSTAGRAM_USER_ID=
INSTAGRAM_ACCESS_TOKEN

前提条件:Instagram Business 账户已连接到 Facebook 专页,并且已在 developers.facebook.com 创建应用(类型:企业)。

获取长期令牌(有效期为 60 天):

  1. 进入你的应用 → Graph API Explorer
  2. 在顶部的下拉菜单中选择你的应用
  3. 点击 “生成访问令牌”
  4. 启用以下权限:
    • instagram_content_publish
    • instagram_basic
    • pages_read_engagement
  5. 点击 “生成访问令牌” 并授权——你将获得一个短期令牌(1 小时)
  6. 使用以下 GET 请求将其转换为长期令牌(60 天):
    https://graph.facebook.com/oauth/access_token
      ?grant_type=fb_exchange_token
      &client_id={APP_ID}
      &client_secret={APP_SECRET}
      &fb_exchange_token={TOKEN_CURTO}
    
    (APP_ID 和 APP_SECRET:进入你的应用 → 设置 → 基本信息)
  7. 复制响应中的 access_token 并粘贴到 .env

令牌将在 60 天后过期。请重复此流程以续期。

INSTAGRAM_USER_ID
  1. 在 Graph API Explorer 中(使用上述令牌)对以下地址执行 GET 请求:
    /me/accounts
    
  2. 在响应中找到你的 Facebook 专页,并记下 id
  3. 对以下地址执行 GET 请求:
    /{page-id}?fields=instagram_business_account
    
  4. 复制 instagram_business_account 中的 id——这就是你的 User ID

可用操作

  • 发布轮播帖子 -- 上传图片并向 Instagram 发布轮播帖子
  • 试运行 -- 测试完整发布流程,但不实际发布(使用 --dry-run 标志)
  • 图片上传 -- 将本地 JPEG 图片上传到 imgBB(需要 API 密钥)
  • 状态检查 -- 在发布前监控媒体容器的处理状态

评论

支持 Markdown