Skip to main content

briar

Turn the live state of your tools into agent-ready context — then let autonomous agents act on it. All on your machine.

briar is a local-first Python CLI that mines what's actually happening across your stack — GitHub, Bitbucket, AWS/GCP/Azure, Jira, Linear, Fireflies — into a local knowledge store, then runs LLM agents that fix PRs and ship tickets against it. No SaaS, no remote workspace, no data leaving your laptop: your credentials, your machine, your APIs.

pip install briar-cli
briar version

Or run it with Docker, nothing to install:

docker pull iklob1/briar
docker run --rm iklob1/briar version

Run with Docker

Every example below shows a native briar … line and its Docker equivalent. The Docker form mounts what the CLI needs and is otherwise identical:

# Canonical invocation used throughout this README:
docker run --rm \
    -v "$PWD":/work -w /work \                               # your repo checkout
    -v "$HOME/.config/briar":/home/briar/.config/briar \     # stored credentials
    -e ANTHROPIC_API_KEY \                                   # LLM key from your env
    iklob1/briar <args>
  • dashboard also needs a published port and a non-loopback bind: docker run --rm -p 8080:8080 iklob1/briar dashboard --host 0.0.0.0.
  • agent / plan run push git, so add your SSH key and git identity: -v "$HOME/.ssh":/home/briar/.ssh:ro -v "$HOME/.gitconfig":/home/briar/.gitconfig:ro.
  • Pass any extra provider env the same way, e.g. -e FIREFLIES_ACME_API_KEY.

Quickstart

The common flow: authenticate a provider, mine its live state into knowledge, then act on it.

# 1. Authenticate the providers you'll use (tokens land in ~/.config/briar/secrets.env)
briar auth login github-pat --company acme
export ANTHROPIC_API_KEY=sk-ant-...        # LLM key comes from the environment

# 2. Mine a repo's PR history into a knowledge blob
briar extract --company acme \
    --include pr-archaeology \
    --repo acme-co/acme-app --max 50

# 3. Read it back
briar context get knowledge:acme

# 4. Let an agent act on a ticket — clone, branch, code, open a draft PR
briar agent implement --company acme --repo acme-co/acme-app \
    --ticket-key ACME-42 --tracker jira

The same flow with Docker:

# 1. Authenticate (writes into the mounted ~/.config/briar)
docker run --rm -it -v "$HOME/.config/briar":/home/briar/.config/briar \
    iklob1/briar auth login github-pat --company acme

# 2. Extract
docker run --rm -v "$PWD":/work -w /work \
    -v "$HOME/.config/briar":/home/briar/.config/briar -e ANTHROPIC_API_KEY \
    iklob1/briar extract --company acme --include pr-archaeology \
    --repo acme-co/acme-app --max 50

# 3. Read it back
docker run --rm -v "$PWD":/work -w /work \
    -v "$HOME/.config/briar":/home/briar/.config/briar \
    iklob1/briar context get knowledge:acme

# 4. Let an agent act on a ticket (git push → mount SSH + git identity)
docker run --rm -v "$PWD":/work -w /work \
    -v "$HOME/.config/briar":/home/briar/.config/briar \
    -v "$HOME/.ssh":/home/briar/.ssh:ro -v "$HOME/.gitconfig":/home/briar/.gitconfig:ro \
    -e ANTHROPIC_API_KEY \
    iklob1/briar agent implement --company acme --repo acme-co/acme-app \
    --ticket-key ACME-42 --tracker jira

Add --dry-run to any agent command to preview the exact prompt and tools without spending a token.

Telemetry: briar ships with opt-out error/usage analytics. No prompts, file contents, ticket keys, repo names, paths, or secret values ever leave the machine. Turn it off with briar telemetry off, BRIAR_TELEMETRY=off, or DO_NOT_TRACK=1.


Less typing

briar resolves every flag through one chain — CLI flag > env var > project config > built-in default — so stable values move off the command line. Drop a .briar.toml at your repo root:

company = "acme"
store   = "postgres"

[repo]
owner = "acme-co"
repo  = "acme-app"

Then, inside the checkout, the same extract is just:

briar extract --include pr-archaeology     # company + repo come from config/git

# or with Docker (the mounted $PWD provides the .briar.toml + git checkout):
docker run --rm -v "$PWD":/work -w /work \
    -v "$HOME/.config/briar":/home/briar/.config/briar -e ANTHROPIC_API_KEY \
    iklob1/briar extract --include pr-archaeology

Setup helpers: briar init (write a starter .briar.toml), briar config show (resolved value + source for each setting), briar doctor (check config / git / creds / store), eval "$(briar completion bash)" (tab-completion, also zsh). Each runs under Docker with the canonical invocation, e.g. docker run --rm -v "$PWD":/work -w /work iklob1/briar doctor.


More than extraction

  • briar runbook serve runbooks/ — keep per-company knowledge fresh on a schedule, in-process (no cron). Docker: docker run --rm -v "$PWD":/work -w /work -v "$HOME/.config/briar":/home/briar/.config/briar -e ANTHROPIC_API_KEY iklob1/briar runbook serve runbooks/
  • briar agent prfix / implement — address a PR's open review comments, or take a ticket end-to-end (add the SSH + git-identity mounts shown above).
  • briar plan build / run — turn a Jira / GitHub Projects board into an ordered plan and run it card by card.
  • briar dashboard — read-only HTML status page: docker run --rm -p 8080:8080 -v "$PWD":/work -w /work iklob1/briar dashboard --host 0.0.0.0
  • briar mcp serve / chat: serve briar's knowledge, runbook config and extractors as MCP tools (stdio or http), or drive them from an interactive terminal chat. Needs the [mcp] extra (included in the Docker image). Docker (stdio needs -i): docker run --rm -i -v "$PWD":/work -w /work iklob1/briar mcp serve
  • briar scaffold · context · secrets doctor · journal — config bundles, local knowledge blobs, credential coverage, decision audit.

Every command takes --format json for scripting, and most list flags repeat (--include a --include b).


Install options

pip install briar-cli                # base: GitHub/Bitbucket/AWS, Jira/Linear, Anthropic + Bedrock, file + Postgres
pip install 'briar-cli[all]'         # everything (OpenAI, Gemini, MCP, GCP, Azure, Vault)

# or pull the prebuilt image (no Python install needed; base providers + MCP server):
docker pull iklob1/briar             # tags: latest, and each release e.g. 1.1.56

Individual extras: [openai], [gemini], [mcp], [gcp], [azure], [vault]. Python 3.10+ (tested through 3.12).


Documentation

Full command reference, every flag, runbook-YAML schema, configuration, and recipes:

📖 usebriar.com/docs


License

See LICENSE.

Metadata

Release files for briar-cli 1.1.71

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for briar-cli 1.1.71
File Size Uploaded
briar_cli-1.1.71.tar.gz 696.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for briar-cli 1.1.71
File Interpreter ABI Platform
briar_cli-1.1.71-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / briar_cli-1.1.71.tar.gz

Download URL briar_cli-1.1.71.tar.gz
Size 696.6 kB
Tags Source
SHA-256 checksum
How to use checksums
26b62635380a3ec5bf8f74ff3e93ed8dcd2a6373f300a2830cf224ffb04ff2d2
BLAKE2b-256 checksum
How to use checksums
cb98cf3404ef618d6d496669d806bbc08e4526f6a5a00704a5f6291569dfc1b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / briar_cli-1.1.71-py3-none-any.whl

Download URL briar_cli-1.1.71-py3-none-any.whl
Size 487.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f0b4b21f2fccd7da5b25611d0f47a622862acce388dc4035ae44beea05ade81
BLAKE2b-256 checksum
How to use checksums
3840232ffa00d0da2c2e6472b1ebac6ddc0578f78cc7b7ae176e14169ed644dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

1.1.98

2 release files

1.1.97

2 release files

1.1.96

2 release files

1.1.95

2 release files

1.1.94

2 release files

1.1.93

2 release files

1.1.92

2 release files

1.1.91

2 release files

1.1.90

2 release files

1.1.89

2 release files

1.1.88

2 release files

1.1.87

2 release files

1.1.86

2 release files

1.1.85

2 release files

1.1.84

2 release files

1.1.83

2 release files

1.1.82

2 release files

1.1.81

2 release files

1.1.80

2 release files

1.1.79

2 release files

1.1.78

2 release files

1.1.77

2 release files

1.1.76

2 release files

1.1.75

2 release files

1.1.74

2 release files

1.1.73

2 release files

This release

1.1.71 This release

2 release files

1.1.56

2 release files

1.1.55

2 release files

1.1.54

2 release files

1.1.53

2 release files

1.1.52

2 release files

1.1.51

2 release files

1.1.50

2 release files

1.1.49

2 release files

1.1.48

2 release files

1.1.47

2 release files

1.1.46

2 release files

1.1.45

2 release files

1.1.44

2 release files

1.1.43

2 release files

1.1.42

2 release files

1.1.41

2 release files

1.1.40

2 release files

1.1.39

2 release files

1.1.38

2 release files

1.1.37

2 release files

1.1.36

2 release files

1.1.29

2 release files

1.1.28

2 release files

1.1.27

2 release files

1.1.26

2 release files

1.1.25

2 release files

1.1.24

2 release files

1.1.22

2 release files

1.1.21

2 release files

1.1.20

2 release files

1.1.19

2 release files

1.1.18

2 release files

1.1.17

2 release files

1.1.16

2 release files

1.1.15

2 release files

1.1.14

2 release files

1.1.13

2 release files

1.1.12

2 release files

1.1.11

2 release files

1.1.10

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.7

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page