BLOOMLIVE
--:--:-- UTCv0.1.7
BLOOM · CLI

Privacy-Preserving Yield Infrastructure — from your terminal.

Bloom CLI brings the full flow to the command line: browse live Morpho vaults, create and fund an isolated Agent Wallet, deposit into Morpho via the agent, and withdraw. Real Morpho API data, real Base chain reads, real transactions — no fake output.

⚠ REAL TRANSACTIONS · BASE MAINNET. Funding, deposits, and withdrawals broadcast real transactions on Base. The CLI agent wallet is a hot wallet — fund only what you are willing to risk. Keys are never printed, logged, or uploaded; every real transaction requires explicit confirmation (or --yes).
01

INSTALL

install
# from the Bloom repo
$ cd cli && npm install
$ npm link # exposes the `bloom` command
# or run directly, no link:
$ node bin/bloom.mjs --help
02

QUICK START

quick-start
$ bloom status # wallets, signers, balances
$ bloom vaults --asset USDC --sort apy
$ bloom agent create # local agent wallet
$ bloom agent fund --asset USDC --amount 100
$ bloom strategy deposit --vault 0xVAULT --asset USDC --amount 100 --via-agent
$ bloom positions
03

AGENT WALLET FLOW

The CLI provisions its own local Agent Wallet (a real EOA key stored at ~/.bloom/agent.key, mode 0600). This is separate from the web app's Privy embedded wallet — browser keys can't be read from a terminal. Fund it from your main wallet, then deploy.

agent
$ bloom agent create
AGENT WALLET 0x… (new local EOA)
KEYSTORE ~/.bloom/agent.key (mode 0600)
$ bloom agent fund --asset ETH --amount 0.001 # gas
$ bloom agent fund --asset USDC --amount 100 # capital
$ bloom agent balances
04

MORPHO VAULT COMMANDS

vaults
$ bloom vaults --asset USDC --sort apy # filter + sort
# numbered rows: [1] VAULT · ASSET · APY · TVL · RISK · ADDRESS
$ bloom vaults --full # full, copyable addresses
# then reference a vault by index (from the last list) …
$ bloom strategy prepare --vault-index 1
# … or by full address
$ bloom strategy prepare --vault 0xFULL_VAULT_ADDRESS
05

DEPOSIT VIA AGENT WALLET

deposit
$ bloom strategy deposit --vault-index 1 --asset USDC --amount 100 --via-agent
# (or --vault 0xFULL_VAULT_ADDRESS instead of --vault-index)
# agent-signed on Base: approve (if needed) → vault.deposit(amount, agent)
⚠ REAL ON-CHAIN TRANSACTION · BASE MAINNET
Type 'yes' to broadcast: (or pass --yes)
✓ DEPOSITED tx: https://basescan.org/tx/0x…
06

PORTFOLIO

positions
$ bloom positions # main + agent wallets
# WALLET BALANCES · DEPLOYED (MORPHO) · PORTFOLIO VALUE · ACTIVE AGENTS
# positions valued via ERC-4626 convertToAssets (real underlying value)
07

ACTIVITY

activity
$ bloom activity # indexed Morpho + local device history
INDEXED ONCHAIN (deposits/withdrawals from the Morpho Blue API)
LOCAL DEVICE (~/.bloom history, not shared, not uploaded)
08

WITHDRAW / RETURN

withdraw
$ bloom withdraw --vault-index 1 --percent 100 --to-main
# (or --vault 0xFULL_VAULT_ADDRESS) — agent-signed redeem to your main wallet
09

STATUS · LIVE / BETA / PREVIEW

COMMANDWHAT IT DOESSTATUS
bloom status / walletWallets, signer state, live balancesLIVE
bloom vaultsLive Morpho vaults (filter/sort)LIVE
bloom positionsERC-4626 valued positionsLIVE
bloom activityIndexed Morpho + local historyLIVE
bloom strategy prepareVault detail + readinessLIVE
bloom agent createProvision a local agent walletBETA
bloom agent fundReal transfer main → agentBETA
bloom strategy deposit --via-agentAgent-signed Morpho depositBETA
bloom withdrawAgent-signed redeemBETA
bloom agent deploy/exit stableAutonomous strategy (no tx)PREVIEW

Commands that require a signer print a clearly-labeled PREVIEW (with the exact transaction that would run) when no key is configured — never a fake result. Read-only commands never need a key. See the full reference in cli/README.md, or the docs.