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
CODEBLOCK0
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) - INLINECODE2 — Browser engine
- INLINECODE3 (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:
CODEBLOCK1
Installation:
CODEBLOCK2
Parameters
All parameters can be customized. Defaults are provided.
| Parameter | Default | Description |
|---|
| INLINECODE5 | required | Search query in any language |
| INLINECODE6 |
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
- Detect query language — output MUST match this language unless user specifies otherwise
- Search Tavily with query + parameters
- If results insufficient → optionally try Brave Search
- If specific sites blocked → optionally use browser suite
- If reviews requested → aggregate ratings
- Compile and deduplicate results
- Translate all results to detected/specified language (critical: query language ≠ result language)
- 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
旅行信息与新闻
聚合来自多个来源的旅行新闻、目的地信息和评论。
⚠️ 关键规则:输出语言必须与用户的查询语言一致。 如果用户用中文书写,所有输出(标题、内容、摘要)必须为中文。如果是日语,则输出日语。当查询使用其他语言时,切勿返回原始英文结果。
快速开始
bash
必需:环境变量或 ~/.openclaw/.env 中的 TAVILYAPIKEY
可选:用于 Brave Search 回退的 BRAVEAPIKEY
python scripts/search.py --query 2026年3月东京旅行 --format text
python scripts/search.py --query 京都賞櫻推薦 --format pdf --output result.pdf
python scripts/search.py --query 巴厘岛酒店评论 --format docx --output result.docx
搜索来源
| 来源 | 必需 | 使用时机 |
|---|
| Tavily | ✅ 是 | 所有查询的主要搜索 |
| Brave Search |
❌ 否 | 当 Tavily 结果不足时回退 |
| 浏览器(Xvfb+Chromium+Puppeteer) | ❌ 否 | Tavily/Brave 无法访问的网站(小红书、X/Twitter 等) |
安装可选来源
Brave Search: 设置 BRAVEAPIKEY 环境变量。
浏览器套件(三件套): 需要三个组件协同工作:
- - Xvfb — 虚拟帧缓冲(为 Chromium 提供虚拟显示器,默认:1200x720x24)
- Chromium — 浏览器引擎
- Puppeteer(Node.js)— 以编程方式控制 Chromium
为什么不用无头模式?某些网站会屏蔽无头浏览器。在虚拟显示器(Xvfb)上运行 Chromium 使其看起来像真实浏览器,从而绕过大多数检测。
注意: 对于需要模拟点击的高级交互(例如,翻页浏览分页结果、点击加载更多按钮),请从 ClawHub 安装 desktop-control 技能:
bash
npx clawhub install desktop-control
安装:
bash
Xvfb + Chromium
apt-get install -y xvfb chromium
Puppeteer
npm install puppeteer
参数
所有参数均可自定义。提供默认值。
| 参数 | 默认值 | 描述 |
|---|
| query | 必需 | 任何语言的搜索查询 |
| time_range |
pm | 时间筛选:pd(24小时)、pw(周)、pm(月)、py(年)或自定义 |
| region | ALL | 区域代码:ALL、US、CN、JP、TW 等 |
| max_results | 无限制 | 限制结果数量(0 = 无限制) |
| format | text | 输出格式:text、docx、pdf |
| output | 标准输出 | 输出文件路径 |
| use_brave | false | 启用 Brave Search 回退 |
| use_browser | false | 启用浏览器抓取以访问被屏蔽的网站 |
| no_reviews | false | 禁用评论聚合(默认开启评论) |
| language | 自动 | 输出语言(自动 = 跟随查询语言) |
输出格式
- - text — 纯文本摘要输出到标准输出
- docx — 带有结构化章节的 Word 文档
- pdf — 使用 Noto Sans SC 字体的 PDF(支持中日韩文字)
评论来源
当请求评论时,该技能会尝试从以下来源聚合评分:
- - TripAdvisor(通过浏览器抓取)
- Google Maps / Google Reviews(通过浏览器抓取)
工作流程
- 1. 接收用户查询
- 检测查询语言 — 输出必须与此语言一致,除非用户另有指定
- 使用查询和参数搜索 Tavily
- 如果结果不足 → 可选尝试 Brave Search
- 如果特定网站被屏蔽 → 可选使用浏览器套件
- 如果请求评论 → 聚合评分
- 编译并去重结果
- 将所有结果翻译为检测到/指定的语言(关键:查询语言 ≠ 结果语言)
- 格式化输出(text / docx / pdf)
限制
- - 浏览器套件需要约 512MB 内存用于 Xvfb + Chromium
- 评论抓取依赖于网站结构(网站更改时可能失效)
- Tavily 和 Brave API 存在速率限制