用途
Freelance Gig Finder 用于帮助用户跨多个自由职业与远程工作平台,查找与特定技能或角色匹配的最新自由职业、合同类机会。它强调“新鲜”职位,默认只关注最近 7 天内发布的列表,避免展示过期信息。
主要能力
- 同时搜索多个平台:介绍中列出 Upwork、Contra、We Work Remotely、Freelancer 和 Toptal,但实际调用示例包含 Upwork、Contra、We Work Remotely、Freelancer 和 LinkedIn。
- 按技能或角色搜索,例如 React developer、Python、UI/UX designer、copywriter、DevOps、mobile developer。
- 支持可选的预算偏好(如 hourly、fixed price、$50+/hr)和时效(默认最近 7 天)。
- 并行运行多个抓取代理,每个平台提取最多 8 条可见职位列表。
- 对结果去重、按发布时间从新到旧排序,并生成结构化展示。
- 输出包含职位标题、平台、发布时间、预算、技能、描述片段和链接,并提供按平台统计的汇总表。
使用方式
使用前必须完成两项预检:
- 检查 CLI 是否安装:
which tinyfish && tinyfish --version || echo "TINYFISH_CLI_NOT_INSTALLED"
若未安装,需提示用户安装:
npm install -g @tiny-fish/cli
- 检查是否已认证:
tinyfish auth status
若未认证,需提示用户获取 TinyFish API key(https://agent.tinyfish.ai/api-keys),然后执行:
tinyfish auth login
两项检查均通过后才可继续。
随后收集输入:技能或角色(必填)、预算偏好(可选)、时效(可选,默认最近 7 天)。若未提供技能,需先询问。
然后并行运行多个代理,分别针对不同平台执行搜索。示例命令中每个代理使用 tinyfish agent run,指定目标 URL 和提取规则,并以 --sync 输出到临时 JSON 文件。运行前需替换 {SKILL} 和 {SKILL_ENCODED}(URL 编码后的技能)。
最后等待所有代理完成,读取各 JSON 文件,进行去重、过滤最近 7 天、按时间排序,并以 Markdown 格式展示结果,包括“Fresh Listings”列表和“Quick Summary”汇总表,以及针对这些列表的提示。
适用场景
- 用户询问“find me freelance React jobs”等类似需求时。
- 需要快速了解某技能在多个平台上的最新自由职业机会。
- 希望按预算或时效筛选职位。
- 需要跨平台去重和汇总,节省逐个平台查看的时间。
限制
- 依赖 TinyFish CLI 和 API key,未安装或未认证时无法使用。
- Upwork 需要登录才能查看列表,只能提取登录门槛前可见的内容,并需注明该限制。
- 若某技能无结果,建议尝试替代措辞(如 React → React.js、frontend developer;Python → Python developer、Django)。
- 非常小众的技能可能在 We Work Remotely 和 LinkedIn 上结果更丰富;Upwork/Freelancer 对常见技能通常量更大。
- 用户指定预算范围时,需在运行前向 Upwork 和 Freelancer 的 URL 添加预算过滤条件。
- 用户位于特定国家时,需注意 Upwork 和 Freelancer 虽为全球平台,但部分列表有地域限制;LinkedIn 可按国家筛选。
- 若所有平台结果都很少,建议用户过几天再查看或放宽技能范围(如用 React 代替 React Native)。
- 介绍中未提供收费、价格、平台覆盖的完整官方说明或效果保证。