AI 驱动的全能搜索研究平台
tavily-search-pro 基于 Tavily 官方 API 的 AI 搜索平台,支持网页/新闻/财经搜索、URL 内容提取、网站爬取与深度研究,为知识工作者提供结构化信息获取能力。
什么时候用这个 Skill?
核心用法
Tavily Search Pro 是一个功能全面的 AI 搜索技能,通过命令行接口提供五种核心工作模式:
Search(通用搜索):支持基础与高级两种深度,可获取 LLM 合成答案、原始页面内容、图片链接,并支持时间过滤、域名白名单/黑名单、国家地区加权等精细化控制。
News/Finance(垂直搜索):针对新闻和财经场景优化的搜索模式,自动设置对应主题参数,适合快速追踪行业动态与市场信息。
Extract(内容提取):从指定 URL 提取可读内容,支持 Markdown/Text 格式输出,高级模式可基于查询词对内容块进行相关性重排序,适合论文阅读、资料归档。
Crawl(网站爬取):从根 URL 开始递归抓取,支持自然语言指令、路径包含/排除规则、深度与广度限制,适用于文档站点镜像、竞品分析等场景。
Map(站点地图):快速发现网站全部 URL 结构,支持深度与数量限制,便于 SEO 审计与信息架构梳理。
Research(深度研究):AI 驱动的综合研究报告生成,提供 mini/pro/auto 三档模型选择,输出带引用来源的结构化报告,适合学术调研与商业分析。
显著优点
- 功能集成度高:单一技能覆盖搜索、提取、爬取、研究全链路,无需切换多个工具
- 输出格式灵活:同时支持人类可读的文本格式与机器可解析的 JSON 格式
- 精细化控制丰富:深度、时间、域名、地域、路径等多维度过滤参数
- 权威数据源:直接对接 Tavily 专业搜索 API,结果质量优于通用搜索引擎
- 研究模式独特:内置引用溯源的 AI 研究报告生成,填补传统搜索与人工调研之间的空白
潜在缺点与局限性
- 成本敏感:高级模式、研究功能消耗多倍 API 积分,高频使用成本较高
- 网络依赖强:完全依赖 Tavily 服务端,无本地缓存或离线能力
- 爬取深度受限:最大深度与页面数限制较为保守,大规模站点归档能力不足
- 无结果后处理:提取/爬取内容无本地持久化,需用户自行管理输出
- 中文支持未明确:Tavily 对中文内容的覆盖质量需实际验证
适合的目标群体
- 知识工作者、研究员、分析师:需要快速获取结构化信息并生成带引用的研究报告
- 产品经理、市场人员:竞品调研、行业趋势追踪、用户反馈收集
- 开发者、技术写作者:技术文档检索、API 文档爬取、示例代码搜索
- 内容创作者:素材收集、事实核查、多源信息整合
- 学生、学者:文献预研、背景资料搜集、论文写作辅助
使用风险
- API 配额耗尽:高频调用可能快速消耗积分,建议监控使用量并设置预算告警
- 网络超时:研究请求默认 120 秒超时,复杂查询可能失败,需做好重试准备
- 数据隐私:所有查询内容发送至 Tavily 服务器,敏感信息需谨慎处理
- 结果时效性:依赖 Tavily 索引更新频率,实时性要求极高的场景可能滞后
- 依赖项单一:完全绑定 Tavily 服务,若服务变更或终止将影响功能可用性
简单 3 步,立即在 AI 工具中使用
- 1
- 2
-
3
用普通话描述任务
直接说出你的需求,AI 会自动按此 Skill 预设流程落地结果。
复制给 Agent 自动安装
选择你在用的工具,复制下方指令粘贴给 AI,AI 会先说明用途和权限,自动完成安装。
使用前注意事项与安全等级
安全等级 S:已人工复核,风险很低,可放心使用。 ## 核心用法 Tavily Search Pro 是一个面向 AI 应用的智能搜索与内容处理平台,通过单一 API 集成 5 种工作模式: **1. Search(通用搜索)**:支持网页、新闻、财经三类主题,可生成 LLM 合成答案(--answer),提供基础/高级两种深度,支持时间过滤、域名白名单/黑名单、国家地区偏好等精细化控制。 **2. Extract(内容提取)**:从指定 URL 提取可读内容,支持 Markdown/Text 输出,可针对查询词对内容块进行相关性重排序,适合 RAG 场景的资料预处理。 **3. Crawl(网站爬取)**:从根 URL 递归抓取,支持自然语言指令(--instructions)、路径包含/排除规则、深度与广度限制,适用于文档站点归档或竞品监控。 **4. Map(站点地图)**:快速发现网站全部 URL 结构,输出完整站点地图。 **5. Research(深度研究)**:AI 驱动的综合研究报告生成,自动搜集多源信息并附带引用,支持 mini/pro/auto 三档模型,适合学术调研、市场分析等需要严谨溯源的场景。 ## 显著优点 - **AI 原生设计**:搜索结果可直接输出 LLM 优化过的摘要与引用,降低 RAG 系统的后处理成本。 - **多模式一体化**:搜索、提取、爬取、研究四大能力统一接口,无需切换多个工具。 - **精细化控制**:时间范围、域名过滤、国家偏好、深度等级等参数完备,满足专业检索需求。 - **标准化引用**:Research 模式自动生成带编号的来源列表,便于学术与商业报告的合规引用。 ## 潜在缺点与局限性 - **成本按次计费**:高级深度(advanced)消耗 2 倍 credits,Research 模式费用随模型档次浮动,高频使用需关注预算。 - **第三方依赖**:所有查询与 URL 内容需发送至 Tavily 服务器,存在数据隐私与跨境合规考量。 - **功能边界**:爬取深度与页面数受 API 限制(默认 max-depth=2, limit=10),超大规模站点归档需分批策略。 - **输入验证薄弱**:当前实现缺少客户端 URL 格式校验,依赖服务端容错。 ## 适合人群 - 构建 RAG 应用的开发者,需要为 LLM 提供实时、带引用的外部知识。 - 金融分析师、市场研究员,利用 Research 模式快速生成带溯源的调研报告。 - 内容运营与竞品分析人员,通过 Crawl/Extract 批量获取站点信息。 - 新闻追踪与舆情监控场景,利用 news/finance 主题过滤快速锁定时效信息。 ## 常规风险 - **隐私合规风险**:用户搜索词与提取内容上传至 Tavily,需确认符合内部数据分级与 GDPR 等法规要求。 - **API 密钥泄露风险**:依赖环境变量 `TAVILY_API_KEY`,需避免在日志或版本控制中暴露。 - **供应链风险**:单一依赖 `tavily-python` SDK,需关注该包的更新与安全公告。 - **安装脚本降级**:`install.sh` 在失败时会 fallback 到 `--break-system-packages`,可能破坏系统 Python 环境。
report_id: CLS-2026-0505-TSP-83
report_date: "2026-05-04T19:49:58Z"
scanner_version: CLS-Certify v2.1.0
scan_mode: T-LITE Full Scan
skill_name: tavily-search-pro
skill_version: 1.0.0
skill_path: /tmp/bss_skill_vujrusdg
maintainer: shaharsha
license: unknown
scan_duration: 45.2s
code_stats: 576 lines · 4 files
trust_level: T2
trust_level_text: 可信组织/GitHub组织账号
total_风险发现: 3
grade: S
score: 83
evaluation: 优秀安全级别。该Skill代码结构清晰,无危险函数调用,使用标准库进行HTTPS通信,无硬编码敏感信息,依赖单一且可控,符合安全使用标准。
stamp_color: green
sample_hash: sha256:0e9711d2429def3addea019dbcf5e08d4ddda533370ba072e2922958aea7ad07
disclaimer: 认证结果不代表绝对安全保证,仅基于静态分析和代码审查。建议用户在使用前进行二次验证,并关注依赖包的更新和安全公告。
radar:
- name: 静态分析
short: SA
score: 85
status: pass
detail: 无eval/exec/system等危险函数,代码结构清晰,使用标准库urllib - name: 动态行为
short: DB
score: 82
status: pass
detail: HTTPS请求至api.tavily.com,配置30s/120s超时,无非授权文件访问 - name: 依赖审计
short: DA
score: 85
status: pass
detail: 单一外部依赖tavily-python,无已知CVE漏洞 - name: 网络分析
short: NA
score: 88
status: pass
detail: 仅访问api.tavily.com官方API,HTTPS加密传输,无可疑域名 - name: 隐私合规
short: PC
score: 78
status: warn
detail: 读取TAVILY_API_KEY环境变量,用户查询发送至第三方API,建议查阅Tavily隐私政策 - name: 威胁情报
short: TI
score: 86
status: pass
detail: 无已知恶意模式匹配,代码行为与声明功能一致,无可疑URL
compliance:
- text: GDPR数据最小化原则
status: pass - text: 无硬编码敏感凭证
status: pass - text: 安全通信(TLS)
status: pass - text: 输入验证
status: warn - text: 依赖安全
status: pass - text: 功能行为一致性
status: pass
风险模式
- info: Tavily Search API客户端
- info: 网络搜索工具
- low: pip --break-system-packages 降级方案
- info: 标准库urllib使用
- info: 环境变量API密钥读取
分析摘要
- 代码结构安全:该Skill使用Python标准库urllib实现HTTP通信,无eval/exec/system/child_process等危险函数调用,代码逻辑清晰且易于审计。
- 无硬编码敏感信息:API密钥通过环境变量
TAVILY_API_KEY读取,代码中未发现硬编码的密码、Token或私钥。 - 外部API调用可控:仅向
api.tavily.com发起HTTPS请求,使用标准的Authorization Bearer认证,无数据外泄风险。 - 依赖管理良好:仅依赖
tavily-python官方SDK,无复杂的依赖树,降低了供应链攻击面。 - 隐私合规需注意:用户搜索查询和提取的URL内容会发送至Tavily服务器,建议用户查阅Tavily隐私政策了解数据处理条款。
外部接口
| Endpoint | Method | Reputation | Encryption | Data Types | Provider |
|---|---|---|---|---|---|
| api.tavily.com/search | POST | Official API | TLS 1.2+ | Search queries, API key | Tavily |
| api.tavily.com/extract | POST | Official API | TLS 1.2+ | URLs, API key | Tavily |
| api.tavily.com/crawl | POST | Official API | TLS 1.2+ | URLs, crawl config | Tavily |
| api.tavily.com/map | POST | Official API | TLS 1.2+ | URLs, sitemap config | Tavily |
| api.tavily.com/research | POST | Official API | TLS 1.2+ | Research queries | Tavily |
风险发现
RISK-001
severity: low
category: dependency_management
title: install.sh使用--break-system-packages降级方案
location: install.sh:9
description: 安装脚本在标准pip安装失败时会尝试使用--break-system-packages标志。虽然这是为了兼容某些Python环境,但该标志会绕过系统包保护机制,可能导致系统Python环境不稳定。
recommendation: 建议使用虚拟环境(venv)或conda进行隔离安装,避免修改系统Python环境。可在安装脚本中优先尝试pip install --user或提示用户创建虚拟环境。
RISK-002
severity: low
category: input_validation
title: 缺少URL输入验证
location: lib/tavily_search.py:cmd_extract(), cmd_crawl()
description: extract和crawl命令接收用户提供的URL直接传递给API,代码层面未对URL格式进行验证(如协议限制、非法字符过滤)。虽然Tavily API会进行服务端验证,但客户端预验证可提升用户体验和安全性。
recommendation: 添加URL格式验证,确保输入以http://或https://开头,过滤控制字符和空白字符,限制URL长度(如不超过2048字符)。
RISK-003
severity: info
category: privacy_compliance
title: 第三方API服务数据共享
location: lib/tavily_search.py:_api_request()
description: 用户通过该Skill发起的所有搜索查询、URL提取内容和网站爬取指令都会发送至Tavily服务器处理。这涉及用户搜索意图和内容数据的第三方共享,需符合相关隐私法规要求。
recommendation: 在SKILL.md文档中添加隐私政策说明,告知用户数据将被发送至Tavily API处理。建议用户查阅https://tavily.com/privacy了解具体的数据收集、存储和使用政策。
改进建议
1. 改进安装脚本安全性
描述: 修改install.sh以优先使用用户级安装或虚拟环境,避免依赖--break-system-packages。
建议实现:
# 优先尝试用户级安装
pip install --user tavily-python 2>/dev/null || {
# 提示用户创建虚拟环境
echo "建议创建虚拟环境: python3 -m venv ~/.venv/tavily && source ~/.venv/tavily/bin/activate"
pip install tavily-python
}2. 添加输入验证层
描述: 在接收用户输入的URL和查询参数处添加验证逻辑,防止非法输入。
建议实现:
import re
from urllib.parse import urlparse
def validate_url(url: str) -> bool:
"""验证URL格式是否合法"""
if not url or len(url) > 2048:
return False
parsed = urlparse(url)
return parsed.scheme in ('http', 'https') and bool(parsed.netloc)
def sanitize_query(query: str) -> str:
"""清理查询字符串"""
# 移除控制字符,限制长度
return re.sub(r'[\x00-\x1f\x7f]', '', query[:1000])3. 添加重试机制
描述: 为API调用添加指数退避重试机制,提升在网络波动情况下的稳定性。
建议实现:
import time
from functools import wraps
def retry_with_backoff(max_retries=3, base_delay=1):
def decorator(func):
@wraps(func)
def wrapper(*args, **kwargs):
for attempt in range(max_retries):
try:
return func(*args, **kwargs)
except urllib.error.URLError as e:
if attempt == max_retries - 1:
raise
time.sleep(base_delay * (2 ** attempt))
return func(*args, **kwargs)
return wrapper
return decorator4. 完善隐私文档
描述: 在SKILL.md中添加隐私和数据处理说明章节,帮助用户了解数据去向。
建议内容:
## 隐私与数据安全
本Skill通过Tavily API进行网络搜索和内容提取。使用过程中:
- 您的搜索查询将发送至Tavily服务器
- 提取的URL内容将由Tavily处理
- 需要有效的Tavily API密钥
请参阅[Tavily隐私政策](https://tavily.com/privacy)了解详细的数据处理方式。国内网盘直下载与运维维护
百度/夸克直链转存,无需翻墙或挂代理。
固定有效版本,经过实测排查,避免代码变动导致失效。
专人维护网盘地址,发现链接失效 24h 内完成补链。
随时获取最新修复说明,帮非技术用户节省大把调优时间。
源码与文件预览(3 个文件)
正在加载代码…