In the Game
Browser Interface
An optional second-screen interface that opens in your own browser instead of the sidebar drawn over the game. Off by default. The sidebar is not deprecated and is not going away.
Turning it on
- 1
Open the sidebar from the KSP toolbar
Go to the Settings panel. - 2
Switch on the browser interface
The setting is saved immediately and persists across restarts. - 3
Click the toolbar button again
Your default browser opens on the interface. A small in-game panel also appears showing the address, with buttons to reopen it, copy the URL, or switch back to the sidebar.
Which one should you use?
On a single monitor the sidebar is genuinely better: alt-tabbing out of KSP to read a contract is worse than a panel drawn over the game. The browser interface is built for people with a second screen, and that is the only case where it wins.
How it works
The add-on runs a small HTTP server inside the KSP process, bound to 127.0.0.1 on a port chosen at random each session, serving a static page from the add-on’s own folder. The page talks to that server, which relays requests upstream on its behalf.
That relay is the point of the design. The add-on attaches your session token in C# before forwarding, so the token never exists in the browser page at all. There is nothing in the page worth stealing.
Bound to loopback only127.0.0.1 | Always. There is no setting that would expose it to your network or the internet. |
Random port per sessiondefence in depth only | A new ephemeral port each time KSP starts. Treated as obscurity rather than security, because a local process can scan every port in under a second. |
One-time launch link15 second lifetime | The URL handed to your browser carries a nonce that is single use and expires in fifteen seconds. A bookmarked or shared URL does not work, which is deliberate. |
Session cookieHttpOnly, SameSite=Strict | A random value proving the page is the one KSP just opened, paired with a CSRF token in a custom header. Never sent to any website, and gone when the browser closes. |
Host and origin checksDNS rebinding defence | Exact host match, plus origin and fetch-site checks, so a page on another site cannot reach the bridge even from your own machine. |
One residual risk, documented rather than hidden
Opening a URL hands it to your operating system, which on Linux means it is briefly visible in the process list, nonce included. The fifteen second lifetime, the single use and the browser consuming it in a fraction of a second make that window narrow, and a hostile local user with access to your account could already read the session token off disk.
What stays in the game
Most of the interface is there: your profile, notifications, weekly missions, the contract inbox with its actions, contract and auction creation, rescue contracts, craft installs, quicksend, flag import and settings.
Some things stay in the game permanently, because a browser tab is the wrong place for them:
Submitting a contractin game | It waits for physics to settle, measures live distance between vessels and captures the scene with the game's UI hidden, all of which need KSP focused. The browser's submit button raises the real window in game instead. |
Notification popupsin game | They have to appear over the game while you are flying, not on another monitor. |
Milestone photo promptsin game | A short, one-tap capture that fires mid-flight. |
Linking and consentin game | Linking needs a code typed in KSP and an approval in Discord. Consent is the gate everything else waits on, and the recovery path if the browser never opens. |
Device verificationin game | A security prompt about this machine. Answering it in a background tab would defeat its purpose. |
Filing a bug reportin game | The attachment that makes a KSP bug diagnosable is your KSP.log, which can only be read from inside the running game. |
When the browser does not open
Handing a URL to your operating system can fail quietly. That is why the in-game panel always appears too: it shows the address and has a copy button, so you can always paste it into a browser yourself.
Known causes
- Steam overlay. It may capture the link and open it in Steam’s own built-in browser, which is too old to run the interface. Copy the URL into a real browser instead.
- Flatpak, Snap or Proton on Linux.
xdg-openmay not be reachable from inside the sandbox. Copy the URL. - Exclusive fullscreen. Alt-tabbing out of exclusive fullscreen has a long history of black screens in KSP, especially on Linux and older NVIDIA drivers. Switch KSP to borderless windowed if you plan to use a second screen.
If the interface loads but says the session expired, open it again from the toolbar. The launch link is single use and short lived, so an old one will never work.
Antivirus and firewall prompts
A game that opens a listening socket and launches a browser is a mild heuristic trigger for some endpoint security products, and Windows may show a firewall prompt. The socket is loopback only, so you can decline any request to allow it through the firewall and the interface will still work. Nothing here needs to cross your network.
Two KSP installs at once
Each running copy of KSP binds its own port, so two installs give you two independent interfaces at two addresses. They do not share a session and cannot interfere with each other.
For what the sidebar itself does, see The Sidebar.