Skip to main content

crumb-alpha-cli

Command-line tool for managing wallets, balances, deposits, and payments.

Installation​

pnpm add -g crumb-alpha-cli

Or use via npx:

npx crumb-alpha-cli <command>

Commands​

crumb init​

Initialize Crumb — creates a config file and wallet. Sets up on arcTestnet and encrypts the private key with AES-256-GCM.

crumb init

Config is stored at ~/.crumb/config.json and the encrypted keystore at ~/.crumb/keystore.enc.

crumb wallet create​

Create a new wallet.

crumb wallet create

crumb wallet show​

Display the active wallet address.

crumb wallet show

crumb wallet fund​

Instructions to fund your wallet with testnet USDC.

crumb wallet fund

crumb balance​

Check USDC balances — both on-chain wallet balance and Gateway deposited balance.

crumb balance

crumb deposit <amount>​

Deposit USDC into the Gateway for gasless payments.

crumb deposit 10.0

crumb withdraw <amount>​

Withdraw USDC from the Gateway back to your wallet.

crumb withdraw 5.0

# Cross-chain withdrawal
crumb withdraw 5.0 --chain arcTestnet

crumb pay <url>​

Make a single paid request to an x402-protected resource.

crumb pay https://api.example.com/search --max-payment 0.01

crumb history​

View transaction history.

crumb history
crumb history --limit 50

crumb serve <file>​

Start a local test provider from a handler file.

crumb serve ./handler.js --port 3000 --price '$0.01'

The handler file should export a default Express-compatible request handler:

// handler.ts
export default (req: any, res: any) => {
res.json({ message: 'Hello, paid world!' })
}

Configuration​

Config File​

Located at ~/.crumb/config.json:

{
"activeWallet": "0x22b204CF75B960c6cCf3A49D78a3Aa9845953752",
"chain": "arcTestnet"
}

Keystore​

The private key is encrypted with AES-256-GCM and stored at ~/.crumb/keystore.enc. The password is read from the CRUMB_KEYSTORE_PASSWORD environment variable.

export CRUMB_KEYSTORE_PASSWORD="your-secure-password"
crumb balance

Environment Variables​

VariableDescription
CRUMB_KEYSTORE_PASSWORDPassword for decrypting the keystore