🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Travel Information and News

by @nhzallen

Search and aggregate travel news, information, and reviews from multiple sources. Designed for travel planning professionals, travel agents, tour operators,...

Versionv1.0.0
Downloads770
TERMINAL
clawhub install travel-information-and-news

πŸ“– About This Skill


name: travel-information-and-news description: Search and aggregate travel news, information, and reviews from multiple sources. Designed for travel planning professionals, travel agents, tour operators, and travel content creators. Use when user asks about travel destinations, tourism news, hotel/attraction reviews, travel tips, visa/policy updates, or anything travel-related. Supports Tavily (required), Brave Search (optional), and browser-based scraping (optional) for sites like Xiaohongshu and X/Twitter. target_audience: Travel planning professionals

Travel Information and News

Aggregates travel news, destination info, and reviews from multiple sources.

⚠️ CRITICAL RULE: Output language MUST match the user's query language. If the user writes in Chinese, ALL output (titles, content, summaries) must be in Chinese. If in Japanese, output in Japanese. Never return raw English results when the query is in another language.

Quick Start

# Required: TAVILY_API_KEY in env or ~/.openclaw/.env

Optional: BRAVE_API_KEY for Brave Search fallback

python scripts/search.py --query "Tokyo travel March 2026" --format text python scripts/search.py --query "δΊ¬ιƒ½θ³žζ«»ζŽ¨θ–¦" --format pdf --output result.pdf python scripts/search.py --query "Bali hotel reviews" --format docx --output result.docx

Search Sources

| Source | Required | When Used | |--------|----------|-----------| | Tavily | βœ… Yes | Primary search for all queries | | Brave Search | ❌ No | Fallback when Tavily results insufficient | | Browser (Xvfb+Chromium+Puppeteer) | ❌ No | Sites Tavily/Brave can't reach (Xiaohongshu, X/Twitter, etc.) |

Installing Optional Sources

Brave Search: Set BRAVE_API_KEY env var.

Browser suite (δΈ‰δ»Άε₯—): Requires three components working together:

  • Xvfb β€” Virtual framebuffer (provides a fake display for Chromium, default: 1200x720x24)
  • Chromium β€” Browser engine
  • Puppeteer (Node.js) β€” Controls Chromium programmatically
  • Why not headless mode? Some websites block headless browsers. Running Chromium on a virtual display (Xvfb) makes it appear as a real browser, bypassing most detection.

    Note: For advanced interactions requiring simulated clicking (e.g., navigating paginated results, clicking "load more" buttons), install the desktop-control skill from ClawHub:

    npx clawhub install desktop-control
    

    Installation:

    # Xvfb + Chromium
    apt-get install -y xvfb chromium

    Puppeteer

    npm install puppeteer

    Parameters

    All parameters can be customized. Defaults are provided.

    | Parameter | Default | Description | |-----------|---------|-------------| | query | *required* | Search query in any language | | time_range | pm | Time filter: pd(24h), pw(week), pm(month), py(year), or custom | | region | ALL | Region code: ALL, US, CN, JP, TW, etc. | | max_results | unlimited | Limit number of results (0 = unlimited) | | format | text | Output format: text, docx, pdf | | output | stdout | Output file path | | use_brave | false | Enable Brave Search fallback | | use_browser | false | Enable browser scraping for blocked sites | | no_reviews | false | Disable review aggregation (reviews ON by default) | | language | auto | Output language (auto = follow query language) |

    Output Formats

  • text β€” Plain text summary to stdout
  • docx β€” Word document with structured sections
  • pdf β€” PDF with Noto Sans SC font (supports CJK)
  • Review Sources

    When reviews are requested, the skill attempts to aggregate ratings from:

  • TripAdvisor (via browser scraping)
  • Google Maps / Google Reviews (via browser scraping)
  • Workflow

    1. Receive user query 2. Detect query language β€” output MUST match this language unless user specifies otherwise 3. Search Tavily with query + parameters 4. If results insufficient β†’ optionally try Brave Search 5. If specific sites blocked β†’ optionally use browser suite 6. If reviews requested β†’ aggregate ratings 7. Compile and deduplicate results 8. Translate all results to detected/specified language (critical: query language β‰  result language) 9. Format output (text / docx / pdf)

    Limits

  • Browser suite requires ~512MB RAM for Xvfb + Chromium
  • Review scraping depends on site structure (may break if sites change)
  • Rate limits apply to Tavily and Brave APIs
  • πŸ’‘ Examples

    # Required: TAVILY_API_KEY in env or ~/.openclaw/.env
    

    Optional: BRAVE_API_KEY for Brave Search fallback

    python scripts/search.py --query "Tokyo travel March 2026" --format text python scripts/search.py --query "δΊ¬ιƒ½θ³žζ«»ζŽ¨θ–¦" --format pdf --output result.pdf python scripts/search.py --query "Bali hotel reviews" --format docx --output result.docx