Arch-based · Wayland · local-first AI

SynapseOS

Where the kernel thinks.

An Arch-based Linux distribution with a local large language model wired into the system layer — not bolted on top. The shell, the compositor, the security monitor and a kernel module all talk to one inference daemon over a Unix socket. No network calls. No API keys. The model lives on your machine.

Download 0.2.9 Source on GitHub

Status: alpha. Version 0.2.x. A real, actively developed system — the author daily-drives it — but it is early, moves fast, and will break. Try it in a VM before you give it a disk.

What is SynapseOS?

Most “AI operating systems” are a chat window on a normal desktop. SynapseOS starts one layer down. A local inference daemon called synapd owns the model and serves every other component over the SYN socket protocol, so the AI is a system service in the same sense that systemd-resolved is — something the rest of the OS can depend on rather than an app you open.

The desktop is synui, a wlroots Wayland compositor written for this system rather than adapted to it — one that knows the AI daemon exists and holds a live subscription to the security monitor’s verdict feed.

How it fits together

One model, resident once, shared by everything. Components do not each load their own copy — the AI coding assistant reuses the model already sitting in synapd rather than spending a second allocation of VRAM.

  User
   │
   ▼
 synsh ─── natural language / commands ──┐
   │                                     │
   ▼                                     │
 synapd  (local LLM — Mistral 7B)        │
   │  inference over SYN socket protocol │
   ├──► synguard      security verdicts ─┤
   ├──► synnet        network policy     │
   └──► synapse_kmod  kernel sysfs       │
            │                            ▼
            ▼                    synui (Wayland)
     /sys/kernel/synapse/
     syscall_log, ai_hints, stats,
     status, config, version

The desktop

synui draws its own display settings, wallpaper picker, dock, cursor picker, sound panel and control panel. The status bar and the desktop widgets are a native quickshell shell. Everything below is compositor-drawn — there is no third-party panel or settings app in the picture.

The SynapseOS desktop: the synui Wayland compositor with its quickshell status bar, application menu and auto-hiding dock.
synui — native quickshell bar, application menu, auto-hiding dock.
SynapseOS with the CRT post-process filter enabled in amber phosphor, showing scanlines across the whole desktop.
The optional CRT post-process pass, in amber phosphor.

Some of what the keyboard reaches

A selection of default keybindings. Rebind anything in ~/.config/synui/synuirc.
KeyAction
Super (tapped alone)Start menu
Super+CControl panel — every setting and shortcut in one place
Super+/Shortcut palette — every binding, searchable; F2 on a row moves it
Super+ReturnOpen a terminal (syntty)
Super+SpaceApp launcher
Super+=Command bar — synsh intents and output capture
Super+BackspaceAsk the AI
Super+ANeural activity overlay
Super+WWallpaper picker (per-monitor with Tab)
Super+EVisual effects — CRT strengths, corners, shadow, blur
Super+TTheme manager — thirteen of them
Alt+TabMission control — every window on this desktop at once, and the desktops along the bottom
Ctrl+Alt+DeleteTask manager (CPU / RAM / GPU)
Super+GGame mode
Super+F10Big screen mode — the ten-foot interface for a television

The full table — sixty-odd bindings — is in the README, and Super+C generates it live from the running bind table.

Components

Each lives in its own directory in the tree with its own PKGBUILD.

ComponentWhat it does
synapdLocal LLM inference daemon (llama.cpp). Owns the model; serves every other component over a Unix socket. Drops root after start.
synshAI-native shell. Type naturally, or use it as a normal shell.
synuiWayland compositor on wlroots 0.20, rendering through scenefx 0.5 — tiling and monocle layouts, per-output workspaces, XWayland, layer-shell, glass, blur, shadows.
synguardSecurity monitor. Classifies syscall events, scores threats, publishes verdicts on a feed synui subscribes to; optional in-kernel BPF-LSM enforcement.
synnetNetwork policy daemon with nftables integration.
synapse_kmodKernel module (DKMS). Syscall monitoring and AI scheduling hints, exposed via sysfs.
synttyThe terminal, and the default one. A Wayland terminal that links no GL at all — 359 KB, a window in 5.8 ms, tabs, the alternate screen, images, and OSC 133 prompt marks.
synpkgThe package manager. One C binary over libalpm covering the Arch repositories, the AUR, Flathub, BlackArch and SynapseOS’s own components — CLI, terminal browser and GUI over the same code.
synfilesThe file manager, and what a folder opens in. Trash, undo, split view, thumbnails, archives and search, with a window, a terminal browser and a command line as three front-ends onto one binary.
syn-settingsSettings. Displays, keyboard and language, date and time, network, Bluetooth, power, kernels and default applications — every pane reading the real source, and saying which file decided it.
syn-editThe text editor. One modal engine driving a terminal editor, a graphical window, and a scripting mode with no terminal at all.
syn-disksThe disk utility. Drives, health, mounting, safe removal, formatting and partitioning — and it refuses to format anything sharing a disk with a running system, with no override.
syn-arcadeThe game assistant: the MangoHud overlay inside a running game, controllers outside Steam, SDL mapping overrides, and big screen mode for a television.
syn-confineA sandbox launcher — run a command inside a kernel-enforced allowlist (Landlock), inherited across execve.
syn-arsenalThe BlackArch browser — ~5000 security tools by category, installable from a window or a terminal.
vibeLocal AI coding assistant — an agentic read/write/edit/bash/grep loop that reuses the resident model, and confirms before destructive tools.
chibiVoice-interactive AI companion with a security-sentinel aspect over synguard’s verdict feed.
syn-updateUpdates the SynapseOS half of an installed system, rebuilding only the components whose version moved.

Download SynapseOS

Latest release: 0.2.9 — the terminal and the television. Free, x86_64, about 3.7 GiB. The model is downloaded during installation, not carried in the image.

Get the ISO from GitHub Releases

Reassemble and verify

The ISO is split into parts to fit GitHub’s 2 GiB asset limit. Download all .part* files, then:

cat SynapseOS-0.2.9-x86_64.iso.part* > SynapseOS-0.2.9-x86_64.iso
sha256sum -c SynapseOS-0.2.9-x86_64.iso.sha256

Write it to a USB stick

sudo dd if=SynapseOS-0.2.9-x86_64.iso of=/dev/sdX bs=4M status=progress oflag=sync

Or try it in a VM first

git clone https://github.com/velle999/SYNAPSE.git && cd SYNAPSE
QEMU_RAM=8G ./archiso/build_scripts/qemu-test.sh

The script auto-detects the newest ISO, uses KVM when available, boots UEFI via OVMF, and attaches a persistent 20 GB test disk.

System requirements

Frequently asked questions

Does SynapseOS send anything to the cloud?

No. The installer downloads a model once; after that the file lives on the machine and inference runs locally through llama.cpp. There are no API keys to configure and no account to create, and the AI works with the network cable out.

Is it just Arch with an app on top?

No. The inference daemon is a system service and the components query it over a socket: the shell resolves intent through it, the compositor talks to it, the security monitor uses it to classify events. The desktop, the shell, the security monitor, the network daemon and the kernel module are all written for this project.

Can I run it on a machine with no GPU?

Yes — that is the default. The ISO ships a CPU build of the inference backend so it starts on any x86_64 machine. GPU acceleration is a separate package you install afterwards if you have the hardware.

Is it free and open source?

Yes. SynapseOS-authored code is GPL-2.0-or-later, except the kernel module, which is GPL-2.0-only because the Linux kernel is. The whole tree is on GitHub.

Can I use it as my daily driver?

The author does. That is not a recommendation that you do — it is alpha at 0.2.x, it moves fast, and it will break. Run it in a VM first.

How do updates work?

An installed system needs two commands, because they cover different halves of it: sudo pacman -Syu for Arch, and syn-update check / syn-update apply for the SynapseOS components. There is a GUI for the second one in the start menu.

Get involved

Issues, discussion and the full source tree live on GitHub, and the wiki covers installing, updating and the release process in detail.

velle999/SYNAPSE Report an issue