Expand description
§OpenCrabs
The autonomous, self-improving AI agent. Single Rust binary. Every channel.
OpenCrabs is a high-performance AI orchestration agent with a modern TUI, multi-channel messaging (Telegram, Discord, Slack, WhatsApp), and an extensible tool system — all in one statically-linked binary.
§Providers
- Anthropic — Claude models (Sonnet, Opus, Haiku)
- OpenAI — GPT-4, GPT-5, o-series models
- Google Gemini — Gemini 2.x family
- OpenRouter — 300+ models via single API key
- MiniMax — MiniMax-M2.7, MiniMax-M2.5, Kimi, and Text models
- Custom — any OpenAI-compatible endpoint (Ollama, LM Studio, vLLM, etc.)
§Features
- Modern TUI — Ratatui-based terminal interface with streaming, markdown, and syntax highlighting
- Multi-Channel — Telegram, Discord, Slack, and WhatsApp gateways with shared sessions
- Tool System — 30+ built-in tools (shell, file I/O, web search, code execution, etc.)
- A2A Protocol — Agent-to-Agent communication for multi-agent workflows
- Local-First — SQLite storage, config hot-reload, no cloud dependency
- Session Management — persistent chat sessions with token/cost tracking
- Cron Scheduler — scheduled agent tasks with natural-language definitions
§Quick Start
# Interactive TUI mode
opencrabs
# Non-interactive (pipe-friendly)
opencrabs run "explain this code"
# With auto-approve
opencrabs run --auto-approve "refactor this file"§Architecture
| Module | Purpose |
|---|---|
brain | LLM providers, tool registry, agent service |
channels | Telegram, Discord, Slack, WhatsApp handlers |
tui | Terminal UI (Ratatui + crossterm) |
db | SQLite persistence (deadpool-sqlite) |
config | TOML config with hot-reload and key separation |
a2a | Agent-to-Agent protocol server |
cron | Scheduled task execution |
services | Session, message, and file services |
Re-exports§
pub use error::ErrorCode;pub use error::OpenCrabsError;
Modules§
- a2a
- A2A (Agent-to-Agent) Protocol implementation for OpenCrabs.
- app
- Application Module
- brain
- Brain Module
- channels
- Channel Integrations
- cli
- CLI Module
- config
- Configuration Module
- cron
- Cron Scheduler
- db
- Database Layer
- error
- Error types for OpenCrabs.
- logging
- Logging and Debug System
- memory
- Memory Module
- pricing
- Centralized model pricing table
- services
- Service Layer
- tui
- Terminal User Interface
- utils
- Utility modules for common functionality
Constants§
- AUTHORS
- Package authors
- DESCRIPTION
- Package description
- VERSION
- Version information