CLI tool for Mina Bridge - Bridge assets from any chain to Hyperliquid
npm install @siphoyawe/mina-cli

Terminal-based cross-chain bridge to Hyperliquid
Bridge assets from any chain directly from your command line
---
- Interactive Wizard - Step-by-step guided bridging experience
- Multi-chain Support - Bridge from 40+ chains including Ethereum, Arbitrum, Polygon, Base, and more
- Auto-deposit - Automatic deposit to Hyperliquid L1 trading account
- Transaction Tracking - Real-time status monitoring with progress indicators
- Local History - Track all your bridge transactions locally
- Beautiful TUI - Dark luxe terminal theme with elegant UI components
- JSON Output - Machine-readable output for scripting and automation
``bashnpm
npm install -g @siphoyawe/mina-cli
Quick Start
$3
Simply run
mina with no arguments to launch the interactive wizard:`bash
mina
`The wizard will guide you through:
1. Selecting a source chain
2. Choosing a token to bridge
3. Entering the amount
4. Confirming and executing the transaction
$3
`bash
Get a quote for bridging USDC from Arbitrum
mina quote --from arbitrum --token USDC --amount 100Get a quote with JSON output
mina quote --from ethereum --token ETH --amount 0.5 --json
`$3
`bash
Bridge USDC from Arbitrum (will prompt for private key)
mina bridge --from arbitrum --token USDC --amount 100Bridge with a key file
mina bridge --from arbitrum --token USDC --amount 100 --key ./key.jsonSkip confirmation prompt
mina bridge --from ethereum --token ETH --amount 0.5 --key ./key.json --yes
`Commands
$3
Launch the interactive bridge wizard.
`bash
mina
mina wizard
`$3
Get a bridge quote without executing.
`bash
mina quote --from --token --amount [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--from | Source chain (required) | - |
| --to | Destination chain | hyperliquid |
| --token | Token symbol (required) | - |
| --amount | Amount to bridge (required) | - |
| --json | Output as JSON | false |$3
Execute a bridge transaction.
`bash
mina bridge --from --token --amount [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--from | Source chain (required) | - |
| --token | Token symbol (required) | - |
| --amount | Amount to bridge (required) | - |
| --key | Path to private key file | Prompt |
| --yes | Skip confirmation prompt | false |
| --auto-deposit | Auto-deposit to Hyperliquid L1 | true |$3
Check the status of a bridge transaction.
`bash
mina status [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--watch | Poll for real-time updates | false |$3
List all supported source chains.
`bash
mina chains [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--json | Output as JSON | false |$3
List bridgeable tokens.
`bash
mina tokens [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--chain | Filter by chain (name or ID) | All chains |
| --json | Output as JSON | false |$3
Check wallet token balances.
`bash
mina balance --address [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--address | Wallet address (required) | - |
| --chain | Specific chain (name or ID) | All chains |
| --all | Show all tokens including zero balance | false |
| --json | Output as JSON | false |$3
View bridge transaction history.
`bash
mina history [options]
`| Option | Description | Default |
|--------|-------------|---------|
|
--limit | Number of entries to show | 10 |
| --address | Filter by wallet address | All |
| --json | Output as JSON | false |$3
Manage CLI configuration.
`bash
List all config
mina config listGet a specific value
mina config get Set a value
mina config set
`Configuration Options:
| Key | Type | Description | Default |
|-----|------|-------------|---------|
|
slippage | number | Slippage tolerance (percentage) | 0.5 |
| autoDeposit | boolean | Auto-deposit to Hyperliquid L1 | true |
| defaultChain | string | Default source chain | arbitrum |
| rpc. | string | Custom RPC URL per chain | Default RPC |Examples:
`bash
mina config set slippage 1.0
mina config set defaultChain ethereum
mina config set rpc.arbitrum https://arb1.example.com
`Private Key Handling
The CLI supports multiple formats for providing your private key:
$3
Create a JSON file with your private key:
`json
{
"privateKey": "0x..."
}
`Or use plain text format:
`
0x1234567890abcdef...
`Then pass it to the bridge command:
`bash
mina bridge --from arbitrum --token USDC --amount 100 --key ./key.json
`$3
If no key file is provided, you'll be prompted to enter your private key:
`bash
mina bridge --from arbitrum --token USDC --amount 100
Enter private key (input will be visible):
`Security Note: Never share your private key. Store key files securely and add them to
.gitignore.Configuration File
CLI settings are stored in
~/.mina/config.json. Bridge history is stored in ~/.mina/history.json.Supported Chains
| Chain | Chain ID |
|-------|----------|
| Ethereum | 1 |
| Arbitrum | 42161 |
| Optimism | 10 |
| Base | 8453 |
| Polygon | 137 |
| BSC | 56 |
| Avalanche | 43114 |
| Fantom | 250 |
| zkSync Era | 324 |
| Linea | 59144 |
| Scroll | 534352 |
| And 30+ more... | |
Destination: HyperEVM (Chain ID: 999) with automatic deposit to Hyperliquid L1
Examples
`bash
Launch the interactive wizard
minaGet a quote for bridging 100 USDC from Arbitrum
mina quote --from arbitrum --token USDC --amount 100Bridge 0.5 ETH from Ethereum
mina bridge --from ethereum --token ETH --amount 0.5 --key ./key.jsonCheck transaction status with live updates
mina status 0x1234...abcd --watchView supported chains in JSON format
mina chains --jsonList tokens available on Arbitrum
mina tokens --chain arbitrumCheck wallet balance on all chains
mina balance --address 0x1234...abcdView recent bridge history
mina history --limit 20Configure default slippage
mina config set slippage 1.0
``- @siphoyawe/mina-sdk - The underlying SDK with React hooks
- Mina Web App - Web interface for bridging
MIT