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 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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

briar_cli-1.1.56.tar.gz (692.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

briar_cli-1.1.56-py3-none-any.whl (486.2 kB view details)

Uploaded Python 3

File details

Details for the file briar_cli-1.1.56.tar.gz.

File metadata

  • Download URL: briar_cli-1.1.56.tar.gz
  • Upload date:
  • Size: 692.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for briar_cli-1.1.56.tar.gz
Algorithm Hash digest
SHA256 176a095002bef50ac9de6a6149a2c3e9c4ceef13b5ba4a0446c0e26d5a2b9e11
MD5 4d7902b6c6de5055edb230942950fabb
BLAKE2b-256 105205fa72afb9f9c8a6f70dc25a6b4739008cbd115663280909d33a6e5155ef

See more details on using hashes here.

File details

Details for the file briar_cli-1.1.56-py3-none-any.whl.

File metadata

  • Download URL: briar_cli-1.1.56-py3-none-any.whl
  • Upload date:
  • Size: 486.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for briar_cli-1.1.56-py3-none-any.whl
Algorithm Hash digest
SHA256 4ec6b099a83c59e41b1e12cf450d838f871fdf7f79ce974adb95146d29fa579c
MD5 5e91e354a4e18c91b819ffa32d47aff0
BLAKE2b-256 a9f9acf1067373dc3a0e6012f87396a0e32909d789d09fa7f829fdbbbf2e3231

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.1.56 This release

2 files

1.1.55

2 files

1.1.54

2 files

1.1.53

2 files

1.1.52

2 files

1.1.51

2 files

1.1.50

2 files

1.1.49

2 files

1.1.48

2 files

1.1.47

2 files

1.1.46

2 files

1.1.45

2 files

1.1.44

2 files

1.1.43

2 files

1.1.42

2 files

1.1.41

2 files

1.1.40

2 files

1.1.39

2 files

1.1.38

2 files

1.1.37

2 files

1.1.36

2 files

1.1.35

2 files

1.1.34

2 files

1.1.33

2 files

1.1.30

2 files

1.1.29

2 files

1.1.28

2 files

1.1.27

2 files

1.1.26

2 files

1.1.25

2 files

1.1.24

2 files

1.1.22

2 files

1.1.21

2 files

1.1.20

2 files

1.1.19

2 files

1.1.18

2 files

1.1.17

2 files

1.1.16

2 files

1.1.15

2 files

1.1.14

2 files

1.1.13

2 files

1.1.12

2 files

1.1.11

2 files

1.1.10

2 files

1.1.9

2 files

1.1.8

2 files

1.1.7

2 files

1.1.6

2 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page