Brokk Code
Python CLI tooling for Brokk editor integrations and ACP/MCP server passthrough wrappers.
The published command is brokk. For normal use, run it through uvx so the
latest published package is resolved automatically:
uvx brokk --help
Local development still uses uv run; see Development.
Requirements
uv/uvxfor normal user-facing commands and generated editor configs.- Python 3.11+ for local development.
curlon Unix-like systems if Brokk needs to bootstrapuv.
ACP mode launches Anvil and does not use the Java executor. MCP mode launches Bifrost and does not use the Java executor.
Quick Start
Show the available commands:
uvx brokk --help
Install an editor integration:
uvx brokk install zed
uvx brokk install intellij
uvx brokk install neovim --plugin codecompanion
uvx brokk install neovim --plugin avante
Install MCP integration settings for Claude Code and Codex:
uvx brokk install mcp
Install the local Codex plugin entry:
uvx brokk install codex-plugin
Installers write client configuration only. They do not require a Brokk API key
and do not warm Anvil or Bifrost runtime dependencies. Where supported,
generated config launches Brokk as uvx brokk ... so clients resolve the
current package at runtime.
Use --force to replace an existing generated integration entry when the
installer supports it.
ACP Server
Run Anvil as an ACP server over stdio:
uvx brokk acp
Resolution order for Anvil is:
--anvil-binary <path>anvilonPATH- A downloaded release pinned to the bundled Anvil version
Useful ACP options:
uvx brokk acp --default-model gpt-5.2
uvx brokk acp --max-turns 20
uvx brokk acp --bifrost-binary /path/to/bifrost
uvx brokk acp --help
Unknown brokk acp arguments are passed through to Anvil.
MCP Server
Run Bifrost as an MCP server over stdio:
uvx brokk mcp
Resolution order for Bifrost is:
--bifrost-binary <path>bifrostonPATH- A downloaded release pinned to the bundled Bifrost version
Unknown brokk mcp arguments are passed through to Bifrost.
Editor Integrations
Zed and IntelliJ
uvx brokk install zed
uvx brokk install intellij
uvx brokk install jetbrains
These installers add a custom ACP agent server entry that launches:
uvx brokk acp
jetbrains is an alias for intellij.
Neovim + CodeCompanion
uvx brokk install neovim --plugin codecompanion
This writes:
~/.config/nvim/lua/brokk/brokk_codecompanion.lua
It creates a CodeCompanion ACP adapter named brokk. The installer may patch a
simple init.lua plugin spec when it can do so conservatively; otherwise load
the module from your CodeCompanion setup:
{
"olimorris/codecompanion.nvim",
opts = function()
return require("brokk.brokk_codecompanion")
end,
}
The generated module sets Brokk as the default chat adapter. If CodeCompanion still reports its default Copilot adapter, the Brokk module is not loaded yet.
Neovim + Avante
uvx brokk install neovim --plugin avante
This writes:
~/.config/nvim/lua/brokk/brokk_avante.lua
Load the generated provider in your Avante config:
local brokk = require("brokk.brokk_avante")
require("avante").setup(vim.tbl_deep_extend("force", brokk, {
-- your existing Avante options
}))
Claude Code and Codex MCP
uvx brokk install mcp
This configures Brokk MCP entries for Claude Code and Codex and installs helper skills/instructions for workspace activation and summaries.
Codex Plugin
uvx brokk install codex-plugin
This installs local Codex plugin files and adds a local marketplace entry. After running it, restart Codex, choose the local marketplace, and install Brokk.
Direct Rust ACP for Zed/IntelliJ
For development or direct Rust ACP usage, Zed and IntelliJ can be wired to
brokk-acp instead of uvx brokk acp:
uvx brokk install zed --rust --model gpt-5.2
uvx brokk install intellij --rust --model gpt-5.2
In this mode brokk-acp and bifrost must already be installed and available
on the editor's inherited PATH. Use --brokk-acp-binary <path> to write an
explicit brokk-acp path.
Development
Clone the repo and create the managed environment:
uv sync
Run the CLI from the checkout:
uv run brokk --help
uv run brokk version
Run tests and linting:
uv run pytest
uvx ruff check .
uvx ruff format --check .
Ruff is intentionally not part of the project dev dependency group, so Termux
users can run tests without building Ruff from source. Use uvx ruff ... when
you want linting or formatting checks locally.
When changing code, keep generated repository content in English and follow the project guidance in AGENTS.md and brokk_code/AGENTS.md.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file brokk-0.20.6.tar.gz.
File metadata
- Download URL: brokk-0.20.6.tar.gz
- Upload date:
- Size: 69.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc27fbb18a017f1c643a769f01af3bdf993d561a0f4af00503fe8c47d9573684
|
|
| MD5 |
e8fa3fd75d3b40f97ad6e5e6f006cf30
|
|
| BLAKE2b-256 |
3d318e439019903b2eb8012d3a966518a75236d88e31c5231796b93f60bdff6a
|
Provenance
The following attestation bundles were made for brokk-0.20.6.tar.gz:
Publisher:
pypi.yml on BrokkAi/brokk-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brokk-0.20.6.tar.gz -
Subject digest:
fc27fbb18a017f1c643a769f01af3bdf993d561a0f4af00503fe8c47d9573684 - Sigstore transparency entry: 2339928974
- Sigstore integration time:
-
Permalink:
BrokkAi/brokk-cli@fb304fbbb01c3764c43967bba12dd56f51e060bf -
Branch / Tag:
refs/tags/v0.20.6 - Owner: https://github.com/BrokkAi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@fb304fbbb01c3764c43967bba12dd56f51e060bf -
Trigger Event:
push
-
Statement type:
File details
Details for the file brokk-0.20.6-py3-none-any.whl.
File metadata
- Download URL: brokk-0.20.6-py3-none-any.whl
- Upload date:
- Size: 52.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1199b7ac5b688b8782a58f9cce1a61bd794390fee03aba989458b457bc698943
|
|
| MD5 |
c02580055245f29d7f88aad30353d368
|
|
| BLAKE2b-256 |
644bc7f318f52265a32fb32fe9b8f1340bb2568e008de76a86f6c147190cebda
|
Provenance
The following attestation bundles were made for brokk-0.20.6-py3-none-any.whl:
Publisher:
pypi.yml on BrokkAi/brokk-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
brokk-0.20.6-py3-none-any.whl -
Subject digest:
1199b7ac5b688b8782a58f9cce1a61bd794390fee03aba989458b457bc698943 - Sigstore transparency entry: 2339928982
- Sigstore integration time:
-
Permalink:
BrokkAi/brokk-cli@fb304fbbb01c3764c43967bba12dd56f51e060bf -
Branch / Tag:
refs/tags/v0.20.6 - Owner: https://github.com/BrokkAi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@fb304fbbb01c3764c43967bba12dd56f51e060bf -
Trigger Event:
push
-
Statement type: