Running coding agents usually means juggling a terminal, an editor and a diff view. Orbit puts them in a single desktop window: the agent’s streamed work on one side, the code it touches and the terminals it runs on the other. I built it end to end as a solo project — the Electron main process, the runtime adapters that talk to the agent, the React renderer, and the packaging.
Orbit
Tylon SohnleAn Electron workspace that keeps coding agents, the editor, file changes and terminals in one window.
One agent conversation, with room for the instructions, the code it produces and the composer. The session’s project context sits beside the agent name, and its controls stay next to the composer.
Agent Mode turns the workspace into resizable panels so several sessions can run at once. Each panel keeps its own project context, composer and model controls.
Electron owns the parts that need native access — agent runtimes, the filesystem and PTY terminals — and exposes them to the renderer through a narrow preload API rather than handing over Node directly. The React renderer consumes that boundary and presents the agent’s streamed output, Monaco-powered edits and diffs, and live terminals side by side.
The timeline is the core of it: reasoning summaries, tool calls, subagents, todos and permission requests all stream into one view, so the agent’s work can be followed as it happens. A Changes list opens each edit in Monaco for review, while autosave, Emmet and HTML/CSS validation keep the editing side usable. It targets macOS first, with Linux and Windows coverage, and needs Node 22 plus a reachable opencode service.