Current Surface Only

Axiom CLI Reference

This page documents what the Rust axiom CLI exposes right now from crates/axiom-cli. It intentionally avoids older omega.py commands and broad RPC surfaces that are not wired into this CLI.

axiom-cli 0.1.0 Binary: axiom Config: ~/.truthlinked/config.toml RPC configured

01 Overview

axiom is the current TruthLinked Rust CLI. It handles account key generation, network configuration, balances, TRTH transfers, .tl name actions, Axiom Cell compilation/deployment/calls, compute escrow, and validator staking actions.

Source of truth: /root/truthlinked/crates/axiom-cli/src/main.rs. If a feature is not listed here, it is not exposed by the current Axiom CLI.

02 Install / Build

The packaged installer still needs to be updated for axiom. For now, build from the repo:

cd /root/truthlinked
cargo build --release -p axiom-cli
./target/release/axiom --help

For local use, copy or symlink the binary into your path:

ln -sf /root/truthlinked/target/release/axiom /usr/local/bin/axiom
axiom --help

03 Configuration

Global options are available on every command:

axiom --rpc https://rpc.truthlinked.org status
axiom --rpc http://127.0.0.1:19944 status
Config CommandWhat It Does
config showShow resolved network, RPC, explorer URL, keypair path, and raw config.
config set-rpc <url>Set the RPC endpoint used by CLI commands.
config set-keypair <path>Set default keypair path.
config set-rpc <url>Set custom RPC URL.
config set-explorer <url>Set custom explorer URL.
config resetReset CLI config to defaults.
axiom config set-rpc https://rpc.truthlinked.org
axiom config set-keypair ~/.truthlinked/default.keys
axiom config set-rpc https://rpc.truthlinked.org
axiom config show

Environment overrides supported by the CLI:

TRUTHLINKED_RPC=https://rpc.truthlinked.org axiom status
TRUTHLINKED_EXPLORER=https://explorer.truthlinked.org axiom config show

04 Keys & Accounts

keygen

Generate a new post-quantum keypair and print the derived account ID.

account-id

Show the account ID derived from a keyfile without a network call.

axiom keygen --output ~/.truthlinked/default.keys
axiom account-id --from ~/.truthlinked/default.keys

05 Balances & Status

balance <id>

Check balance by account ID or full public key hex.

status

Show chain height, finalized height, peers, sync state, RPC, and optional account balance.

axiom balance <account_id_or_pubkey_hex>
axiom balance <account_id_or_pubkey_hex> --full
axiom status
axiom status --from ~/.truthlinked/default.keys

06 Transfers

transfer supports account IDs, full public keys, and .tl names.

axiom transfer --from ~/.truthlinked/default.keys --to <account_id> --amount 10
axiom transfer --from ~/.truthlinked/default.keys --to <pubkey_hex> --amount 10.5
axiom transfer --from ~/.truthlinked/default.keys --to-name alice.tl --amount 1
axiom transfer --from ~/.truthlinked/default.keys --to <account_id> --to-pubkey <pubkey_hex> --amount 1

Use normal TRTH decimals. Examples: 10, 10.5, 0.001, or 0.0000001. The CLI supports up to 9 decimal places.

07 .tl Names

The current CLI exposes name proposal/update and name ownership transfer.

axiom propose-name \
  --from ~/.truthlinked/default.keys \
  --name alice.tl \
  --target <account_or_cell_id> \
  --owner <owner_account_id>

axiom transfer-name \
  --from ~/.truthlinked/default.keys \
  --name alice.tl \
  --new-owner <new_owner_account_id>
Name validation in the CLI requires lowercase ASCII .tl names, max 12 letters excluding dots.

08 Axiom Cells

The CLI currently supports compile, deploy, call, simulate call, and upgrade for Axiom Cells.

CommandCurrent Behavior
compileCompile .cell source into .axiom bytecode and write .manifest.json.
deployDeploy compiled bytecode. Manifest path is auto-detected from the bytecode path if omitted.
callCall a deployed cell method using FNV-1a selector and 32-byte hex args.
call --simulateDry-run a call through /simulate_raw without spending gas.
upgradeUpgrade an owned cell with new bytecode and manifest metadata.
axiom compile ./counter.cell
axiom compile ./counter.cell --output ./counter.axiom

axiom deploy \
  --from ~/.truthlinked/default.keys \
  --bytecode ./counter.axiom \
  --manifest ./counter.manifest.json \
  --initial-balance 0

axiom call \
  --from ~/.truthlinked/default.keys \
  --cell <cell_id> \
  --method increment \
  --args <32_byte_hex_arg> \
  --gas 500000

axiom call --simulate \
  --from ~/.truthlinked/default.keys \
  --cell <cell_id> \
  --method get \
  --gas 500000

axiom upgrade \
  --from ~/.truthlinked/default.keys \
  --cell <cell_id> \
  --bytecode ./counter_v2.axiom \
  --manifest ./counter_v2.manifest.json

09 Compute Escrow

Compute escrow commands are available for accounts that need funds reserved for system-cell work.

axiom deposit-compute --from ~/.truthlinked/default.keys --amount 5
axiom withdraw-compute --from ~/.truthlinked/default.keys --amount 2

10 Validators

The validator subcommand is present and supports staking lifecycle operations through the staking system cell.

CommandPurpose
validator stakeStake TRTH as a validator.
validator unstakeBegin unbonding stake.
validator withdrawWithdraw unbonded stake.
validator unjailUnjail a jailed validator.
validator infoShow validator info for a keyfile.
axiom validator stake --from ~/.truthlinked/default.keys --amount 100
axiom validator unstake --from ~/.truthlinked/default.keys --amount 25
axiom validator withdraw --from ~/.truthlinked/default.keys
axiom validator unjail --from ~/.truthlinked/default.keys
axiom validator info --from ~/.truthlinked/default.keys

11 What This Page Does Not Cover Yet

These platform areas exist elsewhere in the codebase or RPC surface, but they are not first-class Axiom CLI commands today:

  • Full RPC reference for every HTTP endpoint.
  • Governance proposal creation/voting/execution commands.
  • NFT mint/transfer/burn commands.
  • Custom token deploy/mint/burn/freeze/thaw commands.
  • MCP agent/tool/resource/prompt registration commands.
  • Oracle/Accord request and URL-governance commands are not first-class CLI commands yet. Cells use accord::request and accord::read; typed price feeds use accord_format=price_usd in the request URL.
  • Rust Axiom SDK authoring guide beyond CLI compile/deploy/call usage.
Recommended split: keep this page as the exact axiom CLI reference. Add separate pages later for RPC Reference, Axiom SDK, Governance, MCP Agents, Oracle/Accord response formats, Tokens, NFTs, and Node Operations.