use-tinyfish

use-tinyfish

热门

使用 TinyFish 进行网络搜索、获取 URL、阅读页面、获取最新信息、基于来源的答案、研究、文档、定价/产品页面、提取、抓取和浏览器自动化。当用户要求搜索、查找、查询、研究、比较、从网络获取信息、总结 URL、获取页面内容或自动化网站时使用。

2132Star
326Fork
更新于 2026/8/27
SKILL.md
只读
名称
use-tinyfish
描述

使用 TinyFish 进行网络搜索、获取 URL、阅读页面、获取最新信息、基于来源的答案、研究、文档、定价/产品页面、提取、抓取和浏览器自动化。当用户要求搜索、查找、查询、研究、比较、从网络获取信息、总结 URL、获取页面内容或自动化网站时使用。

TinyFish CLI

你可以使用 TinyFish CLI(tinyfish)——一套可以从终端调用的网络工具。

如果未安装:npm install -g @tiny-fish/cli
如果未认证:tinyfish auth login --source openclaw 或设置 TINYFISH_API_KEY 环境变量。


何时触发此技能

当请求依赖于实时网络信息或页面内容时,使用 TinyFish。不要等待用户说“TinyFish”或“抓取”。

强触发条件包括:

  • 搜索或发现:搜索、查找、查询、研究、比较、最新、当前、新闻、文档、定价、产品详情、最佳选项。
  • URL/页面阅读:获取、阅读、总结、从该页面提取、检查该 URL、获取内容、提取链接或元数据。
  • 基于来源的答案:使用网络来源回答、验证事实、检查是否有变化、从网络收集信息。
  • 网站操作:与网站交互、点击页面、填写表单、登录、收集结构化数据、处理受机器人保护的页面。

默认使用最轻量的工具来回答问题:

  • 没有 URL 且用户需要网络信息:使用 search,如果需要更多细节,再 fetch 最佳结果。
  • 提供了 URL 且只需要内容:使用 fetch
  • 需要页面交互或动态提取:使用 agent
  • 需要原始 CDP/Playwright 风格控制:使用 browser

选择合适的工具

TinyFish 有四个工具。从最轻量且能完成任务的工具开始,仅在需要时升级。

search  →  fetch  →  agent  →  browser
最轻量                          最重量
工具 使用时机 速度 成本
search 需要查找 URL、当前事实、文档、定价、产品详情或快速基于来源的答案 最快 最低
fetch 有 URL 且需要干净的页面内容、摘要、文章文本、文档、产品页面、链接或元数据
agent 需要与页面交互——点击、填写表单、导航、从动态网站提取结构化数据 较慢 较高
browser agent 不够用——需要通过 CDP 进行原始编程式浏览器控制 最慢 最高

常见模式

研究:search → fetch
搜索主题,然后获取最佳结果以阅读完整内容。

# 1. 查找 URL
tinyfish search query "best React state management libraries 2026"

# 2. 阅读顶部结果
tinyfish fetch content get --format markdown "https://result1.com" "https://result2.com"

深度提取:search → agent
搜索找到合适的网站,然后使用 agent 与网站交互并提取结构化数据。

# 1. 查找网站
tinyfish search query "Nike running shoes official store"

# 2. 在网站上自动化提取
tinyfish agent run --url "https://nike.com/running" \
  "Extract all running shoes as JSON: [{\"name\": str, \"price\": str, \"colors\": [str]}]"

升级:fetch → agent
先尝试 fetch。如果页面是动态/重 JS 的,且 fetch 返回空或不完整的内容,则升级到 agent。

完全控制:agent → browser
如果 agent 无法处理复杂的多步骤工作流,则启动原始浏览器会话并通过 CDP 自行自动化。


命令

tinyfish search query

网络搜索。返回带标题、URL 和摘要的排名结果。

tinyfish search query "<query>" [--location <hint>] [--language <hint>] [--pretty]
  • 默认返回 10 条结果
  • 使用 --location--language 进行地理定位结果
  • 默认输出为 JSON;--pretty 用于人类可读
tinyfish search query "best pho in Ho Chi Minh City" --location "Vietnam" --language "en"

tinyfish fetch content get

从一个或多个 URL 获取干净、提取的内容。去除广告、导航、样板——只返回内容。

tinyfish fetch content get <urls...> [--format markdown|html|json] [--links] [--image-links] [--pretty]
  • 接受多个 URL 在单个调用中——它们在服务器端并行获取
  • --format markdown(默认)——干净的、可读的文本
  • --format json——结构化文档树
  • --links——包含页面中所有提取的链接
  • --image-links——包含提取的图像 URL
  • 响应包括:urlfinal_urltitlelanguageauthorpublished_datetextlatency_ms
# 获取一个页面为 markdown
tinyfish fetch content get --format markdown "https://example.com/article"

# 获取多个页面并包含链接
tinyfish fetch content get --links "https://site-a.com" "https://site-b.com" "https://site-c.com"

tinyfish agent run

使用自然语言目标运行浏览器自动化。agent 打开真实浏览器,导航、点击、填写表单并提取数据。

tinyfish agent run --url <url> "<goal>" [--sync] [--async] [--pretty]
标志 用途
--url <url> 目标 URL(裸主机名会自动添加 https://
--sync 等待完整结果而不流式传输步骤
--async 提交并立即返回
--pretty 人类可读输出

输出: 默认流式传输 data: {...} SSE 行。最终结果是 type == "COMPLETE"status == "COMPLETED" 的事件——提取的数据在 resultJson 字段中。直接读取原始输出;无需脚本端解析。

始终在目标中指定你想要的 JSON 结构:

tinyfish agent run --url "https://example.com/products" \
  "Extract all products as JSON array: [{\"name\": str, \"price\": str, \"url\": str}]"

tinyfish agent run --url "https://example.com/search" \
  "Search for 'wireless headphones', filter under $50, extract top 5 as JSON: [{\"name\": str, \"price\": str, \"rating\": str}]"

并行提取——当访问多个独立网站时,进行单独的调用。不要合并到一个目标中。

好——并行调用(同时运行):

tinyfish agent run --url "https://pizzahut.com" \
  "Extract pizza prices as JSON: [{\"name\": str, \"price\": str}]"

tinyfish agent run --url "https://dominos.com" \
  "Extract pizza prices as JSON: [{\"name\": str, \"price\": str}]"

坏——单个合并调用:

# 不要这样做——更不可靠且更慢
tinyfish agent run --url "https://pizzahut.com" \
  "Extract prices from Pizza Hut and also go to Dominos..."

管理运行:

tinyfish agent run list [--status PENDING|RUNNING|COMPLETED|FAILED|CANCELLED] [--limit N]
tinyfish agent run get <run_id>
tinyfish agent run cancel <run_id>

批量操作——从 CSV 文件(url,goal 列)提交多个运行:

tinyfish agent batch run --input runs.csv
tinyfish agent batch list
tinyfish agent batch get <batch_id>
tinyfish agent batch cancel <batch_id>

tinyfish browser session create

启动远程浏览器实例。返回用于编程控制的 CDP WebSocket URL。

tinyfish browser session create [--url <url>] [--pretty]
  • --url 可选地在创建后导航到页面
  • 返回 session_idcdp_url(WebSocket)和 base_url
  • 使用 cdp_url 与 Playwright、Puppeteer 或任何 CDP 客户端
tinyfish browser session create --url "https://example.com"
# 返回:{ session_id, cdp_url: "wss://...", base_url: "https://..." }

一般说明

  • 匹配用户的语言:用用户使用的语言回复。
  • 所有命令都支持 --pretty 用于人类可读输出。默认是 JSON。
  • 在根命令上使用 --debug 或设置 TINYFISH_DEBUG=1 将 HTTP 请求记录到 stderr。