RetroDeckRETRODECK

OpenClaw vs Hermes Agent vs NanoBot vs NanoClaw: Which Agent Belongs on Your Machine

Choose by sandbox default. NanoClaw runs every agent group in its own container out of the box. OpenClaw, Hermes Agent, and NanoBot ship with isolation available but off, so tools run with your permissions until you enable it. OpenClaw has the most channels and providers; Hermes the deepest memory; NanoBot the smallest Python core.

The question that actually decides it

All four are MIT-licensed personal agents you self-host and reach through chat apps or a terminal, and all four can call hosted or local models. The question that separates them is what the agent can touch when it is wrong or manipulated, which the default sandbox decides. Second is memory: where it lives and whether it can leak between agents. Everything here was checked against each project's repository and docs on November 5, 2026.

OpenClaw: maximum reach, sandbox off by default

OpenClaw is the largest of the four and has the most integrations, with more than twenty channels beyond the usual Slack, Telegram, and WhatsApp. Models and harnesses are swappable plugins, and its local-models page lists llama.cpp, LM Studio, Ollama, MLX, vLLM, and any OpenAI-style endpoint.

The catch is the default. Its README states that tools run on the host for the main session unless you configure sandboxing, and its sandboxing docs say sandboxing is off by default and is not a perfect security boundary. Memory is plain Markdown in the workspace, MEMORY.md plus dated daily notes, with hybrid vector and keyword search when embeddings are configured.

Its DigitalOcean guide uses a 1 vCPU, 1 GB droplet with swap; its smallest managed local-model recipe needs 8 GiB of host memory.

Hermes Agent: the learning loop, isolation is a setting

Hermes, from Nous Research, is built around memory that improves itself: agent-curated MEMORY.md and USER.md files with character caps, full-text search across past sessions with model summaries, and skills the agent writes after complex tasks. Model support covers Nous Portal, OpenRouter, OpenAI, and custom endpoints, and since v0.22.0 (October 14, 2026) it can install and manage a llama.cpp runtime itself, recommending only models that fit your memory with at least a 64K context.

Its configuration docs describe the default terminal backend, local, as running commands directly on your machine with no isolation. Docker, SSH, Modal, Daytona, and Vercel Sandbox are one setting away.

NanoBot: the readable Python one

NanoBot, from the HKU Data Intelligence Lab, is a small Python agent installed with pip or uv. It speaks OpenAI-compatible APIs and documents Ollama and vLLM setups. Memory consolidates through a process it calls Dream into USER.md and memory/MEMORY.md, and v0.4.0 (October 28, 2026) moved conversation history into SQLite.

Workspace restriction is off by default. The docs tell production users to enable both the workspace guard and a shell sandbox, bubblewrap on Linux or seatbelt on macOS.

NanoClaw: containers first, Claude first

NanoClaw's README describes OpenClaw as nearly half a million lines of code and itself as one process and a handful of files. Every agent group runs in its own Linux container and sees only what you mount. Each group has its own CLAUDE.md and memory, and a credential gateway injects API keys per request so they never enter the container.

The trade-off is model breadth. It runs natively on Anthropic's Claude Agent SDK; Codex, OpenCode, Cursor, and Ollama arrive through add-on skills, configurable per agent group. It also needs Docker running.

How to choose

Isolation by default: NanoClaw. Most channels and providers: OpenClaw, with a sandbox on day one. Memory that compounds: Hermes on the Docker backend. Code you can read in an afternoon: NanoBot with bubblewrap or seatbelt.

Whichever you choose, the memory files grow and get pasted into every prompt. Keeping reference knowledge in a searchable index rather than in the prompt is what keeps per-turn token cost flat; RDK does this for local vaults, cutting token spend 80 to 90 percent on repeated or reference-heavy work.

DimensionOpenClawHermes AgentNanoBotNanoClaw
Maintaineropenclaw/openclawNous ResearchHKUDS (HKU)nanocoai/nanoclaw
Latest release2026.11.1 (Nov 5)v0.23.0 (Nov 5)v0.4.0 (Oct 28)2026.10.0 stable
RuntimeNode.js 24 or 26Python plus NodePython 3.11+Node host, Docker containers
Stated footprint1 GB droplet guide, with swapNone stated; README cites a $5 VPSNone statedDocker plus a container per group
ModelsHosted and local, swappableNous Portal, OpenRouter, OpenAI, custom, managed llama.cppOpenAI-compatible, Ollama, vLLMClaude Agent SDK; others via skills
Default sandboxOff; main-session tools on hostLocal backend, no isolationWorkspace guard offContainer per agent group
Sandbox optionsDocker, Podman, SSH, OpenShell, CrabboxDocker, SSH, Modal, Daytona, Vercel Sandboxbubblewrap, seatbelt, Docker imageContainers, credential gateway
MemoryMarkdown files, hybrid searchCapped files, session search, skillsDream into Markdown, SQLite historyPer-group CLAUDE.md and memory
GitHub stars394k261k49.9k31.1k

Frequently asked questions

Which is the most secure: OpenClaw, Hermes, NanoBot, or NanoClaw?
Out of the box, NanoClaw, because every agent group runs in its own Linux container and credentials stay outside it. OpenClaw, Hermes, and NanoBot all ship with isolation available but off by default, so their main tools run with your user's permissions until you enable Docker, bubblewrap, seatbelt, or a remote backend.
Which one runs best on a small machine or cheap VPS?
When the model is hosted, all four are light, since the agent process is small. OpenClaw documents a 1 GB droplet with swap, and Hermes cites a $5 VPS. NanoClaw adds Docker and a container per agent group. Running the model locally changes everything: OpenClaw's smallest managed recipe needs 8 GiB of host memory.
Can all four use local models?
Yes, with different effort. OpenClaw and Hermes can install and manage a llama.cpp runtime for you, and Hermes sizes models to your memory with a 64K context floor. NanoBot documents Ollama and vLLM setups. NanoClaw is built on the Claude Agent SDK and adds Ollama through a skill.
How do their memory systems differ?
OpenClaw keeps Markdown memory files and daily notes with hybrid vector and keyword search. Hermes caps its memory files, searches past sessions, and writes reusable skills. NanoBot consolidates conversations into Markdown memory through a step it calls Dream. NanoClaw gives each agent group its own CLAUDE.md and memory, isolated from other groups.