--help for its full options.
Global flags
These work on every command:
Global flags may be placed before or after the command. Destructive commands accept
--yes / -y to skip the confirmation prompt.
Environment variables
auth
Log in, log out, and switch accounts.instances
Provision and manage memory instances.A freshly created instance generates its memory architecture (MACA) in the background and stays pending until approved in the Dashboard.
instances promote requires an approved config.api-keys
Manage the runtime API keys your agents use with the SDK.client
Inspect your client and manage its team.An invite is pending until the invitee accepts it. They receive an email;
if they don’t have a Synap account yet, the invite is applied when they sign
up with that address. Pending invites show in both
client members list and
the Dashboard’s team list with state pending. An email can belong to only
one client organization.requests
Inspect request-level SDK activity: the same data as the Dashboard’s Requests view.
Filters for
requests list:
memories
Inspect stored memories (read-only; writes happen through the SDK at runtime).
Filters for
memories list:
privacy
Your sensitive-data controls: what gets detected, what happens to it, and who looked at it. Two things about this surface catch people out, so the CLI says them as it goes:
Settings for
--set and --exception: not_sensitive, hide_from_model, protect_at_rest, protect_fully, never_store, client_vault.
A reveal made through the CLI is recorded against the API key that made it, not against a person, because a key is what made the request. If you need a named human on the audit row, do it in the Dashboard.
visibility
Which instances’ memories are visible to which other instances at retrieval time. The default isshared_all: every instance of your client shares memory. Switch the default to isolated and then grant only the pairs you want.
grant, revoke, share and set-mode read the current policy first and send its version back with the change. If somebody else edits the matrix at the same time, your command fails and writes nothing rather than overwriting theirs. Re-run it.scoping
The scope ladder: your own hierarchy of levels, and the per-instance switch that turns nested scoping on.add-level and apply-proposal preview by default because inserting a rung re-homes every node beneath it. The preview reports how many nodes would move, and --commit sends that number back with the write, so a commit is refused if the tree changed in between.billing
Billing controls for your client. Today that is overages: whether requests keep working after a paid plan’s credits run out, with the extra usage billed per 1,000 credits at your plan’s rate. Overages are off by default. See Pricing & Credits for how they are billed.Synap turns overages off by itself when the card is removed or expires, or the subscription is cancelled, and emails every member of your client.
billing overages get then shows Synap, with the reason, as the last change.config
Local CLI settings for the active profile.usage
Aggregate usage for your client: API calls, LLM tokens, memories stored.doctor
Diagnose your setup: CLI version, Python, config, auth, server connectivity, key expiry, and whether anything is actually being protected.Use in CI
No browser is available in CI, so authenticate with a key instead ofauth login:
SYNAP_API_KEY overrides any stored profile and writes nothing to disk, so it’s safe for ephemeral runners.