Overview
NullClaw is the smallest fully autonomous AI assistant infrastructure written entirely in Zig. It compiles to a single static binary (678 KB) with near-zero overhead, no runtime, no VM, and no framework dependencies. It boots in milliseconds, peaks at ~1 MB RAM, and runs on anything with a CPU — including $5 ARM boards.
Tagline: Null overhead. Null compromise. 100% Zig. 100% Agnostic.
Features
- Impossibly Small: 678 KB static binary — no runtime, no VM, no framework overhead
- Near-Zero Memory: ~1 MB peak RSS — runs comfortably on the cheapest ARM SBCs
- Instant Startup: <2 ms on Apple Silicon, <8 ms on a 0.8 GHz edge core
- True Portability: Single self-contained binary across ARM, x86, and RISC-V
- Feature-Complete: 50+ AI providers, 19 communication channels, 30+ tools, hybrid vector+FTS5 memory, multi-layer sandboxing, tunnels, hardware peripherals, MCP, subagents, streaming, and voice support
- Secure by Design: Pairing via 6-digit PIN, strict sandboxing (Landlock, Firejail, Bubblewrap, Docker), explicit allowlists, workspace scoping, and encrypted secrets
- Fully Swappable: Every subsystem uses vtable interfaces (providers, channels, tools, memory, etc.)
Core Capabilities
Providers
Universal model multiplexer with 50+ built-in providers (OpenRouter, OpenAI, Anthropic, Ollama, Groq, xAI, DeepSeek, and any OpenAI-compatible endpoint). Automatic model selection, streaming, key rotation, and rate-limit handling.
Tools
Secure execution engine with 30+ built-in tools (shell, file operations, memory store/recall, browser control, screenshot, Composio integration, hardware diagnostics). Configurable auto-approve, timeouts, and resource limits.
Channels
19 built-in communication channels including CLI, Telegram, Discord, Slack, Signal, WhatsApp, Matrix, iMessage, Webhook, Nostr, and hardware-specific (MaixCam, etc.).
Memory
Self-contained SQLite backend with hybrid search (vector cosine similarity + FTS5 keyword matching via BM25). Auto-compaction, archival, and zero network overhead.
Runtimes & Security
Native, Docker, or WASM execution. Multi-layer sandboxing, encrypted audit trails, and hardware peripheral support (GPIO, Arduino, Serial).
Installation
Homebrew (Recommended)
brew install nullclaw
nullclaw --help
Build from Source
Requires Zig 0.15.2 exactly:
git clone https://github.com/nullclaw/nullclaw.git
cd nullclaw
zig build -Doptimize=ReleaseSmall
zig build test --summary all
Add to PATH and run nullclaw --help.
Quick Start
# Onboard a provider
nullclaw onboard --provider openrouter --api-key YOUR_KEY
# Interactive agent
nullclaw agent
# One-shot command
nullclaw agent -m "Hello, NullClaw!"
# Start gateway (headless mode)
nullclaw gateway
# Status & diagnostics
nullclaw status
nullclaw doctor
Use Cases
- Interactive Development: Terminal mode for code refactoring, test execution, and PR management with human oversight.
- Headless Automation: Gateway mode for background pipelines, scheduled tasks, and orchestrator integration.
- Edge & IoT Deployments: Run on $5 hardware for local AI assistants with messaging channels (Telegram, Discord) and hardware control.
- Browser-Based Teams: Pair with NullClaw Chat UI for streaming responses, tool timelines, and visual approvals.
- Migration: Built-in tools to import memory and configs from OpenClaw and similar frameworks.
Benchmarks (vs Competitors)
| Metric | OpenClaw | NanoBot | PicoClaw | ZeroClaw | NullClaw |
|---|---|---|---|---|---|
| Language | TS | Python | Go | Rust | Zig |
| RAM | >1 GB | >100 MB | <10 MB | <5 MB | ~1 MB |
| Startup (edge) | >500 s | >30 s | <1 s | <10 ms | <8 ms |
| Binary Size | ~28 MB | N/A | ~8 MB | 3.4 MB | 678 KB |
| Min Hardware | $599 | $50 | $10 | $10 | $5 |
Philosophy
Modern AI infrastructure is bloated with runtimes and dependencies. NullClaw rejects this: lean by default (pure Zig static binary), secure by design (multi-layer sandboxing + explicit permissions), and fully extensible via pluggable vtables. No lock-in, no compromise.
Documentation & Resources
Full docs (English & 中文) in the repo:
Contributing, security reports, and examples are in the root repository.
