OpenOSINT:把 20 个调查工具塞进一个自然语言外壳之后
AI-powered OSINT agent with interactive REPL, MCP server, and CLI. 19 tools. Works with Claude, GPT-4, or local models. For authorized security research only.
秒懂
- 它是什么?
- OpenOSINT 用 REPL、CLI、MCP server 和浏览器界面包装了 20 个开源情报工具,卖点是 AI 只负责发起工具调用、真实二进制由本地代码执行。本文只依据仓库自述与目录结构,梳理它的数据流、安装方式、真实约束和适用边界。
- 适合谁用?
- 已经在用 maigret、holehe、sherlock 这类工具、并且希望把结果汇总到统一实体图里的安全研究人员,可以从 pip install openosint 和 openosint web 开始试;只做单次邮箱或用户名查询的人不需要它,直接跑对应工具更快。真正上手前需要确认三件事:你的模型后端是否支持工具调用(本地模型尤其要验证)、Docker 与 API key 是否齐备、以及你所在司法辖区对目标数据的采集是否有合法依据。
- 能商用吗?
- 可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
- 还在维护吗?
- 在维护。仓库在最近一天内有新的提交。
- 用什么语言写的?
- 主要是 Python(依据 GitHub 的语言统计)。
以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。
开源项目深度解析
它要解决的是工具链碎片化,不是情报本身
开源情报工作流的典型形态是:用 maigret 查用户名,用 holehe 查邮箱注册痕迹,用 whois 查域名,再手动把结果贴进表格。每个工具的输出格式不同,字段命名不同,交叉比对靠人眼。OpenOSINT 针对的正是这一段:它把 20 个工具(README 标题写 20 个,仓库描述写 19 个,这个数字在两个地方不一致)收进同一个自然语言入口,并把结果落到一个实体图里。README 的演示说明提到,来自 openosint:github 和 openosint:whois 两个数据集的 Organization 节点可以各自独立存在,再由一条虚线 same_as 候选边连接,边上有 0.83 的评分。目标用户因此很明确:需要把多个来源的同一实体合并、并且愿意为此维护一套本地服务的安全分析师,而不是偶尔查一个邮箱的普通用户。
AI 发起调用,本地代码执行:这个分工值得单独说
README 的加粗声明是「The AI issues hard-stop tool calls; your code executes the real binary」。这句话的技术含义是:模型不生成调查结论,只生成对工具的调用请求,实际执行发生在本地进程里。作者据此声称「hallucinated findings are structurally impossible」,即幻觉发现从结构上不可能出现。这个说法在工具调用这一层是成立的,模型编不出一个不存在的 whois 记录,因为记录来自真实二进制。但它只覆盖到执行层。实体图的合并判断仍然带概率色彩:演示里那条 same_as 边被标为候选,附 0.83 的评分,并且需要人工点击 Accept 才从虚线变为实线。也就是说,幻觉被挡在数据采集之外,但消解歧义这一步依然是启发式的,只是被显式标注为「候选」并交给人审核。这个设计比直接输出结论要诚实,代价是流程里多了一个人工环节。
四种入口,同一条数据流
README 给出的三种启动方式对应不同使用深度。openosint 直接进交互式 AI REPL;openosint web 启动浏览器界面,演示里的 3D 地球和实体图都在这一层;openosint email target@example.com 绕过 AI 直接调用单个工具。第四种是 MCP server,仓库的 mcp-name 是 io.github.OpenOSINT/openosint,已发布到 MCP Registry,可以被 Claude 这类支持 Model Context Protocol 的客户端挂载。这四种入口共享同一套工具实现,区别只在于谁来决定调用哪个工具:REPL 和 MCP 交给模型,CLI 交给你。数据流大致是工具输出先进入 statement 层,再由 mapper 归并成实体,README 的演示说明特别指出演示数据「seeded at the statement layer, not produced by today's mappers」,意思是那次演示里的实体是人工种进去的,不代表当前 mapper 的实际归并能力。这一点在评估实体图质量时必须记住。
安装与配置:能确认的命令只有这些
基础安装是 pip install openosint,之后三条命令分别对应 REPL、Web 和直连工具。README 没有在给出的片段里展示 API key 的具体配置键名,也没有给出 Docker 相关命令,只在赞助商区块提到 RapidProxy 的集成指南位于 docs/integrations/rapidproxy.md,IP2Location 的集成指南位于 docs/integrations/ip2location.md,search_ip2location 这个工具由 IP2Location.io 提供。也就是说,IP 地理定位、ISP、VPN/Proxy/Tor 和机房识别这些能力依赖第三方付费服务,需要自备凭据。模型侧支持 Claude、GPT-4 或本地模型,但具体如何切换、环境变量叫什么,材料里没有给出,需要去仓库文档确认。如果你的本地模型不支持工具调用,这套架构的核心前提就不成立,因为分工的另一半要求模型能输出结构化的调用请求。
依赖第三方数据源,是它最现实的约束
README 的赞助商区块列出了三家:IP2Location.io 支撑 search_ip2location,RapidProxy 提供住宅代理,TestMu AI 是测试云平台。同时仓库明确写着「Open: Breach / Compromised-Credential Data · Email / Identity Lookup」,意思是泄露数据和邮箱身份查询这两类能力仍在招募赞助商。翻译成使用约束就是:涉及泄露凭据的查询在当前版本里没有稳定的数据源背书,而 IP 相关的查询质量取决于你是否购买了 IP2Location.io 的服务。RapidProxy 那段介绍里还带了一个折扣码 RAPID10,说明代理能力走的是商业合作路线。这类依赖会随时间变化,赞助关系一旦终止,对应工具的行为就会改变。评估时应当把你真正需要的工具逐个对照集成文档,而不是假设 20 个工具都同等可用。
什么时候不该用它
单次查询场景下 OpenOSINT 是多余的。如果你只想确认某个邮箱是否注册过某网站,直接跑 holehe 少一层模型调用、少一次 token 消耗、少一个可能出错的抽象层。同样,如果你的工作流已经有一张维护良好的表格和固定的脚本,引入实体图和人工审核卡片只会增加操作步骤。另一个不适合的情况是需要可复现的证据链:README 的演示明确标注数据是合成的、实体是种子注入的,真实调查中如果你需要向第三方证明某个结论来自某次具体运行,需要自己保留 run id 和 statement 层的原始记录,仓库材料没有说明这部分是否有导出机制。最后,法域问题不能靠工具解决。README 写的是「For authorized security research only」,这句话把责任放回使用者身上,工具本身不校验你的授权状态。
和 maigret、sherlock 的关系不是替代
从 topics 看,OpenOSINT 明确引用了 holehe、maigret、sherlock 这些项目,它更像是这些工具之上的一层编排。差异在方法上:maigret 和 sherlock 是确定性的用户名枚举器,你给一个用户名,它按站点列表逐个探测,输出一份命中清单,行为可预测、无需模型、无 token 成本。OpenOSINT 的做法是把「查什么」交给模型判断,把「怎么查」交给本地二进制,再用实体图把多次运行的结果串起来。前者适合一次性的、目标明确的核查,后者适合需要跨多个数据源反复追问的调查。选择依据是你的问题是否需要多轮追问和实体合并,如果需要,编排层的价值才成立;如果不需要,多出来的模型调用和审核环节就是纯开销。
维护成本、许可与商业授权
仓库采用 MIT 许可,代码可以自由使用、修改和分发。但 README 同时提供了商业授权路径:Commercial License 从每年 300 欧元起,附带供应商合同、SLA 和赔偿条款,另外还有 55 美元的 Complete Kit(提示词加操作手册)和 350 美元的 Setup Sprint(代安装服务)。这个结构意味着 MIT 覆盖的是代码,企业如果需要合同层面的保障需要另行购买。版本节奏上,v2.25.1、v2.26.0、v2.27.0 三个版本集中在 2026 年 8 月 24 日到 26 日三天内发布,说明迭代频率较高,跟随升级需要留意变更。升级成本主要来自两个方向:一是工具所依赖的外部服务接口变化,二是实体图的 mapper 逻辑变化,后者会直接影响已有调查结果的可比性。如果你把 OpenOSINT 用于长期跟踪,建议固定版本号而不是跟随 latest。
编辑结论
已经在用 maigret、holehe、sherlock 这类工具、并且希望把结果汇总到统一实体图里的安全研究人员,可以从 pip install openosint 和 openosint web 开始试;只做单次邮箱或用户名查询的人不需要它,直接跑对应工具更快。真正上手前需要确认三件事:你的模型后端是否支持工具调用(本地模型尤其要验证)、Docker 与 API key 是否齐备、以及你所在司法辖区对目标数据的采集是否有合法依据。仓库自述明确写着「For authorized security research only」,这是使用前提而不是免责套话。
社区笔记