CLI for Sequence Builder — designed for AI agents and automation. Create wallets, authenticate, manage projects, query blockchain data, and send ERC20 transfers from the command line.
All commands support --json for machine-readable output. Always use --json when parsing results programmatically.
# 1. Create a wallet
npx @0xsequence/builder-cli create-wallet --json
# 2. Login with the private key from step 1
npx @0xsequence/builder-cli login -k <private-key> --json
# 3. Create a project and get an access key
npx @0xsequence/builder-cli projects create "My Project" --json
# 4. Get wallet addresses (EOA + Sequence smart wallet)
npx @0xsequence/builder-cli wallet-info -k <private-key> -a <access-key> --json
# 5. Fund the Sequence wallet via the Trails link from step 4
# 6. Send an ERC20 transfer
npx @0xsequence/builder-cli transfer \
-k <private-key> -a <access-key> \
-t <token-address> -r <recipient> \
-m <amount> -c <chain-id> --json
Set SEQUENCE_PASSPHRASE to auto-encrypt and store the private key locally. Once stored, you no longer need to pass -k on every command.
export SEQUENCE_PASSPHRASE="your-strong-secret"
npx @0xsequence/builder-cli create-wallet --json
# Private key is now encrypted in ~/.sequence-builder/config.json
# All subsequent commands will use the stored key automatically
This CLI uses Sequence Smart Wallets for transfers:
Always send tokens to the Sequence Wallet Address for use with the transfer command. Use wallet-info to see both addresses.
Generate a new EOA keypair.
npx @0xsequence/builder-cli create-wallet --json
JSON output:
{
"privateKey": "0x4c0883a...",
"address": "0x89D9F8f...",
"keyStored": true
}
Show EOA and Sequence smart wallet addresses.
npx @0xsequence/builder-cli wallet-info -k <private-key> -a <access-key> --json
Options:
-k, --private-key — Wallet private key (optional if stored)-a, --access-key — Project access key (required)JSON output:
{
"eoaAddress": "0x742BDb3...",
"sequenceWalletAddress": "0xA71506...",
"fundingUrl": "https://demo.trails.build/..."
}
Authenticate with Sequence Builder.
npx @0xsequence/builder-cli login -k <private-key> --json
Options:
-k, --private-key — Wallet private key (optional if stored)-e, --email — Email to associate with the account--env — Environment: prod (default) or dev--api-url — Custom API URLJSON output:
{
"success": true,
"address": "0x742BDb3...",
"expiresAt": "2026-02-07T12:00:00Z"
}
Manage Sequence Builder projects. Requires login.
# List all projects
npx @0xsequence/builder-cli projects --json
# Create a new project
npx @0xsequence/builder-cli projects create "My Game" --json
# Create with specific chains
npx @0xsequence/builder-cli projects create "My Game" --chain-ids 137,8453 --json
# Get project details
npx @0xsequence/builder-cli projects get <project-id> --json
Manage API keys for a project. Requires login.
# List all API keys
npx @0xsequence/builder-cli apikeys <project-id> --json
# Get the default API key
npx @0xsequence/builder-cli apikeys default <project-id> --json
Send an ERC20 token transfer using the Sequence smart wallet. Gas fees are paid with the same token being transferred — no native token needed.
npx @0xsequence/builder-cli transfer \
-k <private-key> \
-a <access-key> \
-t <token-address> \
-r <recipient-address> \
-m <amount> \
-c <chain-id> \
--json
Options:
-k, --private-key — Wallet private key (optional if stored)-a, --access-key — Project access key (required)-t, --token — ERC20 token contract address (required)-r, --recipient — Recipient address (required)-m, --amount — Amount in token units, e.g. 10.5 (required)-c, --chain-id — Chain ID (required)JSON output:
{
"success": true,
"transactionHash": "0xabc123...",
"from": "0xA71506...",
"to": "0x123456...",
"token": "0x833589...",
"amount": "10.5",
"symbol": "USDC",
"chainId": 8453
}
Query blockchain data using the Sequence Indexer.
# Get token balances
npx @0xsequence/builder-cli indexer balances <address> \
-a <access-key> -c <chain-id> --include-metadata --json
# Get native token balance (ETH, MATIC, etc.)
npx @0xsequence/builder-cli indexer native-balance <address> \
-a <access-key> -c <chain-id> --json
# Get transaction history
npx @0xsequence/builder-cli indexer history <address> \
-a <access-key> -c <chain-id> --limit 20 --json
# Get token contract info
npx @0xsequence/builder-cli indexer token-info <contract-address> \
-a <access-key> -c <chain-id> --json
| Network | Chain ID |
|---|---|
| --------- | ---------- |
| Ethereum | 1 |
| Polygon | 137 |
| Base | 8453 |
| Arbitrum | 42161 |
| Optimism | 10 |
| BSC | 56 |
| Avalanche | 43114 |
Full list: https://status.sequence.info/
| Code | Meaning |
|---|---|
| ------ | --------- |
| 0 | Success |
| 1 | General error |
| 10 | Not logged in |
| 11 | Invalid private key |
| 20 | Insufficient funds |
| 30 | No projects found |
| 31 | Project not found |
| 40 | API error |
export SEQUENCE_PASSPHRASE="my-secret"
npx @0xsequence/builder-cli create-wallet --json
# Save the output — privateKey and address
npx @0xsequence/builder-cli login --json
npx @0xsequence/builder-cli projects create "My App" --json
# Note the accessKey from the output
npx @0xsequence/builder-cli wallet-info -a <access-key> --json
# Fund the sequenceWalletAddress via the fundingUrl
# Check balance first
npx @0xsequence/builder-cli indexer balances <your-sequence-wallet> \
-a <access-key> -c 8453 --json
# Send transfer
npx @0xsequence/builder-cli transfer \
-a <access-key> -t <token> -r <recipient> -m 10 -c 8453 --json
# Check across multiple chains
npx @0xsequence/builder-cli indexer balances <address> -a <key> -c 1 --json
npx @0xsequence/builder-cli indexer balances <address> -a <key> -c 137 --json
npx @0xsequence/builder-cli indexer balances <address> -a <key> -c 8453 --json
Stored in ~/.sequence-builder/config.json:
SEQUENCE_PASSPHRASE is set)"Not logged in" error: Run login first. JWT tokens expire — re-run login if expired.
"Invalid private key" error: Key must be a 64-character hex string (with or without 0x prefix). If using stored key, verify SEQUENCE_PASSPHRASE is correct.
"Insufficient balance" error: Send tokens to the Sequence Wallet Address (not the EOA). Use wallet-info to get the correct address.
Transfer fails: Ensure the Sequence wallet has enough of the token being transferred. The same token is used to pay gas fees.
共 1 个版本