Skip to main content

CLI Reference

The modal command-line tool is your interface to Modality.

Installation

# macOS/Linux
curl -fsSL https://get.modality.org | sh

# Or build from source
cd rust && cargo build --release

Command Groups

CommandAliasDescription
modal contractmodal cContract management (create, commit, push, pull)
modal idmodal identityIdentity management (create, derive, get)
modal passfilePassfile encryption/decryption
modal hubContract hub server and collaboration
modal predicatePredicate listing and testing
modal programProgram management
modal nodeNetwork node operations
modal netmodal networkNetwork information
modal localLocal development utilities
modal runQuick node runners
modal chainChain validation

Global Commands

# Show version
modal --version
modal -v

# Show help
modal --help
modal <command> --help

# Show status (in contract directory)
modal status

# Kill all local nodes
modal killall

# Upgrade to latest version
modal upgrade

Quick Reference

# Identity
modal id create --path alice.passfile
modal id get --path alice.passfile

# Contract workflow
modal c create
modal c set /parties/alice.id --named alice
modal c commit --all --sign alice.passfile -m "Initial setup"
modal c status
modal c log

# Push/Pull
modal c push http://hub.example.com/contracts/my-contract
modal c pull http://hub.example.com/contracts/my-contract

# Predicates
modal predicate list
modal predicate info signed_by
modal predicate test signed_by --data '{"path":"/alice.id","signature":"..."}'

Shortcuts

Full CommandShortcut
modal contractmodal c
modal contract statusmodal status
modal identitymodal id
modal networkmodal net
modal local killall-nodesmodal killall

Environment Variables

VariableDescriptionDefault
MODAL_NODE_PATHDefault node directory./node
MODAL_NETWORKNetwork (mainnet/testnet)mainnet
MODAL_HUB_URLDefault hub URL
MODAL_PASSFILEDefault passfile path