推荐一个实用的开源工具——hackingtool。项目由Z4nzu开发维护,GitHub上获得了 79344 个Star。简单来说,它是一款面向黑客的一体化黑客工具,对于站长和开发者来说是个不错的工具。
工具功能介绍
215 curated tools across 21 categories — recon, OSINT, web, wireless, phishing,
forensics, post-exploitation and more — with an **AI layer that turns plain English
into the right tool and the exact command.Built for** penetration testers · red teamers · blue-team/SOC and DFIR analysts ·
OSINT researchers · bug-bounty hunters · CTF players · security researchers and
students — all working legally, on systems they own or are authorised to test.
---
Contents- Why hackingtool
- Tool Categories
- Installation
- From source with pipx (recommended)
- For development
- Docker
- Optional runtimes
- Quick Commands
- Command reference
- Features
- 🔎
/find— a tool for a need you don't have yet - 🎯
/goal— plan an objective, run it one step at a time - 🧠 Recommendations — say what you want in plain English
- 🏷 Tags and search
- ▶ Background panes (tmux)
- ⚙ Settings and the AI layer
- 📋 Headless engagements
- Documentation
- Contributing
- Support & Sponsor
- Social---
Why hackingtool- 🧠 AI-guided workflow — describe what you want ("find subdomains of example.com")
and it maps your intent to the right tools, hands you the exact documented command,
plans an objective step by step, then summarizes findings and drafts an engagement
report. Bring your own key or run a local model — nothing auto-executes and nothing
is fabricated.
- 🗂 215 curated tools, one console — install and run across 21 categories without
hunting down Git repos; a fixed tag taxonomy (63 tags in use) makes every tool
discoverable. - 🔎 It knows what it doesn't have —
/findsearches your catalog first, then the
GitHub API, and shows real maintained projects with the reason each was ranked. - 🛡 Safe by default — standard installs, no
curl | bash, downloads pinned +
SHA-256 verified, list-formsubprocess, no forcedsudo, and
signed releases with an SBOM. - 🎯 For the whole spectrum — red team, blue team, OSINT, bug bounty, CTF/THM,
forensics/IR — all on authorized targets only.
The console on launch — live system readout, and / opens the command palette.
Tool Categories215 tools across 21 categories — the full list, with links and tags, is in
| Category | Tools | |
| Category | Tools |
| 1 | 🛡 Anonymously Hiding Tools | 5 | 12 | 🔁 Reverse engineering tools | 10 | ||
| 2 | 🔍 Information gathering tools | 26 | 13 | ⚡ DDOS Attack Tools | 7 | ||
| 3 | 📚 Wordlist Generator | 8 | 14 | 🖥 Remote Administrator Tools (RAT) | 4 | ||
| 4 | 📡 Wireless attack tools | 17 | 15 | 🧪 XSS Attack Tools | 6 | ||
| 5 | 💉 SQL Injection Tools | 7 | 16 | 🖼 Steganography Tools | 10 | ||
| 6 | 🎣 Phishing attack tools | 13 | 17 | 🏢 Active Directory Tools | 10 | ||
| 7 | 🌐 Web Attack tools | 23 | 18 | ☁ Cloud Security Tools | 7 | ||
| 8 | 🔧 Post exploitation tools | 15 | 19 | 📱 Mobile Security Tools | 6 | ||
| 9 | 🕵 Forensic tools | 12 | 20 | ✨ Other tools | 10 | ||
| 10 | 📦 Payload creation tools | 6 | 21 | 🔑 Password / Hash Cracking | 7 | ||
| 11 | 🧰 Exploit framework | 6 | 59 further entries are archived (unmaintained or dead upstream) and hidden unless |
you set show_archived true via /config. The in-app header counts 22 categories /
217 tools because it also counts the built-in Update / Uninstall menu.---
Installation
Requires Python 3.10+ on Linux or macOS (Kali, Parrot, Debian/Ubuntu, Arch,
…). Windows is not supported — the app tells you so and exits. No curl | bash:
every path below is a standard, verifiable install.
From source with pipx (recommended)pipx installs hackingtool into its own isolated environment
and puts the hackingtool command on your PATH, so you can launch it from any
directory.
bash
# 1 — get the code
git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool
# 2 — install it onto your PATH (isolated venv, no system Python touched)
pipx install .
# 3 — run it from anywhere
hackingtool
No pipx yet?
bash
# macOS
brew install pipx && pipx ensurepath
# Debian / Ubuntu / Kali
sudo apt install pipx && pipx ensurepath
Open a new shell after pipx ensurepath so the PATH change takes effect.
To update later: git pull && pipx install . --force. To remove it:pipx uninstall hackingtool.
Alternative: uv tool install . (same result, uses uv instead of pipx)
bash
git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool
uv tool install .
# installs the `hackingtool` executable on your PATH
hackingtool
Alternative: plain venv + pip (no PATH changes)
bash
git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool
python3 -m venv .venv && . .venv/bin/activate
pip install .
# or: pip install -e . for an editable dev install
hackingtool
The command is only on your PATH while that venv is activated.
For developmentuv creates the virtualenv and installs everything from
pyproject.toml / uv.lock in one step:
bash
git clone https://github.com/Z4nzu/hackingtool.git
cd hackingtool
uv sync
uv run hackingtool
No uv yet? pipx install uv (or see the
uv install docs).Contributing? make setup wires the pre-push hook and make check runs the full
gate (lint + tests + catalog validation). See CONTRIBUTING.md.
Docker
Pull and run the published image:
bash
docker run -it --rm hardikzinzu/hackingtool:latest
Or build it locally from a checkout:
bash
git clone https://github.com/Z4nzu/hackingtool.git && cd hackingtool
docker build -t hackingtool .
docker run -it --rm hackingtool
Optional runtimesSome individual tools need a language runtime to install/run; the core app doesn't.| Dependency | Version | Needed for |
| Go | 1.21+ | nuclei, ffuf, amass, httpx, katana, dalfox, gobuster, subfinder | |
| Ruby | any | haiti, evil-winrm | |
| tmux | any | background panes (/run … &, /panes, /attach) | |
| Docker | any | Mythic, MobSF (optional) | --- |
Quick CommandsLaunch hackingtool and type. There are only three kinds of input:| You type | It means | Example |
/… | a command you run | /search subdomain |
@… | a thing you name | @nmap, @tag:osint |
| anything else | plain English "what I want to do" | crack a wifi handshake |
@ completes tool names — @tag: completes tags, / completes commands.
Command reference| Command | Aliases | What it does |
/run [args] [&] | /open | open a tool's menu; with a trailing & it runs in a background tmux pane instead (that's where args are used) | |
/search | search tools by name, description or tag | ||
/tags | list every tag with its tool count | ||
/ai | /recommend, /r | recommend tools for a goal | |
/goal | AI-plan an objective and run it step by step, with per-step confirmation | ||
/find | /discover | find tools for a need — your catalog first, then GitHub (suggest-only) | |
/panes | /jobs | list background panes | |
/attach | attach to the background session (Ctrl-b d to return) | ||
/kill | kill one background pane, or all of them | ||
/config [key value] | view/change settings; /config test checks the AI connection, /config github checks the GitHub token | ||
/skill | show the operator playbook | ||
/update · /uninstall | /remove | update system packages or hackingtool · remove hackingtool and its tools | |
/clear | /cls | clear the screen | |
/back | /b | leave the current tool and go back | |
/help | /?, /h | quick reference card | |
/quit | /q, /exit | exit (also q, Ctrl-C, Ctrl-D) | |
@ | open a tool (case-insensitive, fuzzy fallback) | ||
@tag: | list and pick from the tools carrying that tag | Inside a category: 1–N pick a tool · 97 install everything not yet installed · |
98 archived tools · 99 back.
Inside a tool: 1 install · 2 run · c ask for the exact command for your goal ·98 project page · 99 back.
/help — the same card, in the app.
On a non-interactive terminal (or without prompt_toolkit) hackingtool falls back to
the classic numbered menu, where / or s searches, t filters by tag, r or a
recommends, ? helps and q quits. Force it with hackingtool --classic.> New here? docs/HOW-TO-USE.md walks through each of these
start to finish with numbered steps.---
Features
🔎 /find — a tool for a need you don't have yetSearches the 215 curated tools first, then the GitHub search API, and ranks the
results explainably. Suggest-only — it never clones, installs or runs anything —
and it makes zero model calls.
/find crack a wpa handshakeIn your toolbox (vetted)
• aircrack-ng (WiFi security suite)
• Kismet (wireless detector / WIDS)
• Reaver (WPS PIN attack)
• WiGLE (wardriving map & API)
• hashcat example hashes (WPA mode 22000)Found on GitHub — NOT vetted by uswifiphisher/wifiphisher 14713★ GPL-3.0
The Rogue Access Point Framework
14713★ · trusted author (ships in our catalog) · active · matches: security, wifi
git clone https://github.com/wifiphisher/wifiphisher
…
Press a to keep a result: it is saved to ~/.hackingtool/found.yaml as a
"Discovered tools" entry — title, tags, description, link, and **no install or run
command**, so a discovered entry can never execute anything. It shows up in your menu
and in /search next launch.Out-of-scope asks (jamming, DoS, mass-targeting, malware) are refused **before any
network call**, with an authorized alternative where one exists. Defensive/DFIR
phrasing is never refused.Works anonymously at 10 GitHub searches/minute; a no-scope, no-permission token
raises that to 30 — see/config github.
🎯 /goal — plan an objective, run it one step at a time
/goal find live subdomains of example.com
hackingtool drafts a short plan of real commands (with the reason for each step and
an install hint for tools you don't have), asks you to confirm you are authorized
to test the target, then walks the steps: [y] run · [s] skip · [e] edit ·[q] abort. Every step runs list-form — never through a shell — and each goal gets a
timestamped workspace under ~/.hackingtool/goals/ holding plan.json, a
UTC-stamped run.log, and the raw output of each step.The model is called once, for planning; tool output is never fed back to it. With
no model configured, /goal degrades to tool recommendations for the same objective.
🧠 Recommendations — say what you want in plain EnglishBare text (or /ai) maps intent to tools. The model may only return tags from the
fixed taxonomy, and the catalog resolves tags → tools, so a tool can never be
invented; with no model reachable a stdlib keyword matcher answers instead.
/ai — pick one of the common tasks, or type the job in your own words.
🏷 Tags and search/tags prints every tag in use with its live tool count; @tag: opens the
tools carrying it; /search matches names, descriptions and tags.
/tags — 63 tags in use, with the number of tools behind each.
▶ Background panes (tmux)Long scans shouldn't block your console. With tmux installed, /run … & opens
a labeled window in one detached hackingtool session:
/run nmap -sV -oA scan 10.0.0.5 &
▶ started 'nmap' in background — /attach to view
`
/panes lists them, /attach watches one (Ctrl-b d to come back), /kill `
or /kill all stops them, and the status line under the prompt shows ▶ N running.
No tmux? It says so and opens the tool inline instead; disable it entirely with/config background_runner off.
⚙ Settings and the AI layer/config opens a full-screen settings editor (↑↓ move, ←→ change, Enter edit,
t test the connection, Esc close); /config sets one key from the
prompt. Settings live in ~/.hackingtool/config.json.The AI layer is opt-in and bring-your-own-key: an OpenAI-compatible endpoint whenai_base_url + an API key are set, else a local Ollama, else
nothing — every feature degrades to a deterministic offline behaviour instead of
guessing. Your API key is written only to ~/.hackingtool/.env (mode 600), never toconfig.json, and never printed back. /config test reports the real failure if a
probe fails.
📋 Headless engagementsThe same catalog drives a non-interactive orchestrator that normalizes tool output
into one findings.json:
bash
hackingtool --engagement acme --targets example.com --pipeline recon
hackingtool --engagement acme --report
# deterministic Markdown report
hackingtool --engagement acme --ai-summary
# opt-in triage of the REAL findings
hackingtool --engagement acme --ai-report
# opt-in narrative draft (report.draft.md)
Out-of-scope targets are flagged and logged before anything runs, and the AI passes
only ever summarize findings that exist.---
Documentation...
总的来说,hackingtool是一个功能比较实用的开源工具,适合日常工作和学习使用。如果你正在寻找一款相关工具,不妨下载试试。使用前建议仔细阅读项目文档。