SKILL.md
4.31 KB
name: l2-web-research description: "L2 复合技能:多源网络调研。组合搜索引擎 + 网页抓取 + 数据提取,对给定主题进行自动化信息收集,返回结构化调研数据。" layer: 2 domain: research keywords:
- research
- investigate
- survey
- collect
- sources dependencies:
- l1-search-engine
- l1-web-fetch
- l1-data-extract input_schema: "{ topic: string, num_sources?: number }" output_schema: "{ sources: [{ title, url, key_points }], summary: string }" ---
L2: Web Research(多源网络调研复合技能)
能力
给定一个调研主题,自动执行"搜索→抓取→提取"流水线,从多个来源收集结构化信息。
依赖的原子技能
| 步骤 | 调用技能 | 作用 |
|---|---|---|
| Step 1 | l1-search-engine |
搜索相关页面 |
| Step 2 | l1-web-fetch |
抓取搜索结果页面内容 |
| Step 3 | l1-data-extract |
从页面中提取关键信息 |
执行流程
用户提供调研主题
│
▼
┌─────────────────────────────┐
│ Step 1: l1-search-engine │
│ 输入: 主题关键词 │
│ 输出: 搜索结果列表 (URL+标题) │
│ 数量: 5-10 条结果 │
└─────────┬───────────────────┘
│
▼ (循环每个搜索结果)
┌─────────────────────────────┐
│ Step 2: l1-web-fetch │
│ 输入: 搜索结果 URL │
│ 输出: 页面正文 (Markdown) │
└─────────┬───────────────────┘
│
▼
┌─────────────────────────────────┐
│ Step 3: l1-data-extract │
│ 输入: 页面正文 │
│ 字段: title, author, date, │
│ key_points, category, │
│ data_quality │
│ 输出: 结构化 JSON │
└─────────┬───────────────────────┘
│
▼
┌────────────────────────────────┐
│ Step 4: 汇总 │
│ - 按 data_quality 排序 │
│ - 合并 key_points │
│ - 输出结构化调研数据集 │
└────────────────────────────────┘
使用方法
Step 1: 搜索
使用 l1-search-engine 搜索主题关键词:
curl -sL "https://html.duckduckgo.com/html/?q=$(python3 -c "import urllib.parse; print(urllib.parse.quote('主题关键词'))")" \
-H "User-Agent: Mozilla/5.0" | python3 -c "
import sys, re
html = sys.stdin.read()
results = re.findall(r'<a rel=\"nofollow\" class=\"result__a\" href=\"([^\"]+)\"[^>]*>(.*?)</a>', html, re.DOTALL)
for i, (url, title) in enumerate(results[:10], 1):
title = re.sub(r'<[^>]+>', '', title).strip()
print(f'{i}. {title}')
print(f' URL: {url}\n')
"
Step 2: 逐个抓取
对每个搜索结果 URL,使用 l1-web-fetch 抓取页面内容。
Step 3: 提取关键信息
使用 l1-data-extract,提取字段:
title: 文章标题author: 作者date: 发布日期key_points: 3-5 个关键要点(数组)category: 信息类别(新闻/教程/论文/报告/论坛)data_quality: 信息质量评级(elite/average/low)
Step 4: 汇总输出
## 调研数据摘要
共收集 X 个来源 (Elite: X, Average: X)
### Elite 级来源
| # | 标题 | 来源 | 关键要点 |
|---|------|------|---------|
| 1 | ... | ... | ... |
### 关键发现
1. ...
2. ...
3. ...
输入
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| topic | string | ✅ | 调研主题 |
| num_sources | number | ❌ | 收集来源数,默认 5 |
输出
结构化调研数据:来源列表 + 关键要点 + 质量分级。
约束
- 最多处理 10 个来源(避免超时)
- 如果某个 URL 抓取失败,跳过并记录
- 自动去重(同一域名的多篇文章只保留最相关的一篇)