Skip to main content

Terminal client for the Briar agent-orchestration API.

Project description

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 all-batteries image (no Python install needed):
docker pull iklob1/briar             # tags: latest, and each release e.g. 1.1.50

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.

Project details


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.53.tar.gz (672.4 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.53-py3-none-any.whl (468.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: briar_cli-1.1.53.tar.gz
  • Upload date:
  • Size: 672.4 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.53.tar.gz
Algorithm Hash digest
SHA256 d3744959723ff2eab2a2da3d1e2671330093a9ff97485ebb905fe8cd674de01f
MD5 3a4db25bb73c3d9c04c907746c836efd
BLAKE2b-256 4e5091e240b746b01e6e5466f366b0b630ff00a891e0fc429559f23ec08030b7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: briar_cli-1.1.53-py3-none-any.whl
  • Upload date:
  • Size: 468.5 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.53-py3-none-any.whl
Algorithm Hash digest
SHA256 45c1b19d6533a28105b5c49520fe7a354ee00f91272b1fb8f6e7331e0173cb3b
MD5 b192f0e68fe7906229bec6e9098880f6
BLAKE2b-256 a3f403387ab794df03e55dde83658ebbf0308511ef56fdd81811db72fd860ad2

See more details on using hashes here.

Supported by

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