KiwiStack®

A Rust-first, AI-native digital workplace.
Self-hosted. Agent-driven. Every seed a service.

🦀 Rust-first 🤖 AI-native 🏠 Self-hosted 🔌 MCP-powered

Anatomy of a Kiwi

Every part of the fruit maps to a layer of the platform — from skin to core.

Skin
UI · MCP · Security
Flesh
Search · Sync
Seeds
Mail · Chat · Meet · Work · Docs
Core
ID · Store · DB

The Vine — Orchestration

The kiwi grows on a vine — a liane that supports, connects, and nourishes every fruit in the cluster.

Node 1 Node 2 Node 3
🌐

Node Discovery

Chitchat · Gossip protocol

Automatic peer discovery. Nodes find each other and form a cluster.

📡

Mesh VPN

EasyTier · WireGuard

Encrypted tunnels between nodes. NAT traversal for cross-datacenter.

🔀

Reverse Proxy

Pingora · rustls-acme

Automatic TLS via Let's Encrypt. Service routing and load balancing.

📋

Service Scheduling

Custom · Proxmox API

Decides which node runs which service. LXC/VM provisioning.

💓

Health & Self-healing

Custom · redb

Monitors all services. Restarts failures, rebalances load.

💾

Backup

Proxmox Backup Server

Coordinated backups across the cluster. Native PBS integration.

🔒 BSL 1.1 — The commercial product. Converts to Apache 2.0 after 4 years.

Simple Pricing

The fruit is open source. The vine is commercial.

🥝 THE FRUIT

Kiwi Community

Everything inside the fruit — skin, flesh, seeds, and core. A fully functional single-node workplace.

Free forever
  • All 12 service components
  • Unified MCP tool registry
  • AI-driven UI shell
  • SSO with Kiwi ID
  • Single-node deployment
  • Apache 2.0 licensed
  • Community support

Tech Stack

Rust everywhere. Seriously.

13/16
underlying components written in Rust
🛡️

Skin — Interface & Security

The UI shell and the MCP gateway.
🖥️ Kiwi UI
CopilotKit + AG-UI · TypeScript
AI-driven frontend shell. Embeds native clients for Matrix (chat), LiveKit (video), and Loro (collaborative editing) alongside MCP-driven panels.
Matrix client LiveKit client Loro client
🔌 Kiwi MCP
rmcp SDK · Rust
Unified MCP server. One connection gives AI agents access to all services: mail, calendar, tasks, docs, search, and more.
mail.* calendar.* tasks.* docs.* search.*
🌿

Flesh — Network

Sync and search across all services.
✏️ Kiwi Sync
Loro CRDT · Rust · MIT
Real-time collaborative editing. Peritext/Fugue CRDTs, offline-first, version history. Powers Kiwi Docs via WebSocket sync.
WebSocket CRDT
🔍 Kiwi Search
Meilisearch / Tantivy · Rust · MIT
Typo-tolerant instant search across emails, chats, files, docs, tasks. Each service pushes updates. One query, all services.
search.global search.scope
🌱

Seeds — Services

Colorful, independent, exposed via MCP.
📧 Kiwi Mail
Stalwart · Rust · AGPL-3.0 (network boundary)
Email, calendar & contacts via JMAP. Network boundary keeps your code Apache 2.0.
mail.* calendar.* contacts.*
💬 Kiwi Chat
Conduit · Rust · Apache 2.0
Matrix homeserver. Hybrid: real-time via native client, CRUD via MCP.
chat.send chat.search Matrix CS API
📹 Kiwi Meet
LiveKit · Go + Rust SDK · Apache 2.0
Video/audio calls, screen sharing, recording. SFU architecture.
meet.* WebRTC
📋 Kiwi Work
Axum + libsql · Rust · Apache 2.0
Projects, tasks, kanban. MCP-native, no traditional UI.
projects.* tasks.* board.*
📖 Kiwi Docs
Axum + Loro · Rust · Apache 2.0
Knowledge base with collaborative editing, full-text search, version history.
docs.*

Core — Infrastructure

Identity, storage, and database.
🔐 Kiwi ID
Kanidm · Rust · MPL-2.0
Central identity provider. OAuth2/OIDC, WebAuthn/Passkeys. Single source of truth for all users & groups.
admin.*
📁 Kiwi Store
RustFS · Rust · Apache 2.0
Distributed file storage. S3-compatible, erasure coding, multi-node sharding.
files.*
💾 Database
libsql · Rust/C · MIT
Lightweight, local-first, replicable embedded database. The quiet foundation.
embedded

Color Palette

Mapped to the fruit

Core#F5F5EE
Flesh#7CB342
Flesh Light#9CCC65
Skin#795548
Vine#33691E
Seed#1A1A1A
Mail#FF7043
Chat#26A69A
Meet#42A5F5
Work#AB47BC
Docs#EC407A

Logo Variations

Adaptable across all contexts