Skip to main content

htbConsole

Terminal UI for Hack The Box platform and CTF competitions.

Built with Textual (Python TUI framework).

Inspired by HTBtui.

Screenshots

HTB Platform

HTB Platform

CTF Platform

CTF Platform

Features

HTB Platform (tuiHTB)

  • Challenges — browse, filter by category/difficulty, infinite scroll pagination, start/stop containers, submit flags, download & auto-extract task files, community writeups (lazy loaded), per-challenge notes
  • Machines — current, retired, seasonal lists with infinite scroll, machine details with start/stop/reset/submit, VPN status, per-machine notes
  • Sherlocks — DFIR/SOC investigation tasks, filter by category/difficulty/state, split task view with description/hints/answer submission, incident file downloads
  • Player Profile — stats, rank progress, activity feed with incremental loading, active machine & VPN status
  • Settings — API cache toggle, Burp proxy toggle, workdir path, zip password, custom unpack command, terminal emulator config

CTF Platform (tuiCTF)

  • CTF List — ongoing (with join/play status), upcoming, past (lazy loaded with pagination)
  • CTF Context — general info, categorized challenge browser with detail panel, notes per task, file downloads with auto-extract, ranking board, live scoreboard
  • Workspace Management — auto-create directory trees per CTF ({workdir}/CTF_{date}__{id}/{category}/{taskid}__{name})

Install

# From PyPI (once published)
pip install htbconsole

# From source
git clone https://github.com/k3idii/htbConsole
cd htbConsole
pip install .

Development (editable, run in place)

python -m venv .venv
source .venv/bin/activate
pip install -e .       # or: pip install -r requirements.txt

Configuration

Export your API tokens before launching:

export HTB_TOKEN="your-htb-api-token"
export CTF_TOKEN="your-ctf-api-token"

Get your HTB token from: https://app.hackthebox.com/account-settings (App Token)

Get your CTF token from: https://ctf.hackthebox.com (inspect requests after login)

Optional environment variables:

Variable Default Description
HTB_TOKEN HackTheBox platform API token
CTF_TOKEN CTF platform API token
HTB_WORKDIR ./work Directory for downloads, notes, and task files
USE_BURP Proxy address for Burp (e.g. http://127.0.0.1:8080)
HTB_SETTINGS Explicit path to the settings YAML file

Settings file resolution order: HTB_SETTINGS./htbSettings.yaml if it already exists (back-compat) → $XDG_CONFIG_HOME/htbconsole/htbSettings.yaml (default ~/.config/htbconsole/htbSettings.yaml).

Usage

# Installed console commands
htbconsole            # prompts: [h]tb or [c]tf ?
htbconsole htb        # launch HTB platform TUI
htbconsole ctf        # launch CTF platform TUI
tui-htb               # launch HTB platform TUI directly
tui-ctf               # launch CTF platform TUI directly

# Standalone (no install needed, from repo root)
python -m htbconsole [htb|ctf]
python htbConsole.py [htb|ctf]

Keybindings

Key Action
q Quit
l Toggle log console
[ / ] Previous / next tab
f Filter (challenges, sherlocks)
Escape Focus list / go back
Ctrl+S Save notes

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

htbconsole-0.2.0.tar.gz (43.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

htbconsole-0.2.0-py3-none-any.whl (52.0 kB view details)

Uploaded Python 3

File details

Details for the file htbconsole-0.2.0.tar.gz.

File metadata

  • Download URL: htbconsole-0.2.0.tar.gz
  • Upload date:
  • Size: 43.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for htbconsole-0.2.0.tar.gz
Algorithm Hash digest
SHA256 34c0e69e5624014127c01c922ce33d10f1f6c7bc57fbdeba0f4582a8d5da661c
MD5 2c923efb129bef2190348495b0e20403
BLAKE2b-256 4db608e9ab86aeb2b7ef52d865ca7f71dc0ff1434d0521983c99a7370bcc06ee

See more details on using hashes here.

Provenance

The following attestation bundles were made for htbconsole-0.2.0.tar.gz:

Publisher: publish.yml on k3idii/htbConsole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file htbconsole-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: htbconsole-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 52.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for htbconsole-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 23203bb11c6f8229482143f769f728e11619dcd7fc847dedaac1fea58a5c5e3c
MD5 b748d6761db5e2a9ec4ba92cbddfbae0
BLAKE2b-256 cc6dbb0978c763415890f3166b0f33611fd57f099027a03c9746767b16b8602f

See more details on using hashes here.

Provenance

The following attestation bundles were made for htbconsole-0.2.0-py3-none-any.whl:

Publisher: publish.yml on k3idii/htbConsole

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page