前言¶
給 X(Twitter)做程序化發推,常見做法是抓 cookie 走 bird CLI 這類工具。這條路能跑,但 cookie 會過期,發得頻繁還會撞上機器人檢測和限速,穩定性全看平臺臉色。下面是一套把發推搬到官方 API 上的 Skill,認證走 OAuth 1.0a 用戶上下文,繞開 cookie 方案的限制。
這是什麼¶
X Api 是一個發推 Skill,座標 @clawhub_lobstergeneralintelligence/x-api,由 lobstergeneralintelligence 維護,上游託管在 ClawHub,版本 v0.1.0,許可證 MIT-0,ClawHub 安全審計結果爲 Pass。它解決的問題只有一個:用官方 API 穩定發推。SkillHub 上該 Skill 的分類標註爲 content-creation,顯示評分 100000、下載 15075、安裝 1984。
核心功能¶
只做發推,這一點要先說清楚。Skill 的官方說明裏寫得明確:讀取時間線、搜索、監控這類操作不要走本 Skill,交給 bird CLI。所以下面列出的能力是文檔中實際覆蓋的範圍。
1、單條發推。支持多行文本,成功返回推文 URL。
2、OAuth 1.0a 認證。使用 Consumer Key/Secret 加 Access Token/Secret 四元組,走用戶上下文簽名,這是發推必需的。
3、憑據配置兩種方式。環境變量或本地配置文件,二者取其一即可。
這裏要交代一處資料衝突:該 Skill 的線索描述提到 OAuth 2.0 Bearer Token、推文串、讀取時間線、搜索、限流退避與 429/403 處理,但在 ClawHub 官方頁面和 SkillHub 頁面上都查不到對應內容,官方頁面反而建議讀取改用 bird CLI。這些能力不寫進本文,需要時自行到官方地址覈對。
安裝與啓用¶
安裝走 OpenClaw 的 skills 命令,ClawHub 頁面給出的是這一條。ClawHub 同時列出了 npx skills 作爲 CLI 方式。Cursor、Codex CLI、Claude Code 是否有對應安裝方式,官方頁面沒有說明,這裏不寫。
openclaw skills install @lobstergeneralintelligence/x-api
安裝後依賴一個 npm 包,需要全局安裝。這是發推腳本底層調用的客戶端庫。
npm install -g twitter-api-v2
配置憑據¶
發推前要先拿到官方憑據。打開 X Developer Portal 的 dashboard,新建 Project 和 App,把 App 權限設爲 Read and Write(只有讀權限時會返回 401),然後在 Keys and tokens 頁取四樣東西。
API Key (Consumer Key)
API Key Secret (Consumer Secret)
Access Token
Access Token Secret
憑據有兩種放法。第一種是環境變量。
export X_API_KEY="your-api-key"
export X_API_SECRET="your-api-secret"
export X_ACCESS_TOKEN="your-access-token"
export X_ACCESS_SECRET="your-access-token-secret"
第二種是配置文件,路徑固定在 ~/.clawdbot/secrets/x-api.json,字段名與上面四樣對應。
{
"consumerKey": "your-api-key",
"consumerSecret": "your-api-secret",
"accessToken": "your-access-token",
"accessTokenSecret": "your-access-token-secret"
}
兩種任選其一。憑證不要硬編碼進腳本或提交進倉庫,泄露後到 Developer Portal 重新生成 Access Token。
典型用法¶
裝好依賴、配好憑據之後直接發推。命令形式是 x-post 後接正文。
x-post "Your tweet text here"
如果命令不在 PATH 裏,用腳本全路徑調用。
node /path/to/skills/x-api/scripts/x-post.mjs "Your tweet text here"
多行文本同樣支持,用換行分隔即可。
x-post "Line one
Line two
Line three"
成功時返回推文 URL。
限額與常見報錯¶
發推是計費操作,免費檔每月 1,500 條,前提是 X Developer Portal 裏有 credits;Basic 檔每月 100 美元,限額更高。三個常見報錯的處理方式如下。
1、402 Credits Depleted:到 Developer Portal 的 Dashboard 裏補充 credits。
2、401 Unauthorized:先確認 App 權限設成了 Read and Write,然後重新生成 Access Token。
3、No credentials found:說明環境變量沒設、配置文件也沒建,按上面任一方式補上。
讀取怎麼辦¶
需要讀時間線、讀提及、搜索、看某個賬號的推文或讀單條推文時,用 bird CLI,官方說明裏給出的命令如下。
bird home # 時間線
bird mentions # 提及
bird search "query" # 搜索
bird user-tweets @handle # 某賬號的推文
bird read <tweet-url> # 單條推文
這樣分工的理由是成本:讀操作走免費的 CLI,寫操作走官方 API,兩邊都不浪費 credits。
適用場景與注意¶
適合需要可靠發推的場景:定時發內容、腳本批量發佈、把發推接進現有自動化流程。不適合把它當讀寫一體的客戶端用,讀側要另配 bird CLI。
注意三點。一是免費檔 1,500 條/月的額度要按發佈頻率覈算,超了會直接 402。二是憑據必須留在環境變量或 ~/.clawdbot/secrets/ 下,不要寫進代碼倉庫。三是 App 權限要一次設成 Read and Write,只給讀權限的話發推會失敗。
結尾¶
這套 Skill 的價值在於把發推從 cookie 依賴裏摘出來,認證和限流都由官方 API 負責。它只覆蓋發推,讀側需要和 bird CLI 搭配使用。官方地址:https://www.skillhub.cn/skills/clawhub_lobstergeneralintelligence/x-api ,上游倉庫:https://clawhub.ai/lobstergeneralintelligence/x-api 。