Docs hub | Getting started | FAQ
Keypair, faucet, transfer, and basic contract lifecycle are available for experimentation on the public testnet. Staking, governance, and some advanced or operator paths are not yet production-complete.
cargo install --git https://github.com/DytallixHQ/dytallix-sdk.git dytallix-cli --bin dytallixGlobal help:
dytallix --help- Keystore:
~/.dytallix/keystore.json - Config:
~/.dytallix/config.json
| Command | Purpose | Example |
|---|---|---|
init |
Create a wallet, save it, and request faucet funds | dytallix init |
wallet |
Create, import, export, switch, list, rotate, and inspect wallets | dytallix wallet info |
balance |
Show DGT and DRT balances | dytallix balance |
send |
Send DGT or DRT | dytallix send <daddr> 100 |
faucet |
Request faucet funds or inspect eligibility | dytallix faucet status |
stake |
View staking state publicly, or use direct-node staking writes | dytallix stake status |
governance |
Query proposals publicly, or use direct-node governance writes | dytallix governance proposals |
contract |
Deploy, call, query, and inspect contracts | dytallix contract info <address> |
node |
Operate or inspect a local node workflow | dytallix node status |
chain |
Query block, epoch, status, and chain params | dytallix chain status |
crypto |
Key generation, signing, verification, and keystore inspection | dytallix crypto keygen |
dev |
Small developer utilities and quick links | dytallix dev benchmark |
config |
Show, set, reset, and switch CLI config | dytallix config network testnet |
Bootstraps the default testnet developer flow:
dytallix initThis command:
- generates an ML-DSA-65 keypair
- derives a D-Addr
- writes the keystore
- submits a faucet request
- waits for DGT and DRT to appear
For Milestone 2, create a separate recipient wallet after init and send to
that address rather than self-sending the funded default wallet.
Subcommands:
create [--name NAME]import --key-file PATH [--name NAME]export --output PATHlistswitch NAMErotateinfo
Examples:
dytallix wallet create --name default
dytallix wallet list
dytallix wallet infoExamples:
dytallix balance
dytallix balance <daddr>
dytallix send --token dgt <daddr> 25
dytallix faucet
dytallix faucet statusCurrent public faucet policy:
- successful requests fund
10 DGTand100 DRT - the public cooldown is
60seconds - the public cap is
20requests per hour sendsubmits the signed transaction, prints the hash, and waits for/tx/<hash>to leavePendingwhen the public receipt route is already indexing
Subcommands:
delegate <validator> <amount>undelegate <validator> <amount>claimstatus
Examples:
DYTALLIX_ENDPOINT=http://localhost:3030 dytallix stake delegate <validator> 1000
dytallix stake statusCurrent public behavior:
statusreadshttps://dytallix.com/api/staking/balance/<D-ADDR>- the CLI consults
GET /api/capabilitieson compatible nodes when deciding whether public staking writes should stay blocked delegate,undelegate, andclaimare disabled on the default public website gateway- write testing for staking still requires a local node or direct node endpoint
Subcommands:
proposalsvote <id> <yes|no|abstain>proposestatus <id>
Examples:
dytallix governance proposals
DYTALLIX_ENDPOINT=http://localhost:3030 dytallix governance vote 7 yesCurrent public behavior:
proposalsreadshttps://dytallix.com/api/governance/proposalsstatus <id>filters the public proposals list and prints the matching item- the CLI consults
GET /api/capabilitieson compatible nodes when deciding whether public governance writes should stay blocked voteandproposeare disabled on the default public website gateway- write testing for governance still requires a local node or direct node endpoint
Subcommands:
deploy <wasm-file>call <address> <method> [args...]query <address> <method> [args...]info <address>events <address>
Examples:
dytallix contract deploy ./my_contract.wasm
dytallix contract query <contract> get_countCurrent public behavior:
deployposts WASM bytes to/contracts/deployon the active endpointdeploypolls/tx/<hash>and/api/contracts/<address>after submission and prints a confirmed state as soon as one of those public routes is indexeddeployprintsdytallix contract info <address>as the canonical contract verification path on the public gateway when/tx/<hash>lagscallposts method execution requests tohttps://dytallix.com/contracts/callinfo <address>readshttps://dytallix.com/api/contracts/<address>queryreadshttps://dytallix.com/api/contracts/<address>/query/<method>eventsreadshttps://dytallix.com/api/contracts/<address>/events- for a direct node endpoint or a local node, set
DYTALLIX_ENDPOINTor rundytallix config set endpoint http://localhost:3030
Recommended verification flow after deploy:
dytallix contract deploy ./my_contract.wasm
dytallix contract info <contract-address>Subcommands:
statusblock <number|hash|latest|finalized>epochcapabilities [--require-live]params
Examples:
dytallix chain status
dytallix chain block latest
dytallix chain capabilities
dytallix chain capabilities --require-liveCurrent public behavior:
status,block, andepochuse public root RPC readscapabilitiesprints the runtime contract from/api/capabilitieswhen a compatible node exposes it, or the SDK embedded fallback when it does notcapabilitiesprints aSource:line so operators can tell whether the document came from a live node or the SDK fallbackcapabilities --require-livefails closed when the runtime endpoint is unavailable instead of silently using the fallbackscripts/public_smoke.sh capabilities-require-liveis the CI-friendly smoke path for a compatible node that should already expose live capabilitiesparamsderives the public chain ID and gas schedule from/status
Subcommands:
startstopstatuspeerslogs
The start and stop commands look for helper scripts such as
start-local.sh and stop-local.sh (or scripts/start-local.sh and
scripts/stop-local.sh) relative to the current directory.
Current public behavior:
statususes the local node profile onhttp://localhost:3030peersreads the local-only/peersroute directly fromhttp://localhost:3030/peers
Subcommands:
keygen [--scheme ml-dsa-65|slh-dsa]sign <message>verify <message> <signature> <pubkey>address <pubkey>inspect <keystore-file>
Examples:
dytallix crypto keygen
dytallix crypto sign "hello dytallix"Subcommands:
faucet-serverexplorerdocsdiscordgithubdecode <hex>encode <text>simulate-tx <address> <amount>benchmark
Subcommands:
showset <key> <value>network <testnet|local>reset
Examples:
dytallix config show
dytallix config network localThe CLI resolves endpoints from the active network profile:
testnet->https://dytallix.comlocal->http://localhost:3030
The public CLI currently exposes only testnet and local through
dytallix config network.
For direct-node testing, contract lifecycle reads, or a custom RPC base, you can override the active profile endpoint:
dytallix config set endpoint http://localhost:3030Or for a one-off shell session:
export DYTALLIX_ENDPOINT=http://localhost:3030For faucet behavior and other operational notes, see Core concepts and FAQ.