Robin是一款基于人工智能的工具,用于开展暗网开源情报调查。它利用LLM(逻辑逻辑模型)来优化查询、过滤来自暗网搜索引擎的搜索结果,并提供调查摘要。
安装•使用方法•贡献内容•致谢



特征
- ⚙️模块化架构-- 搜索、抓取和 LLM 工作流程之间的清晰分离。
- 🤖多模型支持-- 轻松在 OpenAI、Claude、Gemini 或本地模型(如 Ollama)之间切换。
- 💻 CLI优先设计-- 专为终端战士和自动化高手打造。
- 🐳 Docker-Ready -- 可选的 Docker 部署,实现干净、隔离的使用。
- 📝自定义报告-- 将调查结果保存到文件中,以便进行报告或进一步分析。
- 🧩可扩展-- 易于插入新的搜索引擎、模型或输出格式。
⚠️免责声明
本工具仅供教育和合法调查用途。访问或与某些暗网内容互动可能因您所在司法管辖区的法律而违法。作者对本工具的任何滥用行为或使用本工具收集的数据概不负责。
请负责任地使用,并自行承担风险。在进行开源情报调查之前,请确保遵守所有相关法律和机构政策。
此外,Robin 还使用了第三方 API(包括 LLM)。发送可能涉及敏感信息的查询时务必谨慎,并仔细阅读您使用的任何 API 或模型提供商的服务条款。
安装
笔记
该工具需要 Tor 来进行搜索。您可以apt install tor在 Linux/Windows(WSL)或brew install torMac 上安装 Tor。安装完成后,请确认 Tor 是否在后台运行。
提示
您可以通过创建 .env 文件(参考仓库中的示例 env 文件)或在 PATH 中设置环境变量来提供 OpenAI、Anthropic 或 Google API 密钥。
对于 Ollama,如果您使用 Docker 或使用其他方法运行,请在您的环境变量中提供http://host.docker.internal:11434相关信息。根据您的操作系统,您可能需要将 Ollama 服务部署在 0.0.0.0 上。您可以通过在终端中运行命令来完成此操作。OLLAMA_BASE_URL``http://127.0.0.1:11434``OLLAMA_HOST=0.0.0.0 ollama serve &
Docker(Web UI 模式)[推荐]
- 拉取最新的 Robin Docker 镜像
docker pull apurvsg/robin:latest
- 运行 Docker 镜像:
docker run --rm \
-v "$(pwd)/.env:/app/.env" \
--add-host=host.docker.internal:host-gateway \
-p 8501:8501 \
apurvsg/robin:latest ui --ui-port 8501 --ui-host 0.0.0.0
发布二进制文件(命令行模式)
- 从最新版本中下载适合您系统的二进制文件。
- 解压缩文件,并使其可执行。
chmod +x robin
- 运行该二进制文件:
robin cli --model gpt-4.1 --query "ransomware payments"
使用 Python(开发版本)
- 安装完成后
Python 3.10+,运行以下命令:
pip install -r requirements.txt
python main.py cli -m gpt-4.1 -q "ransomware payments" -t 12
使用方法(命令行/开发模式)
Robin: AI-Powered Dark Web OSINT Tool
options:
-h, --help show this help message and exit
--model {gpt-4.1,claude-3-5-sonnet-latest,llama3.1,gemini-2.5-flash}, -m {gpt4o,gpt-4.1,claude-3-5-sonnet-latest,llama3.1,gemini-2.5-flash}
Select LLM model (e.g., gpt4.1, claude sonnet 3.5, ollama models, gemini 2.5 flash)
--query QUERY, -q QUERY
Dark web search query
--threads THREADS, -t THREADS
Number of threads to use for scraping (Default: 5)
--output OUTPUT, -o OUTPUT
Filename to save the final intelligence summary. If not provided, a filename based on the
current date and time is used.
Example commands:
- robin -m gpt4.1 -q "ransomware payments" -t 12
- robin --model gpt4.1 --query "sensitive credentials exposure" --threads 8 --output filename
- robin -m llama3.1 -q "zero days"
- robin -m gemini-2.5-flash -q "zero days"