Google Trends Skill
Fetch real-time trending searches from Google Trends for any country and category.
When to Use This Skill
Trigger when the user:
- Asks "what's trending in [country]?"
- Asks "popular [games/AI/tech/sports/etc.] in [country]"
- Says "Google Trends for [country]"
- Wants to compare trends between countries
- Invokes
/google-trends
Parameters
| Flag |
Default |
Options |
--geo |
US |
Any 2-letter country code: US, BR, ID, GB, JP, IN, DE, FR, AU, MX, ... |
--category |
all |
all, games, technology, sports, entertainment, business, health, science, food, travel, beauty, politics, shopping |
--hours |
24 |
4, 24, 48, 168 (7 days) |
--top |
20 |
Any integer |
--method |
auto |
rss (fast, no category filter), csv (Selenium, supports categories) |
Auto method logic: Uses rss when --category all, uses csv when a specific category is given.
Country Code Reference
| Country |
Code |
Country |
Code |
| Brazil |
BR |
Indonesia |
ID |
| USA |
US |
India |
IN |
| UK |
GB |
Japan |
JP |
| Germany |
DE |
France |
FR |
| Australia |
AU |
Mexico |
MX |
| Canada |
CA |
South Korea |
KR |
| Argentina |
AR |
Nigeria |
NG |
| Philippines |
PH |
Thailand |
TH |
Script Execution
CRITICAL: Always use the run.py wrapper. It handles venv setup automatically.
Basic Usage (general trends, fast)
python scripts/run.py --geo BR
Category-specific trends (uses Selenium)
python scripts/run.py --geo BR --category games
python scripts/run.py --geo ID --category technology
python scripts/run.py --geo US --category sports --hours 48
Multiple countries (run in parallel)
python scripts/run.py --geo BR --category games &
python scripts/run.py --geo ID --category games &
wait
Top N results with longer period
python scripts/run.py --geo JP --category entertainment --hours 168 --top 30
Workflow
- Parse user intent → extract country, category, time period
- Map to parameters:
- "Brazil" →
--geo BR
- "Indonesia" →
--geo ID
- "games" →
--category games
- "AI/tech/technology" →
--category technology
- "past week" / "7 days" →
--hours 168
- Inform user: "Fetching [category] trends for [country] (past [N] hours)..."
- Run script and parse JSON output
- Present results as a formatted table with rank, trend name, and search volume
Output Format
Script outputs JSON:
{
"geo": "BR",
"category": "games",
"hours": 24,
"method": "csv",
"count": 20,
"trends": [
{"rank": 1, "trend": "grêmio x internacional", "volume": "500K+", "started": "..."},
{"rank": 2, "trend": "arsenal x chelsea", "volume": "500K+", "started": "..."}
]
}
Presenting Results
Format output as a clean markdown table:
## 🔥 Trending in Brazil — Games (past 24h)
| # | Trend | Volume |
|---|-------|--------|
| 1 | grêmio x internacional | 500K+ |
| 2 | arsenal x chelsea | 500K+ |
...
Add brief context/insights after the table when relevant (e.g., "Football dominates Brazil's trending games — the Grenal derby between Grêmio and Internacional was the biggest search spike.").
Error Handling
| Error |
Action |
BrowserError / timeout |
Retry with --method rss (drops category filter) |
InvalidParameterError |
Check geo code or category name |
| venv setup failure |
Check Python 3.8+ is available |
| No trends returned |
Try broader category or different time window |
Troubleshooting
- CSS method slow: normal — Selenium launches Chrome headlessly
- Category filter not working with RSS: RSS doesn't support categories, use
--method csv
- Empty results: try
--hours 168 for a wider time window
- Country not found: run
python scripts/run.py --list-countries to see all supported codes
1---2name: google-trends3description: Use this skill when the user wants to fetch, search, or analyze Google Trends data for any country or category. Triggers when users say "what's trending in [country]", "popular [topic] in [country]", "Google Trends for [country]", or invoke /google-trends. Fetches real-time trending data using trendspyg for 125+ countries and 20 categories.4---56# Google Trends Skill78Fetch real-time trending searches from Google Trends for any country and category.910## When to Use This Skill1112Trigger when the user:13- Asks "what's trending in [country]?"14- Asks "popular [games/AI/tech/sports/etc.] in [country]"15- Says "Google Trends for [country]"16- Wants to compare trends between countries17- Invokes `/google-trends`1819## Parameters2021| Flag | Default | Options |22|------|---------|---------|23| `--geo` | US | Any 2-letter country code: `US`, `BR`, `ID`, `GB`, `JP`, `IN`, `DE`, `FR`, `AU`, `MX`, ... |24| `--category` | all | `all`, `games`, `technology`, `sports`, `entertainment`, `business`, `health`, `science`, `food`, `travel`, `beauty`, `politics`, `shopping` |25| `--hours` | 24 | `4`, `24`, `48`, `168` (7 days) |26| `--top` | 20 | Any integer |27| `--method` | auto | `rss` (fast, no category filter), `csv` (Selenium, supports categories) |2829**Auto method logic:** Uses `rss` when `--category all`, uses `csv` when a specific category is given.3031## Country Code Reference3233| Country | Code | Country | Code |34|---------|------|---------|------|35| Brazil | `BR` | Indonesia | `ID` |36| USA | `US` | India | `IN` |37| UK | `GB` | Japan | `JP` |38| Germany | `DE` | France | `FR` |39| Australia | `AU` | Mexico | `MX` |40| Canada | `CA` | South Korea | `KR` |41| Argentina | `AR` | Nigeria | `NG` |42| Philippines | `PH` | Thailand | `TH` |4344## Script Execution4546**CRITICAL**: Always use the `run.py` wrapper. It handles venv setup automatically.4748### Basic Usage (general trends, fast)49```bash50python scripts/run.py --geo BR51```5253### Category-specific trends (uses Selenium)54```bash55python scripts/run.py --geo BR --category games56python scripts/run.py --geo ID --category technology57python scripts/run.py --geo US --category sports --hours 4858```5960### Multiple countries (run in parallel)61```bash62python scripts/run.py --geo BR --category games &63python scripts/run.py --geo ID --category games &64wait65```6667### Top N results with longer period68```bash69python scripts/run.py --geo JP --category entertainment --hours 168 --top 3070```7172## Workflow73741. **Parse user intent** → extract country, category, time period752. **Map to parameters:**76 - "Brazil" → `--geo BR`77 - "Indonesia" → `--geo ID`78 - "games" → `--category games`79 - "AI/tech/technology" → `--category technology`80 - "past week" / "7 days" → `--hours 168`813. **Inform user:** "Fetching [category] trends for [country] (past [N] hours)..."824. **Run script** and parse JSON output835. **Present results** as a formatted table with rank, trend name, and search volume8485## Output Format8687Script outputs JSON:88```json89{90 "geo": "BR",91 "category": "games",92 "hours": 24,93 "method": "csv",94 "count": 20,95 "trends": [96 {"rank": 1, "trend": "grêmio x internacional", "volume": "500K+", "started": "..."},97 {"rank": 2, "trend": "arsenal x chelsea", "volume": "500K+", "started": "..."}98 ]99}100```101102## Presenting Results103104Format output as a clean markdown table:105106```107## 🔥 Trending in Brazil — Games (past 24h)108109| # | Trend | Volume |110|---|-------|--------|111| 1 | grêmio x internacional | 500K+ |112| 2 | arsenal x chelsea | 500K+ |113...114```115116Add brief context/insights after the table when relevant (e.g., "Football dominates Brazil's trending games — the Grenal derby between Grêmio and Internacional was the biggest search spike.").117118## Error Handling119120| Error | Action |121|-------|--------|122| `BrowserError` / timeout | Retry with `--method rss` (drops category filter) |123| `InvalidParameterError` | Check geo code or category name |124| venv setup failure | Check Python 3.8+ is available |125| No trends returned | Try broader category or different time window |126127## Troubleshooting128129- **CSS method slow**: normal — Selenium launches Chrome headlessly130- **Category filter not working with RSS**: RSS doesn't support categories, use `--method csv`131- **Empty results**: try `--hours 168` for a wider time window132- **Country not found**: run `python scripts/run.py --list-countries` to see all supported codes