Fleet overview with node status indicators, OS distribution, policy counts, binding coverage by group, and certificate expiry tracking.

Browse and manage desktop policies with search, filtering by type, status, and bindings. Each update creates a new immutable version.

Create a new policy by selecting its type and initial state. Policies start in draft and are only delivered to agents once explicitly released.

Configure granular Firefox ESR settings organised by category — updates, privacy, network, security, homepage, and extensions — with per-key lock support.

Define dconf key-value entries that the agent writes to the managed GNOME desktop. Each entry can optionally be locked to prevent user override.

Restrict access to individual KDE System Settings modules by category — window manager, appearance, screen lock, security, and more. Modules marked as restricted are hidden from users entirely.

Author Polkit rules through a structured form — define action IDs, groups, session requirements, and result (allow / deny / authenticate). Bor generates and deploys the JavaScript rule automatically.

Monitor enrolled desktop agents with connectivity status, OS, desktop environment, group membership, and details such as FQDN, IP address, and agent version.

Organise nodes into logical groups. One-time enrollment tokens are generated per group and expire after five minutes.

Assign policies to node groups. Nodes inherit all bindings from every group they belong to. A priority field controls which binding wins when multiple policies of the same type apply to the same node.

Bind a policy to a node group in one step — select the policy, the target group, set the binding state and priority, and confirm. Changes are streamed to affected agents immediately.

Every administrative action is recorded with a timestamp, actor, source IP, resource type, and resource ID. Logs are searchable, filterable, and exportable as CSV or JSON.

The Bor agent notifies the user on the desktop when a policy is updated, prompting them to restart affected applications for the change to take effect.

Enforce TOTP multi-factor authentication for all local user accounts. The TOTP algorithm is configurable — SHA256 for broad compatibility or SHA512 for a higher security margin.

Users can secure their account with a second factor: a TOTP authenticator app (FreeOTP, Google Authenticator, or any compatible app) or a hardware or software security key via WebAuthn/FIDO2 (YubiKey, Bitwarden, 1Password).

The web console ships with a dark theme for comfortable use in low-light environments.

A high-contrast theme is available for improved accessibility and readability.

Add APT, DNF/YUM, or Zypper repositories to a Package policy. Fields adapt to the selected repository type; GPG key upload is supported for all types.

Manage individual packages with desired state (present, absent, or latest), optional version pinning, and an optional flag for non-critical packages.

Enter a ppa:owner/name address and select an Ubuntu codename. The server fetches the repository URI and signing key from Launchpad automatically.

Upload a .ymp file and the server parses it, populating repositories and packages in one step. The banner confirms how many repositories and packages were imported.
