# Where Is the Holehe GitHub Repository? Location and Source Code Deep Dive

> Find the Holehe GitHub repository at megadose/holehe. Explore its source code, CLI entry point, async modules, and service definitions.

- Repository: [Palenath/holehe](https://github.com/megadose/holehe)
- Tags: deep-dive
- Published: 2026-08-16

---

**The Holehe GitHub repository is hosted at `https://github.com/megadose/holehe` under the megadose organization, with its core CLI entry point, async modules, and service definitions all publicly accessible.**

If you're researching email reconnaissance tools or looking to contribute to open-source OSINT utilities, understanding where Holehe lives on GitHub and how its codebase is organized will accelerate your workflow. This guide walks through the exact location, key source files, and practical ways to interact with the repository.

## Official Holehe GitHub Repository Location

The canonical home for Holehe is:

```

https://github.com/megadose/holehe

```

This URL contains the complete source tree, issue tracker, pull request history, and release artifacts. The repository is maintained under the **megadose** GitHub organization, which specializes in offensive security and reconnaissance tooling.

From the root page, you can navigate directly to:

- **[`holehe/core.py`](https://github.com/megadose/holehe/blob/main/holehe/core.py)** — the main CLI driver
- **[`holehe/instruments.py`](https://github.com/megadose/holehe/blob/main/holehe/instruments.py)** — Trio's progress instrumentation
- **[`README.md`](https://github.com/megadose/holehe/blob/main/README.md)** — comprehensive service documentation
- **`holehe/modules/`** — organized async checkers for 120+ services

## Core Source Files and Their Purpose

Holehe's architecture separates concerns into clear functional domains. Here are the critical paths you'll reference when working with the codebase:

| File | Function |
|------|----------|
| [`holehe/core.py`](https://github.com/megadose/holehe/blob/main/holehe/core.py) | Parses CLI arguments, dynamically loads modules, orchestrates async execution |
| [`holehe/instruments.py`](https://github.com/megadose/holehe/blob/main/holehe/instruments.py) | Implements `TrioInstrument` for real-time progress display |
| [`holehe/modules/__init__.py`](https://github.com/megadose/holehe/blob/main/holehe/modules/__init__.py) | Auto-discovers and imports all service checkers |
| `holehe/modules/social_media/`, `software/`, `porn/`, etc. | Domain-organized async functions per service |
| [`setup.py`](https://github.com/megadose/holehe/blob/main/setup.py) | PyPI packaging and dependency declarations |

Each module under `holehe/modules/` exposes a single **async function** that performs email lookup against a specific platform. This design allows both standalone CLI usage and programmatic embedding.

## Running Holehe From the Command Line

Once installed from the repository, invoke the tool directly:

```bash
holehe test@example.com

```

The [`core.py`](https://github.com/megadose/holehe/blob/main/core.py) file handles argument parsing, initializes the `trio` event loop, and dispatches checks across all registered modules concurrently.

## Embedding Holehe in Python Code

You can import individual modules from the repository without using the CLI. This example targets Snapchat specifically:

```python
import trio
import httpx
from holehe.modules.social_media.snapchat import snapchat


async def demo():
    email = "test@example.com"
    out = []
    client = httpx.AsyncClient()
    await snapchat(email, client, out)
    print(out)
    await client.aclose()


trio.run(demo)

```

This pattern — an async function accepting `(email, client, out)` — is consistent across all modules in `holehe/modules/`.

## Repository Structure: Where Modules Live

The Holehe GitHub repository organizes service checkers by category:

- `holehe/modules/social_media/` — Twitter, Instagram, Snapchat, etc.
- `holehe/modules/software/` — GitHub, Docker Hub, npm, etc.
- `holehe/modules/porn/` — Adult platform checkers
- `holehe/modules/shopping/` — E-commerce sites
- `holehe/modules/musique/` — Music streaming services

Each subdirectory contains Python files implementing one checker each, following the same async signature for uniform orchestration by [`core.py`](https://github.com/megadose/holehe/blob/main/core.py).

## Accessing Specific Files via GitHub

Direct deep links to key files in the Holehe repository:

- Main driver: `https://github.com/megadose/holehe/blob/master/holehe/core.py`
- Progress instrument: `https://github.com/megadose/holehe/blob/master/holehe/instruments.py`
- Package init: `https://github.com/megadose/holehe/blob/master/holehe/__init__.py`
- README with service table: `https://github.com/megadose/holehe/blob/master/README.md`

## Summary

- **Holehe GitHub repository location:** `https://github.com/megadose/holehe`
- **CLI entry point:** [`holehe/core.py`](https://github.com/megadose/holehe/blob/main/holehe/core.py) orchestrates argument parsing and async execution
- **Module organization:** Domain-based subdirectories under `holehe/modules/`
- **Concurrency model:** `trio` for structured concurrency, `httpx` for HTTP
- **Two usage modes:** Command-line tool or embeddable Python library

## Frequently Asked Questions

### Where is the Holehe GitHub repository hosted?

The Holehe GitHub repository is hosted at `https://github.com/megadose/holehe` under the megadose organization. This public repository contains all source code, documentation, and release history for the email reconnaissance tool.

### What is the main file to start reading in the Holehe repository?

Start with [`holehe/core.py`](https://github.com/megadose/holehe/blob/main/holehe/core.py) at the repository root. This file contains the `main()` function that parses CLI arguments, initializes the Trio event loop, and coordinates execution across all service modules.

### Can I use Holehe code without installing from PyPI?

Yes. Clone the repository and import modules directly from `holehe/modules/`. Each checker is an async function you can call with an `httpx.AsyncClient`, enabling custom reconnaissance pipelines without the CLI overhead.

### How are new services added to Holehe?

Contributors create new Python files in appropriate subdirectories of `holehe/modules/`, implementing the standard async signature. The [`holehe/modules/__init__.py`](https://github.com/megadose/holehe/blob/main/holehe/modules/__init__.py) auto-discovers these files, making them available to [`core.py`](https://github.com/megadose/holehe/blob/main/core.py) without manual registration.