hackingtool/README_template.md
Hardik Zinzuvadiya d63df74193 Add install.sh one-liner and fix install.py to detect local source
install.sh (new):
- Standalone bash installer for curl | sudo bash one-liner
- Detects package manager (apt-get, pacman, dnf, brew)
- Installs prerequisites: git, python3, pip, venv
- Checks Python >= 3.10
- Clones repo with --depth 1 (shallow, faster)
- Creates venv + installs requirements
- Creates /usr/bin/hackingtool launcher
- Creates ~/.hackingtool/ dirs with correct ownership (SUDO_USER)

install.py:
- Add _is_source_dir() — detects if install.py is being run from a local
  clone (hackingtool.py exists alongside it)
- install_source() replaces git_clone() — copies source to /usr/share/
  instead of re-cloning when running from a local clone
- Falls back to git clone --depth 1 when not in a source directory
- Eliminates the redundant clone-after-clone pattern

README.md / README_template.md:
- Add one-liner install as primary method
- Keep manual git clone + install.py as alternative
- Remove sudo from hackingtool run command (launcher handles it)
2026-03-15 17:37:57 +05:30

5.5 KiB

HackingTool

All-in-One Hacking Tool for Security Researchers & Pentesters

License Python Version Platform Stars Forks Issues Last Commit


What's New in v2.0.0

  • Python 3.10+ required — all Python 2 code removed
  • OS-aware menus — Linux-only tools are hidden automatically on macOS
  • Archived tools (Python 2, unmaintained) shown in a separate sub-menu
  • All os.chdir() bugs fixed — tools install to ~/.hackingtool/tools/
  • No more sudo git clone — tools install to user home, no root needed
  • 22 new modern tools added across 6 categories
  • Rich terminal UI with shared theme — no more 32 different console instances
  • Iterative menus — no more recursion stack overflow on deep navigation
  • Docker image builds locally — no unverified external images
  • requirements.txt cleaned — removed unused flask/boxes/lolcat/requests

Menu

{{toc}}


Tools

{{tools}}


Contributing — Add a New Tool

Want a tool included? Raise an Issue or open a PR using the templates below.

Issue (Tool Request)

Title format: [Tool Request] ToolName — Category Example: [Tool Request] Subfinder — Information Gathering

Use the Tool Request issue template and fill in all required fields: tool name, GitHub URL, category, supported OS, install command, and why it should be added.

Pull Request

Title format: [New Tool] ToolName — Category Example: [New Tool] Subfinder — Information Gathering

Use the PR template checklist. Key requirements:

  1. Add your tool class to the correct tools/*.py file
  2. Set TITLE, DESCRIPTION, INSTALL_COMMANDS, RUN_COMMANDS, PROJECT_URL
  3. Set SUPPORTED_OS = ["linux"] or ["linux", "macos"] appropriately
  4. Add the instance to the TOOLS list in the collection class
  5. Test install and run locally before submitting

Issues or PRs that don't follow the title format may be closed without review.


Installation

curl -sSL https://raw.githubusercontent.com/Z4nzu/hackingtool/master/install.sh | sudo bash

This handles everything — installs prerequisites, clones the repo, sets up a venv, and creates the hackingtool command.

Manual install

git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool
sudo python3 install.py   # detects local source, copies instead of re-cloning

Then run:

hackingtool

Docker

Step 1 — Clone the repository

git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool

Step 2 — Build the image

docker build -t hackingtool .

First build takes a few minutes (Kali base + apt packages). Subsequent builds are fast thanks to BuildKit layer caching.

Step 3 — Run

Option A — Direct (no Compose):

docker run -it --rm hackingtool

Option B — With Docker Compose (recommended):

# Start in background
docker compose up -d

# Open an interactive shell
docker exec -it hackingtool bash

# Then launch the tool inside the container
python3 hackingtool.py

Option C — Dev mode (live source mount, changes reflected without rebuild):

docker compose --profile dev up
docker exec -it hackingtool-dev bash

Stopping

docker compose down        # stop and remove container
docker compose down -v     # also remove the tools data volume

Requirements

  • Python 3.10+
  • Linux (Kali, Parrot, Ubuntu) or macOS
  • Go 1.21+ (for nuclei, ffuf, amass, httpx, katana, dalfox)
  • Ruby (for haiti)
pip install -r requirements.txt

Star History

HackingTool Star History Chart

Social

Twitter GitHub

Please don't use for illegal activity. Thanks to all original authors of the tools included in hackingtool.

Your favourite tool is not listed? Suggest it here