# OpenClaw: Gaps and Optional Leverage

**Date**: 2026-02-27 | **Issues**: #345, #346, #347 | **SSOT**: GitHub

## (a) 20 search queries and one-line result

| # | Query | One-line finding |
|---|--------|------------------|
| 1 | OpenClaw openclaw/openclaw architecture gateway 2026 | Gateway is hub-and-spoke WebSocket daemon (port 18789), one per host; JSON frames, device identity, optional token auth. |
| 2 | OpenClaw openclaw-community providers config | Multi-provider (Anthropic, AWS, Azure, GCP, Ollama, Venice, OpenRouter); config in ~/.config/openclaw or ~/.openclaw; gateway restart for changes. |
| 3 | OpenClaw GPU local LLM deployment | Supports Ollama, vLLM, LM Studio, llama.cpp as OpenAI-compatible endpoints; VRAM sizing guidance; reasoning on GPU, execution/safety in OpenClaw. |
| 4 | OpenClaw API gateway OpenAI compatible | POST /v1/chat/completions (disabled by default); bearer token; model field for agent selection; SSE streaming. |
| 5 | OpenClaw documentation setup 2025 2026 | Node 22+; install script; openclaw onboard --install-daemon; workspace ~/.openclaw/workspace; 93.4% exposed instances vulnerable (Jan 2026). |
| 6 | OpenClaw GitHub openclaw/openclaw repo structure | TypeScript monorepo: src/gateway, agents, channels, cli, config, memory, security; extensions; apps (macOS/iOS/Android); pnpm, tsdown, Vitest. |
| 7 | OpenClaw openclaw-community openclaw-hub | openclaw-community: openclaw-hub (Python AI gateway, MCP), ai-gateway, Playbook; ClawHub = skill registry (5700+ skills), clawhub.ai. |
| 8 | OpenClaw issues GitHub 2025 2026 | CLI status hangs (plugin runtime keeps event loop alive); update defaults to dev for git installs; Google auth/timeouts; approval service timeouts (fixed). |
| 9 | OpenClaw vs LiteLLM vs Ollama comparison | Ollama = local runtime; LiteLLM = API abstraction; OpenClaw = orchestration above both; hybrid local+cloud; 24–32B+ for tool use. |
| 10 | OpenClaw device pairing node capabilities | Nodes connect with role:node; pairing via CLI/UI; caps/commands/permissions; node.invoke (camera, canvas, system); ~/.openclaw/devices/paired.json. |
| 11 | OpenClaw agent model routing configuration | Multi-agent with bindings; per-agent session dir, model primary/fallbacks; agents.defaults.model; bindings route channels to agents. |
| 12 | OpenClaw WebSocket protocol events | type: event\|req\|res; events: tick, presence, agent, chat, health, shutdown, connect.challenge; idempotency for side effects. |
| 13 | OpenClaw security token authentication sandbox | API keys, setup-token, tokenRef/keyRef; sandbox mode blocks system ops, allowlist shell, block ~/.ssh etc.; multi-agent sandbox scopes. |
| 14 | OpenClaw Venice AI Ollama provider | Venice = privacy-first default; Ollama = local, auto-discovery 127.0.0.1:11434; provider/model naming. |
| 15 | OpenClaw CLI openclaw gateway dashboard | openclaw gateway / openclaw dashboard; Control UI at 127.0.0.1:18789; token from config get gateway.auth.token; SSH tunnel for remote. |
| 16 | OpenClaw read-only discovery inference | /plan directive: read-only mode (read, web_search, memory_search, etc.); plan tool profile; no write ops. |
| 17 | OpenClaw user control permissions opt-in | Exec approvals: full/allowlist/deny; always/on-miss/off prompt; ~/.openclaw/exec-approvals.json; pairing-first for channels (Jan 2026). |
| 18 | OpenClaw multi-GPU vLLM backend | vLLM provider; tensor-parallel-size; auto-discovery or explicit config; 127.0.0.1:8000/v1; cloud GPU options. |
| 19 | OpenClaw JSON config openclaw.json | ~/.openclaw/openclaw.json JSON5; security, provider, skills, channel, gateway; agent workspace, model, channels dmPolicy; openclaw doctor. |
| 20 | OpenClaw production deployment self-hosted 2026 | 93.4% exposed vulnerable; bind loopback, disable mDNS, TLS, encrypt creds, sandbox, approval workflows; 70–130h hardening self-host. |

---

## (b) Main entry points (from public docs / repo inference)

We do **not** have the OpenClaw repo in-tree; the following is inferred from docs and search:

- **Gateway:** `src/gateway` — WebSocket server (default 18789), optional HTTP `/v1/chat/completions`, hub for clients and nodes, JSON frame protocol, device pairing.
- **Providers:** Config-driven model providers (Ollama, Venice, vLLM, Anthropic, etc.); primary/fallbacks, auth profiles, `provider/model` naming; gateway restart to apply.
- **Config:** `~/.openclaw/openclaw.json` (JSON5), Zod-validated; sections: agent (workspace, model), channels (dmPolicy, allowFrom), gateway (auth, port), security (sandbox, exec approvals).

**What would fill our gaps vs what we already do:**  
Our gaps (GPU remit, user control, read-only) are: (1) **remit model** — per-GPU/instance opt-in, in-remit vs off-limits; (2) **read-only discovery** — probe only, never install/reconfig user stack; (3) **user-in-control** — explicit grant, value from real data, no automatic takeover. OpenClaw’s **exec approvals** (allowlist, on-miss/always prompt, deny-by-default) and **device pairing** (explicit approve per node) are conceptually aligned with “user grants only.” Its **/plan read-only mode** (tool profile restricting to read-only ops) is a pattern we could reference for “discover and use, no write” messaging or tooling—not for replicating the agent stack. We already have discovery (read-only), three-tier router, dispatcher, vCache; we keep and improve those. We **build our own** remit, allowlist, and onboarding; we do **not** replicate OpenClaw’s gateway, channels, or agent model.

---

## Stance: we build our own

- **Optional leverage:** Consider patterns only where they clearly serve GPU remit, user control, and read-only access (e.g. approval/allowlist UX, read-only “plan” style constraints, pairing-as-opt-in).
- **Do not replicate:** Gateway, channels, multi-agent bindings, WebSocket protocol, OpenClaw-specific config schema, or agent runtime.
- **Already masterclass:** Router, discovery, dispatcher, vCache — extend with remit/allowlist and local-only path; no replacement by OpenClaw.
