Lorenzobaron99/watson-osint
GitHub: Lorenzobaron99/watson-osint
Watson是一款开源的OSINT调查引擎,用于并行执行情报收集和分析。
Stars: 0 | Forks: 0
# 🕵️ Watson — OSINT 调查引擎
**受 Bellingcat 启发。图原生。代理无关。LLM 无关。**
Watson 运行多角度并行 OSINT 调查,交叉引用发现,并构建一个随着每个案例增长而变得更聪明的持久知识图谱。想想 Sherlock、Maigret 和 Holehe,但它们是图连接的。
[阅读架构 →](WATSON_ARCHITECTURE.md)
## 为什么选择 Watson
一般代理回答你的问题然后忘记它。Watson 调查、关联并记住。
| | ChatGPT / Claude | Watson |
|---|---|---|
| 状态 | 无状态 | 持久图 |
| 内存 | 会话间无记忆 | 每个案例都为图提供数据 |
| 交叉案例 | 不可能 | 案例 #47 提及案例 #12 |
| 社区 | 无 | MCP 服务器用于集体情报 |
| 来源 | 有时 | 每个发现都有来源 + 置信度 |
## 快速入门
```
git clone https://github.com/Lorenzobaron99/watson-osint.git
cd watson-osint
pip install -r requirements.txt
# 选择您的后端:
# Hermes(完整工具集:web、browser、vision、terminal)
# export WATSON_AGENT=hermes
# # 任何兼容 OpenAI 的 API(零配置)
# export WATSON_AGENT=direct
# export WATSON_API_KEY=sk-...
# export WATSON_API_BASE=https://api.openai.com/v1 # 或任何提供商
# export WATSON_MODEL=gpt-4o # 或 claude、gemini 等
# 终端界面
python -m watson.cli
# Web 界面
uvicorn watson.web.app:app --port 8000
```
## 工作原理
```
investigate "shadowy-company.com"
│
▼
┌──────────────────────────────┐
│ Phase 1: Classify & Plan │ Target type → investigation angles
│ Domain → WHOIS, DNS, SSL, │ Checks knowledge graph for
│ Corporate, Historical, News │ connections from past cases
└──────────┬───────────────────┘
▼
┌──────────────────────────────┐
│ Phase 2: Parallel Dispatch │ 4-6 angles run simultaneously
│ → crt.sh → 14 subdomains │ Results stream in real-time
│ → OpenCorporates → LLC │ via configured adapter
│ → Wayback → 2018 owner │
│ → DuckDuckGo → 3 articles │
└──────────┬───────────────────┘
▼
┌──────────────────────────────┐
│ Phase 3: Cross-Reference │ Finds connections across sources
│ "John Doe" in 2 sources → │ Links to prior cases in graph
│ Sanctions link confirmed │ Confidence-scored
└──────────┬───────────────────┘
▼
┌──────────────────────────────┐
│ Output: Structured Briefing │ Case saved as CASE-XXXX.md
│ + Knowledge Graph update │ Entities indexed for future
│ + Follow-up questions │ cross-case intelligence
└──────────────────────────────┘
```
## 后端
Watson 是代理无关和 LLM 无关的。选择适合你的:
| 适配器 | 设置 | 功能 |
|---|---|---|
| **Hermes** | 本地安装 | 网络搜索、浏览器、视觉、终端、MCP 工具 |
| **Direct** | 仅 API 密钥 | DuckDuckGo 搜索 + 任何 OpenAI 兼容的 LLM |
| **OpenClaw** | 即将推出 | 完整工具集 |
通过 `WATSON_AGENT` 环境变量设置。
## OSINT 工具包集成
Watson 与开源 OSINT 生态系统集成:
- **[Sherlock](https://github.com/sherlock-project/sherlock)** — 300+ 平台的用户名枚举
- **[Maigret](https://github.com/soxoj/maigret)** — 深度用户名 OSINT
- **[Holehe](https://github.com/megadose/holehe)** — 电子邮件 → 注册的账户
- **[GHunt](https://github.com/mxrch/GHunt)** — Google 账户调查
- **[Blackbird](https://github.com/p1ngul1n0/blackbird)** — 多平台用户名搜索
将其中任何一个与 Watson 一起安装,它们就会作为调查角度可用。Bellingcat 工具包注册表将 338 个工具映射到目标类型。
## MCP 服务器 — 社区知识图谱
```
uvicorn watson.mcp_server:mcp --port 8001
```
通过模型上下文协议公开调查图:
- `watson_search` — 搜索实体、案例、关系
- `watson_traverse` — 从任何实体探索连接
- `watson_case` — 获取已发布的调查
- `watson_stats` — 图统计
- `watson_context` — 在调查之前检查先前发现
每个公开案例都写入此图。未来的调查会自动显示连接。
## 项目结构
```
watson-osint/
├── watson/
│ ├── agents/ # Pluggable backends
│ │ ├── base.py # Abstract interface
│ │ ├── hermes.py # Hermes (CLI subprocess)
│ │ └── direct.py # OpenAI-compatible + DuckDuckGo
│ ├── engine.py # Multi-angle investigation engine
│ ├── graph.py # Persistent knowledge graph
│ ├── mcp_server.py # Community MCP endpoint
│ ├── cli.py # Terminal interface
│ └── web/ # FastAPI + chat UI
│ ├── app.py
│ └── templates/
├── requirements.txt
└── LICENSE
```
## 配置
```
# 代理后端
WATSON_AGENT=hermes|direct
# 直接适配器(任何兼容 OpenAI 的 API)
WATSON_API_KEY=sk-...
WATSON_API_BASE=https://api.openai.com/v1
WATSON_MODEL=gpt-4o
# GitHub OAuth(可选 — 用于 Web 登录)
GITHUB_CLIENT_ID=...
GITHUB_CLIENT_SECRET=...
# MCP 社区图
MCP_PORT=8001
```
## 许可证
GNU Affero 通用公共许可证 v3.0 — 如果你将 Watson 作为网络服务运行,你必须发布你的修改。
标签:Bellingcat, BSD, ESC4, LLM, OSINT, Unmanaged PE, Web界面, 二进制发布, 人工智能, 可信度评估, 并行处理, 开源, 开源工具, 开源框架, 情报共享, 情报分析, 情报平台, 情报引擎, 情报收集, 持续集成, 数据关联, 数据挖掘, 源数据, 漏洞研究, 用户模式Hook绕过, 社区情报, 终端界面, 网络安全, 网络诊断, 网络调查, 自动化调查, 请求拦截, 调查工具, 跨案例分析, 逆向工具, 隐私保护, 黄金证书