A coding agent built on OTP
Note
Originally on
X
A lot of people expressed interest, so I decided to open-source Vibe earlier than planned.
Vibe combines the vibe-coding tools I’ve been building into an Elixir-focused coding agent. But it is not only about coding: the goal is to support background tasks, long-running agent workflows, and access through Telegram and other gateways.
Some highlights:
- Elixir eval is the primary tool interface. This makes it possible to unify many actions behind one composable interface, in a Unix-like way, without constant serialization churn.
- Sessions are stateful. Similar to Livebook, the agent can store and reference intermediate results naturally.
- It is built on OTP. Unlike most agent harnesses, Vibe can deeply introspect and supervise its own internal state.
- Agents can launch other agents. Subagents are supervised OTP processes with their own sessions, which enables more sophisticated long-running and parallel workflows.
- Agents can reach other machines. Vibe supports remote access over SSH and Erlang distribution, so agents can connect to remote nodes and communicate across machines.
- The agent can work on itself. It can inspect, patch, verify, and hot-reload parts of Vibe, while tools like Reach help keep boundaries clean.
Around that, there is a TUI, a LiveView web interface, persistent sessions, SQLite-backed storage, semantic events, plugins, skills, gateways, and local telemetry.
This is still an early research preview. Use it at your own risk, expect rough edges, and be careful.