Install any skill in seconds. Free to start, no credit card required.
Get Started Free →X (Twitter) のリアルタイム検索を行い、トピックに関するツイートを収集・分析する。 検索結果を構造化レポート(Markdown + JSON + TXT)として出力。 「Xで検索して」「Twitterで調べて」「ツイートを分析」等で発動。
.claude/skills/minicoohei-x-research/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-09 | ✗→✓ | ▲ Improved | 75% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 130% | 0% |
| case-14 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 143% | 0% |
| case-17 | ✗→✓ | ▲ Improved | 36% | 0% |
X API v2 Recent Search エンドポイントを使用して、指定トピックに関するリアルタイムのツイートを検索・収集・分析します。 取得したツイートをエンゲージメント順にランキングし、ハッシュタグ分析・時系列分布・共有URL一覧を含む構造化レポートを Markdown + JSON + プレーンテキストの3形式で出力します。
bash# 基本的な検索 python skills/x-research/scripts/x_research.py --topic "生成AI" # 英語で検索、リツイート除外 python skills/x-research/scripts/x_research.py --topic "Claude AI" --lang en --no-retweets # 直近3日間、関連度順 python skills/x-research/scripts/x_research.py --topic "OpenAI" --days 3 --sort relevancy
| Parameter | Required | Default | Description | |-----------|----------|---------|-------------| | --topic, -t | Yes | - | 検索トピック・キーワード | | --query, -q | No | auto | カスタム検索クエリ(topicの代わりに直接指定) | | --lang, -l | No | ja | 言語フィルタ: ja, en, all | | --days, -d | No | 7 | 検索期間(日数、最大7) | | --sort, -s | No | relevancy | ソート: relevancy, recency | | --no-retweets | No | false | リツイートを除外 | | --no-replies | No | false | リプライを除外 | | --media-only | No | false | メディア付きツイートのみ | | --from-user | No | - | 特定ユーザーのツイートのみ | | --min-likes | No | 0 | 最小いいね数(取得後フィルタ) | | --max-results, -m | No | 50 | 1ページあたりの最大取得数(最大100) | | --max-pages | No | 3 | 最大ページ数 | | --top-n | No | 10 | トップツイート表示数 | | --output, -o | No | output/x-research/ | 出力ディレクトリ | | --session | No | auto | セッション名(出力フォルダ名に使用) | | --dry-run | No | false | クエリを表示するだけで実行しない | | --raw-json | No | false | 生APIレスポンスをstderrに出力 |
--query で直接指定する場合、X API v2 の検索演算子が使えます:
| 演算子 | 例 | 説明 | |--------|-----|------| | キーワード | 生成AI | 基本キーワード検索 | | "フレーズ" | "Claude Code" | 完全一致フレーズ | | from: | from:OpenAI | 特定ユーザーの投稿 | | to: | to:username | 特定ユーザーへのメンション | | -is:retweet | -is:retweet | リツイート除外 | | -is:reply | -is:reply | リプライ除外 | | has:media | has:media | メディア付きのみ | | has:links | has:links | リンク付きのみ | | lang: | lang:ja | 言語指定 | | #ハッシュタグ | #AI | ハッシュタグ検索 | | OR | AI OR 人工知能 | OR 検索 | | -keyword | -広告 | キーワード除外 |
3つのファイルが output/x-research/YYYYMMDD_HHMMSS_{topic}/ に生成されます:
{topic}_report.md - Markdown レポート{topic}_data.json - 構造化 JSON{topic}_raw.txt - プレーンテキスト要約bash# 日本語で「生成AI」を検索(デフォルト設定) python skills/x-research/scripts/x_research.py --topic "生成AI" # 英語で「Claude」を検索、リツイート・リプライ除外 python skills/x-research/scripts/x_research.py \ --topic "Claude AI" --lang en --no-retweets --no-replies # 特定ユーザーの投稿を検索 python skills/x-research/scripts/x_research.py \ --topic "AI" --from-user AnthropicAI --lang en # メディア付きツイートのみ、直近3日間 python skills/x-research/scripts/x_research.py \ --topic "AI art" --media-only --days 3 --lang en # カスタムクエリで高度な検索 python skills/x-research/scripts/x_research.py \ --query '"Claude Code" OR "Cursor AI" -is:retweet lang:en' --topic "AI IDE" # dry-run でクエリを確認 python skills/x-research/scripts/x_research.py \ --topic "テスト" --no-retweets --lang ja --dry-run
bash# .env に追加 X_BEARER_TOKEN=your_bearer_token_here
取得方法:
.env ファイルに X_BEARER_TOKEN=... を追加| プラン | 検索上限 | 期間 | |--------|----------|------| | Free | 使用不可 | - | | Basic ($100/月) | 60リクエスト/15分 | 直近7日 | | Pro ($5,000/月) | 300リクエスト/15分 | 直近7日 |
=== 出力完了 ===
Markdown: output/x-research/20260210_053000_生成AI/生成AI_report.md
JSON: output/x-research/20260210_053000_生成AI/生成AI_data.json
Text: output/x-research/20260210_053000_生成AI/生成AI_raw.txt
--- サマリー ---
ツイート数: 30
ユニーク著者: 28
いいね合計: 1,234
リツイート合計: 56
リプライ合計: 12
期間: 2026-02-03 ~ 2026-02-10textrequests>=2.28.0 python-dotenv>=0.19.0
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-06 | pass→pass | 6,017 | 2,992 | -50% | 1 | 1 | 0% | 978 | 2,294 | +135% | 0 | 0 | — |
case-01 | fail→fail | 16,497 | 6,903 | -58% | 1 | 1 | 0% | 3,260 | 1,991 | -39% | 0 | 0 | — |
case-02 | fail→fail | 8,847 | 6,933 | -22% | 1 | 1 | 0% | 1,667 | 2,103 | +26% | 0 | 0 | — |
case-03 | fail→fail | 14,145 | 6,244 | -56% | 1 | 1 | 0% | 2,351 | 2,078 | -12% | 0 | 0 | — |
case-04 | pass→pass | 7,010 | 1,952 | -72% | 1 | 1 | 0% | 1,111 | 1,990 | +79% | 0 | 0 | — |
case-05 | pass→pass | 5,773 | 2,478 | -57% | 1 | 1 | 0% | 910 | 2,090 | +130% | 0 | 0 | — |
case-07 | pass→pass | 8,613 | 2,798 | -68% | 1 | 1 | 0% | 1,469 | 2,181 | +48% | 0 | 0 | — |
case-08 | pass→pass | 9,988 | 1,475 | -85% | 1 | 1 | 0% | 1,642 | 1,891 | +15% | 0 | 0 | — |
case-09 | fail→pass | 7,838 | 4,741 | -40% | 1 | 1 | 0% | 1,174 | 2,052 | +75% | 0 | 0 | — |
case-10 | fail→pass | 7,238 | 2,190 | -70% | 1 | 1 | 0% | 889 | 2,042 | +130% | 0 | 0 | — |
case-11 | pass→pass | 6,309 | 2,883 | -54% | 1 | 1 | 0% | 960 | 2,173 | +126% | 0 | 0 | — |
case-12 | pass→pass | 7,619 | 1,286 | -83% | 1 | 1 | 0% | 1,291 | 1,896 | +47% | 0 | 0 | — |
case-13 | pass→pass | 5,531 | 1,591 | -71% | 1 | 1 | 0% | 1,021 | 1,967 | +93% | 0 | 0 | — |
case-14 | fail→pass | 17,681 | 1,890 | -89% | 1 | 1 | 0% | 2,818 | 2,027 | -28% | 0 | 0 | — |
case-15 | pass→pass | 2,839 | 2,237 | -21% | 1 | 1 | 0% | 451 | 2,006 | +345% | 0 | 0 | — |
case-16 | fail→pass | 5,333 | 1,550 | -71% | 1 | 1 | 0% | 789 | 1,916 | +143% | 0 | 0 | — |
case-17 | fail→pass | 8,006 | 2,128 | -73% | 1 | 1 | 0% | 1,475 | 2,001 | +36% | 0 | 0 | — |
case-18 | pass→pass | 9,493 | 1,789 | -81% | 1 | 1 | 0% | 1,529 | 1,936 | +27% | 0 | 0 | — |
case-19 | fail→pass | 3,615 | 1,507 | -58% | 1 | 1 | 0% | 461 | 1,910 | +314% | 0 | 0 | — |
case-20 | fail→pass | 9,752 | 6,585 | -32% | 1 | 1 | 0% | 1,860 | 2,945 | +58% | 0 | 0 | — |
case-21 | pass→pass | 8,757 | 4,861 | -44% | 1 | 1 | 0% | 1,435 | 2,520 | +76% | 0 | 0 | — |
case-22 | fail→pass | 11,951 | 6,544 | -45% | 1 | 1 | 0% | 2,208 | 2,898 | +31% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +36 percentage points is the difference between those two pass rates over the 19 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.