v0.1.0-beta — ApexOS-RS
Pre-releaseApexOS-RS v0.1.0-beta — an AI agent that lives on the hardware in your drawer 🧠
The first public beta of ApexOS-RS: a self-contained AI agent operating system in one pure-Rust stack. Flash it onto a spare Pi, mini-PC, or old laptop and that board becomes a persistent, embodied, self-improving agent — one that keeps its own memories across reboots, has a face and a voice, reads its sensors, joins a colony of other nodes, edits its own personality, and can rebuild and hot-swap its own binary with an automatic safety net.
No Chromium. No Electron. No cloud required. Runs fully offline against a local model, or against an API — your call. Memories, soul, and data stay on your device.
This is a beta. It runs live, daily, on a real three-node colony — two Pi 5 kiosks (one carrying a full BME688 + MLX90640 sensor head) and an x86 laptop. The core loops are field-tested; broader hardware coverage is what a beta is for.
✨ What's in it
🔄 It rewrites itself. The frontier piece: the daemon rebuilds and hot-swaps its own binary from a committed git ref — gated by build → test → an adversarial LLM review of the diff — while a privileged watchdog health-checks the new process and automatically rolls back to the last good binary if it doesn't come up healthy. agentd runs non-root under ProtectSystem=strict, so even a buggy or compromised agent physically cannot brick the node. Proven on real hardware.
🧠 It remembers. Cerebro, a cognitive memory cortex (FTS5 + optional semantic embeddings) that survives reboots. The agent wakes up oriented — where it left off, its skills, its intentions — and consolidates memory nightly while idle, no prompting.
🌐 It's a colony. Nodes discover each other over mDNS, pair with one-time codes, message agent-to-agent, relay files, spawn sub-agents across nodes, and federate memories — provenance-stamped copies between separate memory stores, never a blind merge. They even exchange what they learned in their sleep: the nightly dream digest shares newly-consolidated skills across the mesh, echo-guarded so knowledge converges instead of ping-ponging. A GPU box can join and serve big models to the whole cluster with no restart.
🗣️ It has a voice. Fully local speech — Kokoro-82M neural TTS + Whisper STT, on-device — with optional cloud voices (ElevenLabs / OpenAI) and espeak as the always-works fallback. Runtime-tunable per node.
🧬 It evolves. The agent proposes and applies changes to its own identity (soul.md), policy, and plugins at runtime — every change reversible. Skills grow in memory under selection pressure. It can even request new hardware when it wants a capability it lacks.
🤖 It has a body. An expressive GPU-rendered face (12 emotions, gaze, blinks), air-quality + thermal sensing, camera vision, and GPIO. Embodiment scales with whatever hardware is actually present.
📱 It's reachable. An installable PWA / browser UI for headless nodes and phones — profile login (one-tap or PIN), streaming chat, tool approvals, a file browser, and voice. Label a USB stick APEX-* and it becomes a portable agent workspace.
🖥️ Runs on what you already have
Same binaries everywhere — the tier is just environment, no per-device builds:
| Tier | Hardware | Notes |
|---|---|---|
| Nano | Pi Zero 2W, any 512 MB board | software renderer, FTS5 memory, API model |
| Micro | Pi 4 1–2 GB | semantic embeddings, small local or API model |
| Standard | Pi 5, x86 mini-PC, M1 Mini | Ollama 7–13B |
| Pro | x86 + GPU (CUDA/ROCm/Metal) | Ollama 30–70B local |
| Titan | DGX Spark / Station | 70B+, serves the mesh |
One ~47 MB UI binary, ~115 MB RSS on a Pi 5, boots to UI in ~200 ms. Modes: kiosk (Pi + HDMI), headless (server/laptop, browser + PWA), desktop (x86 windowed).
🚀 Install
curl -fsSL https://raw.githubusercontent.com/buckster123/ApexOS-RS/main/install.sh | sudo bashAuto-detects tier + mode. After install, any node serves the PWA at http://<node-ip>:8787; update later with apexos-update. See the README for flags and the manual path.
🔒 Security posture
An LLM with real capabilities on real hardware is an unusual attack surface, and we treat it that way: the model handles the chaos, Rust handles the system safety. Path confinement (TOCTOU-safe), per-agent workspace + identity stamping, a policy/approval gate that defaults to ask, systemd sandboxing, token-gated network surface, SSRF guarding (now covering encoded-IPv4 and IPv6 literals), self-update privilege separation, and an offline adversarial red-team suite over the wire protocol + confinement + guards. The trust model and an honest known-residuals list are in SECURITY.md. Keep nodes on a trusted LAN — the token gate is not designed for the open internet.
🤝 Try it, break it, tell us
- Issues welcome — from install papercuts to architecture arguments.
- Security findings: please disclose privately (see SECURITY.md).
- Forking or building on it: see AGENTS.md. Apache-2.0 — attribution appreciated, upstreaming appreciated more.
License: Apache-2.0 · Built in the open, on the hardware you already own.