twitter-search

Advanced Twitter search and social media data analysis. Fetches tweets by keywords using Twitter API, processes up to 1000 results, and generates professional data analysis reports with insights and actionable recommendations. Use when user requests Twitter/X social media search, social media trend analysis, tweet data mining, social listening, influencer identification, topic sentiment analysis from tweets, or any task involving gathering and analyzing Twitter data for insights.

7 stars

Best use case

twitter-search is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Advanced Twitter search and social media data analysis. Fetches tweets by keywords using Twitter API, processes up to 1000 results, and generates professional data analysis reports with insights and actionable recommendations. Use when user requests Twitter/X social media search, social media trend analysis, tweet data mining, social listening, influencer identification, topic sentiment analysis from tweets, or any task involving gathering and analyzing Twitter data for insights.

Teams using twitter-search should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/twitter-search-skill/SKILL.md --create-dirs "https://raw.githubusercontent.com/Demerzels-lab/elsamultiskillagent/main/public/skills/flyfoxci/twitter-search-skill/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/twitter-search-skill/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How twitter-search Compares

Feature / Agenttwitter-searchStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Advanced Twitter search and social media data analysis. Fetches tweets by keywords using Twitter API, processes up to 1000 results, and generates professional data analysis reports with insights and actionable recommendations. Use when user requests Twitter/X social media search, social media trend analysis, tweet data mining, social listening, influencer identification, topic sentiment analysis from tweets, or any task involving gathering and analyzing Twitter data for insights.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Twitter Search and Analysis

## Overview

Search Twitter for keywords using advanced search syntax, fetch up to 1000 relevant tweets, and analyze the data to produce professional reports with insights, statistics, and actionable recommendations.

## Prerequisites

**API Key Required**: Users must configure their Twitter API key from https://twitterapi.io

The API key can be provided in three ways:
1. **Environment variable** (recommended): Set `TWITTER_API_KEY` in your `~/.bashrc` or `~/.zshrc`
   ```bash
   echo 'export TWITTER_API_KEY="your_key_here"' >> ~/.bashrc
   source ~/.bashrc
   ```
2. **As an argument**: Use `--api-key YOUR_KEY` with the wrapper script
3. **Passed directly**: As first argument to the Python script

## Quick Start

### Using the Wrapper Script (Recommended)

The wrapper script automatically handles environment variable loading and dependency checks:

```bash
# Basic search (uses TWITTER_API_KEY from shell config)
./scripts/run_search.sh "AI"

# With custom API key
./scripts/run_search.sh "AI" --api-key YOUR_KEY

# With options
./scripts/run_search.sh "\"Claude AI\"" --max-results 100 --format summary

# Advanced query
./scripts/run_search.sh "from:elonmusk since:2024-01-01" --query-type Latest
```

### Direct Python Script Usage

```bash
# Search for a keyword
scripts/twitter_search.py "$API_KEY" "AI"

# Search with multiple keywords
scripts/twitter_search.py "$API_KEY" "\"ChatGPT\" OR \"Claude AI\""

# Search from specific user
scripts/twitter_search.py "$API_KEY" "from:elonmusk"

# Search with date range
scripts/twitter_search.py "$API_KEY" "Bitcoin since:2024-01-01"
```

### Advanced Queries

```bash
# Complex query: AI tweets from verified users, English only
scripts/twitter_search.py "$API_KEY" "AI OR \"machine learning\" lang:en filter:verified"

# Recent crypto tweets with minimum engagement
scripts/twitter_search.py "$API_KEY" "Bitcoin min_retweets:10 lang:en"

# From specific influencers
scripts/twitter_search.py "$API_KEY" "from:elonmusk OR from:VitalikButerin since:2024-01-01"
```

### Output Format

```bash
# Full JSON with all tweets
scripts/twitter_search.py "$API_KEY" "AI" --format json

# Summary with statistics (default)
scripts/twitter_search.py "$API_KEY" "AI" --format summary
```

### Options

- `--max-results N`: Maximum tweets to fetch (default: 1000)
- `--query-type Latest|Top`: Sort order (default: Top for relevance)
- `--format json|summary`: Output format (default: summary)

## Workflow

### 1. Understand User Requirements

Clarify the analysis goal:
- What topic/keyword to search?
- Date range preference?
- Specific users to include/exclude?
- Language preference?
- Type of insights needed (trends, sentiment, influencers)?

### 2. Build the Search Query

Use [Twitter Advanced Search](https://github.com/igorbrigadir/twitter-advanced-search) syntax:

| Syntax | Example | Description |
|--------|---------|-------------|
| `keyword` | `AI` | Single keyword |
| `"phrase"` | `"machine learning"` | Exact phrase |
| `OR` | `AI OR ChatGPT` | Either term |
| `from:user` | `from:elonmusk` | From specific user |
| `to:user` | `to:elonmusk` | Reply to user |
| `since:DATE` | `since:2024-01-01` | After date |
| `until:DATE` | `until:2024-12-31` | Before date |
| `lang:xx` | `lang:en` | Language code |
| `#hashtag` | `#AI` | Hashtag |
| `filter:links` | `filter:links` | Tweets with links |
| `min_retweets:N` | `min_retweets:100` | Minimum retweets |

### 3. Fetch Data

Execute the search script:

```bash
scripts/twitter_search.py "$API_KEY" "YOUR_QUERY" --max-results 1000 --query-type Top
```

**Important**: Default is 1000 tweets maximum. The script automatically:
- Paginates through all available results
- Stops at 1000 tweets (API limit consideration)
- Handles errors gracefully

### 4. Analyze and Generate Report

After fetching data, produce a comprehensive professional report with:

#### Report Structure

1. **Executive Summary** (2-3 sentences)
   - What was searched
   - Key findings overview

2. **Data Overview**
   - Total tweets analyzed
   - Date range of data
   - Query parameters used

3. **Key Metrics**
   - Total engagement (likes, retweets, replies, quotes, views)
   - Average engagement per tweet
   - Language distribution
   - Reply vs. original tweet ratio

4. **Top Content Analysis**
   - Most retweeted tweets (with **URL links** to original tweets)
   - Most liked tweets (with **URL links** to original tweets)
   - Top hashtags with frequency
   - Most mentioned users
   - Selected tweet examples with full URL references

5. **Influencer Analysis**
   - Top users by follower count
   - Most active users
   - Verified user percentage

6. **Trend Insights** (based on data patterns)
   - Emerging themes
   - Sentiment indicators
   - Temporal patterns
   - Conversation drivers

7. **Key Takeaways**
   - 3-5 bullet points of core insights
   - Data-backed conclusions

8. **Actionable Recommendations**
   - Specific, implementable suggestions
   - Based on the data findings
   - Prioritized by impact

#### Analysis Guidelines

- **Be data-driven**: Every claim should reference actual metrics
- **Provide context**: Explain why metrics matter
- **Identify patterns**: Look for trends across the dataset
- **Stay objective**: Present facts, avoid speculation
- **Be specific**: Recommendations should be concrete and actionable
- **Consider external context**: Use web search for background when relevant

### 5. Output Format

Present the report in clear markdown with:
- Headers for each section
- Tables for structured data
- Bullet points for lists
- Bold for key metrics
- Code blocks for tweet examples
- **Clickable URLs** for all referenced tweets (format: `[@username](https://x.com/username/status/tweet_id)`)

#### Tweet URL Format

Always include clickable links to tweets:
```markdown
| Author | Tweet | URL |
|--------|-------|-----|
| @user | Summary of tweet content | [View](https://x.com/user/status/123456) |
```

Or inline format:
```markdown
- **@username**: Tweet summary - [View Tweet](https://x.com/username/status/123456)
```

## Query Examples by Use Case

### Trend Analysis
```
"AI" OR "artificial intelligence" lang:en min_retweets:50
```

### Competitor Monitoring
```
from:competitor1 OR from:competitor2 since:2024-01-01
```

### Product Launch Tracking
```
#ProductName OR "Product Name" lang:en filter:verified
```

### Crisis Monitoring
```
#BrandName OR "Brand Name" lang:en --query-type Latest
```

### Influencer Discovery
```
#Topic lang:en min_retweets:100 min_faves:500
```

### Sentiment Analysis
```
"brand name" OR #BrandName lang:en --max-results 1000
```

## Resources

### scripts/run_search.sh (Wrapper Script)

Convenience wrapper that handles environment variable loading and dependency checks:
- Automatically loads `TWITTER_API_KEY` from `~/.bashrc` or `~/.zshrc`
- Checks Python availability and installs missing dependencies
- Provides user-friendly error messages
- Supports all command-line options from the Python script

**Usage**:
```bash
./scripts/run_search.sh <query> [options]
```

**Options**:
- `--api-key KEY`: Override environment variable API key
- `--max-results N`: Maximum tweets to fetch (default: 1000)
- `--query-type Latest|Top`: Sort order (default: Top)
- `--format json|summary`: Output format (default: json)

### scripts/twitter_search.py

Executable Python script that:
- Fetches tweets from Twitter API
- Handles pagination automatically
- Extracts key tweet metrics
- Calculates aggregate statistics
- Outputs structured JSON data

**Usage**:
```bash
scripts/twitter_search.py <api_key> <query> [options]
```

### references/twitter_api.md

Comprehensive API documentation including:
- Complete parameter reference
- Query syntax guide
- Response structure details
- Pagination instructions
- Best practices for analysis
- Error handling guide

**Read this when**: Building complex queries or understanding data structure.

## Tips for Better Analysis

1. **Use Top query type** for trend analysis (more relevant results)
2. **Set date filters** for timely insights
3. **Filter by language** for accurate text analysis
4. **Include minimum engagement** to filter noise
5. **Combine with web search** to validate trends
6. **Look beyond metrics** - analyze content themes
7. **Track hashtags** to identify sub-conversations
8. **Identify influencers** by combining followers + engagement

## Error Handling

If the script fails:
- Check API key validity
- Verify query syntax
- Ensure network connectivity
- Check rate limits (if applicable)
- Review error messages for specific issues

Related Skills

jinko-flight-search

7
from Demerzels-lab/elsamultiskillagent

Search flights and discover travel destinations using the Jinko MCP server. Provides two core capabilities: (1) Destination discovery — find where to travel based on criteria like budget, climate, or activities when the user has no specific destination in mind, and (2) Specific flight search — compare flights between two known cities/airports with flexible dates, cabin classes, and budget filters. Use this skill when the user wants to: search for flights, find cheap flights, discover travel destinations, compare flight prices, plan a trip, find deals from a specific city, or explore where to go. Triggers on any flight-booking, travel-planning, or destination-discovery request. Requires the Jinko MCP server connected at https://mcp.gojinko.com.

academic-deep-research

7
from Demerzels-lab/elsamultiskillagent

Transparent, rigorous research with full methodology — not a black-box API wrapper. Conducts exhaustive investigation through mandated 2-cycle research per theme, APA 7th citations, evidence hierarchy, and 3 user checkpoints. Self-contained using native OpenClaw tools (web_search, web_fetch, sessions_spawn). Use for literature reviews, competitive intelligence, or any research requiring academic rigor and reproducibility.

web-searcher

7
from Demerzels-lab/elsamultiskillagent

Autonomous web research agent that performs multi-step searches, follows links, extracts data, and synthesizes.

internet-search

7
from Demerzels-lab/elsamultiskillagent

How to use the internet_search tool effectively — category routing, query formulation, and multi-search strategies.

research-tracker

7
from Demerzels-lab/elsamultiskillagent

Manage autonomous AI research agents with SQLite-based state tracking. Use when spawning long-running research sub-agents, tracking multi-step investigations, coordinating agent handoffs, or monitoring background work. Triggers on: research projects, sub-agent coordination, autonomous investigation, progress tracking, agent oversight.

yutori-web-research

7
from Demerzels-lab/elsamultiskillagent

Use Yutori’s Research API and Browsing API (cloud browser) to research topics, collect sources, and extract structured facts from the web. Use when the user asks to “research X”, “monitor/find papers”, or “navigate to a site and extract info” and you have access to YUTORI dev/prod endpoints via YUTORI_API_BASE and an API key in env (YUTORI_API_KEY or ~/.openclaw/openclaw.json env.YUTORI_API_KEY).

literature-search

7
from Demerzels-lab/elsamultiskillagent

Find and compile academic literature with citation lists across Google Scholar, PubMed, arXiv, IEEE, ACM, Semantic.

research-library

7
from Demerzels-lab/elsamultiskillagent

Local-first multimedia research library for hardware projects.

research-assistant

7
from Demerzels-lab/elsamultiskillagent

Organized research and knowledge management for agents.

baidu-scholar-search

7
from Demerzels-lab/elsamultiskillagent

Baidu Academic Search Tool enables the retrieval of both Chinese and English literature, covering various types of literature such as academic journals, conference papers, and dissertations.

market-research-2

7
from Demerzels-lab/elsamultiskillagent

Conduct structured market research for a solopreneur business.

wechat-search

7
from Demerzels-lab/elsamultiskillagent

Search WeChat Official Account articles using OpenClaw's web search, Tavily API, and web fetch capabilities.