Cross-tool · Tested with aisw v0.3.10 · Desktop v0.2.1 · Updated July 16, 2026
Client Accounts for AI Coding Agents
Create one aisw context per client, mapping profiles for the coding agents that client uses, including Claude Code, Codex CLI, Gemini CLI, and Antigravity CLI. Bind each client's repositories to its context with workspace guardrails so aisw blocks or warns if the wrong client's account is active. Switch between clients with aisw context use <client>.
Freelancers and consultants juggling several clients face the same problem from three directions at once: separate Claude Code accounts, separate Codex CLI accounts, separate Gemini CLI accounts, and separate repositories that must never cross-contaminate. This guide combines contexts and workspace guardrails into one setup built specifically for that.
Set up a context per client
Repeat this for each client:
aisw add claude acme --api-key "$ACME_CLAUDE_KEY"aisw add codex acme --api-key "$ACME_OPENAI_KEY"aisw add gemini acmeaisw add antigravity acme --from-live
aisw context create acme \ --claude acme \ --codex acme \ --gemini acme \ --antigravity acmeBind each client’s repositories
cd ~/code/acme-webappaisw workspace bind . --context acme
cd ~/code/acme-apiaisw workspace bind . --context acmeRepeat for every repository tied to that client. Multiple repositories can bind to the same context.
Turn on enforcement once
aisw workspace guard --mode strictThis applies to all bound repositories across all clients, you only need to set it once, not per client.
Daily use
Switching to a client’s full setup, whether or not you’re currently in one of their repositories:
aisw context use acmeOr just cd into a bound repository and let the shell hook catch a mismatch automatically before it launches a coding agent with the wrong account.
Desktop method
The current public AI Switcher Desktop release covers macOS, Windows x64, and Linux x64. Download the matching build from /download/, then manage the client contexts through the desktop flow below.

The Contexts list in AI Switcher Desktop shows every client at a glance, including how many repositories each is bound to and when it was last active, useful for a quick sanity check before a call or a handoff.
Verify the result
aisw context listaisw workspace statusConfirms every client context exists with the expected tools mapped, and that the repository you’re currently in (if any) matches its expected context.
Common problems
If two clients’ repositories are accidentally bound to the same context, aisw workspace status will show both under one context name, re-bind the misassigned repository with the correct --context value to fix it.
Frequently asked questions
How does this scale as I add more clients?
Each client is one more context and one more set of profiles, there's no practical limit, and the workflow is identical whether you have two clients or twenty.
What if a client only needs one of the supported tools?
Map only the tools that client actually uses when creating the context. aisw only switches and enforces the tools included.
Can I see which client I'm currently set up for at a glance?
Yes, aisw status shows the active context by name, and if you've bound the current repository, aisw workspace status confirms it matches.
