For the complete documentation index, see llms.txt. This page is also available as Markdown.

XCHandles Commands

XCHandles CLI command reference

All commands are invoked as cargo run -- xchandles <command> [flags].


Launch

initiate-launch

Creates the XCHandles registry singleton, price singleton (medieval vault), state scheduler, and premine payment CAT.

cargo run -- xchandles initiate-launch \
  --pubkeys <comma-separated-hex-pubkeys> \
  -m <threshold> \
  --payout-address <xch/txch address> \
  [--relative-block-height 32] \
  [--registration-period 31557600] \
  [--testnet11] \
  [--fee 0.0025]
Flag
Default
Description

--pubkeys

(required)

Comma-separated price singleton signer pubkeys

-m

(required)

Multisig threshold

--payout-address

(required)

Where precommit refunds are sent

--relative-block-height

32

Blocks between precommit and register

--registration-period

31557600

Registration period in seconds (~1 year)

Outputs: registry launcher_id, price singleton id, premine payment asset id.

continue-launch

Registers premine handles from CSV and mints name NFTs.

Reads xchandles_premine_testnet11.csv (or mainnet equivalent) from the slot-machine repo root.

unroll-state-scheduler

Applies block-height-scheduled price changes from the price schedule CSV on-chain.


verify-deployment

Validates an on-chain deployment against trusted CSV files.

Checks:

  • Registry launcher solution and initial state

  • Premine handles match xchandles_premine_testnet11.csv (or mainnet CSV)

  • Price schedule matches xchandles_price_schedule_testnet11.csv (or mainnet CSV)

  • Price singleton multisig configuration


Register

Two-phase registration: creates a precommit coin, then (after relative_block_height blocks) spends the registry to claim the handle.

Phase 1 (first run): creates the precommit coin. The CLI prints a follow-up command.

Phase 2 (after block delay): completes registration with the printed command.

Refund path: add --refund to claw back a precommit coin via the refund action (e.g., wrong payment, handle already taken).


extend

Extends a handle's registration period in a single transaction.


initiate-update

Starts a two-phase handle transfer to a new NFT.

--min-height defaults to current peak + 32 blocks.


execute-update

Completes a previously initiated handle update after the minimum block height.


expire

Re-registers an expired handle via the expiry auction pricing puzzle.

Uses the same two-phase precommit pattern as register.


listen

Runs a local neighbor API and syncs registry spends.

Serves http://localhost:3000 with a GET /neighbors?launcher_id=&handle_hash= endpoint (same contract as https://api.xchandles.com).


view

Prints current registry state.

Payment hints are optional overrides for price display.


sign-state-update

A price singleton signer produces a partial signature for a proposed registry state change.


broadcast-state-update

Collects multisig signatures and broadcasts the state update.

See the CATalog delegated state action docs.

Last updated