lachydotmcg/argus
GitHub: lachydotmcg/argus
Argus 是一款个人数字足迹自我扫描工具,通过多平台用户名枚举与 AI 驱动的实时搜索情报,帮助用户发现并收窄自己在互联网上的信息暴露面。
Stars: 1 | Forks: 0
```
___ ____ ________ _______
/ | / __ \/ ____/ / / / ___/
/ /| | / /_/ / / __/ / / /\__ \
/ ___ |/ _, _/ /_/ / /_/ /___/ /
/_/ |_/_/ |_|\____/\____//____/
self-OSINT footprint scanner
```
**看看互联网眼中的你 —— 然后缩小那些数字足迹。**
Argus 结合了两轮扫描:
1. **用户名枚举** —— 在 30 多个热门平台上进行快速、本地的检查
(无需 API key,零成本)。就像 Sherlock,但经过了精心筛选。
2. **实时网络情报** —— 通过 **Google 的 Gemini API 与 Search grounding** 执行针对性的 Google-dork 查询,返回*真实、最新且带引用的*
结果:数据经纪商名录、数据泄露/粘贴暴露、暴露的文档、论坛提及,以及具体的补救措施。
3. **智能个人资料匹配** —— 用纯英文描述你自己,Gemini 会为每个找到的个人资料评分
**HIGH / MEDIUM / LOW / UNLIKELY**,让你不再费力翻阅明显是别人的结果。
## 截图


## 快速开始
```
git clone argus && cd argus
python -m venv .venv
# Windows: .venv\Scripts\activate
# macOS/Linux: source .venv/bin/activate
pip install -r requirements.txt
python main.py
```
CLI 会全程引导你完成剩下的步骤 —— 它会询问你要搜索什么,获取
你的 API key,执行两轮扫描,并打开 HTML 报告。
## 获取免费的 Gemini API key
1. 前往 **https://aistudio.google.com/apikey**
2. 点击 **Create API key**(免费,大约需要 30 秒)
3. 在 Argus 提示时粘贴它 —— 或者只需设置一次:
$env:GEMINI_API_KEY = "your-key" # PowerShell
export GEMINI_API_KEY="your-key" # bash
该 key 仅在你的机器上使用。Argus 永远不会将其传输到除 Google API 之外的任何地方。
该 key 仅在你的机器上使用。你也可以将 key 放在 `.env` 文件中:
```
GEMINI_API_KEY=your-key
HIBP_API_KEY=your-hibp-key
GOOGLE_CSE_KEY=your-cse-key
GOOGLE_CSE_CX=your-cx-id
DISCORD_WEBHOOK=https://discord.com/api/webhooks/...
```
## 你将获得什么
- 一个交互式的终端操作指南,实时显示传入的结果。
- **用户名变体扫描** —— 给出 Argus 你的用户名以及你的习惯
(例如 *"使用 lol、fn 或 dotmcg"*),它也会检查这些变体,而不仅仅是
确切的名称。
- 一个独立的 **HTML 报告** (`reports/argus_*.html`) 以及一个 JSON 数据文件。
- 每次运行结束时的 **风险摘要** (LOW / MODERATE / HIGH / SEVERE)。
## 精确搜索运算符(推荐)
Gemini grounding 会尽最大努力满足诸如 `site:` 和
`filetype:` 之类的运算符,但最终决定搜索什么的是它自己。若要
*保证*运算符被执行,请添加 **Google Custom Search** key(每天 100 次免费查询):
```
google_cse_api_key: "your-key"
google_cse_cx: "your-cx-id" # configured to search the whole web
```
设置好这些后,Argus 会将你的 dorks 原封不动地发送给 Google,然后仅使用 Gemini
进行总结。如果没有设置,它将回退到 Gemini grounding。CLI 会显示
当前处于活动状态的后端。
## 数据泄露监控 (Have I Been Pwned)
添加一个 [HIBP API key](https://haveibeenpwned.com/API/Key),Argus 会检查
你的邮箱是否出现在已知的数据泄露中 —— 这正是此功能的权威数据源。
虽然是可选的,但它是目前能获取到的最佳数据泄露信号。
## 监控模式与提醒
按计划运行 Argus,仅在出现*新*内容时收到通知:
```
python main.py --monitor
```
监控模式:
- 将状态存储在 `~/.argus/` 中,并且仅在出现**新的或已更改的**发现时发出提醒,
- 默认情况下,重点关注高信号类别(数据泄露、数据经纪商、
凭据、WHOIS、暴露的文档) —— 将 `high_signal_only: false` 设置为可监控所有内容,
- 发布到 **Discord**(带有颜色编码的 embed)和/或发送 **电子邮件** (SMTP)。
在 `config.yaml` 中设置通知:
```
monitor:
high_signal_only: true
discord_webhook: "https://discord.com/api/webhooks/..."
smtp:
host: smtp.gmail.com
port: 465
username: you@gmail.com
password: your-app-password # Gmail App Password, not your real password
from: you@gmail.com
to: you@gmail.com
```
### 计划任务
在一次交互式运行之后,Argus 会主动提供设置每日扫描的选项。你也可以手动操作:
- **Windows** — `schtasks /Create /SC DAILY /TN ArgusMonitor /TR "python C:\path\to\main.py --monitor" /ST 09:00`
- **Linux/macOS** — 添加到 `crontab -e`: `0 9 * * * python /path/to/main.py --monitor`
## 隐私
一切均在本地运行。对外流量仅包括:平台检查(枚举)、
Google Gemini / Custom Search(实时扫描)、HIBP(如果已启用),以及你自己的用于提醒的
Discord/SMTP。无遥测。无账户。无中间服务器。
## 配置
复制 `config.example.yaml` → `config.yaml`。所有选项均为可选 —— CLI 会提示输入
任何缺失的内容。配置将从 `./config.yaml` 或 `~/.argus/config.yaml` 中读取。
## 安装
```
pip install -e . # installs the `argus` command
argus # run interactively
argus --monitor # monitor mode
```
## 开发
```
pip install -e ".[dev]"
pytest
```
## 路线图
- [x] 持续监控模式(随时间推移进行重新扫描 + 差异对比)
- [x] Discord / 电子邮件提醒
- [x] 通过 Custom Search API 进行精确运算符搜索
- [x] 用户名变体生成
- [x] Have I Been Pwned 集成
- [ ] OAuth(使用你的 Google 登录信息而不是 API key)
- [ ] 更多数据经纪商退订自动化
- [ ] 可插拔的网站列表
## 许可证
MIT — 请参阅 `LICENSE`。
## 免责声明
仅提供用于合法、经授权的用途。作者不对
滥用行为负责。
标签:AI驱动, ESC4, OSINT, Python, 实时处理, 数据泄露, 数据泄露检查, 无后门, 用户名枚举, 逆向工具