OpenZeppelin SDK is not being actively developed. We recommend using Upgrades Plugins instead. For more information, see Building for interoperability: why we’re focusing on Upgrades Plugins.

Command Line Interface (CLI)

If you’re using Truffle or Buidler, check out the new Upgrades plugins to integrate upgradeability into your existing workflow.

Develop, deploy and operate upgradeable smart contract projects. Support for Ethereum and every other EVM-powered blockchain.

  • Interactive commands: Send transactions, query balances, and interact with your contracts directly from the command line, using commands like oz send-tx, oz call, oz balance, and oz transfer.

  • Deploy & upgrade your contracts: You can develop your smart contracts iteratively, speeding up development locally, or squashing bugs in production. Run oz deploy to deploy your contracts, followed by oz upgrade any time you want to change their code.

  • Link Ethereum Packages: Use code from contracts already deployed to the blockchain directly on your project, saving gas on deployments and managing your dependencies securely, just with an oz link command.

  • Bootstrap your dapp: Jumpstart your dapp by unpacking one of our starter kits, pre-configured with OpenZeppelin Contracts, React, and Infura. Run oz unpack to start!



$ npm install @openzeppelin/cli


All CLI commands are fully interactive: you can call them with no or incomplete arguments and they will prompt you for options as they proceed.

Below is a short list of the most used commands:

Learn More

Looking for the documentation for version 2.4 or earlier? You can find it here.