What would an operating system look like if it were designed for AI agents that need to migrate, gossip, and run across a mesh of heterogeneous machines? MielinOS is our answer — and today the first release candidate is here to try.
Today we released MielinOS 0.1.0-rc.1 “Oligodendrocyte” — the first release candidate of a microkernel-based operating system for distributed AI agents, built in Rust. This is a preview, not a finished 1.0: the core is complete and tested, the API is settling, and we are putting it in front of people before we stamp it stable.
MielinOS is, precisely, a microkernel operating system with a neural-mesh networking layer. It is named after the myelin sheath — the structure that lets neural signals jump quickly between nodes — because that is the shape of the system: a minimal trusted kernel underneath, and above it a peer-to-peer mesh over which agents discover each other, communicate, and migrate. It is meant to run the same way across Arm, RISC-V, x86, and embedded targets.
The whole stack is Rust. The kernel, the hardware abstraction layer, the mesh, the WebAssembly runtime, and the tensor kernels are written in safe-by-default Rust and compile down with no garbage collector and no managed runtime. Binary serialization across the mesh goes through OxiCode, the pure-Rust serialization crate from the COOLJAPAN ecosystem, rather than a hand-rolled wire format.
Why this release candidate matters
An RC is an invitation: the foundation is laid, and we want it exercised before it freezes. At rc.1, MielinOS already stands up the full mesh-networking and agent-migration story:
- It is substantial and tested. 155,178 lines of Rust across 445 files, with 3,255 tests passing and zero clippy warnings under strict lints.
- A real QUIC mesh. The wire layer runs QUIC with TLS 1.3 and self-signed certificates, connection pooling, stream multiplexing, 16 MB messages, and multi-hop routing with TTL-based loop prevention (max 16 hops).
- Decentralized discovery and membership. A Kademlia DHT with XOR-distance routing handles peer location; a SWIM-inspired gossip protocol tracks membership (Alive / Suspect / Dead) with heartbeat failure detection and incarnation-number refutation; mDNS handles local-network discovery.
- Live agent migration. A migration coordinator moves running agents between nodes using Pre-copy, Post-copy, or Hybrid strategies, with phase-by-phase telemetry, downtime measurement, and a 30-second timeout.
- WASM-sandboxed agents. Agents run inside a WebAssembly sandbox with capability-based resource isolation, so an agent’s blast radius is bounded by what it was granted.
- Tensor ops that meet the hardware. A
mielin-tensorkernel layer dispatches at runtime to ARM NEON, x86_64 AVX2, or scalar fallback for dot products, element-wise ops, and matrix multiplication — and isno_std-compatible so it works in kernel and userspace alike.
Technical Deep Dive: the layered architecture
MielinOS is a workspace of specialized crates stacked from hardware up to agents:
- Layer 0 —
mielin-hal. A unified hardware abstraction layer across x86_64, AArch64, RISC-V, and ARM Cortex-M, with runtime architecture detection behind compile-time feature gates. - Layer 1 —
mielin-kernelandmielin-rt. The microkernel provides capability-based IPC (synchronous channels, async message queues, shared memory) and a scheduler;mielin-rtis a lightweight embedded runtime for Cortex-M and constrained IoT devices, with WFI/WFE deep-sleep power management and a no-heap memory-pool allocator. - Layer 2 —
mielin-mesh-coreandmielin-mesh-wire. The mesh:coreholds the DHT, gossip, agent registry, and migration coordinator;wirecarries the QUIC transport, the certificate manager (with 30-day rotation thresholds), and the multi-hopRoutedMessageenvelope. - Layer 3 —
mielin-cells,mielin-wasm,mielin-tensor. The agent SDK (spawn,pause,resume,terminate, policy execution, inter-agent messaging, and high-availability / disaster-recovery subsystems), the WebAssembly runtime, and the SIMD tensor kernels. - Tooling —
mielin-cli. A command-line front-end with subcommands for the daemon, mesh status, and agent lifecycle (list,spawn,migrate).
Each layer is independently usable: you can depend on mielin-hal for hardware abstraction alone, or mielin-tensor for the SIMD kernels, without pulling in the kernel.
Getting Started
Because this is a release candidate, the most useful way in is from source — clone and run the bundled examples. Add MielinOS to a project with the RC version:
[dependencies]
mielin = "0.1.0-rc.1"
A first program — detect the hardware, mint an agent ID, touch the tensor layer:
use mielin::prelude::*;
fn main() {
// Detect hardware capabilities
let arch = detect_architecture();
println!("Running on: {:?}", arch);
// Create an agent identity
let agent_id = AgentId::new();
println!("Agent ID: {}", agent_id);
// Tensor operations dispatch to the best available SIMD
let tensor = Tensor::zeros(&[2, 3]);
println!("Tensor shape: {:?}", tensor.shape());
}
Bring up a mesh node from the CLI:
# Start a mesh node
cargo run -p mielin-cli -- mesh start --bind 0.0.0.0:9000
# Join an existing cluster
cargo run -p mielin-cli -- mesh join 192.168.1.100:9000
The repository ships an examples/mesh-cluster (a 3-node QUIC cluster with Edge / Relay / Core roles and live migration) and an examples/embedded-iot (a simulated sensor node that migrates when its battery runs low) — both are the fastest way to see the system move.
What’s inside rc.1
- QUIC transport (
mielin-mesh-wire): QUIC with TLS 1.3, self-signed certificates, connection pooling, stream multiplexing, 16 MB messages, 10-second connection timeout. - DHT routing (
mielin-mesh-core): Kademlia-style peer storage with greedy XOR-distance routing, latency-based sorting, and automatic peer-table maintenance. - Multi-hop routing:
RoutedMessageenvelope with source/destination/TTL/hop-count and transparent forwarding, capped at 16 hops. - Node discovery: mDNS local-network discovery (mdns-sd 0.17) with 5-minute TTL caching, a bootstrap registry, and a peer-exchange (PEX) protocol.
- Gossip protocol: SWIM-inspired membership (Alive/Suspect/Dead), heartbeat failure detection (15 s suspect, 30 s dead), anti-entropy sync, and incarnation-number refutation.
- Distributed agent registry: DHT-backed location tracking, content-addressable 16-byte agent IDs, 10-minute TTL, replication factor 3.
- Live migration: Pre-copy / Post-copy / Hybrid strategies, full phase telemetry (Planning → Complete), downtime measurement, 30-second timeout.
- Integrated
MeshService: a single orchestrator with optional enable/disable of mDNS, gossip, registry, and migration. - Certificate management: self-signed generation, 30-day rotation threshold, expiry monitoring, thread-safe
Arc<RwLock>caching, PKCS#8 + DER serialization. - TensorLogic (
mielin-tensor): hardware-accelerated dot/add/matmul with ARM NEON and x86_64 AVX2 intrinsics, runtime backend dispatch,no_stdcompatibility, and WASM host functions exposing tensor ops to agents. - Embedded runtime (
mielin-rt): Cortex-M power management (WFI/WFE, deep sleep, SysTick), a no-heap memory-pool allocator, and battery-aware migration triggers (< 20% battery, not charging). - 3,255 tests passing across the workspace with zero clippy warnings under strict lints.
Tips
- Treat rc.1 as a preview. The API is settling toward 1.0 — pin
0.1.0-rc.1exactly and expect changes before the stable release. - Depend on individual crates, not the meta crate. Need only the SIMD kernels?
mielin-tensor = "0.1.0-rc.1". Only hardware abstraction?mielin-hal = "0.1.0-rc.1". The kernel is excluded from the default members because it requires a bare-metal target. - Run the examples first.
examples/mesh-clusterandexamples/embedded-iotexercise the mesh and the migration path end-to-end — they are the quickest way to understand the system before you build on it. - Use
MeshServiceinstead of wiring components by hand. It is the single entry point that starts discovery, gossip, the registry, and migration together, with each piece toggleable viaMeshConfig. - For embedded targets, lean on
mielin-rt. Its bump-style memory pool isconst-generic and resettable, and its battery-aware triggers are what make an agent migrate off a dying node automatically. - Tensor ops pick the backend for you. Operations dispatch at runtime to NEON, AVX2, or scalar — you do not select intrinsics by hand, and the same code runs in the kernel, in userspace, and inside WASM agents.
This is the foundation
MielinOS is built on the pure-Rust philosophy that runs through the COOLJAPAN ecosystem — the same world as OxiBLAS and OxiCode (whose serialization MielinOS uses on the wire), the OxiArc / OxiFFT / OxiZ utilities, and the scientific-computing stack around SciRS2. An operating system designed for distributed AI agents is an ambitious thing to build, and a release candidate is exactly where it should meet real users. Try it, break it, and tell us what an OS for agents should be before we call it stable.
Repository: https://github.com/cool-japan/mielin
Star the repo if a pure-Rust microkernel OS for distributed AI agents is the kind of future you want to help shape. The mesh is up — come kick the tires before 1.0.
— KitaSan at COOLJAPAN OÜ January 18, 2026