SvavyomDocs
Development PreviewWebsite ↗
Documentation Concepts
ConceptsDevelopment Preview

Architecture

The services#

A React and TypeScript web console talks to a Go API. The privileged work is split into narrow, separate processes:

ServiceRole
apiThe HTTP API, with local-admin authentication, server-side sessions and CSRF protection; runs non-root
agentA read-only libvirt agent
mutation-supervisor / mutation-helperThe only path that changes the host, over a closed protocol that carries names, never paths or XML; the helper is short-lived
console-brokerBrokers the serial and graphical consoles
offsiteOff-host backup copies
svavyom-ctlThe operator tool: install, upgrade, bridge, diagnostics

Layers beneath#

The services drive libvirt (qemu:///system), which manages QEMU virtual machine processes accelerated by KVM in the Linux kernel. Svavyom builds on these layers rather than inventing a hypervisor.

The API contract#

The HTTP API is described in contracts/openapi.yaml (Apache-2.0). Separate programs that talk to Svavyom through its documented API are not part of it and may use any licence.

Search the documentation

↑ ↓ to navigate · Enter to open · Esc to close

Type to search the public documentation.