adding-an-attack
Use when adding a new attack mode to hate_crack — the exact six wiring steps across main.py, attacks.py, and hate_crack.py, including the duplicate menu mapping that is easy to miss.
Source facts
- Repository
- trustedsec/hate_crack
- Last source activity
- August 21, 2026 at 16:30
- Detected SKILL.md language
- English
- Stars
- 1,863
- Forks
- 283
Install options
The review-first prompt is selected by default. You can switch to a direct command or download a local copy.
Review the source files
Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.
Showing SKILL.md
SKILL.md
Source instructions · Read-only preview- name
- adding-an-attack
- description
- Use when adding a new attack mode to hate_crack — the exact six wiring steps across main.py, attacks.py, and hate_crack.py, including the duplicate menu mapping that is easy to miss.
# Adding a New Attack
An attack spans three files (see "Three-Layer Attack Pattern" in `CLAUDE.md`).
Do all six steps — skipping step 6 leaves the attack invisible from the root
entry point even though it works via `main.py`.
1. Add the hashcat wrapper function in `main.py` (e.g. `hcatMyAttack(...)`)
2. Add the handler in `attacks.py` (e.g. `def my_attack(ctx: Any)`)
3. Add a dispatcher in `main.py`: `def my_attack(): return _attacks.my_attack(_attack_ctx())`
4. Add the print line in `main.py`'s menu display loop (~line 3807+)
5. Add the menu entry in `main.py`'s `get_main_menu_options()`
6. Add the menu entry in `hate_crack.py`'s `get_main_menu_options()` (the duplicate)
View on GitHub