Feature reference · pre-release

Profiles, Loadouts and privacy

Make identity, configuration and data-use posture explicit before dispatch.

Reviewed October 23, 2026. This reflects the current source code, not a certified running build or a public release announcement.

For a step-by-step workflow, read Configure accounts and a two-agent default view. For current provider support, consult Capabilities; this chapter describes reviewed surfaces and their limits.

Profiles and named accounts

Profiles collects provider configuration, native account references and project-specific selections. A named Claude, Codex or Gemini CLI account isolates provider-owned authentication roots. An API profile instead points to an endpoint.

Boundary and recovery: An account label is not proof of sign-in. Inspect actual run identity before spending quota; keep credentials out of reusable Loadouts and public diagnostics.

Inspect account references without opening a chat

This provider-scoped inspection uses no project placeholder. It lists the Codex account names Commandem knows.

Read-only inspection.

commandem account --agent codex list --json

Expected result: Non-secret account metadata and data-use posture. The list does not authenticate an account or prove live quota availability.

Create an isolated account reference

Replace DEMO_ACCOUNT with a new non-sensitive short name. This creates the local profile reference/root; it does not sign in or start an agent.

Writes local state.

commandem account --agent codex add DEMO_ACCOUNT

Expected result: A new isolated account reference and native sign-in guidance. Follow the authentication guide before selecting it for a run.

Loadouts and role routing

Loadouts bundle reusable routing and behavior choices, including account references per role. Project and pane overrides are distinct from the global default. Inspect role bindings before unattended work.

For Claude, Codex and Gemini, the composer’s agent and model selector has a Profile section, after Agent and before Model, with account choices even when the current account is default. It is the single Profile selector; a non-default account or queued switch remains identified in its menu and accessibility description. A switch requested during an active turn waits until that turn ends. The same selector offers provider-supported reasoning effort; its slider records the requested setting, not a report of the provider’s effective effort. A pane Loadout can apply a known supported account, but a missing saved account currently falls back to default. Inspect the effective account after applying; if it differs from the intended account, stop before sending.

Local role bindings use the shared discovered model catalog. Local agent/model choices carry the Local badge and available tier or estimate information; catalog metadata is not proof of live model readiness or safe tool use.

Boundary and recovery: Unknown accounts should be refused, not replaced silently. Quota failover is an explicit declared policy and should name the account actually used in evidence.

Inspect project role bindings

Replace PROJECT with the exact registered name. Inspect the effective routing before starting unattended work.

Read-only inspection.

commandem roles PROJECT --json

Expected result: Role bindings and their source. Account references are configuration, not copied credentials or permission to fail over silently.

Configuration scope is not conversation ownership
ScopeWhat it suppliesWhat it does not prove
Named accountA reference to one provider-owned authentication root.Successful sign-in, current quota or a verified training toggle.
Loadout and roleReusable routing, account and behavior choices.Permission to bypass policy or silently choose another account.
Project and paneThe local selections and context of the conversation you are opening.Ownership of a different provider's native session.
Inspect effective identity before dispatch. Native resume and reviewed bridge are distinct continuation paths.

Modes and notification posture

Notification preferences provide per-type delivery/priority behavior and a quiet posture. Select a declared mode where supported; inspect the current effective policy rather than assuming a profile name means Do Not Disturb.

Boundary and recovery: OS notification permissions and app policy both matter. A quiet mode should not hide durable evidence or confer execution authority; scheduling capability must be checked independently.

Use Notifications settings to inspect per-type priority and quiet behavior. A quiet notification mode is not the same as Incognito or a security posture.

Privacy and Data Use Gate

Privacy separates provider data-use posture, local retention and delivery authority. A gate needs to know which account/endpoint will receive data; unknown training posture must stay unknown with a provider-setting link.

Boundary and recovery: Commandem cannot read every consumer training toggle. Local-first does not mean no code leaves the machine when a remote agent is invoked.

Chat shows a separate privacy notice when a recognized privacy refusal blocks startup, a message or a correction to the current reply. The notice distinguishes a block, required review and a check that could not complete; an audit failure is called out separately. Privacy settings opens Settings → Security, while Dismiss only hides the notice. Neither action retries the request or grants an override.

For an identified manual message or correction, available original plain text is returned to the draft for review. Images are not re-attached automatically; add them again when the notice asks. A refused correction leaves the original reply running. Review settings and the draft before sending again.

Where available, Start with project privacy override is a separate explicit owner action for an idle local stdio Claude, Codex or Gemini chat using a compatible Commandem CLI. It uses the saved configuration for that exact project, preserves the draft and does not resend it automatically. Attached sessions and mention children do not gain this entry, and an unsatisfied Strict requirement stays in force. The separate Project privacy override notice describes authorization for that attempt; it does not confirm provider delivery. Dismissal changes presentation only.

Preview a named account's data-use gate

Replace PROJECT and DEMO_ACCOUNT with existing entries. This evaluates the reviewed local policy and account posture without launching the provider.

Inspection with possible local scan-cache writes.

commandem privacy evaluate PROJECT --agent codex --account DEMO_ACCOUNT --json

Expected result: A policy decision with the stated scope, reasons and any unknown posture. Workspace-scoped evaluation can refresh the local privacy scan cache; it does not change project classification or account attestation. An allow decision is not proof that Commandem read a consumer training setting or that every later payload will be allowed.

Incognito boundary

Incognito concerns local retention and selected session behavior; it is separate from a provider's training policy. Verify provider support and the applicable local artifacts before sending sensitive information.

Boundary and recovery: The reviewed capability baseline limits verified multi-turn Incognito to Claude. Do not promise anonymous or zero-retention operation for every provider or delete audit evidence silently.

Usage, quota and capacity

Open Provider usage or Home Usage to inspect account-scoped evidence. Reported windows, observed exhaustion, transcript estimates and API costs have different meanings. Quota exhaustion is distinct from model-capacity rejection.

Boundary and recovery: Missing quota percentages are not zero usage. A model retry must preserve rejected intent, and an account fallback must be explicit rather than silently spending another profile.