hyze. Ela cobre o ciclo de deploy de ponta a ponta: entrar na conta, listar apps, fazer deploy, acompanhar a build, ler os logs e conferir o que está no ar, sem sair do terminal.
Instalação
Node 18+ ou Bun, um comando.
Primeiros passos
Do login ao app no ar.
Instalação
Primeiros passos
1
Guarde sua API key
Crie uma chave no dashboard em Settings → Developer e guarde com
hyze login. A CLI confere a chave contra a API antes de salvar.2
Veja o que existe no workspace
3
Faça deploy
hyze deploy . usa o projeto já ligado à pasta (veja .hyzerc.json).4
Confira o que está no ar
Comandos
appId é opcional onde o app é o assunto: o .hyzerc.json liga um app à pasta, então dentro do projeto hyze status, hyze logs e hyze deploy . funcionam sem argumento.
Tela interativa
Rodarhyze sem argumento abre uma tela no terminal, em vez de imprimir a ajuda (hyze --help continua imprimindo a ajuda). Ela lê a mesma API, pelos mesmos comandos:
Enter abre o app em destaque, com o estado, a URL, os domínios que ele atende e as variáveis com que roda:
v mostra os valores em texto e esconde de novo. e define uma variável no formato KEY=value, o mesmo de -e, e pergunta antes de gravar, porque o app reinicia para aplicar.
s é o verbo que muda algo: Stop com o app no ar, Start quando não está. Parar tira o app do ar, então também pergunta antes, e nada sai até você responder. r reinicia, o abre no navegador, l mostra os logs e a adiciona um domínio, dizendo onde apontar o DNS.
Autenticação e configuração
Ohyze login valida a chave antes de guardar. No terminal, o que você cola aparece como * a cada caractere, então um paste é visível sem expor o segredo. Em pipe ou com --key <hyze_...> a pergunta é pulada, que é como o CI alimenta a CLI:
Arquivos de configuração
.hyzerc.json → perfil ativo → padrão. Uma variável vazia conta como ausente, então HYZE_API_KEY="" não sobrescreve o perfil.
Variáveis de ambiente
Opções globais
Usar em scripts
table é o padrão quando a saída é um terminal, e json quando não é. Ou seja, encanar a saída sempre entrega JSON, sem você pedir.
O resultado vai para stdout; progresso e mensagens vão para stderr. Por isso
hyze deployments app_1 --json | jq '.deployments[0].status' é seguro.--json entrega a resposta da API sem reformatar, então não existe um “formato da CLI” para acompanhar:
status é o único comando que resolve em vez de repassar. A API nem sempre consegue ver o app, e um stopped inventado seria lido como “o app está fora do ar”.
Deploy
As flags que você mais usa:--name, --app <appId> para refazer o deploy, --runtime node|bun|python, --memory <mb>, --port e --subdomain (juntos), --env KEY=VALUE (repetível), --env-file, --start-command, --install-command, --build-command, --machine, --exclude e --include, --no-wait, e --repo <owner/name> [--branch] [--auto-deploy] para GitHub.
Sem --runtime, a CLI pede para a API inspecionar o que foi enviado e usa o runtime detectado.
Durante a espera a CLI desenha o andamento no terminal, a partir do que a API mandou: o relógio da própria build, cada etapa com a duração que a plataforma carimbou e a fase que o worker escreveu para aquela build. Um fato que a API não mandou é uma linha que não aparece. Não existe porcentagem, porque o contrato não tem uma.
A espera pertence ao terminal: em pipe ela não escreve nada, sem
\r, sem ANSI, sem spinner. --json e -o json mantêm o payload exato.O que sobe no ZIP
Nesta ordem: os padrões de--include e --exclude, depois o .hyzeignore (estilo gitignore: *, **, dir/, !keep), depois git ls-files --cached --others --exclude-standard dentro de um repositório e, fora dele, uma varredura com ignores embutidos. .git e node_modules nunca sobem.
Logs
hyze logs <appId> imprime a saída do app (--tail 1-1000, --timestamps). hyze logs <appId> <deploymentId> imprime o log de instalação e build que a API guardou para aquela tentativa.
Com --follow, a CLI imprime só o que é novo. Para uma build, ela para quando a build termina; para o app, roda até você interromper.
Erros e códigos de saída
Toda falha é uma linha mais o conserto, em stderr, sem stack trace. Use--verbose quando quiser o stack trace.
O estado unknown
hyze status imprime o que a plataforma reporta: running, stopped, paused, restarting, deploying, error, exited ou created. Quando a plataforma não consegue ver o app, imprime unknown.
unknown sai com código 0: a pergunta foi respondida, e a resposta é que a plataforma não sabe. Uma leitura que falha, por autenticação, erro de servidor ou rede, mantém o código de saída correspondente.Próximos passos
Fazer deploy de um app
O mesmo deploy pela API, para comparar.
Chaves de API
Como as chaves funcionam e como protegê-las.
Ver logs
Onde encontrar a saída do seu app.
SDKs oficiais
TypeScript e Python, para chamar a API do seu código.

