Session per client
Keep each client or project in its own named session. Workspaces, tabs and agents never mix, and each session keeps running on its own while you switch between them.
One session per context
beswarm session start --name acme
beswarm session start --name internal
beswarm session listEach session has its own workspaces, tabs, agents, settings and default notification sound.
Add the repos
From inside each session's TUI, or from a shell:
beswarm --session acme workspace add --name web --path ~/clients/acme/web
beswarm --session acme workspace add --name api --path ~/clients/acme/api
beswarm --session internal workspace add --name tools --path ~/code/toolsAlways pass --session
Commands act on default unless told otherwise, and BeSwarm injects no session context into its tabs. When working outside default, put --session on every command:
beswarm --session acme agent list
beswarm --session acme agent start --name review --agent claude --prompt "Review the open diff"A shell alias saves typing and mistakes:
alias acme='beswarm --session acme'
acme agent listSwitch contexts
Quit the TUI and attach to the other session. Agents in the one you left keep running:
beswarm session attach --name internalWind one down
When an engagement ends, stop its helpers. The saved layout stays on disk:
beswarm --session acme server stopwarning
server stop kills every shell and agent in that session. Check beswarm --session acme agent list first. session clear deletes every session except default and can't be undone.