Run it
Storage
Brigade keeps every byte of state under ~/.brigade/. By default that is a plain filesystem install. You can switch to an optional, fully self-hosted Convex backend — no cloud account, no telemetry — and turn on at-rest encryption.
Filesystem vs. Convex#
The storage mode resolves from a sticky sentinel and freezes once at boot. Filesystem mode is the default and needs nothing extra. Convex mode runs a standalone backend you host yourself.
$ brigade store mode show # what mode am I in?$ brigade store mode set convex --convex-url http://127.0.0.1:3210$ brigade store migrate --to convex --dry-run # preview a migration$ brigade store migrate --to filesystem # copy data backRunning Convex locally#
The self-hosted Convex backend ships inside the brigade package — there is no separate Convex install and no account to create. The brigade convex command boots and manages it from any directory, whether you are in a repo checkout or a global npm i -g install:
$ brigade convex dev # download the backend (~46 MB, first run), then run it in the foreground # backend http://127.0.0.1:3210, dashboard http://127.0.0.1:6791 (Ctrl-C to stop)$ brigade convex status # is the backend running?$ brigade convex push # deploy the bundled convex/ functions to the running backend$ brigade convex codegen # regenerate convex/_generated against the backendThe binary and its data are self-contained under ~/.brigade/convex/for a global install (or the repo's bin/ and .convex-data/ in a checkout). The colon form brigade convex:dev is also accepted.
Boot it, then point Brigade at it
brigade convex dev runs the self-hosted backend — it is separate from brigade store mode set convex, which tells Brigade to use Convex for storage. The typical flow: brigade convex dev to boot the backend, then in another terminal brigade store mode set convex --convex-url http://127.0.0.1:3210 to point Brigade at it.At-rest encryption#
In Convex mode you can encrypt the sensitive byte columns — credentials, persona, memory, cron payloads, and transcripts — with AES-256-GCM, keyed by BRIGADE_ENCRYPTION_KEY:
$ brigade encrypt init # generate a 32-byte key$ brigade encrypt status # is a key configured? self-check$ brigade encrypt test # round-trip seal/openBackup & restore#
Snapshot, verify, and restore your whole install as a .tar.gz:
$ brigade backup create$ brigade backup verify <archive>$ brigade backup restore <archive>It is all under one directory
~/.brigade/ — config, per-agent workspaces, sessions, memory, channel state, cron, and logs. See Configuration for the full layout, and rm -rf ~/.brigade to wipe everything.