tf-tui

Ensure launch options
Add the following launch options:
+con_timestamp 1 -rpt -g15 -usercon +ip 0.0.0.0 +sv_rcon_whitelist_address 127.0.0.1 +rcon_password tf-tui
Config file
There is a config editor in the app, however its currently very limited and only supports a couple fields. You can
access that with the shift+e shortcut.
Linux: ~/.config/tf-tui/tf-tui.yaml
Windows: %LOCALAPPDATA%\tf-tui\tf-tui.yaml
# Your own steamid
steam_id: "76561197970000000"
# rcon server config
# If server_mode_enable is true, this is the remote server address.
address: 127.0.0.1:27015
# If server_mode_enable is true, this is the remote server password.
password: tf-tui
# Path to your console.log
console_log_path: /home/<username>/.steam/steam/steamapps/common/Team Fortress 2/tf/console.log
# API URL
api_base_url: https://tf-api.roto.lol/
# Use server mode instead of local. In this mode you connect to a remote server. This is meant for server
# operators to be able to monitor servers similar to HLSW type tools.
server_mode_enabled: false
# The address that the remote server should send logs to. This must be a routeable ip/host from the server.
server_log_address: 100.10.10.3:27115
# The logsecret used to authenticate the logs
server_log_secret: 123455678
# The address that is bound to on the local machine to accept requests on.
server_listen_address: 100.10.10.3:27115
# Set of custom bot detector lists
# Doesn't currently use the data, but it will eventually.
bd_lists:
- url: https://raw.githubusercontent.com/PazerOP/tf2_bot_detector/refs/heads/master/staging/cfg/playerlist.official.json
name: poozer
# Custom URL links to show
# The %s is replaced with the steamid of the format set. Empty defaults to steam64.
# format can be one of: steam64, steam, steam3
links:
- url: https://demos.tf/profiles/%s
name: demos.tf
format: "steam64"
Server Mode
Server mode is a alternate running mode in which instead of connecting to your local game client, you connect
to a srcds instance for remote monitoring. This works the same way as tools like HLSW.
Debug log
If you set DEBUG=1 env var, a log file will be created for extra error logging & debug messages.
Linux: ~/.config/tf-tui/tf-tui.log Tail shortcut: make tail
Building
The only build dependency is go1.24+.
Full snapshot build using goreleaser. Binaries are output to the platform specific paths: ./dist/tf-tui_{linux,windows}/tf-tui:
$ make snapshot
The standard go build options will also work, but some values will not be automatically injected into the build such as version/commit info.
$ go build -o tf-tui && ./tf-tui
Releases
Releases are built and uploaded automatically when a new matching tag is pushed.
$ git tag -a v1.2.3 -m "v1.2.3 release!" && git push --tags