Terminal console
The server can draw a management interface on the console it was started in, instead of scrolling log lines past you. It runs on its own thread beside the web host: closing it leaves the server running, and failing to start it never stops the server from serving.
It is the same information the web admin console shows, reachable without a browser — useful on a machine you are already logged into over SSH or RDP, and while the workspace is still coming up.
What it shows
| Pane | What it holds |
|---|---|
| Overview | Live CPU and memory charts, plus the process facts (thread-pool threads, whether the graph is loaded). |
| Logs | The in-memory log buffer, filterable, and scrollable back through the window it keeps. |
| Metrics | A chart for any metric the server records. |
| Health | The registered health checks and their current status. |
| Threads | The server's own threads, listed separately from the extractor processes it starts. |
| Shell | A C# shell against the live workspace, using the shell execution scope. Unavailable on a read-only replica and while the graph is not accepting code. |
| Stop | Shuts the server down. |
Turning the interface on changes nothing about where the log goes: the rolling log files and the in-memory buffer are written exactly as before, and the start-up log still goes to the console until the interface takes it over. Close the interface and the console gets the live log back.
When it is on
| Situation | Default |
|---|---|
| Started by hand on Windows or macOS, with a console attached | On |
| Started by hand on Linux | Off — opt in with MSK_TUI=true |
Running as a Windows service (MSK_RUN_AS_SERVICE) |
Off — a service has no console of its own |
| Running in a container | Off — the image sets MSK_TUI=false |
| No console attached, or the console is redirected (piped, captured by a supervisor) | Off |
| The desktop app | Off — it has its own window |
MSK_TUI overrides the default in both directions:
MSK_TUI=true # ask for the interface where it is off by default
MSK_TUI=false # never draw it
MSK_TUI=true can ask for an interface but cannot make a console able to show one. A console that lacks something the interface needs is reported at start-up, with the list of what it cannot do, so you are not left waiting for a screen that is never coming:
The terminal management interface cannot run on <console>, which does not support:
…
The routine reasons the interface is off — a container, a service, a console nobody is looking at — are a debug-level line rather than a message on stdout.
If the interface fails to start, the server keeps running and logs to the console as usual, and the error names MSK_TUI=false as the way to stop it from trying.
Related
- Admin console — the same surfaces in the browser.
- Observability — metrics, logs, and the pages that read them.
- Configuration reference — every
MSK_*setting. - Windows installation — running as a service, where the interface is off.