Small enough to run on your coffee maker.
406 KB binary ยท 2.7s build ยท 5.4 MB Docker image
AI assistant runtime written in Odin, inspired by NullClaw (Zig).
๐ Detailed Guide: See AGENTS.md for comprehensive operational documentation.
- Tiny: 406 KB binary, 5.4 MB Docker image, 2.7s build on Apple Silicon
- Multi-Provider Support: OpenAI, Anthropic, xAI, Ollama, and 30+ OpenAI-compatible providers
- 10 Built-in Tools: shell, file_read, file_write, file_edit, file_append, git, http_request, memory_store, memory_recall, memory_forget
- Multiple Channels: CLI, Telegram, Slack, Discord
- LMDB Backend: Fast local memory storage
- Gateway Server: HTTP server with CORS, pairing, rate limiting
- Security: ChaCha20-Poly1305 encryption, audit logging, path sandboxing
# Compile C helper for libcurl (one-time)
cc -c src/curl_helpers.c -o src/curl_helpers.o
# Build (optimized for speed)
odin build src -out:odin-claw -o:aggressiveCreate ~/.odin-claw/config.json:
{
"providers": {
"default_provider": "openai",
"default_model": "gpt-4o",
"openai_api_key": "sk-..."
},
"tools": {
"workspace_path": "/tmp"
},
"channels": {
"telegram_api_key": "..."
}
}Or use environment variables:
OPENAI_API_KEYANTHROPIC_API_KEYXAI_API_KEYNULLCLAW_PROVIDERS_DEFAULT_PROVIDER
| Command | Description |
|---|---|
odin-claw agent |
Start the AI agent loop |
odin-claw gateway |
Start HTTP gateway server |
odin-claw channel |
Manage messaging channels |
odin-claw cron |
Manage scheduled tasks |
odin-claw status |
Show system status |
odin-claw doctor |
Run diagnostics |
odin-claw onboard |
Initial setup wizard |
odin-claw skills |
List/manage skills |
odin-claw hardware |
Hardware management |
odin-claw migrate |
Data migration |
odin-claw models |
List available models |
odin-claw daemon |
Run as background daemon |
odin-claw service |
Run as system service |
odin-claw help |
Show help |
- OpenAI: gpt-4o, gpt-4-turbo, gpt-3.5-turbo
- Anthropic: claude-sonnet-4, claude-opus-4
- xAI: grok-2, grok-beta
- Ollama: llama3, mistral, codellama (local)
- OpenAI-Compatible: Groq, DeepSeek, LM Studio, Vercel, Mistral, Cohere, Together, Perplexity, NVIDIA NIM, Venice, Zen/OpenCode
All tools support sandboxed execution with path validation:
shell- Execute shell commandsfile_read- Read filesfile_write- Write filesfile_edit- Edit files (replace text)file_append- Append to filesgit- Git operations (status, commit, push, pull)http_request- Make HTTP requestsmemory_store- Store in memory DBmemory_recall- Search memorymemory_forget- Delete from memory
Run comprehensive tests (25 total in separate test files):
odin test src -all-packagesTests are organized in separate files (*_test.odin) to keep the runtime binary lean and fast.
src/
โโโ main.odin # CLI entry point
โโโ agent.odin # AI agent orchestration
โโโ providers.odin # LLM provider integrations
โโโ tools.odin # Tool definitions
โโโ memory.odin # In-memory storage
โโโ lmdb.odin # LMDB backend
โโโ channels.odin # Messaging channels
โโโ gateway.odin # HTTP server
โโโ config.odin # Configuration management
โโโ runtime.odin # Process execution
โโโ security.odin # Security utilities
โโโ peripherals.odin # Hardware interfaces
โโโ curl_helpers.c # C libcurl bindings
โโโ *_test.odin # Test files (separate from runtime)
# Development build
odin build src -out:odin-claw
# Optimized release build
odin build src -out:odin-claw -o:aggressiveMIT