A plugin kit for Hermes Desktop that adds texting-style chat bubbles, a live remote-desktop pane for bot computers, named roster sections, and a pinned task list.
tembo/voxl
Low-latency web remote desktop streaming in Rust, sending H.264 over WebSocket to a browser that decodes with WebCodecs.
- Stars
- 1,293
- Forks
- 71
- Open issues
- 6
- Last commit
- 22 hours ago
What is it?
voxl streams an X11 display, a macOS screen or a Windows desktop to a web browser. The server captures the screen, encodes it as H.264 with x264, and sends frames over a single WebSocket. The bundled web client decodes them with WebCodecs and forwards keyboard, mouse, clipboard, audio, microphone, file transfer and dynamic resolution back to the host.
The project is aimed at headless VMs, sandboxes and CI environments, typically running Xvfb without a GPU, where a computer-use agent or a person needs to watch and control a desktop from a browser tab. It includes password login by default, host and origin checks, and HTTP endpoints for screenshots, MP4 recordings and a /wait call that returns when the screen settles or changes.
It is installable from crates.io as voxl-server and builds with Rust, with dependencies on x264, libyuv, Opus and PulseAudio on Linux, and on Homebrew or vcpkg for macOS and Windows.
Key features
- 01Streams X11, macOS and Windows desktops as H.264 over a single WebSocket.
- 02Decodes in the browser with WebCodecs, with no WebRTC jitter buffer.
- 03Supports input, clipboard, desktop audio, microphone and file or folder transfer.
- 04Adjusts resolution to follow the viewer's window.
- 05Provides HTTP endpoints for screenshots, MP4 recordings and screen-change waiting.
- 06Requires a password by default and checks Host and Origin headers.
Use cases
- Watching or controlling a desktop running inside a CI job, VM or sandbox from a browser.
- Giving a computer-use AI agent screenshots, recordings and a way to wait for UI changes.
- Embedding a remote desktop view in another web page through an iframe.
- Accessing a Mac or Windows machine's screen from a browser without installing a client app.
Quick start
- 1
Install voxl-server from crates.io (needs x264, libyuv, Opus, PulseAudio and esbuild on your system)
cargo install voxl-server - 2
Run voxl against display :1, then open the link it prints to sign in
DISPLAY=:1 voxl
Things to know
- Needs several native libraries installed first (x264, libyuv, Opus, PulseAudio, esbuild) unless you use the provided nix-shell.
- Experimental options such as --stripes are marked as experimental in the README.
In collections
Topics
FAQ
- What is voxl?
- Low-latency web remote desktop streaming in Rust, sending H.264 over WebSocket to a browser that decodes with WebCodecs. voxl streams an X11 display, a macOS screen or a Windows desktop to a web browser. The server captures the screen, encodes it as H.264 with x264, and sends frames over a single WebSocket. The bundled web client decodes them with WebCodecs and forwards keyboard, mouse, clipboard, audio, microphone, file transfer and dynamic resolution back to the host.
- Is voxl free to use? What license does it have?
- voxl is open source under the MIT license. Check the license terms before using it in commercial products.
- Is voxl still maintained?
- Actively maintained. The last commit to voxl was on Nov 7, 2026.
- What can I use voxl for?
- Watching or controlling a desktop running inside a CI job, VM or sandbox from a browser. Giving a computer-use AI agent screenshots, recordings and a way to wait for UI changes. Embedding a remote desktop view in another web page through an iframe. Accessing a Mac or Windows machine's screen from a browser without installing a client app.
- How do I install voxl?
- Install voxl-server from crates.io (needs x264, libyuv, Opus, PulseAudio and esbuild on your system): cargo install voxl-server Run voxl against display :1, then open the link it prints to sign in: DISPLAY=:1 voxl
- Where can I get voxl?
- The source code and installation instructions are on GitHub: https://github.com/tembo/voxl
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A web-based VNC server for Linux that streams desktops and apps to any modern browser, using a protocol modified from standard RFB.
Open-source container and VM runtime for macOS in Rust, offering a drop-in Docker engine, microVM sandboxes for AI agents, native Kubernetes and Linux VMs.
A cross-platform VMM that runs AI agents such as OpenClaw inside isolated Linux virtual machines with controlled file access.
A high-performance, cross-platform VNC client and server for viewing and controlling remote desktops.
An open source RDP server that gives Linux machines a graphical remote login compatible with standard Microsoft RDP clients.