Ringlet vs Claude Squad — orchestrator vs parallel runner
Side-by-side: Ringlet's long-lived isolated profiles vs Claude Squad's parallel git-worktree task runner. They're not competitors — most teams want both. Here's when each is right, and how to compose them.
Claude Squad is a terminal-app that lets you run multiple coding agents (Claude Code, Codex, Aider, etc.) in parallel on git worktrees. It’s the right tool when you have a stack of well-specified tasks and want them all making progress at once.
Ringlet is an orchestrator for long-lived agent profiles. It’s the right tool when you have a small number of projects, each with their own credentials, providers, and context that should persist across days.
These aren’t competing tools — they sit at different layers in the stack. This page explains where each fits and how to use both together.
The mental model
Think of Claude Squad as a parallel task runner — like make’s -j8 flag for AI coding agents. You give it a list of independent tasks, it spawns one agent per task on a fresh git worktree, you come back to N diffs.
Think of Ringlet as the agent environment manager — like nvm or rustup but for AI agent CLIs. You give it a profile (credentials + provider + workspace), it launches the agent with the right environment, the agent’s history persists across sessions.
The two questions they answer:
- Claude Squad: “What’s currently running?”
- Ringlet: “Which context is this agent in?”
Where they overlap, where they don’t
Both can launch a coding agent. Both can manage multiple agents on the same machine. The overlap stops there.
| Claude Squad | Ringlet | |
|---|---|---|
| Parallel agent execution | ✓ (git worktrees) | ✗ (one at a time per profile) |
| Long-lived context per project | ✗ (worktrees are per-task) | ✓ (profiles persist) |
| Per-profile credentials in keychain | ✗ (shell env) | ✓ (Keychain / Secret Service) |
| Provider switching per profile | ✗ | ✓ (Anthropic, OpenAI, MiniMax, OpenRouter) |
| Cross-agent cost tracking | ✗ | ✓ (SQLite ledger across all profiles) |
| Event hooks (audit / Slack / guards) | ✗ | ✓ |
| Sandboxed remote PTY (browser access) | ✗ | ✓ |
| Web dashboard | ✗ (TUI) | ✓ (Vue 3 + xterm.js) |
| Single binary, no extra services | ✓ | ✓ |
Using them together
The setup we recommend for engineers who use both patterns:
# Install both
curl -fsSL https://raw.githubusercontent.com/neul-labs/ringlet/main/install.sh | sh
brew install smtg-ai/tap/claude-squad
# Create a Ringlet profile per long-lived project
ringlet profiles create claude acme-api --provider anthropic --key-alias acme
ringlet profiles create claude personal --provider minimax --key-alias personal
# For serial work in acme-api: regular Ringlet
ringlet profiles run acme-api
# For a parallel-task burst within acme-api: Claude Squad inside the profile
ringlet profiles run acme-api -- claude-squad
When you run claude-squad inside a Ringlet profile, Squad inherits the profile’s environment — including the correctly-scoped ANTHROPIC_API_KEY and any provider routing. Each Squad-spawned agent on each git worktree uses the profile’s credentials. Cost lands on the right account. The agent’s own state (history, project memory) is shared because they’re all inside the same profile HOME — usually what you want for “five parallel tasks in one project.”
When to skip Ringlet entirely
If your day looks like this — one Anthropic account, one provider, no per-project memory you care about preserving, just “give me a parallel task runner” — Claude Squad alone is enough. Ringlet’s value is in the cases where you have more than one of these things to keep separate.
When to skip Claude Squad entirely
If your day looks like this — work on one project at a time, the agent remembers what we discussed yesterday, parallelism isn’t a feature you’ve ever wanted — Ringlet alone is enough. Claude Squad’s value is in dispatching many tasks at once.
What we ended up doing
Most of us at Neul Labs run Ringlet as the always-on layer, and reach for Claude Squad maybe once a week when we have a batch of small tasks. The Ringlet profiles outlive any individual task; Claude Squad sessions are bursty.
If we were starting fresh today and could only install one, we’d install Ringlet first — credential isolation across accounts is a daily pain point. The parallel-task pattern is a “once a week” pattern for us. Yours may differ.
Honest things to know
Claude Squad is a better choice than Ringlet for parallel task running. We don’t try to compete on that surface and we don’t plan to. If you have a workflow that’s mostly “five tasks at once,” install Claude Squad and don’t worry about Ringlet until you also need credential isolation.
Conversely, Claude Squad doesn’t replace Ringlet’s credential / provider / cost layer. Those features are out of scope for what Squad is. The recommendation to run them together isn’t backhanded — it genuinely is the cleanest setup if you want both.
- You work on a few projects serially and want long-lived agent context that survives across days.
- You need credential isolation across multiple accounts at the same provider (e.g. two Anthropic keys).
- You want cross-agent cost tracking, not just per-task.
- You need to bind one agent to multiple providers (Claude Code → Anthropic for work, MiniMax for personal).
- You want sandboxed remote terminal sessions accessible from a browser.
- You want to layer Claude Squad on top — Ringlet handles credentials and isolation, Squad does parallel runs.
- You have a backlog of independent, well-specified tasks and want to dispatch them in parallel.
- You want one agent per git worktree with automatic worktree management.
- You don't need provider switching or long-lived per-project context.
- You're OK reviewing many diffs at once and merging selectively.
FAQ
- Can I use both Ringlet and Claude Squad?
- Yes — that's the recommended setup if you need both shapes. Install both, run Claude Squad inside a Ringlet profile. Squad inherits the profile's credentials, provider, and HOME; you get parallel task running without losing isolation.
- Does Claude Squad do credential isolation?
- Claude Squad uses git worktrees to isolate filesystem state per task, but it inherits the parent shell's environment for credentials. Two parallel agents share one ANTHROPIC_API_KEY unless you wrap each one in a different shell session. Ringlet handles credential isolation at the profile level.