open-scouts
Open Scouts是一个AI驱动的网络监控平台,让你轻松创建自动化的“侦察员”。这些侦察员会24/7持续搜索网络,一旦发现你感兴趣的内容(比如附近新餐厅、AI行业动态或特定关键词),就通过邮件立即提醒,彻底告别手动反复搜索的麻烦。
它特别适合普通用户快速上手使用,无需编程经验就能设置监控任务;同时欢迎开发者基于开源代码深度定制,扩展功能。技术亮点在于结合AI语义搜索(利用pgvector和OpenAI实现精准内容匹配)和Supabase的可扩展架构(支持高效任务调度与安全存储),确保监控既智能又可靠。整个平台采用Next.js、React等现代技术栈构建,安全易用,让信息追踪变得简单高效。
使用场景
作为一家AI创业公司的产品经理,小李每天需跟踪竞争对手的最新产品发布和行业动态,以确保公司策略及时调整,但手动监控效率低下。
没有 open-scouts 时
- 每天需在Google、Reddit、专业论坛等平台手动搜索关键词,平均耗时1小时,反复刷新页面易遗漏关键信息
- 无法实时获取动态,常在新闻发布后数小时才知晓,导致产品迭代决策滞后,错失市场机会
- 需维护10+个浏览器标签页和搜索历史,管理混乱,无法同时监控多个关键词(如“AI模型开源”和“竞品功能更新”)
使用 open-scouts 后
- open-scouts自动创建AI scouts,设置每小时扫描指定关键词(如“GPT-5发布”),无缝调用Firecrawl抓取网页内容,无需人工干预
- 一旦发现匹配内容,立即通过Resend发送邮件警报,小李在新闻发布5分钟内收到通知,决策响应速度提升90%
- 通过统一仪表盘管理多个scouts(如“竞品动态”“技术论文”),轻松切换监控主题,避免标签页混乱
open-scouts将被动信息收集转化为实时智能监控,让团队决策从“事后补救”转向“主动抢占先机”。
运行环境要求
- 未说明
未说明
未说明

快速开始
开放侦察员
创建 AI 侦察员,持续在网络上搜索,并在找到您所需内容时通知您。

关于
开放侦察员是一个基于 AI 的监控平台,允许您创建“侦察员”——按计划自动运行的任务,用于持续搜索和跟踪信息。无论您是在寻找附近的餐厅、关注 AI 新闻,还是追踪其他任何更新,侦察员都会全天候工作,帮您找到所需内容,并在发现后立即通知您。
技术栈
- Next.js 15
- React 19
- TypeScript
- Tailwind CSS v4
- Supabase(数据库 + 认证 + 边缘函数)
- pgvector(用于语义搜索的向量嵌入)
- Firecrawl SDK(@mendable/firecrawl-js)
- OpenAI API(AI 代理 + 嵌入)
- Resend(电子邮件通知)
快速入门
先决条件
- Node.js 18+
- bun(默认)、npm 或 pnpm
- Supabase 账户(supabase.com)
- OpenAI API 密钥(platform.openai.com)
- Firecrawl API 密钥(firecrawl.dev)
- Resend API 密钥(resend.com)——用于电子邮件通知
- Google Cloud 控制台账户(用于 Google OAuth — 可选)
1. 克隆并安装
git clone https://github.com/firecrawl/open-scouts
cd open-scouts
bun install # 或:npm install / pnpm install
2. 创建 Supabase 项目
- 访问 supabase.com
- 创建一个新项目
- 等待项目完成配置
3. 启用所需扩展
在您的 Supabase 控制台中:
- 转到 数据库 → 扩展
- 搜索并启用:
pg_cron(用于定时任务)pg_net(用于从数据库发起 HTTP 请求)vector(用于对执行摘要进行 AI 驱动的语义搜索)supabase_vault(用于安全存储凭据——通常默认启用)
4. 设置环境变量
通过复制示例文件,在根目录下创建 .env 文件:
cp .env.example .env
然后在 .env 文件中填写您的实际值。
.env.example 文件包含所有必需的环境变量,并附有详细说明和获取每个 API 密钥的直接链接。
5. 运行数据库设置
首先,关联您的 Supabase 项目(同步密钥所必需):
bunx supabase login # 登录 Supabase CLI(一次性操作)
bunx supabase link --project-ref <your-project-ref> # 在 Supabase 控制台 URL 中找到项目引用
然后运行设置脚本:
bun run setup:db # 或:npm run setup:db / pnpm run setup:db
这将:
- 创建所有必要的表(
scouts、scout_executions、scout_execution_steps等) - 添加用户认证支持(
user_id列、行级安全) - 启用实时订阅
- 为 AI 生成的执行摘要设置向量嵌入
- 配置 可扩展调度架构(pg_cron + pg_net + vault)
- 自动将您的 Supabase URL 和服务角色密钥存储到 vault 中
- 设置用于侦察员调度和清理的 cron 作业
- 同步边缘函数密钥 来自您的
.env文件(OPENAI_API_KEY、FIRECRAWL_API_KEY、RESEND_API_KEY)
注意: 设置脚本会检查是否已启用所需的扩展(vector、pg_cron、pg_net)。如果未启用,请按照屏幕上的指示在 Supabase 控制台中启用它们,然后再次运行脚本。
6. 设置认证
开放侦察员使用 Supabase Auth 进行用户认证,支持电子邮件/密码和 Google OAuth。
启用电子邮件/密码认证(默认启用)
- 转到 Supabase 控制台 → 认证 → 提供商 → 电子邮件
- 确保已打开“启用电子邮件提供商”
- 根据需要在 认证 → 电子邮件模板 中配置电子邮件模板
启用 Google OAuth(可选但推荐)
创建 Google OAuth 凭证:
- 访问 Google Cloud 控制台
- 创建一个新项目或选择现有项目
- 转到 APIs & Services → Credentials
- 单击 Create Credentials → OAuth client ID
- 选择“Web application”作为应用类型
- 添加授权的 JavaScript 源:
http://localhost:3000(开发环境)https://your-domain.com(生产环境)
- 添加授权的重定向 URI:
https://<your-project-ref>.supabase.co/auth/v1/callback
- 复制 Client ID 和 Client Secret
在 Supabase 中配置:
- 转到 Supabase 控制台 → 认证 → 提供商 → Google
- 打开“启用 Google 提供商”
- 粘贴您的 Client ID 和 Client Secret
- 保存
7. 部署边缘函数
将侦察员执行代理和电子邮件函数部署到 Supabase Cloud:
bunx supabase functions deploy scout-cron
bunx supabase functions deploy send-test-email
注意: 当您运行 setup:db 时,密钥(OPENAI_API_KEY、FIRECRAWL_API_KEY、RESEND_API_KEY)会自动同步。如果您需要手动更新它们:
bunx supabase secrets set OPENAI_API_KEY=sk-proj-...
8. 设置 Resend(电子邮件通知)
当侦察员找到结果时,系统会向您的账户邮箱发送电子邮件通知。
- 在 resend.com 创建一个 Resend 账户
- 从 Resend 控制台获取您的 API 密钥
- 将其添加到
.env文件中,并再次运行setup:db以同步,或者手动设置:bunx supabase secrets set RESEND_API_KEY=re_... - 在 resend.com/domains 验证自定义域名,以便可以发送到任何邮箱
重要——免费层级限制:
- 如果未验证域名,Resend 仅能发送到您的 Resend 账户邮箱
- 免费层级每月包含 3,000 封邮件(每日上限 100 封)
测试电子邮件设置:
- 在应用程序中转到 设置
- 单击 发送测试邮件 以验证配置
- 检查您的收件箱以确认测试邮件
9. Firecrawl 配置
Open Scouts 使用 Firecrawl 进行网页抓取和搜索。
📌 重要提示:无需配置环境变量
您不需要在环境变量中配置 Firecrawl API 密钥。 每位用户可以直接在应用内的 设置 页面添加自己的自定义 Firecrawl API 密钥。这是大多数用户的推荐方式。
自定义 API 密钥(推荐)
使用 Open Scouts 的最简单方法:
- 在 firecrawl.dev 注册
- 从 仪表板 获取您的 API 密钥
- 前往 Open Scouts 应用中的 设置
- 在 Firecrawl 集成 部分输入您的 Firecrawl API 密钥
- 点击 保存 —— 您就可以开始使用了!
每位用户管理自己的 API 密钥,使用情况会记录到其个人的 Firecrawl 账户中。
服务器端 API 密钥(可选——适用于自托管)
如果您是自托管用户,并希望为所有用户提供一个共享的 API 密钥:
- 在 firecrawl.dev 注册
- 从 仪表板 获取您的 API 密钥
- 将其添加到您的
.env文件中:FIRECRAWL_API_KEY=fc-your-key-here - 设置边缘函数密钥:
npx supabase secrets set FIRECRAWL_API_KEY=fc-your-key-here
注意: 如果用户在设置中添加了自己的自定义 API 密钥,则会使用其个人密钥,而不是服务器端的共享密钥。
合作伙伴集成(企业级——封闭测试版)
⚠️ 合作伙伴密钥功能目前处于封闭测试阶段,仅对企业客户开放。 此功能尚未公开提供。
合作伙伴集成的工作原理(可用时):
- 当用户注册时,系统会自动为其创建一个唯一的 Firecrawl API 密钥
- 每个用户的使用情况会被单独跟踪
- 密钥安全地存储在
user_preferences表中 - 如果用户的密钥失效,系统会自动回退到共享的合作伙伴密钥
- 用户可以在 设置 → Firecrawl 集成 中查看其连接状态。
10. 运行开发服务器
bun run dev # 或:npm run dev / pnpm run dev
打开 http://localhost:3000,即可看到应用。
工作原理
用户认证流程
- 公共首页:用户无需登录即可浏览着陆页
- 创建侦察员:当用户输入查询并按下回车键时,系统会提示他们登录
- 登录/注册:用户可以通过电子邮件/密码或 Google OAuth 进行身份验证
- 继续流程:认证完成后,侦察员的创建过程会自动继续
- 用户隔离:每个用户只能查看和管理自己的侦察员。
侦察员系统
- 创建侦察员:定义您想要监控的内容(例如:“查找我附近最近的印度餐厅”或“查找任何人工智能新闻”)
- AI 代理设置:系统会自动配置搜索查询和策略
- 设置频率:选择运行频率(每小时、每 3 天、每周)
- 配置通知:在设置中添加您的邮箱,以便在侦察员找到结果时接收提醒
- 持续监控:调度器每分钟检查一次,并单独触发到期的侦察员
- AI 总结:每次成功执行都会生成一段简洁的单句摘要,并附带语义嵌入
- 接收通知:当侦察员发现新结果时,您将收到电子邮件提醒(如果已配置邮箱)
- 查看结果:在侦察员页面上实时查看所有发现的结果及 AI 生成的摘要。
手动执行
点击任意侦察员页面上的 “立即执行” 按钮,即可立即触发执行,无需等待定时任务。
邮件通知
当侦察员找到结果时,您将自动收到发送到账户邮箱的邮件提醒:
- 自动发送:只有在侦察员成功找到结果时才会发送邮件
- 丰富内容:精美的 HTML 邮件,包含侦察员的结果和链接
- 测试:使用设置中的“发送测试邮件”按钮来验证配置。
邮件服务:由 Resend 提供(免费套餐包含每月 3,000 封邮件)
注意: 在 Resend 的免费套餐中,如果没有验证过的域名,邮件只能发送到您的 Resend 账户邮箱。请在 resend.com/domains 验证自定义域名,以便可以发送到任何邮箱。
架构
- 前端:使用 Supabase Realtime 实现实时更新的 Next.js 应用程序
- 数据库:PostgreSQL(Supabase),配备 pg_cron 用于调度和 pgvector 用于语义搜索
- 认证:Supabase Auth(电子邮件/密码 + Google OAuth)
- AI 代理:OpenAI GPT-4 结合函数调用(搜索与抓取工具)
- AI 总结:每次成功执行后都会自动生成带有向量嵌入的单句摘要
- 边缘函数:基于 Deno 的无服务器函数,负责协调代理的执行
- 网页抓取:Firecrawl API 用于搜索和内容提取(支持通过合作伙伴集成实现按用户分配 API 密钥)。
可扩展的调度架构
Open Scouts 使用一种设计用于扩展至数千个侦察员的调度模式:
每分钟:
pg_cron → dispatch_due_scouts() → 查找到期的侦察员 → pg_net HTTP POST
↓
┌──────────────────────┼──────────────────────┐
↓ ↓ ↓
边缘函数 边缘函数 边缘函数
(侦察员 A) (侦察员 B) (侦察员 C)
[隔离] [隔离] [隔离]
- 调度器(SQL):每分钟通过 pg_cron 运行,查询到期的侦察员,并触发单独的 HTTP 请求
- 隔离执行:每个侦察员都在独立的边缘函数调用中运行,拥有完整的资源(256MB 内存,400 秒超时)
- 自动清理:另一个 cron 作业每 5 分钟清理卡住的执行任务
- Vault 集成:Supabase 凭证安全地存储在 Vault 中,并由调度器读取。
安全性
- 行级安全(RLS):所有数据库表都启用了 RLS 策略,确保用户只能访问自己的数据
- 用户隔离:侦察员、消息和执行记录都与已认证用户相关联
- 安全的认证流程:OAuth 令牌和会话由 Supabase Auth 管理
- 服务角色:服务器端操作(cron 作业、边缘函数)使用服务角色以获得特权访问权限
- API 密钥存储:在使用合作伙伴集成时,Firecrawl API 密钥会存储在服务器端的
user_preferences表中,绝不会暴露给客户端。
构建生产环境
bun run build # 或:npm run build / pnpm run build
bun start # 或:npm start / pnpm start
贡献
欢迎贡献!请随时提交 Pull Request。
许可证
MIT
相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。
OpenHands
OpenHands 是一个专注于 AI 驱动开发的开源平台,旨在让智能体(Agent)像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点,通过自动化流程显著提升开发速度。 无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员,还是需要快速原型验证的技术团队,都能从中受益。OpenHands 提供了灵活多样的使用方式:既可以通过命令行(CLI)或本地图形界面在个人电脑上轻松上手,体验类似 Devin 的流畅交互;也能利用其强大的 Python SDK 自定义智能体逻辑,甚至在云端大规模部署上千个智能体并行工作。 其核心技术亮点在于模块化的软件智能体 SDK,这不仅构成了平台的引擎,还支持高度可组合的开发模式。此外,OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩,证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能,支持与 Slack、Jira 等工具集成,并提供细粒度的权限管理,适合从个人开发者到大型企业的各类用户场景。