Skip to content

CLI reference

Utilities.

Four commands you'll reach for after extracting and running plans: context for direct knowledge-blob CRUD, dashboard for the read-only HTML status page, journal for inspecting past runs, and version for sanity checks.

briar context

Direct CRUD over the knowledge / plan blobs in the configured store. Same backends as everywhere else (file / postgres), same blob names.

Common flags

--store {file,postgres}default: file
filepostgres
Knowledge store backend.
--root PATHdefault: ./knowledge
Local file root.

$ briar context put

briar context put [--content TEXT | --from-file PATH] [--category CAT] BLOB_NAME

Create or update a blob.

blob_namerequired
Positional. E.g. knowledge:acme.
--content TEXT
Inline content. Use - for stdin.
--from-file PATH
Read content from this path.
--category CAT
Explicit category. Default: derived from the blob-name prefix (the part before :).
$ cat notes.md | briar context put knowledge:acme --content -
$ briar context put knowledge:acme.q3 --from-file ./plan-notes.md

$ briar context get

briar context get BLOB_NAME

Print the markdown body to stdout.

$ briar context get knowledge:acme | less
$ briar context get plan:q3 > /tmp/plan.md

$ briar context list

briar context list [--prefix PREFIX]

List stored blobs.

--prefix STRING
Filter to names starting with this prefix.
$ briar context list
$ briar context list --prefix knowledge:
$ briar context list --prefix plan:

$ briar context delete

briar context delete [--yes] BLOB_NAME

Remove a blob. Prompts unless --yes.

$ briar context delete knowledge:acme.archive-2025q4 --yes

$ briar context categories

briar context categories

Print distinct category prefixes — e.g. knowledge, plan.

briar dashboard

Serve a read-only HTML status page summarising the droplet state: scheduler log, journal sessions, knowledge blobs, disk usage, secrets coverage. Designed to run alongside briar runbook serve on the same host.

--host ADDRESSdefault: 127.0.0.1
Bind address. Default is loopback-only; pass --host 0.0.0.0 to expose publicly, but verify firewall + auth first.
--port PORTdefault: 8080
Bind port.
--examples DIRdefault: ./examples
Directory of runbook YAMLs to surface (companies, schedules).
--knowledge-store {file,postgres}
filepostgres
Which knowledge store to read from. Default: postgres if BRIAR_DATABASE_URL is set, else file.
--knowledge PATHdefault: ./knowledge
Knowledge file root (only used when --knowledge-store=file).
--log-file PATHdefault: /var/log/briar/scheduler.log
Path to the scheduler log.
--disk-path PATHdefault: /
Filesystem path used for disk-usage stats.
--repo-path PATHdefault: .
Path of the deployed git checkout.
--secrets-file PATHdefault: /etc/briar/secrets.env
secrets.env path. The dashboard surfaces names + lengths only — never values.
--du-path PATH
Directory whose size to report. Repeatable.
--journal-store {file}default: file
file
Journal store backend.
--journal-root PATHdefault: ./journal
Journal file root.
--once
Render once to stdout and exit (CI-friendly snapshot).
$ briar dashboard \
--host 0.0.0.0 --port 8080 \
--examples runbooks/ \
--knowledge knowledge/ \
--repo-path /opt/briar-scheduler \
--log-file /var/log/briar/scheduler.log

briar journal

Inspect decision-journal sessions recorded by every other briar command. Each session is a structured stream of events: extractor timings, LLM stop reasons, selector decisions, tool calls, PR URLs.

$ briar journal list

briar journal list [--store {file}] [--root PATH] [--command FILTER] [--limit N]
--store {file}default: file
file
Journal store backend.
--root PATHdefault: ./journal
Root directory for the file-backed store.
--command PREFIX
Filter by command prefix (e.g. scaffold., plan.run., agent.implement.).
--limit N
Cap on sessions returned.
$ briar journal list --command plan.run. --limit 5
$ briar journal list --command agent.prfix.

$ briar journal show

briar journal show [--store {file}] [--root PATH] SESSION_ID

Pretty-print one session as markdown.

$ briar journal show 7a3b8c2d

$ briar journal export

briar journal export [--as {markdown,json}] [--out PATH] SESSION_ID

Write one session to a path.

--as {markdown,json}default: markdown
markdownjson
Serialization for the exported session. (Named --as, not --format, so it doesn't collide with the global --format flag.)
--out PATH
Output path. Use - for stdout.
$ briar journal export 7a3b8c2d --as json --out /tmp/last-run.json

briar version

Print the installed CLI version (briar-cli <semver>).

$ briar version

See also