Twitter Post

通过官方 API v2 实现 Twitter/X 发文、回复与话题线,支持自动字符校验。

已扫描
适合谁
社交媒体运营人员、内容创作者
不适合谁
无 Twitter/X 开发权限者、无法配置 OAuth 密钥者
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @sit-in/twitter-post

Skill 说明

命令、参数、文件名以原文为准

Twitter 发布

通过官方 Twitter/X API v2 与 OAuth 1.0a 认证发布推文。

前置条件

必须设置四个环境变量。请从 [developer.x.com](https://developer.x.com) 获取:

TWITTER_CONSUMER_KEY=<API Key>
TWITTER_CONSUMER_SECRET=<API Key Secret>
TWITTER_ACCESS_TOKEN=<Access Token>
TWITTER_ACCESS_TOKEN_SECRET=<Access Token Secret>

可选配置:

  • HTTPS_PROXY —— 用于需要代理的地区,例如 http://127.0.0.1:7897
  • TWITTER_DRY_RUN=1 —— 验证并打印内容,不实际发布

设置

将凭证存储为环境变量。推荐方式:添加到 OpenClaw 实例配置中,或在 shell 配置文件中导出。切勿在 SKILL.md 或脚本中硬编码密钥。

如果用户尚未完成 OAuth 设置,请按以下步骤操作:

  1. 访问 [developer.x.com](https://developer.x.com) → 仪表盘 → 创建应用
  2. 应用权限 设置为 读取和写入
  3. 进入 密钥和令牌 选项卡
  4. 复制 API Key 和 API Key Secret
  5. 生成访问令牌和访问令牌密钥(确保包含读取+写入权限)
  6. 若门户仅显示“只读”,请使用 PIN 验证流程:

- 调用 POST /oauth/request_token,参数 oauth_callback=oob

- 用户打开链接:https://api.twitter.com/oauth/authorize?oauth_token=<token>

- 用户提供收到的 PIN 码

- 使用该 PIN 作为 oauth_verifier,调用 POST /oauth/access_token

使用方法

所有命令通过 exec 执行。脚本路径:scripts/tweet.js(相对于此技能目录)。

单条推文

node scripts/tweet.js "您的推文内容"

回复某条推文

node scripts/tweet.js --reply-to 1234567890 "回复内容"

引用推文

node scripts/tweet.js --quote 1234567890 "您的评论"

推文线程(多条推文)

node scripts/tweet.js --thread "第一条推文" "第二条推文" "第三条推文"

输出结果

输出为标准输出的 JSON 格式:

{"ok":true,"id":"123456789","url":"https://x.com/i/status/123456789","remaining":"99","limit":"100"}

出错时返回:

{"ok":false,"error":"..."}

字符限制

  • 每条推文最多 280 个加权字符
  • 中文、日文、韩文(CJK)字符每个计为 2 个字符
  • 每个 URL 计为 23 个字符(无论实际长度)
  • 脚本会在发布前自动校验;超出限制将拒绝发布

速率限制

  • 每用户每 15 分钟最多 100 条推文(OAuth 1.0a)
  • 基础计划(每月 $200)每月最多 3,000 条推文
  • 可通过输出中的 remaining 字段监控配额使用情况

使用建议

  • 若内容来自 Notion 或数据库:先获取文本,再通过管道传给 tweet.js
  • 用于定时自动发布:使用 exec 并设置环境变量,解析 JSON 输出以确认成功
  • 线程模式会逐条发布,每条自动回复上一条
  • 可结合 --thread--reply-to,将线程附加至已有推文之下
SI
@sit-in

已收录 1 个 Skill

相关推荐