Skip to content
Back to Blog
announcements2 June 20265 min read

Why We Built VS Code into Zeros Host

The default panel file manager is fine for ops tasks. It is not built for writing Lua. Here is why we shipped a full VS Code environment inside the panel, and what took the longest to get right.

If you run a GMod server and you write Lua, you probably have a routine. Open SFTP, download the file, edit it locally, upload it back, go to the panel, restart the server, watch the console, repeat. Or you use the built-in file editor, which gives you a textarea with no syntax highlighting and saves the file on the server every time you press the button.

Neither of these is how software gets written in 2026. We wanted something better. That is why VS Code is now built into the Zeros Host panel.

What the problem actually was

The Pterodactyl file manager, which is what most panels use, including ours before this, is built for ops tasks. Uploading a config file. Checking a log. Downloading a backup. It handles those fine.

It is not built for development. A DarkRP server with a custom addon stack might have dozens of Lua files spread across multiple directories. Navigating between them in the panel file manager requires clicking through folder trees, waiting for page loads between files, and losing your place constantly. There is no search. There is no syntax highlighting. There is no way to see two files at once.

The moment you start writing anything beyond a small config change, you are fighting the tool instead of working.

What we built

The Zeros Workspace is a VS Code environment that runs inside the panel and connects directly to your game server. It has two parts.

The first is VS Code itself, running in the browser via a code-server fork. This gives you a full editor: syntax highlighting, file tree, search across all files, split panes, the works. It mounts your server's file system directly, so you are editing the actual files; nothing is downloaded and re-uploaded.

The second part is the Zeros Workspace Companion extension, which adds two sidebars to VS Code. The first is Zeros History: a snapshot system that lets you take a point-in-time save of your files, browse diffs, and restore individual files to an earlier state. The second is Zeros Server: live status and controls for your game server, without leaving the editor.

The part that took the longest

The editor itself was not the hard part. Getting the game server controls right took time.

For GMod specifically, the extension supports running selected Lua code directly on the live server with Ctrl+Enter, or on the client with Ctrl+Shift+Enter. You highlight a block of Lua, press the shortcut, and it executes on your server immediately. No restart. No copy-paste into the console. The console output streams back into VS Code.

This required building an authenticated bridge between the VS Code extension and the panel's API. The extension uses a short-lived JWT, because there are no browser cookies to rely on inside an extension context. Getting that auth flow right, keeping tokens refreshed, and handling the edge cases around server restarts took several iterations.

The other tricky part was the snapshot system. We did not want a full git history, because that would require teaching every server owner git concepts. Instead, snapshots are explicit saves you trigger yourself: before a big change, after something breaks, whenever you want a restore point. You can view a unified diff of any snapshot against the current state, or restore a single file without touching anything else. Simple enough to actually use under pressure.

What it does not do

The workspace container runs alongside your game server, which means it uses resources. It is not zero-cost. If your server is already running close to its memory limit, you will notice.

The in-browser VS Code is not identical to the native app. Extensions from the VS Code marketplace do not install; only the Zeros companion extension is available. If you prefer working in your local VS Code, the companion extension can be installed there too and connects to your server the same way.

Available now

The Workspace is available on all Zeros Host GMod plans. You will find it in the panel sidebar. If you already have a server, it is there waiting, with no migration needed.

If you run into anything unexpected, reach us through the contact page or the Discord server.

Still stuck after reading this?

Ask in our Discord - we help with hosting questions whether or not you host with us.