Skip to content
WindsanderPublic

About

One shared graph for every AI assistant and device — memory and tasks, local-first, signed, auditable, direct P2P sync. MCP tools; no hosted account.

Topics

Resources

Contributing

Security policy

Stars

41 stars

Watchers

3 watching

Forks

Latest commit

 

History

1,131 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mebular

One memory. Every assistant. Every device.

A distributed memory network for your AI assistants.
Memory and tasks stay on your devices; devices sync directly.

CI License: MIT Node.js >=20 MCP server DSH plugin

Start in 5 minutes · How it works · Website · 中文

No hosted account · No central coordinator


Star map baseline: the device network before hovering Task lanes and a fleet event: blue can send, gold can receive, gray unreachable

The map at rest: devices and their shared-subscription edges. · On hover: task-domain lanes plus live fleet traffic.
Blue and gold show this device's two-way task-domain reachability, not peer-to-peer links.

One memory

Why Mebular: one shared graph instead of a silo; local-first, direct sync, auditable, MCP

Get started

DSH plugin integration: the DSH sidebar loads the same Mebular Console, and the official MCP client reaches the same daemon

Desktop app setup: 1 Start deployment, 2 Create or join a Cloud, 3 Invite the next device

Other ways to start: Browser, CLI and Agent, all sharing one graph

Desktop app · v0.2.3 Download & first launch
Unsigned release
macOS Universal · Windows x64 · Linux x64
Download from GitHub Releases
Verify with SHA256SUMS.txt. macOS: right-click → Open. Windows: More info → Run anyway. Bundles Electron and its runtime.

Or install the CLI and server:

npm install -g @mebular/core
mebular serve                                  # browser console
fleet quickstart --daemon                      # CLI start
mebular print-config --client opencode         # MCP config

How it works

Mebular network overview: each machine runs one node; nodes sync memory and tasks directly; add devices with a QR code or token

Write with memory_write, hand off with task_submit — the same graph, from any assistant.

Pairing flow: device A invites, device B joins with the QR code or token, then connection and the default grant happen automatically

Docs

Start Learn Run Trust
Quickstart
Install & pair
Architecture
Nodes & sync
Console
Local GUI
Limitations
Sensitive data
Agent skills
Setup playbooks
Fleet ops
Multi-machine
Release SOP
Release steps
Sealing docs
Protocol rules
Changelog · Roadmap
Released & planned
Contributing
Quality gates
Security
Report a vuln
Website
Product site

Use with DSH
Install the plugin from npm into DSH's web profile:
dsh plugin --profile web add @mebular/dsh-plugin@0.2.3
The App and the DSH Plugin are two equal entries to one local Mebular runtime: the plugin defaults to attach and connects to an existing App/CLI/service without starting or downloading anything. If no runtime exists, the panel explicitly offers a pinned shared-runtime install. The sidebar panel embeds the same Console through ?embed=dsh (loopback only), and the official MCP client reaches the same graph. The plugin is an independent adapter with its code isolated in packages/dsh-plugin; it is published by its own npm job, while its version follows the unified release train. For plugin development, install from packages/dsh-plugin instead.
Listed on awesome-dsh-plugin under memory.
DSH plugin guide → · Integration notes →

Who does what
Who Handles
You One-time pairing, Cloud choice, invites, subscriptions.
Your assistant Memory reads and writes, task claim and completion.
Mebular Discovery, direct / relay / hole-punch, retries, certificates, service autostart.
Use it from code
import { Mebular } from 'mebular';

const mebular = new Mebular({
  storagePath: './store.jsonl',
  deviceId: 'device-a',
  network: { enabled: false },
});

await mebular.initialize();

Runnable examples: examples/quickstart writes and recalls a preference; examples/two-devices demonstrates offline sync.

v0.2.3 · early · MIT · © 2026 Sobert Li

About

One shared graph for every AI assistant and device — memory and tasks, local-first, signed, auditable, direct P2P sync. MCP tools; no hosted account.

Topics

Resources

Contributing

Security policy

Stars

41 stars

Watchers

3 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages