@celo/celocli
Tool for interacting with the Celo Protocol.
Installation
celocli is tested on node 20, although we find it works with warnings on 18 and 22 as well.
To install globally, run:
npm install -g @celo/celocli
If you have trouble installing globally (i.e. with the -g flag), try installing to a local directory instead with npm install @celo/celocli and run with npx celocli.
For the cutting edge of development you can install the latest beta
npm install -g @celo/celocli@beta
[!TIP]
IF you're on macOS or Linux, you may use Homebrew to install this. brew tap celo-org/brew && brew install celocli
Other binaries are directly attached to the Github releases (eg: the 6.1.0 release).
Please open up an issue if you'd like to see this CLI distributed elsewhere.
Using celocli
To see available commands
celocli commands
Check version
celocli --version
Example of running a command.
celocli network:whitelist --node celo
Documentation
Head to the documentation to read and learn more about the Celo
CLI.
How we work
We are a GitHub-first team, which means we have a strong preference for communicating via GitHub.
Please use GitHub to:
š File a bug report
š¬ Ask a question
⨠Suggest a feature
š§āš» Contribute!
š Report a security vulnerability
[!TIP]
Please avoid messaging us via Slack, Telegram, or email. We are more likely to respond to you on
GitHub than if you message us anywhere else. We actively monitor GitHub, and will get back to you shortly š
Development
Build
Use yarn build:sdk <NETWORK> to build the sdk for the target environment (CLI dependency).
Use yarn build to compile the CLI.
Generate docs
Use yarn docs to populate packages/docs with generated documentation. Generated files should be checked in, and CI will fail if CLI modifications cause changes in the docs which were not checked in.
Testing
We use both ganache and anvil for testing. You'll need foundry installed on your machine.
To run tests run the following command:
yarn workspace @celo/celocli test
if you get errors it maybe because of a mismatch in foundry anvil version vs version of anvil that created the devchain
Known build issues on Linux
I'm getting the follow error: Cannot find module '@celo/contractkit'.
A possible solution is to build the monorepo manually.
Go to the developer-tooling root directory and
> yarn build
If all works well, navigate to packages/cli.
yarn celocli COMMAND