Different Categories of Modules in Holehe: Complete Guide to 21 Reconnaissance Categories
Holehe organizes its email reconnaissance capabilities into 21 distinct module categories—including Social Media, Payment, OSINT, and CRM—each implemented as a sub-package under holehe/modules/ in the megadose/holehe repository.
Holehe is an open-source intelligence (OSINT) tool designed to detect where an email address is registered online. Rather than monolithic code, the project uses a modular architecture that groups reconnaissance checks into logical categories based on the industry or service type of the target platform.
The 21 Module Categories in Holehe
The source code defines module categories through the folder hierarchy under holehe/modules/. Each category contains Python files that implement checks for specific services. Below are all categories currently implemented:
- Social Media: Platforms like
facebook.py(holehe/modules/social_media/facebook.py) - Transport: Services such as
blablacar.py(holehe/modules/transport/blablacar.py) - Sport: Fitness and sports platforms like
bodybuilding.py(holehe/modules/sport/bodybuilding.py) - Software: Enterprise and personal software including
office365.py(holehe/modules/software/office365.py) - Shopping: E-commerce sites such as
vivino.py(holehe/modules/shopping/vivino.py) - Real Estate: Property platforms like
vrbo.py(holehe/modules/real_estate/vrbo.py) - Programming: Developer services including
github.py(holehe/modules/programing/github.py) - Productivity: Tools like
evernote.py(holehe/modules/productivity/evernote.py) - Payment: Financial services including
venmo.py(holehe/modules/payment/venmo.py) - OSINT: Intelligence platforms like
rocketreach.py(holehe/modules/osint/rocketreach.py) - Music: Streaming services such as
spotify.py(holehe/modules/music/spotify.py) - Medical: Healthcare platforms like
sevencups.py(holehe/modules/medical/sevencups.py) - Medias: Photo and media sharing including
flickr.py(holehe/modules/medias/flickr.py) - Mails: Email providers such as
google.py(holehe/modules/mails/google.py) - Learning: Educational platforms like
quora.py(holehe/modules/learning/quora.py) - Jobs: Employment services including
freelancer.py(holehe/modules/jobs/freelancer.py) - Forum: Community forums like
thevapingforum.py(holehe/modules/forum/thevapingforum.py) - Crowdfunding: Funding platforms including
buymeacoffee.py(holehe/modules/crowfunding/buymeacoffee.py) - CRM: Customer relationship management tools like
hubspot.py(holehe/modules/crm/hubspot.py) - Company: Business presence platforms including
aboutme.py(holehe/modules/company/aboutme.py) - CMS: Content management systems like
wordpress.py(holehe/modules/cms/wordpress.py)
How Module Categories Are Structured
Holehe's architecture treats each category as a Python sub-package. The holehe/modules/__init__.py file initializes the package structure, while individual service checks reside as Python files within their respective category folders.
Every module file exposes a module class that implements the specific reconnaissance logic for that service. For example, holehe/modules/social_media/facebook.py contains the Facebook-specific check logic, while holehe/modules/payment/venmo.py handles Venmo registration detection.
The central engine in holehe/core.py handles module discovery and execution across all categories. This file dynamically loads available modules and routes email checks to the appropriate service implementations.
Working with Module Categories programmatically
You can interact with specific categories directly by importing individual modules.
# Example: Running a specific module category check
from holehe.core import Core
from holehe.modules.social_media.facebook import Facebook
core = Core()
result = Facebook().run(email="example@example.com")
print(result)
To see all available modules organized by category, use the CLI helper:
# Example: Listing all available modules
$ holehe -l
# Output shows each module prefixed with its category:
# social_media.facebook
# payment.venmo
# crm.hubspot
# transport.blablacar
# ...
Shared Infrastructure Across Categories
Modules across all categories rely on shared utilities implemented in the root of the package:
holehe/instruments.py: Contains shared HTTP utilities and response parsers used by modules in every categoryholehe/localuseragent.py: Manages rotating user-agent strings for requests made by category modulesholehe/core.py: The central dispatcher that orchestrates checks across the 21 categories
This design ensures that adding support for a new service requires only creating a new Python file in the appropriate category folder under holehe/modules/, without modifying core engine code.
Summary
- Holehe organizes reconnaissance checks into 21 module categories ranging from Social Media to Payment systems
- Each category is a sub-package under
holehe/modules/containing service-specific Python files - The
moduleclass in each file implements the check logic for that particular service holehe/core.pyhandles dynamic discovery and execution across all categories- Adding new services involves placing Python files in existing category folders or creating new category directories
Frequently Asked Questions
How many module categories does Holehe have?
Holehe contains 21 module categories as defined by the sub-package structure under holehe/modules/. These range from common categories like Social Media and Payment to specialized ones like Real Estate, Medical, and Crowdfunding.
Where are Holehe modules physically stored in the repository?
Modules are stored in the holehe/modules/ directory, with each category represented as a sub-folder (e.g., holehe/modules/osint/, holehe/modules/crm/). Individual service checks are Python files within these folders, such as holehe/modules/mails/google.py for Gmail checks.
Can I add a new service category to Holehe?
Yes, you can extend Holehe by creating a new folder under holehe/modules/ for your category, then adding Python files that expose a module class implementing the run() method. The holehe/core.py discovery engine automatically picks up new categories and modules at runtime without requiring registry updates.
What is the difference between a module category and a module in Holehe?
A module category is the logical grouping (the folder name under holehe/modules/) representing an industry or service type (e.g., "social_media"). A module is the specific Python file within that category implementing the check for one service (e.g., facebook.py within social_media/).
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →