Harumi

CLI harumi

Instale a CLI harumi, autentique-se e execute seus projetos pelo terminal.

Visão geral

A CLI harumi permite trabalhar em um projeto a partir da sua própria máquina — navegar e editar o repositório, executar código nos kernels de computação da Harumi, inspecionar resultados de execuções e gerenciar fontes de dados, secrets, agendamentos e organizações — em vez de usar o aplicativo web. Tudo é baseado em referências git: você vincula uma pasta local a um projeto uma vez, e depois usa run/push como em qualquer outro repositório git.

Esta página leva você da instalação até a primeira execução. Para a referência completa, veja Comandos; se algo quebrar, veja Solução de problemas.

Instalação

pipx install harumi

O pipx instala a CLI em um ambiente isolado próprio e coloca o harumi no seu PATH — sem precisar gerenciar um virtualenv você mesmo. Não tem pipx? Instale primeiro: brew install pipx (macOS) ou python3 -m pip install --user pipx (Linux/Windows).

Confirme a instalação:

harumi --version

Prefere usar pip direto?

pip install harumi também funciona, mas no macOS com o Python do Homebrew (ou qualquer instalação "externally managed" conforme a PEP 668) ele é bloqueado fora de um virtualenv, e o próprio pip pode nem estar no PATH (só o pip3). Se você encontrar command not found: pip ou um erro externally-managed-environment, use o pipx acima, ou execute python3 -m pip install --user harumi / pip3 install --user harumi.

Instalando a partir do código-fonte

Vai contribuir com a CLI, ou precisa de uma correção ainda não lançada? Clone o repositório harumi-cli e instale em modo editável: pip install -e ..

Usa Cursor, Claude Code ou outro agente de código?

Você não precisa instalar a CLI você mesmo — instale primeiro a skill de agente harumi-cli e peça ao seu agente para instalar a CLI para você.

Autenticação

harumi login             # conta existente: pede e-mail + um código único
harumi login --signup    # e-mail novo: cria a conta primeiro, depois o OTP
harumi whoami            # confirma com qual conta você está logado
harumi logout

Primeiro login de um e-mail novo?

Passe --signup. Sem isso, a harumi-api rejeita o pedido de código com Signups not allowed for otp. A CLI detecta esse caso e orienta você a tentar novamente com harumi login --signup.

As credenciais são salvas em ~/.harumi/ (modo 0600). login também provisiona um token de acesso do Gitea e resolve sua organização. Se você pertencer a mais de uma organização, ela lista as opções e pede para escolher com harumi org use <ORG_ID> (veja Comandos → Configuração).

Obtenha um projeto

Escolha uma jornada

harumi start

Pergunta o que você já tem — nada ainda, uma pasta de código, ou um projeto que já existe na Harumi — e executa o comando certo abaixo para você. Veja Começando um projeto para o passo a passo completo das três jornadas, incluindo os equivalentes no aplicativo web.

Ou execute o comando diretamente

harumi new "Planejamento de Demanda"  # nada ainda: cria + clona um scaffold
harumi import ./meu-projeto           # pasta existente: cria um projeto + faz push forçado
harumi clone <PROJECT_ID>             # projeto já existente na Harumi: clona + vincula

Cada um desses deixa você com um diretório vinculado (.harumi/config.json gravado, remote git harumi configurado) e pronto para o harumi run. Já tem o repositório clonado manualmente e só precisa vinculá-lo? Use harumi link --project <PROJECT_ID> em vez disso — ele pula a etapa de clonar/push.

Execute seu código

harumi run

Se sua árvore de trabalho tiver mudanças não commitadas ou não enviadas, a CLI faz push para uma branch temporária descartável, enfileira a execução contra ela e a remove depois — suas branches reais nunca são tocadas. Se a árvore já estiver limpa e enviada, ela executa a branch atual diretamente.

Verifique os resultados

harumi run --watch                       # bloqueia até terminar
harumi runs download -o ./out            # baixa o resultado da execução mais recente
harumi runs list                         # execuções recentes deste projeto
harumi runs get <RUN_ID>                 # status, logs (stdout/stderr) e erros

O modelo de execução

harumi run sempre executa através do repositório Harumi Git (Gitea) do projeto, então o que roda é sempre uma referência git real:

harumi run                                   # árvore atual (push temporário se houver pendências)
harumi run --branch feature/solver-v2        # uma branch específica
harumi run --commit abc123f                  # um commit específico
harumi run --tag prod                        # o que a tag prod aponta
harumi run --command "python solver.py" --kernel gurobi_python_medium
harumi run --watch                           # bloqueia até terminar (depois: harumi runs download)

Prop

Type

Próximos passos

On this page