Comparison
How Moltis compares to the larger open-source personal agent projects: OpenClaw and Hermes Agent.
Disclaimer: This page is based on source snapshots captured while writing: OpenClaw
90eb5b0from 2026-04-01, Hermes Agent9f22977from 2026-04-20, and Moltis5d044c6from 2026-04-22. Projects move quickly, so check each repository for current behavior before making a deployment decision.
At a Glance
| OpenClaw | Hermes Agent | Moltis | |
|---|---|---|---|
| Primary stack | TypeScript, with Swift/Kotlin companion apps | Python, with TypeScript TUI/web surfaces | Rust |
| Main runtime | Node.js 22.16+/24 + npm/pnpm/bun | Python + uv/pip, optional Node UI pieces | Single Rust binary |
| Main shape | Broad gateway, channel, node, app, and plugin ecosystem | CLI/gateway agent with a learning loop and research tooling | Persistent personal agent server with modular crates |
| Local checkout size* | ~1.1M app LoC | ~152K app LoC | ~270K Rust LoC |
| Crates/modules | npm packages, extensions, apps | Python packages, plugins, tools, TUI | 59 Rust workspace crates |
| Sandbox/backends | App-level permissions, browser/node tools | Local, Docker, SSH, Daytona, Singularity, Modal | Docker/Podman + Apple Container + WASM + Vercel + Daytona + remote sandboxes |
| Auth/access | Pairing and gateway controls | CLI and messaging gateway setup | Password + Passkey + API keys + Vault |
| Voice I/O | Voice wake and talk modes | Voice memo transcription | Built-in STT + TTS providers |
| MCP | Plugin/integration support | MCP integration | stdio + HTTP/SSE |
| Skills | Bundled, managed, and workspace skills | Self-improving skills, Skills Hub support | Bundled/workspace skills + autonomous improvement + OpenClaw import |
| Memory/RAG | Plugin-backed memory and context engine | Agent-curated memory, session search, user modeling | SQLite + FTS + vector memory |
* LoC measured with tokei, excluding node_modules, generated build output,
dist, and target. Counts are a rough auditability signal, not a quality
metric.
Architecture Approach
OpenClaw, ecosystem-first personal assistant
OpenClaw is a full-featured personal assistant platform. The local checkout shows a TypeScript gateway with macOS, iOS, and Android companion surfaces, plus a large channel list, node tools, browser/canvas support, plugin extensions, onboarding, and managed/workspace skills.
Hermes Agent, learning-loop CLI and gateway
Hermes Agent is Python-first. Its README centers the agent around a terminal interface, a messaging gateway, a closed learning loop, self-improving skills, agent-curated memory, session search, user modeling, cron scheduling, and cloud/serverless execution backends. Moltis has autonomous skill improvement too, so Hermes’ sharper distinction is its CLI/research loop and broad terminal backend set. It also carries research-oriented pieces such as trajectory generation and RL environments.
Moltis, Rust-native persistent agent server
Moltis prioritizes a smaller trusted runtime, durable agent workflows, and defense in depth. The Rust workspace is currently ~270K lines across 59 crates. The agent runner and model interface are ~7.5K lines, with provider implementations in ~19K more.
Key differences:
- Single Rust binary instead of a Node.js or Python application runtime
- Built-in web UI with streaming chat, settings, sessions, projects, and admin surfaces
- Docker/Podman, Apple Container, WASM, Vercel, Daytona, and remote sandboxing
- Password, WebAuthn passkeys, scoped API keys, and vault-backed secret storage
- Cross-session recall without dumping raw history into every prompt
- Autonomous skill self-improvement with
enable_self_improvementon by default - Automatic checkpoints before built-in skill and memory mutations
- 15 lifecycle hook events with circuit breaker and dry-run mode
- Read-only OpenClaw import for identity, providers, skills, memory, sessions, channels, and MCP config
Moltis intentionally has a small unsafe surface, not a zero-unsafe entire workspace. Unsafe code is isolated to Swift FFI, local model wrappers, and precompiled WASM/runtime boundaries. The core agent and gateway paths stay in safe Rust.
Security Model
| Aspect | OpenClaw | Hermes Agent | Moltis |
|---|---|---|---|
| Code sandbox | App-level permissions and tool controls | Local/Docker/SSH/cloud terminal backends | Docker/Podman + Apple Container + WASM + Vercel + Daytona + remote sandboxes |
| Secret handling | Environment/config/plugin paths | Config and provider credentials | secrecy::Secret, encrypted vault, redaction |
| Auth/access | Pairing and gateway controls | CLI plus messaging gateway setup | Password + Passkey + scoped API keys |
| SSRF protection | Tool/plugin dependent | Tool/backend dependent | DNS-resolved, blocks loopback/private/link-local/CGNAT |
| WebSocket origin | Gateway dependent | Gateway dependent | Cross-origin rejection |
| Unsafe/native boundary | N/A for TS core, native apps exist | N/A for Python core, native deps possible | Isolated FFI/runtime unsafe islands |
| Hook gating | Plugin and runtime hooks | Hooks/plugins | BeforeToolCall inspect/modify/block |
| Rate limiting | Gateway dependent | Gateway dependent | Per-IP throttle, strict login limits |
Local Checkout Snapshot
| Metric | OpenClaw | Hermes Agent | Moltis |
|---|---|---|---|
| Main implementation LoC* | ~1.0M TypeScript, ~89K Swift, ~25K Kotlin | ~144K Python, ~8K TypeScript | ~270K Rust |
| Main install path | npm install -g openclaw | curl .../install.sh | bash, then hermes | Install script, Homebrew, Docker, or Cargo |
| Runtime dependency | Node.js | Python environment | Bundled binary |
| Workspace/package count | npm packages, extensions, apps | Python package, plugins, tools, UI packages | 59 Rust crates |
| Test surface signal | Large TS/app test tree | Python and TUI tests | 470+ Rust files containing tests |
* These counts are intentionally limited to app/source directories and exclude dependency folders and build output. They are useful for spotting scale, not for ranking projects.
Links
- OpenClaw and OpenClaw docs
- Hermes Agent and Hermes docs
- Moltis and Moltis docs