aisw CLI

Manage multiple coding-agent accounts from the terminal.

Named profiles, cross-tool contexts, repository guardrails, verification, backups, and machine-readable commands in one open-source Rust CLI.

Install aisw

brew tap burakdede/tap
brew install aisw

Import the account you're already using.

Point aisw at a coding agent that's already signed in and it saves the live credentials as a named profile, without touching your active session.

$ aisw init$ aisw add claude work --from-live

Switch one coding agent.

Activate a saved profile for a single tool. aisw applies the stored credentials to the location that tool already reads from and records what's active.

$ aisw use claude work

Switch matching profiles across every tool.

When your profiles share a name across providers, switch all of them in one command instead of repeating it per tool.

$ aisw use --all --profile personal

Switch a complete mixed context.

A context maps a specific profile per tool under one name, even when the underlying profile names differ. Activate the whole mapping at once.

$ aisw context use client-acme

Bind a repository to a context.

Connect a directory or Git remote to the context it should use, then let aisw warn or block when the active accounts don't match.

$ aisw workspace bind . --context client-acme$ aisw workspace guard --mode strict

Verify what's actually active.

Check the recorded profile against live provider state, context, and workspace expectation. aisw explains what drifted and how to repair it.

$ aisw verify

Script it with machine-readable output.

Every state-reading command has a JSON form, so other tools — including AI Switcher Desktop — can read status without parsing terminal output.

$ aisw status --json$ aisw capabilities --json$ aisw verify --json

What kinds of account-switching workflows does the CLI cover?

The aisw CLI is for the repetitive cases developers normally patch together with copied credential files and shell notes: switching between two Claude Code accounts, keeping a personal Codex CLI login separate from a client one, moving an entire multi-tool setup from one workspace to another, or keeping Antigravity CLI on the right local account alongside the other agents. It gives those workflows stable names and repeatable commands instead of hidden state.

The most common entry point is saving one live account as work, adding another as personal, and using aisw use <tool> <profile> to switch deliberately. Once that becomes too narrow, contexts let the CLI represent the real unit of work: a client, a team, or a repository family that needs its own account map.

CLI account-switching FAQ

These answers target the practical search intent behind most terminal users who land on the CLI page.

Can aisw switch accounts without making me log out every time?

Yes. Once an account is saved as a profile, switching means applying that saved credential back to the location the tool already reads from. You do not need a fresh logout-login cycle for routine switches.

Can I switch all supported tools together if the accounts belong to one client or workspace?

Yes. Use a context to map the supported tool profiles you want under one name, including Claude Code, Codex CLI, Gemini CLI, and Antigravity CLI, then activate that full setup with aisw context use <name>.

Can aisw stop me from using the wrong account in the wrong repository?

Yes. Bind a repository to its expected context with workspace rules, then enable guard mode. AI Switcher can warn or block when the active account set does not match the repository you opened.

Is this only for two accounts, or can I manage many client accounts?

You can manage as many named profiles and contexts as you need. The common pattern is personal, work, and one context per client, but the CLI is not limited to that.