The minitiad CLI is a command-line interface for interacting with appchains built on the Interwoven Stack. This tool provides comprehensive functionality for developers and users to manage accounts, query blockchain data, submit transactions, and perform various other operations.

Overview

With minitiad, you can:
  • Account Management: Create, import, and manage blockchain accounts
  • Transaction Operations: Send transactions, delegate tokens, and interact with smart contracts
  • Data Queries: Query blockchain state, account balances, and transaction history
  • Validator Operations: Create validators, delegate stakes, and manage governance proposals
  • Multi-Chain Support: Connect to different Initia rollup chains using configurable endpoints
  • VM-Specific Builds: Different implementations for Move, Wasm, and EVM rollup chains
minitiad is built using the Cosmos SDK and provides a familiar interface for users of other Cosmos-based chains, specifically optimized for Initia rollups.

VM Types and Repositories

Different Initia rollup chains use different Virtual Machines (VMs), and each requires a specific minitiad implementation:
  • Move: minimove - For rollups running Move smart contracts
  • Wasm: miniwasm - For rollups running WebAssembly smart contracts
  • EVM: minievm - For rollups running Ethereum Virtual Machine smart contracts
Check your rollup chain’s documentation to determine which VM type it uses before installation.

Prerequisites

Before installing minitiad, ensure you have the following requirements:
  • Go: Version 1.21 or higher
  • Git: For cloning the repository
  • Make: For building the binary
You can verify your Go installation by running go version in your terminal.

Installation

1

Clone the Repository

First, clone the appropriate repository based on your rollup’s VM type:
git clone https://github.com/initia-labs/minimove.git
cd minimove
Make sure to choose the correct repository that matches your target rollup chain’s VM type.
2

Get Version and Checkout

Fetch the current network version and checkout the corresponding tag. Set your rollup chain endpoints first:
# Set your rollup chain endpoints (replace with your specific chain)
export CHAIN_REST_ENDPOINT="https://rest.your-rollup-chain.com"
export CHAIN_RPC_ENDPOINT="https://rpc.your-rollup-chain.com"

# Get the current rollup version and checkout
export VERSION=$(curl -s $CHAIN_REST_ENDPOINT/cosmos/base/tendermint/v1beta1/node_info | jq -r '.application_version.version' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+')
echo "Checking out version: $VERSION"
git checkout $VERSION
Always use a specific version tag rather than the main branch for production environments to ensure stability.
Different rollup chains may run different versions. Always fetch the version from your target rollup chain.
3

Build and Install

Compile and install the minitiad binary:
make install
This will build the binary and install it to your $GOPATH/bin directory.

Verification

After installation, verify that minitiad is correctly installed and accessible:
The CLI binary is always named minitiad regardless of which VM-specific repository you cloned.

Check CLI Version

minitiad version
# Output: v0.5.7

Verify Installation Path

which minitiad
# Output: /Users/username/go/bin/minitiad (or your $GOPATH/bin path)

Check Available Commands

minitiad --help

Network Configuration

Configure the CLI to connect to your specific rollup chain by setting the appropriate endpoints:

Setting Chain Endpoints

# Set your rollup chain endpoints
export CHAIN_REST_ENDPOINT="https://rest.your-rollup-chain.com"
export CHAIN_RPC_ENDPOINT="https://rpc.your-rollup-chain.com"
export CHAIN_ID="your-chain-id"

# Configure minitiad
minitiad config chain-id $CHAIN_ID
minitiad config node $CHAIN_RPC_ENDPOINT
Make sure to use the correct endpoints for your specific rollup chain. Each Initia rollup has its own unique endpoints and chain ID.

Next Steps

Now that you have minitiad installed and configured, you can start building and deploying applications on Initia rollup chains. The specific workflow will depend on your rollup’s VM type (Move, Wasm, or EVM).
Additional minitiad CLI documentation pages are currently being developed and will be available soon.