SphereNet Admin CLI
Command-line tool for SphereNet governance and network administration.
Global flags (all commands): --url <URL> (defaults to testnet https://api.test.sphere.net) and --output text|json. In both modes stdout carries only the result and diagnostics go to stderr, so … --output json | jq always sees clean JSON.
Every governance/program/transfer command runs single-sig (--authority <keypair>, executes immediately) or multisig (--multisig <create-key> --multisig-authority <member>, creates a Squads proposal). A multisig is always referenced by its create-key (a pubkey), which the CLI resolves + validates to the vault that holds funds and signs.
Public commands
Everything a validator, deployer, or user runs on their own — no governance authority required.
Join the network (vw request / pw request)
Onboarding is two-step: you request, an authority approves async. The requester co-signs to prove control of the key.
# Validator: request a validator-whitelist entry (the vote account co-signs)
# Deployer: request program-deploy access (the deploy authority co-signs)
The --authority here is just the fee-payer; the requesting key (vote account / deploy authority) is the co-signer that proves control. Once an admin approves, you're active.
Vote (vote)
vote show <VOTE_ACCOUNT>·vote withdraw --vote-account <PK> --destination <PK> (--all) --withdraw-authority ./w.json
Defaults to a V2 account with a BLS key derived from --identity; keep --authorized-withdrawer distinct from the identity.
Stake (stake)
stake show <PK>·stake deactivate …·stake withdraw … (--amount <SPHR> | --all)
Delegation is gated on the validator whitelist and fails fast if the vote account isn't approved.
Programs (program)
The upgrade authority must be pw-approved first (see Join the network).
program upgrade --program-id <ID> --program-so ./p.so …(single-sig or multisig)program extend --program-id <ID> --bytes <N>— grow capacity (permissionless; payer covers the added rent)program set-upgrade-authority --program-id <ID> [--new-authority <PK> | --new-multisig <CK> | --final]
Multisig (multisig)
Utilities
Admin commands
Governance-authority actions. Three whitelists/policies govern the network:
- Validator Whitelist (
vw) — which validators may join consensus. - Program Whitelist (
pw) — which authorities may deploy/upgrade programs. - Monetary Policy (
mp) — inflation rate, per-signature fee, fee burn, and per-epoch VAT.
Each is a single config account with a transferable authority; vw/pw entries move through a request → approve/reject lifecycle.
Validator Whitelist (vw)
vw show— authority + entries (eachPendingorApproved)vw remove <VOTE_ACCOUNT>·vw update-start-epoch <VA> --epoch <N>·vw update-end-epoch <VA> --epoch <N>vw propose-authority [--new-authority <PK> | --new-multisig <CK>]·vw accept-authority·vw cancel-authority
Program Whitelist (pw)
pw show·pw remove <DEPLOYER>pw propose-authority [--new-authority | --new-multisig]·pw accept-authority·pw cancel-authority
Monetary Policy (mp)
mp showmp update-lamports-per-signature <LAMPORTS>·mp update-burn-percent <PERCENT>·mp update-vat-lamports-per-epoch <LAMPORTS>mp propose-authority [--new-authority | --new-multisig]·mp accept-authority·mp cancel-authority
The mp config account is created at genesis, not by this CLI.
Built-in addresses
Testnet RPC: https://api.test.sphere.net
| program | address |
|---|---|
| Stake | Stake11111111111111111111111111111111111111 |
| Vote | Vote111111111111111111111111111111111111111 |
| Validator Whitelist | VwL1111111111111111111111111111111111111111 |
| Program Whitelist | PwL1111111111111111111111111111111111111111 |
| Monetary Policy | MpM1111111111111111111111111111111111111111 |
| Squads v4 | Sqds111111111111111111111111111111111111111 |
| ZK Loader | ZkLoader11111111111111111111111111111111111 |
| SPL Token | TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA |
| Token-2022 | TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb |
| Associated Token Account | ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL |