Browser OS: Linux in your browser with vibeOS
Search for browser OS, OS in the browser, or Linux in the browser and you usually get either a skin-deep HTML fake desktop or a remote cloud PC streamed from someone else’s datacenter. vibeOS (vibeos.sh) is a third shape: your tab runs WebAssembly that emulates an x86 PC, boots a real Linux kernel, and layers a minimal desktop the AI can change (files, shell, UI, and dock apps included).
This page is about Aleks Bykhun’s vibeOS at vibeos.sh, not Kaan Senol’s unrelated VibeOS on GitHub, not “VibeOS Cloud” products, and not UI-only demos where nothing executes behind the wallpaper.
What “browser OS” means here
Here’s what each layer is:
| Layer | What runs |
|---|---|
| Hardware (emulated) | v86 in WASM — CPU, disk, serial, networking |
| Kernel | Real Linux (BusyBox, Alpine, or Debian image) |
| Desktop | vibeOS shell — windows, dock, terminal, settings |
| Apps | JavaScript modules the agent creates; optional lit templates |
| Agent | Built-in chat + tools, or external MCP (Codex, Cursor, Claude Code) |
Your laptop only runs the browser. The “computer” is inside the tab, which is why people describe vibeOS as an OS in the browser without installing a second operating system on the host.
Why WASM Linux instead of screenshots
unameandapk/aptare real — not generated HTML pretending to be a terminal.- Networking goes through a WISP relay (hosted on vibeos.sh with restrictions; self-hosted containers can keep traffic local).
- The agent edits source —
system/ui/*.js,os.css, guest files — and reloads what you changed.
More on the product framing: The AI operating system. Step-by-step: How to use vibeOS.
Computer use from the same browser OS
External agents don’t need a separate “computer use” VM if you pair vibeos-mcp: the browser OS exposes tools (vm_exec, read_desktop, create_app, file edits) to the model you already use. That’s the bridge between “browser OS” and “agent desktop” keywords.
Read Computer use for AI agents for Codex, ChatGPT, and Cursor workflows.
Limits (honest)
- Host access stays in the browser sandbox unless you opt into container/native setups documented in the main repo.
- Performance is an emulated 686-class machine — fine for shells, small apps, and agent work; not a gaming rig.
- Persistence is optional via a workspace folder on Chromium; otherwise session storage in the browser.
Try it
- Open vibeos.sh/app.
- Wait for ready, connect a model or pair MCP.
- Ask for a dock app, a theme, or
curlfrom the guest terminal.