hle-tui
An interactive terminal dashboard for HLE, shipped as a
plugin for hle-client.
pip install hle-tui
hle tui
Installing the package is the whole integration: hle tui appears in hle --help, and uninstalling it makes the command go away again. The core client
is not modified either way and never imports textual — which is the point.
hle-client has to stay small enough for a pfSense or OpenWrt box, and those
machines want the tunnel, not a rendering library.
What it shows
Three tables over the same data the CLI reads — there is no second copy of the API client, the systemd handling or the config lookup in here:
| Tab | Contents |
|---|---|
| Tunnels | subdomain, live/idle, upstream service, auth mode |
| Agents | name, online/offline, host |
| Services | installed units, and which scope each is in |
Keys
| Key | Action |
|---|---|
r |
Refresh now |
o |
Open the selected tunnel in a browser |
d |
Delete the selected tunnel (asks first) |
s |
Restart the selected service |
q |
Quit |
Deleting asks for confirmation. A dashboard makes a keystroke cheap, which is exactly why removing a tunnel and its access rules must not be one.
Options
hle tui --refresh 30 # poll the relay every 30s (0 disables polling)
hle tui --api-key hle_… # otherwise read from HLE_API_KEY or the config file
Writing another plugin
The mechanism is a hle_client.plugins entry point pointing at a
click.Command:
[project.entry-points."hle_client.plugins"]
myplugin = "my_package.plugin:command"
A plugin that fails to import is skipped with a warning rather than taking the
CLI down, and one that tries to shadow a built-in command is refused. Set
HLE_NO_PLUGINS=1 to skip discovery entirely.
MIT licensed, same as hle-client.
Release files for hle-tui 2609.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hle_tui-2609.8.tar.gz | 9.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hle_tui-2609.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.2 kB
Release files / hle_tui-2609.8.tar.gz
| Download URL | hle_tui-2609.8.tar.gz |
|---|---|
| Size | 9.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
73baaf0699287f42eabf106cb3cff0b82d929fc01a522a085be8fe82023823ae
|
|
BLAKE2b-256 checksum How to use checksums |
5564c3edb1da4939851cd1468a7649faa5d05d356ec1ea3c71a9e859739150f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / hle_tui-2609.8-py3-none-any.whl
| Download URL | hle_tui-2609.8-py3-none-any.whl |
|---|---|
| Size | 7.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b8b5c7184835e37dd892e9ea4f2f3b23c5f50ef39f3d9bd4f33ef800bd929d55
|
|
BLAKE2b-256 checksum How to use checksums |
5d8a706af34749a2dcf5bf99e71188165cbfca0adbc2ffe6f024a3c9140d5d3e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|