zinc-cli is an agent-first Bitcoin + Ordinals wallet CLI.
It uses an account-based model where each account has:
- a taproot address for ordinals
- a native segwit address for BTC payments
Default behavior is optimized for automation (--agent JSON envelopes).
Optional interactive dashboard mode is available via --features ui.
Cargo (available now):
cargo install zinc-wallet-cliCargo with human dashboard/TUI:
cargo install zinc-wallet-cli --features uiHomebrew (after tap is published):
brew tap bitcoiner-dev/zinc-cli
brew install zinc-cliexport ZINC_WALLET_PASSWORD='your-wallet-password'
zinc-cli wallet init --overwrite
zinc-cli --agent wallet info
zinc-cli --agent sync chain
zinc-cli --agent sync ordinals
zinc-cli --agent balanceExpected agent envelope:
{
"ok": true,
"schema_version": "1.0",
"command": "wallet info"
}The ui feature enables a basic terminal dashboard for humans that shows:
- account balance
- inscriptions
- ordinals/payment addresses per account
Even without ui, human command output can be tuned with:
--thumbto force thumbnail rendering on--no-thumbto disable thumbnail rendering
Run dashboard:
zinc-cli dashboard./demo/scripts/run_demo.sh
./demo/scripts/benchmark.sh --runs 5Reports are written to demo/artifacts/.
- wallet lifecycle:
wallet init|import|info|reveal-mnemonic - sync:
sync chain|ordinals - addresses and balance:
address taproot|payment,balance - transfers:
psbt create|analyze|sign|broadcast - advanced offers (hidden from top-level help):
offer create|publish|discover|accept|submit-ord|list-ord - accounts:
account list|use - waits and tx:
wait tx-confirmed|balance,tx list - operations:
snapshot save|restore|list,lock info|clear,doctor
- Usage guide: USAGE.md
- Agent workflows: AGENT_PLAYBOOKS.md
- Command contract: COMMAND_CONTRACT_V1.md
- JSON schemas: SCHEMAS.md
- Demo kit: demo/README.md
- Reference clients: examples/agent_client.py, examples/agent_client.ts
- Prefer
ZINC_WALLET_PASSWORD(default password env) or--password-stdin. - Use
--password-envonly when you need a non-default env var name. - In
--agentmode, mnemonic output is redacted unless--revealis set. - See SECURITY.md.
MIT. See LICENSE.
