Holehe CLI Flags: Complete Guide to Command-Line Options

Holehe supports seven CLI flags including --only-used, --no-color, --no-clear, --no-password-recovery, --csv, and --timeout, plus a required positional argument for the target email address.

Holehe is an open-source OSINT tool for checking whether an email address is registered on various online services. Understanding the available Holehe CLI flags allows you to customize output formatting, control request behavior, and filter results according to your investigation workflow. The command-line interface is implemented in holehe/core.py using Python's argparse module.

Core Argument Structure

The CLI parser in holehe/core.py defines one required positional argument and multiple optional flags. The positional email argument accepts one or more values, though Holehe only processes the first email provided (lines 181–184).

Output Control Flags

Holehe provides four flags to customize how results display and export.

--only-used

Filter results to show only services where the email is actually registered. This hides "not used" entries and declutters the output (lines 184–186).

--no-color

Disable colourised terminal output for plain text logging. Use this when piping output to files or systems that do not support ANSI color codes (lines 186–188).

--no-clear

Prevent Holehe from clearing the terminal screen before printing results. This preserves previous command history and terminal context (lines 188–190).

-C, --csv

Export the full result set to a CSV file named holehe_<timestamp>_<email>_results.csv. This generates machine-readable output for further analysis in spreadsheet applications or data processing pipelines (lines 192–194).

Request Behavior Flags

These flags modify how Holehe interacts with target services during the email verification process.

-NP, --no-password-recovery

Skip password-recovery attempts on services that support them (such as Adobe and Mail.ru). This speeds up scans and reduces noise when you only need registration verification (lines 190–192).

-T, --timeout

Set the HTTP request timeout in seconds. The default value is 10 seconds. Increase this value for slow connections or decrease it for faster failure on unresponsive services (lines 194–196).

Practical Usage Examples

Run a basic email check against all supported services:

holehe test@example.com

Display only successful registrations without colored output:

holehe test@example.com --only-used --no-color

Export results to CSV while skipping password recovery attempts:

holehe test@example.com --csv --no-password-recovery

Increase the timeout for slow networks and preserve terminal history:

holehe test@example.com --timeout 20 --no-clear

Combine multiple flags for automated workflows:

holehe test@example.com --only-used --no-color --csv --timeout 30

Implementation Details

According to the megadose/holehe source code, the argument parser initializes in maincore at program startup. After parsing, Holehe imports all module functions from holehe/modules/, executes them concurrently, and applies the selected output filters. The ~120 individual service modules respect the global timeout and password-recovery settings defined by these CLI flags.

Summary

  • Holehe CLI flags are defined in holehe/core.py using Python's argparse.ArgumentParser
  • Positional argument: email (required, accepts multiple values but uses only the first)
  • Output filters: --only-used, --no-color, --no-clear, and --csv control visibility and export format
  • Request settings: --no-password-recovery skips reset attempts and --timeout adjusts the 10-second default HTTP timeout
  • Flag combinations: Multiple flags work together for customized automated scanning workflows

Frequently Asked Questions

Can I use multiple Holehe CLI flags simultaneously?

Yes, Holehe supports flag combinations. For example, holehe email@example.com --only-used --csv --timeout 15 filters for used services only, exports to CSV, and sets a 15-second timeout in a single command.

What naming convention does Holehe use for CSV exports?

When using the --csv flag, Holehe generates filenames automatically using the pattern holehe_<timestamp>_<email>_results.csv. The timestamp ensures unique filenames for multiple scans of the same address.

Why would I disable password recovery checks with --no-password-recovery?

Password recovery attempts on services like Adobe or Mail.ru can generate email notifications to the target address. Using -NP or --no-password-recovery makes the scan stealthier and faster by skipping these verification steps.

What is the default HTTP timeout in Holehe?

The default timeout is 10 seconds per request. Use -T or --timeout followed by a number of seconds to adjust this value for slower networks or to fail faster on unresponsive services.

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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →