Source Code:
src/gaia/apps/webui/ | src/gaia/ui/Overview
The GAIA Agent UI is distributed as an npm package and can also be packaged as an Electron desktop app for Windows and Ubuntu.Agent UI Guide
Features, keyboard shortcuts, troubleshooting, and architecture.
Agent UI SDK
Python backend API: FastAPI server, SQLite database, Pydantic models, and SSE streaming.
Custom Installer
Ship a branded GAIA build with your agent pre-loaded.
Installation
Install GAIA Agent UI on Windows and Ubuntu using the packages from the GitHub Releases page (when available). Artifact names followgaia-agent-ui-<version>-<arch>-setup.<ext> (see electron-builder.yml).
Supported platforms
- Windows 11 (64-bit) - Full GUI and CLI support
- Linux: Ubuntu 22.04 LTS or 24.04 LTS (64-bit) - Full GUI and CLI support
Windows (.exe)
- Download
gaia-agent-ui-<version>-x64-setup.exe(e.g.gaia-agent-ui-0.17.2-x64-setup.exe) from Releases. - Double-click the installer and follow the prompts.
- Launch GAIA from the Start Menu (search for “GAIA”) or the desktop shortcut. The underlying binary is
gaia-desktop. - On first launch, setup may take a moment. An internet connection is required the first time.
- Updating: download the newer
gaia-agent-ui-<version>-x64-setup.exefrom Releases and run it. - Uninstalling: Windows Settings → Apps → Installed apps → find “GAIA” → Uninstall.
Ubuntu (.deb)
- Download
gaia-agent-ui-<version>-amd64.deb(e.g.gaia-agent-ui-0.17.2-amd64.deb) from Releases. - Open a terminal in the download folder, then install with apt:
- Launch GAIA from your application menu (search for “GAIA”) or run
gaia-desktopfrom a terminal. - On first launch, setup may take a moment. An internet connection is required the first time.
- Updating: download the newer
.debfrom Releases and reinstall with apt (same command as above). - Uninstalling (package name is
gaia-desktop):
Ubuntu (.AppImage)
Both the AppImage and the.deb ship with --no-sandbox to work
around Ubuntu 24.04.1+‘s AppArmor-restricted unprivileged-userns policy
(kernel.apparmor_restrict_unprivileged_userns=1), which otherwise aborts
Chromium with a FATAL sandbox error on first launch — see the security
note in
Troubleshooting → AppImage on Linux.
Use the AppImage for portable installs or distros without apt.
- Download
gaia-agent-ui-<version>-x86_64.AppImagefrom Releases. - Make it executable and run:
- On Ubuntu 24.04.1+, the AppImage runs with
--no-sandboxby default to work around the distro’s AppArmor userns restriction. See Troubleshooting → AppImage on Linux for the security implications and recovery steps. - If you downloaded the AppImage (portable) variant, the desktop app
creates a small user shim so you can run the
gaiaCLI from a terminal. The shim is written to~/.local/bin/gaiawhen the bundled Python backend is installed and no othergaiabinary exists on your PATH. Ifgaiais still not found after installation, add~/.local/binto yourPATH(shell restart may be required):
- To collect logs for a bug report:
~/.gaia/diagnostics-*.tgz to your GitHub issue.
Troubleshooting — zombie backend processes
If the Electron front-end crashes or is force-quit, the Python backend process may remain running (listening on a random port). The AppImage now attempts to clean up stale backends on startup, but you can inspect and terminate any leftover processes manually:gaia diagnostics to your issue and include the
output of ps aux | grep -E 'python.*gaia'.
Arch Linux and AppImage notes
Arch and some rolling-release distros may ship significantly newer glibc or system libraries than the Ubuntu runner used to produce the AppImage. If the AppImage binary is not compatible on Arch you have these options:- Use the browser-based UI by running the backend manually:
- Install from source or via the project
npmpackage and run the UI in development mode (see Developer Quick Start). - Report the incompatible AppImage on GitHub so we can extend the CI build matrix to produce an Arch-compatible artifact.
ldd --version,
cat /etc/os-release, and the AppImage stdout/stderr from a terminal
run so we can diagnose glibc mismatches.
Gaia Agent UI Architecture
The Gaia Agent UI is a privacy-first desktop chat application built with a Python FastAPI backend and a React/TypeScript frontend, packaged as an Electron desktop app.Key Features
- Privacy-first: All data stays local — no cloud, no telemetry
- Document Q&A: Drag-and-drop 50+ file formats for RAG-powered search
- Session management: Create, rename, export, and delete conversations
- Streaming responses: Real-time SSE streaming from local LLMs
- Shared CLI/UI state: Same SQLite database as
gaia chatCLI - Modern frontend: React + TypeScript SPA with Zustand state management
Architecture
Developer Quick Start
- Gaia Agent UI Guide — User guide with features and troubleshooting
- Agent UI SDK Reference — Python backend API documentation
- Agent UI Server Spec — Technical specification