name: x-rsshub
name: x-rsshub description: X(Twitter)の情報取得・検索を一元的に担うスキル。RSSHub経由で投稿・タイムライン・トレンドを取得し、X Article(長文記事)はagent-browserで本文取得。「Xの記事を取得」「X検索」「ツイート取得」「タイムライン取得」「トレンド取得」などの作業に使う。 triggers:
ローカルで稼働するRSSHub(http://localhost:1200)を経由して、X(Twitter)の投稿データをRSSフィードとして取得する。
pnpm dev at ~/Dev/RSSHub).env に TWITTER_AUTH_TOKEN が設定済み# RSSHub起動(未起動の場合)
cd ~/Dev/RSSHub && pnpm dev
主要ルート一覧(ツイート取得、タイムライン、検索、トレンド等)とURL変換ロジックは以下を参照:
ルート早見表:
| 用途 | URL パターン |
|---|---|
| 特定ツイート | /twitter/tweet/:username/status/:tweetId |
| タイムライン | /twitter/user/:username |
| メディア | /twitter/media/:username |
| いいね | /twitter/likes/:username |
| キーワード検索 | /twitter/keyword/:keyword |
| リスト | /twitter/list/:listId |
| トレンド | /twitter/trends/:woeid? |
| ホーム | /twitter/home / /twitter/home_latest |
curl -s "http://localhost:1200" | head -5
起動していない場合: cd ~/Dev/RSSHub && pnpm dev &
ツイート取得スクリプト(RSSHub稼働確認・エラーハンドリング付き):
→ scripts/fetch-tweet.sh — ./fetch-tweet.sh <username> <tweetId> [json]
_extra.engagement にいいね・RT・リプライ・引用・ブックマーク・表示回数が含まれる。
AI Solo Craftの収集パイプラインでは crawlJsonFeed() が自動的にこれを collected_items の engagement_* 列に保存する。
→ scripts/extract-engagement.sh — ./extract-engagement.sh <username> <tweetId>
レスポンスの詳細構造は以下を参照:
→ references/example-response.json
主要フィールド: items[].title, items[].url, items[].content_html, items[].date_published, items[]._extra.engagement
X Article(x.com/i/article/:articleId)はRSSHubではURLリンクのみ返される。本文取得にはagent-browserを使用する。
判別: title / content_html が http://x.com/i/article/ で始まる場合はX Article。
→ references/x-article-guide.md — agent-browserでの取得手順
curl -s "http://localhost:1200" で確認。起動していない場合は cd ~/Dev/RSSHub && pnpm dev で起動するTWITTER_AUTH_TOKEN が期限切れ: 「Twitter cookie is not valid」エラーが出たら、ブラウザでx.comにログインし、DevTools → Application → Cookies → auth_token の値を .env に更新する。ログアウトするとトークンも無効になるx.com/i/article/)はRSSHubではURLリンクのみ返される。本文取得にはagent-browserを使い、cookies set 前に対象ドメインを open しておく必要がある