Overview
CCS supports multiple accounts per OAuth provider (Gemini, Codex, Antigravity, etc.), enabling you to:- Work around rate limits by switching accounts
- Separate personal and work usage
- Test with different quota tiers
- Organize projects by account
Prerequisites
- CCS CLI installed
- OAuth provider configured (gemini, codex, agy, qwen, iflow, kiro, ghcp)
- Browser for OAuth flow
Add Your First Account
Run authentication for the provider:This opens your browser for OAuth. After authorizing, CCS stores the token and assigns a default nickname (your email).Note: First account becomes the default for that provider.
Add Additional Accounts
Use the CCS detects this as a new account and:
--add flag with --auth to add another account:- Opens browser for second OAuth flow
- Stores token separately from first account
- Updates
~/.ccs/cliproxy/accounts.jsonregistry
List All Accounts
View registered accounts:Output shows:
- Account nicknames (email or custom name)
- Default account marker
- Last used timestamp
Switch Default Account
Change which account is used by default:This updates the default in
config.yaml under cliproxy.variants.gemini.account.Note: Switching only affects future sessions, not active ones.Use Account for Single Session
Override default without changing config:This session uses
work@company.com, but next time defaults to configured account.Set Custom Nicknames (Optional)
Make accounts easier to identify:Now you can reference accounts by nickname:
Understanding Account Storage
Registry File: ~/.ccs/cliproxy/accounts.json
Config Reference: ~/.ccs/config.yaml
Common Use Cases
Scenario 1: Rate Limit Rotation
If you hit quota limits, switch to another account:Scenario 2: Separate Work/Personal
Keep projects isolated:Scenario 3: Testing Different Tiers
Compare behavior across quota tiers:Troubleshooting
Account Not Found
Error:Account 'xyz' not found for gemini
Solution: List accounts to verify name:
Default Account Not Set
Error:No default account configured
Solution: Set default explicitly:
