Observe, debug, and understand running BEAM systems
A desktop app that connects to any BEAM node and shows you what is actually going on inside it
Website · Download · Give feedback · License
Voyager.ver1.1.mp4
Voyager is a desktop app that inspects running BEAM systems through one interface instead of a patchwork of shell commands copy-pasted into iex. It connects to any OTP 27+ node, local or remote, over plain Erlang distribution and surfaces the information the BEAM already exposes, in a form that is actually pleasant to read:
- Node info — memory and IO usage, schedulers, system limits, and running applications
- Supervision trees — a graphical, navigable view of each application's process hierarchy
- Processes — rank processes by memory, reductions, or message queue length, and drill into any one of them
- ETS tables — list tables, browse their contents, look up keys, and search with match specs
- MCP server — the same data for coding agents such as Claude Code or Cursor, so they can inspect a live system instead of guessing from source code
No setup is required on the target node. On connect, Voyager compiles and loads a small helper module (voyager_agent) into the node's memory and gathers everything else over RPC; nothing is written to the node's disk, and all rendering and storage happens on your machine.
- No setup on the target — no dependency in your app, no hook in your release. If the node is distributed and runs OTP 27+, Voyager can attach to it.
- The whole BEAM, not one framework — Erlang, Elixir, Gleam. Voyager speaks the distribution protocol, not framework internals.
- Production without a remote shell — connect over SSH and inspect a deployed node directly, instead of opening a shell and piecing the picture together by hand.
- First-class AI support — the same data is exposed over MCP, so a coding agent can read a live system instead of guessing from source code.
- Built to be read — a graphical, navigable view of process hierarchies and runtime numbers, which also makes it a good way to learn how OTP actually behaves.
Download the latest build for your platform from the website. Voyager currently ships for:
- macOS (Apple Silicon)
- macOS (Intel)
- Linux (x64) — distributed as an AppImage, see docs/linux_appimage_guide.md for how to run and install it
The app checks for a new release on startup and can install it in place; the current version and update status are under Settings → Updates.
Voyager connects to any distributed node running OTP 27 or later, either directly or through an SSH tunnel to a host that can reach it, which is the usual path to a production node behind a bastion. Start the node with a name and a cookie, then enter both in the connect form:
# Elixir
iex --name my_app@127.0.0.1 --cookie my-secret-cookie
# Erlang
erl -name my_app@127.0.0.1 -setcookie my-secret-cookieCheck out the connection guide for other setups or if the connection fails.
The MCP server is on by default. Point your MCP client at:
http://127.0.0.1:4040/mcp
(You can change the port or turn the server off under Settings → MCP Server.) The endpoint only listens on loopback and rejects requests from non-local origins. The tools operate on whichever node Voyager is currently connected to:
node_info— system, memory, runtime, limits and scheduler snapshotprocess_list/process_info— rank processes by an attribute, then read one process's detailsets_list/ets_read_table_chunk/ets_search_table— list ETS tables, page through one, or query it with a match spec
Voyager is in active development and feedback shapes what gets built next.
- Questions, ideas, or first impressions? Head to Discussions — Q&A for help, Ideas for feature proposals, General for everything else.
- Found a reproducible bug or want to file a concrete request? Open an issue — there are templates for bug reports, feature requests, and general feedback.
- Pull requests are welcome. Fork the repo, run
mix precommitbefore pushing, and describe what you changed and why.
With the tool versions from .tool-versions installed:
mix setup
mix phx.server # web app at localhost:4000
mix tauri.dev # desktop appCheck out the development guide if you want your own setup or want to contribute.
Voyager's source code is publicly available, but it is not open source under the OSI definition. Use is governed by the Voyager User License:
- Free License — free for individuals, for-profit organizations with up to 10 employees, and non-profits, including commercial use.
- Company License — required for larger for-profit organizations using Voyager commercially. Includes prioritized support.
Either tier lets you observe, debug, and understand running systems, and modify the code for internal use or to contribute back. Reselling Voyager or offering it as a hosted "as-a-Service" product is not permitted.
There is a 90-day free evaluation period, and a 90-day grace period if you grow past the size threshold while using Voyager.
See LICENSE.md for the exact terms and a detailed FAQ, and website for pricing and to purchase a Company License.
Voyager is created by Software Mansion
Since 2012 Software Mansion is a software agency with experience in building web and mobile apps as well as complex multimedia solutions. We are Core React Native Contributors, Elixir ecosystem experts, and live streaming and broadcasting technologies specialists. We can help you build your next dream product – Hire us.
Copyright 2026, Software Mansion