OpenClaw Architecture & Features
OpenClaw's architecture is refreshingly down-to-earth: a single Node.js process carries all the capability. Understanding it helps you deploy, tune, and troubleshoot.
The Single-Process Gateway Model
OpenClaw runs as one persistent Node.js process whose five subsystems cooperate. Everything else — routing, tools, memory, state — lives inside that one process on your machine.
The Five Subsystems
The control plane listens on
127.0.0.1:18789by default, and the Dashboard ishttp://127.0.0.1:18789/. The security of this port matters — a cross-site WebSocket hijacking flaw once made it a critical vulnerability (see Security).
The Agent Loop
The agent runtime runs a classic sense–think–act loop:
- Assemble context: load relevant memory, available tools/skills, current history
- Call the LLM: hand it to the chosen model; get a reply or a tool call
- Execute tools: run shell / browser / email, etc., where tool policy allows
- Write back: feed tool output back to the model, keep reasoning until done
- Consolidate: update Markdown/YAML memory and draft skills as needed
Local Storage Layout
OpenClaw stores state as plain text, making backup, versioning, and auditing easy:
Adjust paths with environment variables:
Heartbeat: Making the Agent Proactive
One of OpenClaw's signature capabilities is the Heartbeat scheduler: it "wakes" the agent at a configurable interval so it can run without being prompted.
With Anthropic OAuth, the default interval is roughly hourly. Besides the heartbeat, webhooks, cron, and teammate messages can also invoke the agent loop. See CLI & Automation.
Key Features at a Glance
- Minimal deployment: single process, plain-text state, starts on 2GB/2 cores
- Reuses chat apps: no custom frontend needed
- Transparent & auditable: memory/skills are readable text, Git-able
- Model-agnostic: cloud or local, with fallback chains
- Born autonomous: Heartbeat + Webhooks + Cron
- Console-managed: local Dashboard / CLI / desktop app
Next Steps
- Installation & Usage — get the gateway running
- Memory System — how plain-text memory is organized
- CLI & Automation — Heartbeat and trigger mechanisms