brk_cli 0.1.0-alpha.3

A command line interface to run a BRK instance
brk_cli-0.1.0-alpha.3 is not a library.
Visit the last successful build: brk_cli-0.0.111

brk_cli

Command-line interface for running the Bitcoin Research Kit.

What It Enables

Run a full BRK instance: index the blockchain, compute metrics, serve the API, and optionally host a web interface. Continuously syncs with new blocks.

Key Features

  • All-in-one: Single binary runs indexer, computer, mempool monitor, and server
  • Auto-sync: Waits for new blocks and processes them automatically
  • Web interface: Downloads and bundles frontend from GitHub releases
  • Configurable: TOML config for RPC, paths, and features
  • Collision checking: Optional TXID collision validation mode
  • Memory optimized: Uses mimalloc allocator, 512MB stack for deep recursion

Install

First, ensure Rust is up to date:

rustup update

Recommended (optimized for your CPU, auto-finds latest version):

RUSTFLAGS="-C target-cpu=native" cargo install --locked brk_cli --version "$(cargo search brk_cli | head -1 | awk -F'"' '{print $2}')"

Variants:

# Standard install (portable, latest stable only)
cargo install --locked brk_cli

# Specific version
cargo install --locked brk_cli --version "0.1.0-alpha.2"

See crates.io/crates/brk_cli/versions for all versions.

Update

Same as install - cargo replaces the existing binary:

rustup update
RUSTFLAGS="-C target-cpu=native" cargo install --locked brk_cli --version "$(cargo search brk_cli | head -1 | awk -F'"' '{print $2}')"

Requirements

  • Bitcoin Core with accessible blk*.dat files
  • ~400 GB disk space
  • 12+ GB RAM recommended

Usage

# See all options
brk --help

# The CLI will:
# 1. Index new blocks
# 2. Compute derived metrics
# 3. Start mempool monitor
# 4. Launch API server (port 3110)
# 5. Wait for new blocks and repeat

Components

  1. Indexer: Processes blocks into queryable indexes
  2. Computer: Derives 1000+ on-chain metrics
  3. Mempool: Real-time fee estimation
  4. Server: REST API + MCP endpoint
  5. Bundler: JS bundling for web interface (if enabled)

Performance

See brk_computer for full pipeline benchmarks.

Built On

  • brk_indexer for blockchain indexing
  • brk_computer for metric computation
  • brk_mempool for mempool monitoring
  • brk_server for HTTP API