用 rust 写了个 x-cli 工具,包括相关的 skill
— White (@holaaWhite) March 10, 2026
实现推特所有的相关的操作,浏览时间线、搜索、点赞、收藏、发推、转发、引用推文等
赶紧丢给你的小龙虾 🦞 用起来
https://t.co/MduKzoB3eH pic.twitter.com/aSzlaUgE1M
AI 中文摘要Claude 生成
開發者用 Rust 編寫了一個完整的推特命令行工具「x-cli」,將推特的主要功能整合為單一二進位執行檔,支援所有核心操作。
這個工具的核心特色是功能完整性。在讀取操作方面,使用者可以瀏覽首頁時間線、查看特定使用者的推文和回覆、檢視粉絲及關注列表、搜尋推文和查看推文詳情。寫操作同樣全面,包括發推、回覆、引用轉推、點贊、取消點贊、轉推、取消轉推、關注和取消關注。這意味著該工具並非只是簡單的瀏覽器,而是一個完整的推特客戶端替代方案。
輸出格式採用精簡 JSON,自動提取關鍵字段並移除 GraphQL 原始包裝,資料量相比原始 API 回應減少約 98%。舉例來說,推文輸出包含推文 ID、URL、文本、建立時間、語言、作者資訊及統計數據(瀏覽次數、點贊、轉推、回覆、引用和收藏),使用者資訊則涵蓋帳號 ID、暱稱、名稱、描述、粉絲數、關注數和推文計數。
認證機制提供多種方案,針對不同使用場景。最簡單的方法是在本地電腦使用瀏覽器登入時直接透過 Chrome 或 Firefox 進行認證。對於 Agent 部署在雲端而本地電腦有瀏覽器登入的情況,工具提供從 DevTools 的 Network 標籤複製完整 Cookie 字符串的方法,再從中提取 auth_token 和 ct0。對於僅有手機且推特登入在移動端的使用者,有三種獲取方式:在手機瀏覽器輸入 JavaScript 命令讀取 cookie、使用 Android Chrome 的 DevTools 遠端調試,或透過網路抓包工具截獲請求頭中的完整 Cookie 值。
一個重要的實作細節是寫操作必須提供完整 cookie(credentials.json 中的 extra_cookies 字段),否則會報告 226 錯誤,提示「looks like automated behavior」。只提供 auth_token 加 ct0 無法成功執行發推、回覆或引用轉推。相比之下,讀操作不受此限制。這反映出推特對自動化行為的防禦機制相當嚴格。
工具還支援「緊湊模式」,使用者可加上 `-c` 標記減少輸出,只保留關鍵字段,適合與大語言模型或管道工具配合使用。命令可與 jq 結合進行進階操作,例如提取推文文本、按點贊數排序推文、根據互動次數篩選結果或提取特定使用者的粉絲數。
技術實現採用 rquest(支援 Chrome TLS 指紋)和 reqwest(備用)雙 HTTP 客戶端,自動提取 x-client-transaction-id,API 邏輯參考 heimdall 專案。安裝方式彈性,支援一鍵自動安裝腳本(自動偵測系統和架構)、手動下載特定平台的編譯版本,或從原始碼使用 Rust 工具鏈編譯。
故障排除文件指出,認證失敗時執行認證命令,226 錯誤需從瀏覽器 Network 標籤複製完整 Cookie,404 錯誤則可透過刪除交易快取檔案解決。憑證檔案應設定 600 權限確保安全,auth_token 有效期通常數月,修改推特密碼會使所有 token 失效。
