Every shadow
has a story.
Start with an e-mail, a username, a phone number or a wallet. Veiled Eye checks 46 sources, follows every lead they return, and puts the result into one profile and one relationship graph.
$ pip install veiled-eye46 sourcesE-mail, username, phone, walletPublic data only
One box. Any selector.
Paste what you have. Veiled Eye works out what it is and sends it only to the sources that can use it. Several selectors at once work too: they are researched together and merged.
It follows the leads.
A GitHub profile lists an e-mail and an X handle. Veiled Eye looks up both, then checks what those point to. Every step is kept in a trail, so you can see why something is in the profile.
- Always endsTwo levels deep with a fixed lookup budget, so a search never runs away.
- No noiseGeneric handles such as admin, support or reel are never chased.
- Agreement countsAn account found on one source only stays a candidate until another source agrees.
What comes back.
Search results per source, one merged profile, and a relationship graph you can filter, search and export.
A username search: the GitHub profile, search engine hits, social profiles, names, usernames and hashtags found.
What it checks.
- Accounts
- Maigret, WhatsMyName and User-Scanner across thousands of sites, GitHub in depth, Telegram, Instagram, Reddit, Steam, Bluesky, Hacker News and indexed cybercrime forums.
- Where an address is registered, Gravatar, breaches, infostealer logs and PGP keys.
- Phone
- Carrier, line type and region from the number itself, whether it is registered on Instagram, Snapchat or Amazon, and where it appears on the web.
- Wallets
- Bitcoin, Ethereum, Litecoin, Tron and Dogecoin: balance, first and last activity, top counterparties and public tags.
- Cross-analysis
- Confirmed, likely or candidate by how many sources agree. The same profile picture behind two accounts is matched. Reverse image search links are one click away.
- Output
- Relationship graph, map and timeline. Export a PDF or HTML report, STIX 2.1, GraphML, CSV or JSON.
Two commands.
Needs Python 3.10 or newer. The web interface opens on your own machine; nothing is sent to a server of ours.
1 / Install
$ pip install veiled-eye2 / Start
$ veiled-eye serve3 / Open
http://127.0.0.1:4300The web interface uses Redis. If redis-server is installed it is started for you. Otherwise run docker run -d -p 6379:6379 redis:7-alpine.