SolanaSolana Pre-Alpha is live! dWallets now support Solana for native cross-chain signing.
Ika LogoIka Docs

Validator Commands

All validator operations are under the ika validator subcommand. Use ika validator --help for the full list.

ika validator [--client.config <PATH>] [--json] [-y] <SUBCOMMAND>

Most commands accept optional --gas-budget and --ika-sui-config flags. These are omitted below for brevity.

Setup

make-validator-info

Generate a validator info file with the required metadata.

ika validator make-validator-info \
  <NAME> <DESCRIPTION> <IMAGE_URL> <PROJECT_URL> <HOST_NAME> <GAS_PRICE> <SENDER_SUI_ADDRESS>

config-env

Configure the Ika package and system object IDs for the CLI environment.

ika validator config-env \
  --ika-package-id <ID> \
  --ika-common-package-id <ID> \
  --ika-dwallet-2pc-mpc-package-id <ID> \
  --ika-system-package-id <ID> \
  --ika-system-object-id <ID>

Registration

become-candidate

Register as a validator candidate using a validator info file.

ika validator become-candidate <VALIDATOR_INFO_PATH>

remove-candidate

Remove your validator candidacy.

ika validator remove-candidate --validator-cap-id <CAP_ID>

join-committee

Join the active validator committee.

ika validator join-committee --validator-cap-id <CAP_ID>

leave-committee

Leave the active validator committee.

ika validator leave-committee --validator-cap-id <CAP_ID>

Staking

stake-validator

Stake IKA tokens with a validator.

ika validator stake-validator \
  --validator-id <ID> \
  --ika-supply-id <ID> \
  --stake-amount <AMOUNT>

request-withdraw-stake

Request to withdraw staked tokens. The withdrawal is processed at the end of the epoch.

ika validator request-withdraw-stake --staked-ika-id <ID>

withdraw-stake

Withdraw staked tokens after a withdrawal request has been processed.

ika validator withdraw-stake --staked-ika-id <ID>

Commission

set-commission

Set the validator commission rate.

ika validator set-commission \
  --validator-operation-cap-id <CAP_ID> \
  --new-commission-rate <RATE>

collect-commission

Collect accumulated commission rewards.

ika validator collect-commission \
  --validator-commission-cap-id <CAP_ID> \
  [--amount <AMOUNT>]

Pricing

set-pricing-vote

Set the validator's pricing vote for network operations.

ika validator set-pricing-vote \
  --validator-operation-cap-id <CAP_ID> \
  --new-pricing-file-path <PATH>

get-current-pricing-info

Fetch current network pricing information.

ika validator get-current-pricing-info

Metadata

get-validator-metadata

Query validator information.

ika validator get-validator-metadata --validator-id <ID>

set-validator-name

Update the validator display name.

ika validator set-validator-name \
  --validator-operation-cap-id <CAP_ID> \
  --name <NAME>

set-validator-metadata

Update validator metadata (description, image URL, project URL, etc.).

ika validator set-validator-metadata \
  --validator-operation-cap-id <CAP_ID> \
  --metadata <METADATA>

Capability Verification

Verify that capability objects are valid and owned by the caller.

ika validator verify-validator-cap --validator-cap-id <CAP_ID>
ika validator verify-operation-cap --validator-operation-cap-id <CAP_ID>
ika validator verify-commission-cap --validator-commission-cap-id <CAP_ID>

Capability Rotation

Rotate capability objects for security. Generates a new capability and invalidates the old one.

ika validator rotate-operation-cap --validator-cap-id <CAP_ID>
ika validator rotate-commission-cap --validator-cap-id <CAP_ID>

Reporting

report-validator

Report a misbehaving validator.

ika validator report-validator \
  --validator-operation-cap-id <CAP_ID> \
  --reportee-id <ID>

undo-report-validator

Undo a previous validator report.

ika validator undo-report-validator \
  --validator-operation-cap-id <CAP_ID> \
  --reportee-id <ID>

Next Epoch Configuration

Update validator network configuration for the next epoch. All commands require --validator-operation-cap-id.

set-next-epoch-network-address

ika validator set-next-epoch-network-address \
  --validator-operation-cap-id <CAP_ID> \
  --network-address <ADDRESS>

set-next-epoch-p2p-address

ika validator set-next-epoch-p2p-address \
  --validator-operation-cap-id <CAP_ID> \
  --p2p-address <ADDRESS>

set-next-epoch-consensus-address

ika validator set-next-epoch-consensus-address \
  --validator-operation-cap-id <CAP_ID> \
  --consensus-address <ADDRESS>

set-next-epoch-protocol-pubkey

ika validator set-next-epoch-protocol-pubkey \
  --validator-operation-cap-id <CAP_ID> \
  <VALIDATOR_INFO_PATH>

set-next-epoch-network-pubkey

ika validator set-next-epoch-network-pubkey \
  --validator-operation-cap-id <CAP_ID> \
  <VALIDATOR_INFO_PATH>

set-next-epoch-consensus-pubkey

ika validator set-next-epoch-consensus-pubkey \
  --validator-operation-cap-id <CAP_ID> \
  <VALIDATOR_INFO_PATH>

set-next-epoch-mpc-data

ika validator set-next-epoch-mpc-data \
  --validator-operation-cap-id <CAP_ID>