Documentation

Kanari Documentation

Client Operations

Send transactions, query state, and manage RPC environments with the Kanari CLI.

Last updated

Client Operations

The client command group talks to a running Kanari RPC node.

kanari client <COMMAND>

Most commands accept --rpc <RPC_ENDPOINT>. If omitted, the CLI uses the active environment from kanari client envs, then falls back to http://127.0.0.1:6767.

Transaction commands

transfer

Transfer native KANARI coins.

kanari client transfer \
  --to <RECIPIENT_ADDRESS> \
  --amount <KANARI_AMOUNT> \
  --password <PASSWORD>

Options:

  • -f, --from <FROM>: sender wallet address. If omitted, uses the selected wallet.
  • -t, --to <TO>: recipient address.
  • -a, --amount <AMOUNT>: human KANARI amount; converted to Mist internally.
  • -p, --password <PASSWORD>: wallet password.
  • --rpc <RPC_ENDPOINT>: RPC endpoint override.

Native transfer is a Move object transaction. It requires a mutable transfer coin and a separate gas coin object.

token-transfer

Transfer a custom token type.

kanari client token-transfer \
  --to <RECIPIENT_ADDRESS> \
  --token <TOKEN_TYPE> \
  --amount <RAW_AMOUNT> \
  --password <PASSWORD>

Options:

  • -f, --from <FROM>: sender wallet address. If omitted, uses the selected wallet.
  • -t, --to <TO>: recipient address.
  • --token <TOKEN_TYPE>: full Move token type, for example 0x2::kanari::KANARI.
  • --amount <RAW_AMOUNT>: raw token units.
  • -p, --password <PASSWORD>: wallet password.
  • --rpc <RPC_ENDPOINT>: RPC endpoint override.

burn

Burn native KANARI from a wallet.

kanari client burn --amount <KANARI_AMOUNT> --password <PASSWORD>

Options:

  • -f, --from <FROM>: wallet address. If omitted, uses the selected wallet.
  • -a, --amount <AMOUNT>: human KANARI amount.
  • -p, --password <PASSWORD>: wallet password.
  • --rpc <RPC_ENDPOINT>: RPC endpoint override.

faucet

Request devnet tokens.

kanari client faucet --amount <KANARI_AMOUNT>

Options:

  • -t, --to <TO>: recipient address. If omitted, uses the active wallet.
  • -a, --amount <AMOUNT>: human KANARI amount.
  • --dev-address <DEV_ADDRESS>: faucet/dev wallet override.
  • --dev-password <DEV_PASSWORD>: faucet/dev wallet password; falls back to KANARI_PASSWORD.
  • --rpc <RPC_ENDPOINT>: RPC endpoint override.

Query commands

stats

Show chain-level stats from the selected RPC node.

kanari client stats --rpc http://127.0.0.1:6767

balance

Show token balances for an owner.

kanari client balance --owner <ADDRESS>
kanari client balance --owner <ADDRESS> --detailed

Options:

  • --owner <ADDRESS>: owner address. If omitted, uses the selected wallet.
  • -d, --detailed: include token metadata when available.
  • --rpc <RPC_ENDPOINT>: RPC endpoint override.

objects

List objects owned by an address.

kanari client objects --owner <ADDRESS>
kanari client objects --owner &lt;ADDRESS&gt; --type "0x2::coin::Coin<0x2::kanari::KANARI>" --detailed

Options:

  • --owner &lt;ADDRESS&gt;: owner address. If omitted, uses the selected wallet.
  • --type &lt;OBJECT_TYPE&gt;: optional object type filter.
  • -d, --detailed: show extra object fields.
  • --rpc &lt;RPC_ENDPOINT&gt;: RPC endpoint override.

owner get

Print full owner state as JSON.

kanari client owner get --owner &lt;ADDRESS&gt;

tx

Show transaction details by hash.

kanari client tx --hash &lt;TX_HASH&gt;
kanari client tx --hash &lt;TX_HASH&gt; --json

Options:

  • --hash &lt;TX_HASH&gt;: transaction hash.
  • --json: print the full RPC response as JSON.
  • --rpc &lt;RPC_ENDPOINT&gt;: RPC endpoint override.

view

Call a Move view function without submitting a transaction.

kanari client view \
  --package &lt;PACKAGE_ADDRESS&gt; \
  --module &lt;MODULE&gt; \
  --function &lt;FUNCTION&gt; \
  --type-arg &lt;TYPE_ARG&gt; \
  --arg &lt;HEX_BCS_ARG&gt;

Options:

  • --package &lt;ADDRESS&gt;: package address.
  • --module &lt;MODULE&gt;: module name.
  • --function &lt;FUNCTION&gt;: function name.
  • -t, --type-arg &lt;TYPE_ARG&gt;: repeatable type arguments.
  • -a, --arg &lt;HEX&gt;: repeatable BCS-serialized hex arguments.
  • --owned-input OWNER,OBJECT_ID,VERSION,DIGEST: explicit owned object input.
  • --shared-input OBJECT_ID,VERSION,DIGEST: explicit shared object input.
  • --immutable-input OBJECT_ID,VERSION,DIGEST: explicit immutable object input.
  • --raw: print raw JSON result.
  • --rpc &lt;RPC_ENDPOINT&gt;: RPC endpoint override.

Views are read-only and do not create checkpoints, but they still execute VM work on the RPC node.

Load testing

stress-test

Send many native transfers from one wallet for local testing.

kanari client stress-test \
  --to &lt;RECIPIENT_ADDRESS&gt; \
  --amount 0.1 \
  --count 1000 \
  --password &lt;PASSWORD&gt;

Useful options:

  • -f, --from &lt;FROM&gt;: sender wallet address. If omitted, uses the selected wallet.
  • --faucet: request dev faucet funds first.
  • --faucet-amount &lt;AMOUNT&gt;: faucet amount override.
  • --dev-address &lt;ADDRESS&gt; / --dev-password &lt;PASSWORD&gt;: faucet wallet overrides.
  • --rpc &lt;RPC_ENDPOINT&gt;: RPC endpoint override.

For high throughput tests, use many independent sender/object lanes. Reusing the same coin object creates object-version conflicts and forces retries.

Environment commands

Manage named RPC endpoints.

kanari client envs list
kanari client envs new local http://127.0.0.1:6767
kanari client envs switch local
kanari client envs remove local

The selected environment is used by commands that do not pass --rpc.