Skip to main content

Nillion SDK and Tools

The Nillion SDK includes CLI tools for generating user and node keys, compiling Nada programs, running programs locally, running a nillion devnet, and connecting to the Nillion network.


  1. Install nilup, the Nillion SDK tool installer and version manager. Binaries are available for Linux and macOS platforms

    For the security-conscious, please download the script, so that you can inspect how it works, before piping it to bash.

    curl | bash

    Confirm global nilup tool installation

    nilup -V
  2. Use nilup to install the latest version of the Nillion SDK.

    nilup install latest
    nilup use latest
    nilup init

    Optionally enable nilup telemetry, providing your Ethereum wallet address. We collect this data to understand how the software is used, and to better assist you in case of issues.In doing this, you consent to the collection of telemetry data by the Nillion Network. While we will not collect any personal information, we still recommend using a new wallet address that cannot be linked to your identity by any third party. For more information, check out our privacy policy.

    nilup instrumentation enable --wallet <your-eth-wallet-address>

    Confirm global Nillion tool installation

    nillion -V

Nillion SDK tools

After installation, the following SDK tools are available globally:

  • nilup: a tool to install the Nillion SDK and manage Nillion SDK versions.
  • nillion: a cli-based Nillion Client and tool for interacting with the Nillion Network from the command line to generate user keys, generate node keys, store secrets, retrieve secrets, store programs, compute on secrets, and fetch information about clusters and nodes.
  • nillion-devnet: a tool that allows you to spin up and interact with a local test Nillion network that is completely isolated within your computer
  • node-key2peerid: a tool that creates a peer id from your node key
  • nada: a tool to manage Nada projects (create project, compile, run, and test programs, generate tests, etc.).
  • nada-run: a tool that executes programs against a stripped down version of a Nillion devnet
  • pynadac: a tool that compiles Nada programs; pynadac takes an input program defined in Nada and produces a compiled version of it ready to be run with nada-run or stored on the Nillion Network

Command structure

Nillion SDK tool commands follow a structured format:

<tool> [options] <command>

For example, to generate a user key using the nillion command, run:

nillion user-key-gen user.key

To get full usage details including a comprehensive list of global commands and options available for a specific tool, run:

<tool> --help

For example, to view the available commands for the nada tool, run:

nada --help