One CLI to rule all your coding agents.
Stop juggling configs between Claude Code, Grok CLI, Codex, and others. ringlet gives you profiles, provider switching, and intelligent routing—so you can focus on shipping code.
curl -fsSL https://raw.githubusercontent.com/neul-labs/ringlet/main/install.sh | shOr build from source:
git clone https://github.com/neul-labs/ringlet.git
cd ringlet && cargo build --release# See what agents you have installed
ringlet agents list
# Create a profile with your preferred provider
ringlet profiles create claude work --provider anthropic
ringlet profiles run work
# Or use MiniMax for cost-effective Claude-compatible requests
ringlet profiles create claude cheap --provider minimax --model MiniMax-M2.1
ringlet profiles run cheap| Problem | Solution |
|---|---|
| Different config files for each agent | One profile system for all agents |
| Manual API key management | Secure credential storage per profile |
| Can't easily switch providers | Swap Anthropic/MiniMax/OpenRouter without touching code |
| No visibility into usage | Built-in token tracking and cost analytics |
| Complex proxy setups for routing | Native ultrallm integration with rule-based routing |
# Create isolated profiles with different providers
ringlet profiles create claude work-anthropic --provider anthropic
ringlet profiles create claude work-minimax --provider minimax
# Install as executable aliases
ringlet aliases install work-anthropic
claude-work-anthropic # runs with isolated config and credentials# Enable proxy for smart routing based on context
ringlet profiles create claude routed --provider anthropic --proxy
ringlet proxy enable routed
# Route long-context requests to cost-effective providers
ringlet proxy route add routed "long" "tokens > 100000" "minimax/MiniMax-M2.1" --priority 10
ringlet proxy route add routed "default" "always" "anthropic/claude-sonnet-4"# Add hooks for logging, notifications, or custom workflows
ringlet hooks add work PreToolUse "Bash" "echo '$EVENT' >> ~/.ringlet/audit.log"
ringlet hooks add work Notification "*" "notify-send 'Claude' '$MESSAGE'"# Track tokens and costs across all profiles
ringlet usage
ringlet usage --period month --profile work
# Import existing Claude usage data
ringlet usage import-claude┌─────────────────────────────────────────────────────────────┐
│ CLI (ringlet) │
│ └── Thin client, auto-starts daemon │
├─────────────────────────────────────────────────────────────┤
│ Daemon (ringletd) │
│ └── Profiles │ Registry │ Telemetry │ Web UI │
├─────────────────────────────────────────────────────────────┤
│ Agents │
│ └── Claude Code │ Grok CLI │ Codex │ Droid │ OpenCode │
├─────────────────────────────────────────────────────────────┤
│ Providers │
│ └── Anthropic │ MiniMax │ OpenRouter │ Custom │
└─────────────────────────────────────────────────────────────┘
The daemon starts automatically on first CLI use and exits after idle timeout (or pin with ringlet daemon --stay-alive).
ringlet agents list # Show installed agents and versions
ringlet profiles create # Create a new profile
ringlet profiles list # List all profiles
ringlet profiles run <name> # Run agent with profile
ringlet aliases install <name> # Create executable alias
ringlet proxy status # Check proxy status
ringlet proxy route list <name> # List routing rules
ringlet hooks list <name> # List profile hooks
ringlet usage # View usage stats
ringlet registry sync # Update agent manifests
ringlet daemon --stay-alive # Keep daemon runningFull documentation at docs.neullabs.com/ringlet
| Guide | Description |
|---|---|
| Architecture | Component overview and data flow |
| Agents | Supported agents and custom manifests |
| Providers | API backends and custom providers |
| Profiles | Profile lifecycle and workflows |
| Hooks | Event-driven automation |
| Proxy | Request routing with ultrallm |
| Usage | Token tracking and analytics |
| Scripting | Rhai configuration scripting |
| Component | Status |
|---|---|
| CLI + Daemon with IPC | ✅ Stable |
| Agent detection (Claude, Grok, Codex, Droid, OpenCode) | ✅ Stable |
| Provider support (Anthropic, MiniMax, OpenRouter) | ✅ Stable |
| Profile hooks and Rhai scripting | ✅ Stable |
| Proxy routing with ultrallm | ✅ Stable |
| Web UI and HTTP/WebSocket APIs | ✅ Stable |
| Token/cost tracking | ✅ Stable |
| Plugin SDK | 🔜 Planned |
| Cross-device sync | 🔜 Planned |
Open an issue for design discussions before implementing major features. See the contribution guide for details.
MIT - see LICENSE