Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

BRIAN

BRIAN

A self-hosted agent runtime. Model, loop, tools, memory, permissions.

PyPI Python License

pip-installable as brian-core 2.0.0rc5. The command is brian.

macOS / Linux

curl -fsSL https://heybrian.ai/install | bash

Windows

powershell -c "irm https://heybrian.ai/install.ps1 | iex"

PowerShell

irm https://heybrian.ai/install.ps1 | iex

First brian in a terminal asks for a provider, credentials, and model, seeds ~/.brian/SOUL.md if missing, live-pings the provider, then asks what to call you. brian doctor diagnoses the home without starting a session. Pipe install stays non-interactive. Bring your own LLM key. The wheel is code — memory and sessions start empty, in ~/.brian.

What you get

Door How
CLI brian
HTTP API brian --api
Agent SDK from brian_core.sdk import run — same loop, in-process, not HTTP

BrianClient talks to the HTTP API. It is not the Agent SDK.

from brian_core.sdk import run, stream

print(run("list python files"))
for event in stream("list python files"):
    ...

Twelve providers (Anthropic, OpenAI, Gemini, Bedrock, OpenRouter, DeepSeek, Mistral, xAI, Ollama, LM Studio, plus generic gateways). Seventy tools: shell, files, browser, desktop, web, media, MCP, subagents, durable runs that survive a crash.

From this repo

Git, Python 3.11+, uv. Code lives under src/brian_core.

git clone https://github.com/mrgizmo212/Brian.git
cd Brian
uv sync
uv run brian --help
uv run brian
uv run brian "list python files"

Optional extras: providers, hosted.

Modes

uv run brian                         # REPL
uv run brian "do this"               # one shot
uv run brian --continue              # last session
uv run brian --resume <session-id>
uv run brian --fork-session <id>
uv run brian --tui
uv run brian --api
uv run brian --scheduler
uv run brian --heartbeat-only
uv run brian --learning-graph
uv run brian --version
uv run brian doctor

One mode per invocation. --api requires API_SERVER_KEY.

HTTP API

uv run brian --api
curl -fsS http://127.0.0.1:8000/health
curl -fsS http://127.0.0.1:8000/v1/chat/completions \
  -H "Authorization: Bearer $API_SERVER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"agent","messages":[{"role":"user","content":"Say hello."}]}'
Endpoint Purpose
POST /v1/chat/completions Chat, streaming or not
POST /v1/runs Durable run
GET /v1/runs/{id}/events SSE
POST /v1/runs/{id}/approval Human approval
GET /v2/capabilities Machine-readable surface

Self-host with Docker: deploy/README.md.

Config

Settings live in ~/.brian/.env (or BRIAN_ENV_FILE). Names are in env.example. Required: PROVIDER, MODEL, and that provider's key.

Override the home directory with BRIAN_HOME.

Docs

License

Apache License 2.0. Copyright 2026 TTG AI LLC. See LICENSE and NOTICE.

Download files

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

Source Distribution

brian_core-2.0.0rc5.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

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

brian_core-2.0.0rc5-py3-none-any.whl (990.4 kB view details)

Uploaded Python 3

File details

Details for the file brian_core-2.0.0rc5.tar.gz.

File metadata

  • Download URL: brian_core-2.0.0rc5.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for brian_core-2.0.0rc5.tar.gz
Algorithm Hash digest
SHA256 ca8aa136300fd47c4a9a4833523c537be8094d97f21c2fce53a4fc073feefaf2
MD5 198a232249a8785401bbf54417a0076e
BLAKE2b-256 25eb25ebc5d9b2d4fb1637571b2a7116b730627d877cd042c9bfba9394eeb971

See more details on using hashes here.

File details

Details for the file brian_core-2.0.0rc5-py3-none-any.whl.

File metadata

  • Download URL: brian_core-2.0.0rc5-py3-none-any.whl
  • Upload date:
  • Size: 990.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for brian_core-2.0.0rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 088395d48ec6edc4dc063e9bcc753a3e08f74a8b2b5f97cb2f8141a83f047252
MD5 fd527572cb12a93b0b5eff1738ab779b
BLAKE2b-256 51705941a64439cd1c45b12d6daf6fac8f4fbc917d1301924df4a6055ea7e875

See more details on using hashes here.

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