glossary

The openclaw-rs vocabulary.

The concepts that show up across the architecture, security, and use-case pages, defined in one place.

Agent runtime
The process that executes an AI agent — routing messages, calling tools, invoking providers, and persisting state. openclaw-rs is a runtime you deploy, not a library you assemble a runtime from.
Event sourcing
A pattern where state is stored as an append-only log of events rather than as mutable rows. In openclaw-rs, each session is a log of SessionEvent values, so the current conversation is a projection over that log.
SessionEvent
The unit of the event log. openclaw-rs defines eight kinds: SessionStarted, MessageReceived, MessageSent, ToolCalled, ToolResult, AgentResponse, SessionEnded, and StateChanged.
CRDT projection
Derived state computed from the event log using conflict-free replicated data type semantics. openclaw-rs uses last-write-wins merge, versioned by each event's monotonic sequence, so multi-instance coordination is safe by construction.
sled
An embedded, lock-free key-value store written in Rust. openclaw-rs uses sled as the append-only backing store for session event logs.
JSON-RPC 2.0 gateway
The openclaw-gateway crate: an axum HTTP and WebSocket server exposing methods like session.create, session.message, session.history, session.end, agent.list, agent.status, tools.list, and tools.execute, with per-client rate limiting, auth, and CORS.
Sandbox
The isolation layer for tool execution. openclaw-rs picks a backend per OS — bubblewrap on Linux, sandbox-exec on macOS, Job Objects on Windows — selected by a SandboxConfig level of None, Relaxed, or Strict.
Provider
A client implementing the Provider trait for an LLM vendor. openclaw-providers ships Anthropic and OpenAI clients with SSE streaming, function calling, and custom base-URL support. Google Gemini and Ollama are planned.
Channel
A messaging integration implementing the Channel, ChannelInbound, and ChannelOutbound traits, with allowlist-based access control and rule-based routing. The Telegram adapter ships today; Discord, Slack, Signal, Matrix, and WhatsApp are on the roadmap.
TypeScript plugin bridge
The mechanism in openclaw-plugins that runs existing TypeScript OpenClaw plugins unchanged, communicating over nng IPC and dispatching the same eight lifecycle hooks.
nng
An embedded message-passing transport (nanomsg-next-generation). openclaw-rs uses nng as the IPC channel between the Rust core and TypeScript plugin subprocesses.
napi-rs
A framework for building Node.js native add-ons in Rust. openclaw-node uses napi-rs to expose the Rust providers, credential store, event store, validation, config, and tool registry to Node.js, with pre-built binaries for Linux, macOS, and Windows.
AES-256-GCM credential store
openclaw-rs's encrypted secret storage: AES-256-GCM with Argon2id key derivation, 0600 file permissions, and automatic redaction in logs, so an ApiKey prints [REDACTED].
Lifecycle hook
One of eight extension points a plugin can implement: BeforeMessage, AfterMessage, BeforeToolCall, AfterToolCall, SessionStart, SessionEnd, AgentResponse, and Error.
Single static binary
openclaw-rs compiles to one executable containing the gateway, runtime, sandbox, embedded dashboard, and CLI — no Node runtime and no node_modules to ship, targeting under 15 MB.
go deeper

From vocabulary to running binary.

Every term here maps onto a real crate. The architecture page shows the whole graph; install puts it on your machine.