chatwoot / chatwoot/cli

Support multiple profiles (instances/accounts)

Open
#24 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
8
Forks
5
PR merge metrics
No merged PRs in 30d

Description

### Is your feature or enhancement related to a problem? Please describe.

The CLI stores a single instance in `~/.chatwoot/config.yaml` (base URL + account ID, with the token in the OS keyring). If you work across more than one Chatwoot there's no way to keep them side by side: a self-hosted staging vs production, an agency with several client accounts, or one person who belongs to multiple accounts. The only option today is re-running `auth login`, which overwrites the saved login every time you switch. `internal/config/CLAUDE.md` already lists this as a TODO ("Add profile support (multiple saved credentials)").

### Describe the solution you'd like

Named profiles, following the CLI's existing noun grammar:

```
chatwoot auth login --profile staging # save a second instance
chatwoot profiles # list saved profiles
chatwoot profile staging use # set the default
chatwoot --profile staging convs # one-off override for one command
```

Resolution order: `--profile` flag, then `CHATWOOT_PROFILE`, then a configured default, then `default`. Each profile keeps its own token in the keyring. The existing flat config would migrate into a `default` profile on first load, so current setups keep working with no re-login.

### Describe alternatives you've considered

- Re-running `auth login` to switch instances (the status quo, loses the previous login each time).
- `CHATWOOT_API_KEY` plus `-a` for the account, but the env var is global, so it can't hold more than one instance at once and still needs the matching base URL.
- Hand-managed config files or per-shell wrappers, which is the manual version of what profiles would do.

### Additional context

I run a few instances and would be glad to open a PR for this if it's a direction you'd accept.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.