Install
openclaw skills install smart-research多引擎搜索 + 多级降级抓取 + 结构化研究结果。零API Key,一键完成搜索+抓取+融合。
openclaw skills install smart-researchUniversal research skill — multi-engine search + multi-layer fallback fetching + structured results.
research() action for search + fetch + fusion┌─────────────────────────────────────────────┐
│ smart-research 统一入口 │
└─────────────────────────────────────────────┘
│
┌─────────────────┼─────────────────┐
▼ ▼ ▼
┌────────┐ ┌────────┐ ┌────────┐
│ Search │ │ Fetch │ │ Fusion │
│ Layer │ │ Layer │ │ Layer │
└────────┘ └────────┘ └────────┘
result = main({
"action": "research",
"query": "Python tutorial",
"num_results": 5,
"crawl_depth": 3
})
result = main({
"action": "search",
"query": "machine learning latest research",
"num_results": 5
})
result = main({
"action": "fetch",
"url": "https://example.com/article"
})
result = main({
"action": "deep_search",
"query": "AI agent trends 2024",
"num_results": 5
})
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
action | string | Yes | - | Operation type: research, search, fetch, deep_search |
query | string | Conditional | - | Search query (required for research/search/deep_search) |
url | string | Conditional | - | Target URL (required for fetch) |
num_results | int | No | 5 | Number of search results (1-20) |
crawl_depth | int | No | 3 | Number of top results to fetch details (1-10) |
{
"success": true,
"query": "Python tutorial",
"search_results": [
{
"title": "Result title",
"href": "https://example.com",
"body": "Snippet content",
"score": 85.5,
"source_type": "baidu",
"fetch_method": "crawl4ai",
"fetched_at": "2024-01-01T12:00:00Z"
}
],
"message": "Research completed"
}
{
"success": true,
"url": "https://example.com",
"content": "# Article Title\n\nClean markdown content...",
"source": "jina",
"fetched_at": "2024-01-01T12:00:00Z"
}
type: script
script_path: scripts/smart_research.py
entry_point: main
dependencies:
- uv>=0.1.0
- requests>=2.28.0
- baidusearch>=1.0.3
- crawl4ai>=0.8.0
- playwright>=1.40.0
Each URL automatically tries:
| Priority | Service | Timeout | Description |
|---|---|---|---|
| 1 | crawl4ai | 15s | AI-powered, local |
| 2 | Jina Reader | 10s | Free, no key needed |
| 3 | markdown.new | 8s | Simple pages |
| 4 | defuddle | 8s | Better noise reduction |
| 5 | Playwright | 30s | Dynamic rendering |
{"success": false, "message": "..."} on errors