
AI를 사용하여 840개 이상의 소셜 미디어 계정을 추적하세요
--correlate)--recurse-depth N)<username>.{com,io,net,…}이 등록되어 있고 활성 상태인가? (--domains)--watch 6h --notify <url>)--resume file.jsonl)aliens_eye tui, 선택적 추가 기능)aliens_eye serve, 선택적 추가 기능)--proxy socks5://... 또는 --tor--site github,reddit, --exclude-site, --no-nsfw, 그리고 드롭인 sites.d/ 플러그인 사이트 맵aliens_eye selfcheck가 사이트별 정밀도 / 재현율 / F1 / FPR 보고aliens_eye corpus record / selfcheck --corpus)aliens_eye eval ablate가 부트스트랩 신뢰 구간으로 탐지기 구성을 점수화; eval external이 동일한 저장 응답에 대해 Sherlock / Maigret / WhatsMyName 규칙과 비교aliens_eye train으로 재훈련하거나 aliens_eye label로 불확실한 적중을 수동 라벨링pip install aliens-eye
선택적 추가 기능:
pip install "aliens-eye[browser]" # Playwright fallback for hard pages
python -m playwright install chromium
pip install "aliens-eye[train]" # scikit-learn, for retraining the ML model
pip install "aliens-eye[correlate]" # Pillow, for avatar-image matching in --correlate
pip install "aliens-eye[pdf]" # reportlab, for --format pdf
pip install "aliens-eye[tui]" # textual, for the interactive `tui` browser
pip install "aliens-eye[serve]" # mcp, for the `serve` MCP server
또는 Docker 사용:
docker build -t aliens-eye .
docker run --rm -it aliens-eye username
소스에서 설치:
git clone https://github.com/arxhr007/Aliens_eye.git
cd Aliens_eye
pip install -e .
# Interactive prompts
aliens_eye
# Single username
aliens_eye username
# Multiple usernames
aliens_eye username1 username2
# Advanced scan level (prefix/suffix variations)
aliens_eye username -l advanced
# Only scan specific sites
aliens_eye username --site github,reddit,gitlab
# Skip NSFW sites
aliens_eye username --no-nsfw
# Route through Tor (needs a local Tor daemon)
aliens_eye username --tor
# Any HTTP or SOCKS proxy
aliens_eye username --proxy socks5://127.0.0.1:1080
# Export everything
aliens_eye username --format all --output results
# Heuristics only, no ML
aliens_eye username --no-ml
# Non-interactive preset: quick / full / aggressive
aliens_eye username --profile quick
# Plain output for scripts and CI (no colors/progress)
aliens_eye username --plain
# View results from a previous scan
aliens_eye -r results/username_advanced_20260611_120000.json
# Correlate hits into "likely same person" clusters + check domains
aliens_eye username --correlate --domains
# Follow linked usernames out of found bios and re-scan them
aliens_eye username --recurse-depth 1
# Export a graph of the results (import into Gephi / Maltego / Mermaid)
aliens_eye username --correlate --format gexf,mermaid,maltego
# Investigator PDF with embedded avatars
aliens_eye username --format pdf
# Watch for changes every 6 hours and POST them to a webhook
aliens_eye username --watch 6h --notify https://hooks.example/aliens
# Resume an interrupted scan
aliens_eye username --resume scan.jsonl
# Compare two saved reports
aliens_eye diff results/old.json results/new.json
# Validate detection accuracy (precision / recall / F1 per site)
aliens_eye selfcheck --negatives 2 --report json
# Record a frozen response corpus, then evaluate against it reproducibly
aliens_eye corpus record --out corpus/v1 --split all --negatives 4
aliens_eye corpus stats corpus/v1
aliens_eye selfcheck --split holdout --corpus corpus/v1 --report json
# Compare detector configurations over that corpus, with confidence intervals
aliens_eye eval ablate --corpus corpus/v1 --split holdout
# Compare against Sherlock / Maigret / WhatsMyName rules (fetch their data yourself)
aliens_eye eval external --corpus corpus/v1 --sherlock data.json --whatsmyname wmn-data.json
# Rebuild the ground-truth splits from those projects account lists
aliens_eye eval groundtruth --sherlock data.json --whatsmyname wmn-data.json
# Interactively label uncertain hits into a training set
aliens_eye label results/username_basic_20260611_120000.json --out labeled.csv
# Interactive terminal browser (needs [tui])
aliens_eye tui username
# Run the MCP server for LLM agents (needs [serve])
aliens_eye serve
사용자 정의 플랫폼: { "site_name": "https://site/{}" } JSON 파일을
./sites.d/ (또는 사용자 설정 디렉터리의 sites.d/)에 넣으면 자동으로 병합됩니다;
--sites-dir DIR은 다른 위치를 추가합니다.
모든 응답은 30차원 특징 벡터로 변환됩니다: HTTP 상태 버킷, 사용자명 위치(경로/제목/메타/캐노니컬), 오류 및 프로필 키워드, DOM 구조(이미지, 폼, 프로필/오류 CSS 클래스), 구조화 데이터 신호(og:type, JSON-LD Person), 응답 타이밍, 리다이렉트 횟수, 그리고 이전 스캔에서 학습한 사이트별 핑거프린트 일치.
그런 다음 두 판정기가 투표합니다:
혼합 확률은 신뢰도 백분율과 함께 Found / Maybe / Not Found로 매핑됩니다. 로드된 모델은 혼합 가중치와 임계값을 모두 제공합니다 — 제공된 모델은 0.9 * ml + 0.1 * heuristic을 사용하며, Found는 0.620 초과, Not Found는 0.360 미만입니다. 모델 파일이 없거나 유효하지 않으면 스캐너는 조용히 core/detector.py의 기본값(ML 가중치 0.4, 임계값 0.6 / 0.35)으로 휴리스틱으로 폴백합니다. 전체 표는 WORKING.md를 참조하세요.
Found/Maybe는 발견이 아니라 검증해야 할 단서로 취급하세요. 제공된 모델은 286개 플랫폼의 1,455개 샘플로 적합되었고 한 번도 본 적 없는 142개 플랫폼에서 평가되었습니다: 정밀도 0.65, 재현율 0.51, 거짓 양성률 9% (F1 0.57). 모든 계정을 잡아내기보다 거짓 단서를 줄이는 쪽을 선호하며, 홀드아웃 플랫폼에서는 이 구성을 포함한 어떤 구성도 F1 기준으로 단순 HTTP 상태 확인과 통계적으로 구별되지 않습니다.
pip install "aliens-eye[train]"
# 1. Scan ground-truth accounts + random non-existent usernames to build a dataset
# (reads the train split only; the eval holdout is never touched)
aliens_eye train collect --out dataset.csv --negatives 4
# 2. Fit and export the model
aliens_eye train fit --data dataset.csv --out model.json