Skip to content

bullpen wallet select-by-balance

Last updated: July 13, 2026

Select the primary EVM wallet by highest pUSD balance.

Usage

bullpen wallet select-by-balance [OPTIONS]

Live Help

Select the primary EVM wallet by highest pUSD balance.

Enumerates all owner EOAs, reads pUSD balance for each, ranks descending, and selects the highest-balance EOA via selectWalletAccount.

Usage: bullpen wallet select-by-balance [OPTIONS]

Options:
      --output <OUTPUT>
          Output format for command results

          [possible values: table, json]

  -y, --yes
          Skip the confirmation prompt

      --env <ENV>
          Target environment to connect to (overrides config.toml)

          [env: BULLPEN_ENV=]
          [possible values: staging, production]

      --config <CONFIG>
          Path to a custom config.toml file (overrides $BULLPEN_CONFIG and the default location).

          Explicit --config and BULLPEN_CONFIG paths fail closed: if the file is missing, the CLI exits validation instead of silently loading defaults. Credentials still resolve via BULLPEN_HOME, so set BULLPEN_HOME too when isolating a session.

      --read-only
          Enable read-only mode: blocks all mutating commands

      --non-interactive
          Suppress interactive prompts; does NOT imply --yes for money-moving commands

          [env: BULLPEN_NON_INTERACTIVE=]

  -h, --help
          Print help (see a summary with '-h')

EXAMPLES:
  # Review all wallet balances before selecting by balance
  bullpen wallet list

  # Rank EVM owner EOAs by pUSD and prompt before selecting the top balance; this changes account metadata
  bullpen wallet select-by-balance

  # Export the ranking and selection result as JSON
  bullpen wallet select-by-balance --output json

Example Commands

bullpen wallet list
bullpen wallet select-by-balance
bullpen wallet select-by-balance --output json

JSON Output

Contract: JSON Output Contract.

Successful output is a single JSON document. The shape below is representative for this command family; commands may add fields without breaking the shared contract.

Schema version: 1 when a command emits schema_version; otherwise treat the current command shape as contract version 1.

Top-level Keys

key type nullable notes
schema_version integer no Response schema version
status string no selected, aborted, no_wallets, or balances_unavailable
selected_address string yes EVM owner selected when status is selected
selected_balance string/decimal yes pUSD balance of the selected owner when known
ranking array yes Ranked owner EOAs with pUSD balance status
unavailable array yes Owner EOAs whose balance could not be read

Example

bullpen wallet select-by-balance --output json
{
  "schema_version": 1,
  "status": "selected",
  "selected_address": "0x1111111111111111111111111111111111111111",
  "selected_balance": "42.000000",
  "ranking": [
    {
      "owner": "0x1111111111111111111111111111111111111111",
      "pusd_balance": "42.000000",
      "pusd_balance_status": "known"
    }
  ],
  "unavailable": []
}

Stability

Patch releases may add nullable or optional fields. Minor releases may add required fields or increment schema_version. Major releases may remove or rename fields.