-
Notifications
You must be signed in to change notification settings - Fork 51
Open
Description
Summary
Support using multiple Claude Max accounts to distribute quota across agents, avoiding rate limits and enabling continuous operation.
Problem
When running multiple agents, a single Claude Max account's quota can be exhausted quickly. Currently, all agents share the same ~/.claude/.credentials.json via symlinks, so there's no way to spread load across multiple accounts.
When quota runs out:
- Claude processes exit
- Daemon health check (2 min) detects dead PIDs
- Persistent agents restart in a loop until quota restores
This creates a bad experience when hitting quota limits frequently.
Proposed Solution
Allow configuring multiple Claude accounts and assigning them to different agents.
Configuration
Add account configuration to repo settings:
accounts:
- name: primary
credentials: ~/.claude/.credentials.json
agents: [supervisor, merge-queue]
- name: secondary
credentials: ~/.claude/.credentials-secondary.json
agents: [default]
- name: worker-pool
credentials: ~/.claude/.credentials-workers.json
agents: [workers] # special: all worker agents use thisOr simpler CLI approach:
multiclaude config set-account supervisor ~/.claude/.credentials-account1.json
multiclaude config set-account workers ~/.claude/.credentials-account2.jsonImplementation
- Add
accountorcredentials_filefield to agent state - Modify
linkGlobalCredentials()indaemon.goto use per-agent credential paths - Add CLI commands for managing account assignments
- Optionally: round-robin workers across multiple accounts
Credential Setup
Users would need to:
claude logout- Login to account 2
cp ~/.claude/.credentials.json ~/.claude/.credentials-account2.json- Repeat for additional accounts
- Login back to primary account
Or add a helper command:
multiclaude accounts add secondary # prompts for OAuth login, saves to separate fileBenefits
- Distribute quota across accounts for longer continuous operation
- Isolate high-volume workers from critical supervisor/merge-queue agents
- Enable team scenarios where different team members contribute their quotas
Additional Context
Related code locations:
internal/daemon/daemon.go:linkGlobalCredentials()internal/state/state.go: Agent structpkg/config/paths.go: Path configuration
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels