Skip to main content

Bron CLI

The Bron CLI lets you check balances, view transactions, approve or decline operations, and monitor your wallet in real time β€” directly from your terminal, without opening the app.

Before you start

  • macOS or Linux with a terminal

  • A user with at least one workspace and an account created in that workspace

  • For macOS: Homebrew installed

1. Install the Bron CLI

Open Terminal and run:

brew install bronlabs/apps/bron

Once it finishes, confirm it works:

bron --version

You should see something like: bron version v0.3.9

πŸ’‘The version number will change as Bron releases updates β€” any version shown means the install was successful.

If your network blocks GitHub (common in corporate environments), install via direct binary download instead:

curl -L https://github.com/bronlabs/bron-cli/releases/download/$(curl -s https://api.github.com/repos/bronlabs/bron-cli/releases/latest | grep tag_name | cut -d'"' -f4)/bron-darwin-arm64 -o ~/bron mkdir -p ~/bin && mv ~/bron ~/bin/bron && chmod +x ~/bin/bron echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc

For Linux, replace bron-darwin-arm64 with bron-linux-arm64 (ARM) or bron-linux-amd64 (Intel/AMD). All builds and SHA256 checksums are listed on the releases page.

2. Generate your key

Run this command β€” it creates a secure key on your machine and prints the public part for you to register in Bron:

bron config init --key-file ~/.config/bron/keys/me.jwk

When asked for a profile name, press Enter to use the default.

The CLI will print a Public JWK block and pause:

Public JWK β€” paste into Bron Settings β†’ API keys, tick βœ“ "Input public key (JWK)":  {   "kty": "EC",   "crv": "P-256",   "x": "...",   "y": "...",   "kid": "..." }  Once you've added the public JWK in Bron Settings β†’ API keys, press Enter to continue:

πŸ’‘Keep this terminal open and do not press Enter yet. Your private key stays on your machine β€” only this public part goes to Bron.

3. Register your key in the Bron app

Now go to the Bron app to register the public key.

3.1 β€” Open Settings

In the Bron app, click your profile or workspace name in the top right, then go to Settings.

3.2 β€” Go to API keys

In the left sidebar, click API keys.

3.3 β€” Create a new key

Click Create API key.

3.4 β€” Fill in the form

Fill in the form as follows:

  • Name β€” type any name, for example my-cli

  • Team role β€” choose based on what you need:

    • View only β€” can view accounts, transactions, and balances. Cannot perform any actions. Good for monitoring.

    • Transaction Operator β€” can create, approve, update, and cancel transactions, and manage the address book. Cannot sign transactions.

    • Full Access β€” full access to all transaction operations including signing, managing the address book, and generating reports.

  • Expiration period β€” select how long this key should be valid, or No expiration

  • Account access β€” select which accounts this key can access, or leave as All accounts

  • IP whitelist β€” optional; leave empty unless you want to restrict access to specific IPs

3.5 β€” Paste your public key

Tick the βœ“ Input public key (JWK) checkbox. A new field will appear.

Copy the entire JSON block from your terminal (from { to }) and paste it into the Public key (JWK) field.

3.6 β€” Generate

Click Generate key.

Click I've saved my key to confirm.

Security note: The CLI generates a private key that stays only on your machine at ~/.config/bron/keys/me.jwk. Bron only ever sees the public part. If you lose the private key file, simply generate a new keypair and revoke the old one in Settings β†’ API keys.

4. Finish setup in the terminal

Go back to your terminal and press Enter.

The CLI will connect to your account and save your profile automatically:

Resolved workspace from /workspaces: Your Workspace Name (workspaceId). Saved profile "default" to ~/.config/bron/config.yaml and made it active.

5. Verify the connection

Run a quick sanity check:

bron config show

Then confirm your workspace:

bron workspace info

You should see your workspace name and ID printed as JSON.

6. Common commands

View accounts

List all active accounts in your workspace:

bron accounts list --statuses active --limit 50

Show as a table:

bron accounts list --statuses active --output table

Check balances

List non-empty balances with USD values:

bron balances list --nonEmpty true --embed prices

Show as a table:

bron balances list --nonEmpty true --output table

View transactions

List recent transactions:

bron tx list --limit 10 --output table

Filter by status:

bron tx list --transactionStatuses waiting-approval,signing

Filter by type and date:

bron tx list --transactionTypes withdrawal --createdAtFrom 2026-01-01 --embed assets

Get a single transaction by ID:

bron tx get <transactionId>

View the full event history of a transaction:

bron tx events <transactionId>

Approve, decline, or cancel transactions

Approve a transaction:

bron tx approve <transactionId>

Decline a transaction:

bron tx decline <transactionId>

Cancel a transaction:

bron tx cancel <transactionId>

Create a signing request:

bron tx create-signing-request <transactionId>

πŸ’‘These actions require your API key to have Transaction Operator or Full Access role. A View only key will return a permission error.

Create a withdrawal

bron tx withdrawal \   --accountId <accountId> \   --externalId <idempotencyKey> \   --params.amount=100 \   --params.assetId=5000 \   --params.networkId=ETH \   --params.toAddressBookRecordId=<recordId>

Replace <accountId>, <idempotencyKey>, and <recordId> with your actual values. Run bron tx withdrawal --help to see all available parameters.

Note: Withdrawals require Full Access role.

Monitor transactions in real time

Stream live transaction updates as they happen:

bron tx subscribe

Filter to only see transactions needing action:

bron tx subscribe --transactionStatuses signing-required,waiting-approval

Press Ctrl+C to stop.

7. Output formats

All commands support multiple output formats. Add --output followed by your choice:

bron balances list --output table    # readable table bron balances list --output json     # full JSON (default) bron balances list --output yaml     # YAML bron balances list --output jsonl    # one JSON object per line, good for piping

Use --columns to show only specific fields:

bron tx list --output table --columns transactionId,status,transactionType,createdAt

8. Getting help

Every command has a built-in help flag:

bron --help bron tx --help bron tx list --help

For the full technical reference, visit the Bron CLI developer documentation.

If you run into any issues, contact our support team through the app or at support@bron.org.

Did this answer your question?