Skip to main content

Installation

This guide covers installing the Privacy Boost CLI tool.

Prerequisites

  • Rust 1.70 or later (for building from source)
  • An Ethereum RPC endpoint
  • A private key with funds for transactions

Installation Methods

From Pre-built Binary

Download the latest release for your platform:
# macOS (Apple Silicon)
curl -L https://github.com/testinprod-io/privacy-boost/releases/latest/download/privacy-boost-darwin-arm64.tar.gz | tar xz
sudo mv privacy-boost /usr/local/bin/

# macOS (Intel)
curl -L https://github.com/testinprod-io/privacy-boost/releases/latest/download/privacy-boost-darwin-amd64.tar.gz | tar xz
sudo mv privacy-boost /usr/local/bin/

# Linux (x86_64)
curl -L https://github.com/testinprod-io/privacy-boost/releases/latest/download/privacy-boost-linux-amd64.tar.gz | tar xz
sudo mv privacy-boost /usr/local/bin/

# Linux (ARM64)
curl -L https://github.com/testinprod-io/privacy-boost/releases/latest/download/privacy-boost-linux-arm64.tar.gz | tar xz
sudo mv privacy-boost /usr/local/bin/

From Source (Currentely unavailable)

Build from the repository:
# Clone repository
git clone https://github.com/testinprod-io/privacy-boost.git
cd privacy-boost

# Build CLI using Make
make cli

# Binary will be at dist/cli/privacy-boost
./dist/cli/privacy-boost --version

Cargo Install (Currently unavailable)

To install the privacy-boost crate from crates.io:
cargo install privacy-boost-cli

Verify Installation

privacy-boost --version
# privacy-boost 0.1.0

privacy-boost --help

Configuration

Configuration File

Create a configuration file at ~/.privacy-boost/config.toml:
# Network configuration
indexer_url = "https://test-api.privacy-boost.sunnyside.io/indexer"
prover_url = "https://test-api.privacy-boost.sunnyside.io/prover"
chain_id = 11155420
shield_contract = "0xB22fD661b322F10d4B7cd0cFcb9578C485423119"
weth_contract = "0x4200000000000000000000000000000000000006"
rpc_url = "https://eth.llamarpc.com"
timeout_secs = 30

Environment Variables

Override configuration with environment variables:
export RPC_URL="https://mainnet.infura.io/v3/YOUR_KEY"
export CHAIN_ID=11155420
export INDEXER_URL="https://test-api.privacy-boost.sunnyside.io/indexer"
export PROVER_URL="https://test-api.privacy-boost.sunnyside.io/prover"
export SHIELD_CONTRACT="0xB22fD661b322F10d4B7cd0cFcb9578C485423119"
export WETH_CONTRACT="0x4200000000000000000000000000000000000006"

export PRIVATE_KEY="0x..."

Quick Example

# Login with private key
privacy-boost login --private-key $PRIVATE_KEY

# Check status
privacy-boost status

# Check balance
privacy-boost balance --token 0x...

# Deposit tokens
privacy-boost deposit --token 0x... --amount 1000000000000000000

# Send privately
privacy-boost send --token 0x... --amount 500000000000000000 --recipient 0x04...

# Withdraw
privacy-boost withdraw --token 0x... --amount 250000000000000000 --recipient 0x...

# View history
privacy-boost history

Commands

CommandDescription
initInitialize configuration file
loginConnect wallet, derive privacy keys, and authenticate
logoutClear session
statusShow connection status
balanceCheck a token balance
balancesCheck all token balances
depositDeposit tokens to private balance
withdrawWithdraw to public address
sendSend private transfer
historyView transaction history
sessionsList saved sessions
search-addressLook up identity by address or MPK

Next Steps