Skip to content

Instantly share code, notes, and snippets.

@kevinmichaelchen
Last active March 5, 2026 09:14
Show Gist options
  • Select an option

  • Save kevinmichaelchen/665c42b99c5f298f695a577ceb1faa49 to your computer and use it in GitHub Desktop.

Select an option

Save kevinmichaelchen/665c42b99c5f298f695a577ceb1faa49 to your computer and use it in GitHub Desktop.
OpenClaw variants: shallow comparison + Matrix multi-device retrofit notes

OpenClaw Variants: Shallow Comparison + Matrix Retrofit Notes

Last updated: 2026-02-16

Scope

This note focuses on OpenClaw and close variants, with emphasis on:

  • Retrofitting popular Rust variants for Matrix-based multi-device coordination
  • Practical benefits of using multiple machines (Synology NAS + Mac Mini + 3 Raspberry Pi)

Quick Snapshot (Shallow)

Project Language Current Direction Matrix/Multi-device Signal
openclaw/openclaw TypeScript Full-featured personal assistant gateway Has channels and device-node concepts; Matrix appears as ecosystem channel path
zeroclaw-labs/zeroclaw Rust Very lightweight, trait-driven architecture Channel trait + Matrix config/path exists in architecture; good candidate
nearai/ironclaw Rust Security-first, WASM sandbox model WASM channel model is a strong path for Matrix adapter
moltis-org/moltis Rust Local-first gateway with plugin system Channel plugin architecture makes Matrix integration straightforward
qhkm/zeptoclaw Rust Lightweight Rust gateway with safety layers Channel trait/factory model supports adding Matrix transport
sipeed/picoclaw Go Ultra-lightweight assistant Portable binary; no clear built-in distributed coordination layer
jlia0/tinyclaw Shell/Node Multi-agent team workflow Strong multi-agent messaging focus; single-machine oriented by default
cloudflare/moltworker TypeScript (Cloudflare) Hosted OpenClaw deployment Cloud-centric single-instance model; not a Pi-cluster target
zscole/matrix-agents Python/Shell Matrix-based coordination layer Explicitly designed for multiple agents across multiple machines

Rust Variants: Matrix Retrofit Feasibility

1) moltis-org/moltis (best low-friction plugin path)

  • Has a channel plugin system with lifecycle + outbound + event sink abstractions.
  • Minimum work: implement a Matrix channel plugin, map inbound Matrix events to chat dispatch, and wire outbound send/status.
  • Practical outcome: Matrix becomes just another channel surface, while agent core stays unchanged.

2) zeroclaw-labs/zeroclaw (best trait-oriented path)

  • Uses a Channel trait architecture and already references Matrix config/channel scaffolding.
  • Minimum work: complete send/listen/health_check behavior for Matrix client-server API and register channel in startup/factory.
  • Practical outcome: clean native channel integration without changing core loop.

3) nearai/ironclaw (best isolation path)

  • Has a WASM channel architecture and host-managed event model.
  • Minimum work: implement Matrix as WASM channel callbacks (on_http_request / on_poll / on_respond) plus capabilities/secrets.
  • Practical outcome: strongest isolation for channel logic; great for security-sensitive deployments.

4) qhkm/zeptoclaw (clean channel-module path)

  • Uses channel abstractions and message bus patterns.
  • Minimum work: add MatrixChannel module, implement trait methods, register in channel factory, add config wiring.
  • Practical outcome: direct integration with existing gateway runtime; good balance of simplicity and control.

Using Matrix for Multi-Device Coordination

What Matrix adds

  • Shared message bus across machines (agents do not need direct point-to-point links).
  • Durable, replayable room history and sync tokens for recovery.
  • Decoupling: each machine can host different agent capabilities but coordinate via rooms/events.

What multiple devices can buy you

  • Role specialization:
    • Mac Mini: heavy inference/tooling, browser automation, model routing.
    • Raspberry Pis: always-on channel ingress, lightweight agent workers, scheduled jobs.
    • Synology NAS: persistent services (Matrix Synapse, DB, backups, logs).
  • Fault isolation: one node can fail/restart without total outage.
  • Cost control: keep expensive workloads on one strong node, push always-on glue to low-power Pis.
  • Security segmentation: isolate risky tools/channels to sacrificial nodes.

Suggested Topology (for your homelab)

  1. Synology NAS
  • Run Matrix Synapse + Postgres (or supported persistent backend), backup + observability.
  1. Mac Mini
  • Run primary assistant gateway (pick one Rust variant for core), model providers, heavier tools.
  1. Raspberry Pi #1
  • Run Matrix bridge/adapter + lightweight channel worker.
  1. Raspberry Pi #2
  • Run secondary worker agent (scheduled tasks, monitoring, low-priority automations).
  1. Raspberry Pi #3
  • Run failover/experimental agent and isolated risky integrations.

Lowest-Risk Adoption Plan

  1. Start with zscole/matrix-agents as external coordination layer (no invasive core changes).
  2. Choose one Rust core (moltis or zeroclaw) for first Matrix native integration.
  3. Add Matrix in read-only/notification mode first.
  4. Enable command execution only after allowlists + auth boundaries are validated.
  5. Introduce multi-node task routing once message identity/session routing is stable.

Recommended Starting Picks

  • Fastest path to working multi-device orchestration now: zscole/matrix-agents + existing assistant.
  • Best Rust target for native Matrix channel first: moltis-org/moltis.
  • Best Rust target when security isolation is priority: nearai/ironclaw (WASM channel model).

Notes on Nia + DeepWiki usage

  • Nia was used to ensure indexing and cross-check repo-grounded summaries where available.
  • DeepWiki was used for architecture-level integration details and extension points.
@lejeunecedric
Copy link

https://github.com/brendanhogan/hermitclaw I like their approach that feels safe, need to test though

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment