Run Claude Code, Codex, and Grok side by side without conflicts
Every agent CLI wants to own a dotdirectory — ~/.claude, ~/.codex — and they collide. Ringlet gives each agent its own profile: an isolated HOME, credentials, history, and MCP config, so five agents coexist on one machine with zero cross-contamination.
The problem
- Claude Code assumes it owns ~/.claude; Codex assumes ~/.codex. Two agents, two conventions, one home directory.
- Switching between a work account and a personal account means editing CLAUDE_CONFIG_DIR by hand every time.
- Conversation history, MCP servers, and trust caches bleed between projects.
How Ringlet handles it
One profile per agent, fully isolated
A profile is (agent + provider + credentials + isolated HOME). Two Claude Code profiles never see each other's state — separate HOME directories, separate conversation history, separate MCP config, separate trust cache.
Launch the right agent with one command
`ringlet profiles run work` sets HOME, injects the provider's base-URL and credentials, and execs the underlying agent. The agent's own config is never rewritten.
Per-profile MCP configuration
Project A can point a Postgres MCP server at staging while Project B points one at production — with zero risk of running the wrong query against the wrong database.
The commands
ringlet init
ringlet profiles create claude work --provider anthropic
ringlet profiles create codex scripts --provider openai
ringlet profiles create grok research --provider openrouter
ringlet profiles list
ringlet profiles run work