自动化与脚本
使用 Tavily CLI 做网页搜索、提取、地图…
当需要通过 Tavily CLI 完成网页搜索/内容提取/站点 URL 发现/批量爬取/深度研究,并处理安装、认证、更新或排障时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
使用 Tavily CLI 做网页搜索、特定
解决思路
- 如果 `tvly` 未安装,运行 `curl -fsSL https://cli.tavily.com/install.sh | bash` 安装;或手动运行 `uv tool install tavily-cli` / `pip install tavily-cli`。
- 需要查看完整选项时,运行 `tvly --help` 或 `tvly <command> --help`。
- Agent 设置时默认先走无密钥模式,除非用户要求登录或任务需要 map/crawl/research;若安装器尚未完成设置,运行 `tvly init --skip-auth`,它会安装/更新 Tavily skills 并验证一次实时无密钥搜索。
- 在首次 search 或 extract 请求前,不要寻找 API key 或进行认证。
- 当用户要求认证或任务必须认证时,用引导式设置:运行 `tvly init`;若希望自己打开登录链接,运行 `tvly init --no-browser`。
- `tvly init` 会复用已有凭据、安装或更新该 CLI 版本捆绑的 Tavily skills,并验证一次实时搜索;刷新捆绑 skills 前先运行 `tvly update`。
- 如果 skills 已安装且只需要认证或验证,运行 `tvly init --skip-skills`。
- Search 和 extract 可不认证立即运行,但受无密钥速率限制;若交互会话中达到该限制,运行 `tvly login` 打开浏览器 OAuth,然后重试原命令一次。
- 在无人值守环境中,如果达到无密钥限制,报告限制和认证选项,不要启动交互式流程。
- Map、crawl、research 需要认证。
- 仅在需要时用 `tvly --status --json` 检查当前状态。
- 若不做完整设置而只认证,使用 `tvly login`、`tvly login --no-browser`、`tvly login --api-key tvly-YOUR_KEY`,或设置 `TAVILY_API_KEY`。
- 交互式登录优先用浏览器 OAuth;`--no-browser` 只打印登录链接而不自动打开,流程仍会回到运行 `tvly` 的机器上的 localhost 回调。
- 在远程会话中,确保该 localhost 回调可达(SSH 可能需要端口转发)。
- 在无人值守 agent 或 CI 环境中,把认证留给用户,或使用安全提供的 `TAVILY_API_KEY`,然后恢复原命令。
- 保持现有安装最新:运行 `tvly update --check` 和 `tvly update`。
- 按“从简单到复杂”的升级模式选择命令:先 search,再 extract,再 map,再 crawl,最后 research。
- 无具体 URL 时,运行 `tvly search` 查找页面、回答问题、发现来源。
- 已有 URL 时,运行 `tvly extract` 直接提取内容。
- 大型站点需要找正确页面时,运行 `tvly map` 先发现 URL。
- 需要整站某个区块的批量内容时,运行 `tvly crawl`,例如所有 `/docs/`。
- 需要带引用的多来源综合分析时,运行 `tvly research`。
- 查详细命令参考时,使用各命令单独技能(如 `tavily-search`、`tavily-crawl`),或运行 `tvly <command> --help`。
- 运行不带子命令的 `tvly` 进入交互式 REPL。
- Search、extract、crawl、map、research 支持 `--json` 结构化输出。
- 产生结果的命令支持 `-o` 保存 JSON 响应;crawl 还支持 `--output-dir`,每个页面生成一个 Markdown 文件。
- Setup、认证、status、update 命令在文档注明处暴露 `--json`,但不支持 `-o`。
- 输出示例:`tvly search "react hooks" --json -o results.json`;`tvly extract "https://example.com/docs" -o docs.json`;`tvly crawl "https://docs.example.com" --output-dir ./docs/`。
- 始终给 URL 加引号,因为 shell 会把 `?` 和 `&` 当作特殊字符。
- 在 agentic 工作流中,所选命令支持时使用 `--json`。
- 用 `-` 从 stdin 读取,例如 `echo "query" | tvly search -`。
- 根据退出码排障:0 = 成功,1 = 设置/更新失败,2 = 输入错误,3 = 认证错误,4 = API 或实时验证错误。
适用边界 · 注意事项
- 只是执行普通网页任务时不要用本技能来做安装/认证/命令选择;应使用对应的具体技能(如 `tavily-search`、`tavily-extract`、`tavily-map`、`tavily-crawl`、`tavily-research` 或 dynamic-search)。
- 没有安装 `tavily-cli` 且不能执行安装、不能联网,或不愿依赖 Tavily 服务/配额时,不适用。
- 需要某个命令的详细参数时,不要只依赖本技能;应查看单独命令技能或运行 `tvly <command> --help`。