Home

Awesome

ZRNT CLI

Debugging command line tool, to work with SSZ files, process ETH 2.0 state transitions, and compute proofs and meta-data.

Based on the Go-spec: ZRNT

Installation

Pre-requisites

Install

Options:

# outside of an existing go module directory
go install github.com/protolambda/zcli@latest

Usage

The help commands guide you through the usage

zcli --help

Quick overview of all commands (run zcli <sub command> --help to get usage options and info).

zcli
  pretty <phase> <type> <input>                  Pretty-print spec object (output indented JSON)
  convert <phase> <type> <input> <output>        Convert spec object from one format to another
  diff <phase> <type> <a> <b>                    Diff spec data
  meta <phase> <subcmd>                          List metadata of beacon state
  proof <phase> <type> <input> --gindices        Create SSZ merkle proofs over any spec object
  root <phase> <type> <input>                    Compute the SSZ hash-tree-root of a spec object
  transition <pre-phase> <slots/blocks/sub>      Run state transitions and sub-processes
  tree <phase> <type>                            Dump SSZ merkle tree of any spec object
  version                                        Print ZCLI and ZRNT version

All commands have a --help for additional information, flags, etc.

And for many commands, use --config and --preset-{forkname} to select a known (minimal, mainnet, etc.) or custom YAML config/preset file! E.g. --config=local_testnet.yaml

Inputs/outputs can:

License

MIT, see LICENSE file.