Celo CLI
Introdução à Interface de Linha de Comando Celo e instruções de instalação.
O que é o CLI do Celo
A Interface de Linha de Comando permite aos usuários interagir com os contratos inteligentes do Protocolo de Celo
É uma interface com linha de comando em torno do ContractKit. Ele permite que você interaja com o Protocolo Celo e contratos inteligentes usando ferramentas de linha de comando em vez de escrever JavaScript. Ele fornece módulos para interagir com módulos do Contrato e é uma excelente referência de código ao definir seus próprios módulos. Alguns recursos comuns que você pode considerar estão ajudando os usuários a participar de eleições ou na governação em cadeia, votando em validadores, ou ajudando os usuários a interagir com contratos de vários seg.
Pacote NPM:
O Celo CLI é publicado como um módulo node em NPM. Assumindo que você tenha npm and git os dois instalados, você pode instalar o Celo CLI usando o seguinte comando:
npm install -g @celo/celocli
No momento estamos implantando a CLI com apenas o Node.js v12.x. Se você estiver rodando uma versão diferente do Node.js, considere usar NVM para gerenciar as suas versões de nó. ex. com: nvm install 12 && nvm use 12
Se você tiver problemas para instalar globalmente (por exemplo, com a bandeira -g
), tente instalar para um diretório local em vez do npm install @celo/celocli
e rode com npx celocli
.
Comandos
A ferramenta está dividida em módulos e comandos com os seguintes padrões:
celocli <module>:<command> <...args> <...flags?>
A ferramenta celocli
assume que os usuários estão executando um nó no qual eles têm acesso a efetuar login, ou tenha outro mecanismo para assinar transações (como uma carteira Ledger ou fornecer a chave privada como um argumento para o comando). Veja a documentação no módulo de configuração de para obter informações sobre como definir para quais comandos o nó é enviado.
Todos os saldos CELO ou Celo Dollars são expressos em unidades de 10^-18.
Você pode encontrar o pacote CLI Celo no NPM aqui.
Para ver todos os comandos disponíveis, execute celocli commands
.
Para ver todos os sinalizadores disponíveis para um comando, adicione a flag --globalHelp
ao comando.
Opcional: Execute um nó completo
Comandos precisam se conectar a um nó Celo para executar a maioria das funcionalidades. Você pode usar Forno (esta é a maneira mais fácil) ou executar seu próprio nó completo, se você preferir. Veja as instruções do Nó Completo para mais detalhes sobre a execução de um nó completo.
A maneira mais fácil de conectar o celocli
à rede Celo é executando o seguinte comando no seu terminal com celocli
instalado:
celocli config:set --node=https://forno.celo.org
Você pode verificar se celocli
está conectado pela execução
celocli config:get
Importar contas
Se você estiver se conectando a um nó remoto (como Forno), Celo CLI precisará assinar transações localmente antes de enviá-las. Para fazer isso, Celo CLI precisa de acesso a uma chave privada. Existem algumas maneiras de assinar transações usando Celo CLI.
Importar Chave Privada (menos seguro)
Adicione o sinalizador --privateKey
seguido da chave privada associada à conta de envio. Por exemplo:
celocli transfer:celo --from <accountAddress> --to <addressOfChoice> --value <valueInCeloWei> --privateKey <privateKey> --node https://forno.celo.org
Ou pode usar uma carteira de hardware Ledger. (preferido, veja abaixo)
Usando uma carteira Ledger
O Celo CLI suporta o uso de uma carteira de hardware Ledger para assinar transações. Basta adicionar a flag --useLedger
a um comando que requer uma assinatura.
Você pode especificar o número de endereços a obter para assinar localmente com a flag --ledgerAddresses
.
Você pode especificar uma matriz de endereços de índice para autenticação local. Exemplo --ledgerCustomAddresses "[4,99]"
.
Por exemplo:
celocli transfer:celo --to <addressOfChoice> --value 1000000 --from <accountAddress> --useLedger
Plugins
Plugins adicionais podem ser instalados, o que torna a CLI mais suave. Atualmente, o celocli
só suporta instalar plugins publicados no NPM dentro dos escopos @celo/*
e @clabs/*
.
Instalar um plugin de terceiros pode ser perigoso! Por favor, sempre certifique-se de que você confia no provedor de plugins.
O plugin Autocomplete adiciona um autocompletar interativo para bash
e zsh
shells. Para ativar o plugin de preenchimento automático, siga as instruções fornecidas em:
celocli autocomplete
O plugin de aviso de atualização notifica o usuário se ele estiver usando uma versão desatualizada da CLI. Essa configuração está habilitada por padrão.