# accounts Read when: using more than one WhatsApp account, choosing the active account, or migrating from manual `--store` directories. `wacli accounts` manages named accounts. Each account is an isolated store directory with its own WhatsApp linked-device session, local mirror database, media files, and lock. ## Commands ```bash wacli accounts list wacli accounts add NAME [--no-auth] wacli accounts use NAME wacli accounts show NAME wacli accounts remove NAME ``` Use a named account with any command: ```bash wacli --account work chats list wacli --account personal send text --to 1234567890 --message "hi" ``` ## Config The default config path is `/config.yaml`, where `` is the default store root (`~/.wacli` on macOS and existing legacy Linux installs, otherwise `~/.local/state/wacli` on Linux). ```yaml default_account: personal accounts: personal: store: accounts/personal work: store: accounts/work ``` Relative `store` paths resolve from the config directory. Absolute paths are allowed for custom layouts. ## Selection Rules Store selection is intentionally explicit: 1. `--store DIR` uses that exact store and cannot be combined with `--account`. 2. `--account NAME` resolves `NAME` from `config.yaml`. 3. `WACLI_STORE_DIR` keeps its existing override behavior for scripts and one-off stores. 4. If `default_account` is set, commands use that account. 5. Otherwise existing single-store behavior remains: XDG state dir on Linux, or `~/.wacli` elsewhere. Account names may contain letters, digits, `.`, `_`, and `-`, and must start with a letter or digit. ## Notes - `accounts add NAME` creates the isolated store and then runs the normal auth/bootstrap flow for that account. Use `--no-auth` to only write config and create the store. - Locks are per account store, so `wacli --account personal sync --follow` and `wacli --account work chats list` do not block each other unless they share the same store path. - Cross-account search or status should be explicit aggregate commands, not accidental shared database queries. - Use `--store DIR` for one-off migration/debugging against an old manual store.