Developer mode is a runtime flag (Documentation Index
Fetch the complete documentation index at: https://docs.skyvexsoftware.com/llms.txt
Use this file to discover all available pages before exploring further.
--dev) you can pass to your installed Stratos app to unlock its full developer surface: a dedicated dev window with login, airline switching and live debug tabs; a debug footer in the main app for quick toggles; and the ability to load plugins from any local Vite dev server. It’s the recommended way to develop plugins, debug your VA integration, and inspect simulator data while flying.
This page covers what dev mode is, how to launch it on each platform, and every tool it exposes. For the plugin development workflow specifically, see Getting Started and Build and Deploy.
What dev mode gives you
Launching Stratos with--dev enables, all in one go:
- A dev window that opens before the main app. Sign in with your Skyvex account, then pick which airline to launch into — no need to reinstall to try a different VA. The dev window stays open alongside the main app and gives you live debug tabs.
- A debug footer at the bottom of the main app with one-click toggles for theme, VA verbose logging, Discord RPC, React Scan, warp mode (for app screenshots), test sounds, and a “Reset Window” button.
- DevTools menu items —
Toggle Developer Toolsis added to the View menu andCmd/Ctrl+Shift+Iopens DevTools on either window. - Hot-loading from a plugin dev server — your plugin’s
pnpm devserver is auto-discovered and mounted into the sidebar with live reload.
Launching dev mode
You launch dev mode by passing--dev to your installed Stratos binary. The syntax differs by OS.
macOS
From a terminal:Windows
Edit the Stratos shortcut (Start Menu or Desktop) and append--dev to the Target field — e.g. "C:\Users\You\AppData\Local\Programs\Stratos\Stratos.exe" --dev. Or invoke it from PowerShell / cmd:
Linux
.AppImage / .deb-installed binary directly with --dev appended.)
The dev window
When you launch with--dev, a small frameless window opens before the main app. It has three states:
Login
Sign in with your Skyvex account via OAuth — the same one you use at skyvexsoftware.com/login. If valid auth already exists locally, this step is skipped automatically.
Airline select
A list of every airline your Skyvex account has access to, plus an input for invite codes. Pick one. Stratos will boot into that airline.Switching airlines later means closing the app and relaunching with
--dev — pick a different one from the list.Dev tools tabs
The console exposes six tabs, each backed by live data from the running app:| Tab | What it shows |
|---|---|
| System | App + machine metadata: version, platform, user data path, active simulator, memory and CPU. |
| Simulator | Live raw and derived sim data — every field the simulator client surfaces (position, attitude, engines, fuel, surfaces, autopilot state). Useful when authoring event rules or phase logic. |
| Plugins | The plugin registry: every plugin’s manifest, install path, source (airline/user/dev), version, and load status. From here you can force-reload a plugin without restarting the shell. |
| Logs | A live tail of the main process logger — same content as the daily log file at {userData}/logs/stratos-YYYY-MM-DD.log but streamed. Filter by source, level, and search text. |
| VA Config | The airline’s plugin config payload as resolved by the shell — event rules, system settings, branding. The exact JSON the renderer reads. |
| VA API | A request inspector for every call the shell makes to your VA’s API. Method, URL, status, response body, headers, timing. Indispensable when wiring up a new VA. |
Cmd/Ctrl+Shift+I while focused) and remembers its position between sessions.
The debug footer
In the main window, the dev footer renders at the very bottom of the layout whenever the app was launched with--dev. It’s a single-row toolbar of buttons:
- Theme — quick toggle between light and dark, bypassing the Settings page.
- Reset Window — clears persisted window size/position and re-centres at the default dimensions. Helpful when you’ve dragged the window off-screen or want a clean screenshot baseline.
- VA Token — logs the current VA airline ID, base URL, and a 20-character preview of the bearer token to the renderer console. The full token is never written to the log file.
- Sound — plays a random one of the bundled UI sounds (
attention,error,flight_start) so you can verify audio output and volume. - VA Verbose — toggles verbose request logging in the VA HTTP client. Every request and response gets full-body dumped to the daily log. Off by default because responses can be large.
- Discord — toggles Discord Rich Presence on for this session without persisting to config. Use it when you want to confirm RPC payloads without permanently enabling the feature.
- React Scan — opens the React Scan toolbar overlay so you can spot wasted renders in the renderer tree.
- Warp — a screenshot mode for promotional/mockup imagery. Wraps the app in a 3D CSS transform (perspective, rotation, scale) on a customizable background, then captures the result with a single click. Adjust the tilt and angle via the sliders to match your marketing template.
MAX/FULL flag where applicable) — the same numbers Reset Window would clear.
Where to go next
- Getting Started — scaffold your first plugin and load it through the dev console’s Plugins tab.
- Build and Deploy — the full dev → build → publish loop for plugins.
- Overview — high-level picture of how plugins and the shell fit together.