hibi日々
melhor a cada dia
Um tutor de programação que roda no seu terminal. Ele lê o projeto em que você está trabalhando e te ajuda a aprender a escrever código por conta própria.

Dicas em etapas.
Quando você trava, o hibi primeiro aponta onde está o problema. Se você continuar travado, ele explica qual é. A correção só aparece no fim.
Testa de verdade.
Quando você diz que terminou, o hibi roda os testes do seu projeto. Um teste passando vale muito mais do que a opinião do modelo sobre o seu código.
Lembra de você.
O que você aprende em um projeto continua valendo no próximo, e tudo fica salvo no seu computador.
Por que o hibi existe
Nem sempre pedir ajuda a um assistente de IA funciona bem. Ele pode simplesmente te entregar o código completo. No trabalho, talvez seja exatamente o que você quer. Quando você está aprendendo, porém, isso pode atrapalhar: você lê a resposta, entende, cola no projeto e, uma semana depois, não consegue escrever aquilo sozinho. Você também pode não saber direito o que realmente entendeu — e o assistente menos ainda, porque nunca te perguntou.
O hibi foi feito para quem está aprendendo. Ele segura a solução de propósito e aumenta a ajuda conforme você tenta. Também confere seu trabalho rodando o código. E vai registrando o que você já mostrou que sabe. Depois de algumas semanas, ele consegue distinguir o que você domina, onde está chutando e o que você não pratica há algum tempo.
Instalação
O hibi está no npm. Se você já tem o Bun instalado, é só rodar um comando.
O que você precisa
Bun 1.2 ou mais recente. É o programa que roda o hibi.
Uma chave de API da OpenAI ou da Anthropic. O hibi usa um dos modelos dessas empresas. A chave funciona como uma espécie de senha para usar a sua conta. Você cria a chave no site da empresa, e a cobrança vai direto para você, geralmente alguns centavos por pergunta.
git. Sem ele, o hibi não consegue distinguir o código que você escreveu do código que já veio pronto em um template.
Com o Bun
bun install -g @hwgo1/hibi
A partir do código-fonte
Se quiser ler ou mexer no código, instale direto do repositório:
git clone https://github.com/hwgo1/hibi cd hibi bun install cd packages/cli && bun link && cd ../.. bun link @hwgo1/hibi
Primeira vez
Abra uma pasta com o seu código e rode hibi. Na primeira vez, ele vai fazer três perguntas:
O idioma vem primeiro, então o resto já aparece em português. O hibi testa a chave antes de salvá-la e a esconde na tela assim que você cola. Ele também escolhe um modelo recomendado, que você pode trocar depois com /model.
Seus primeiros cinco minutos
- 1Abra um projeto.
Entre numa pasta com o seu código e rode
hibi. Na primeira vez, ele lê o projeto para descobrir a linguagem, como os testes rodam e quais arquivos você escreveu. - 2Diga o que quer aprender.
“Quero aprender Go” e “o que é uma variável?” funcionam do mesmo jeito. Se você disser um objetivo, o hibi guarda e continua de onde você parou na próxima vez.
- 3Peça um exercício.
O hibi escreve o enunciado e diz em qual arquivo você vai trabalhar.
- 4Tente e avise quando terminar.
O hibi roda seus testes. Se travar, peça uma dica e veja a ajuda passar de “olha aqui” para “o problema é esse”.
- 5Digite
/help.Você vê exemplos do que perguntar e os dois comandos que mais vai usar.
Documentação
Comandos
Na maior parte do tempo, você só conversa com o hibi. Os comandos servem para consultar o que ele registrou sobre você ou mudar alguma configuração. O /help all mostra todos eles, separados nesses mesmos grupos.
/profile/state/signals/undo/clear/forget <assunto>/prefs/prefs <nome> <valor> muda uma configuração/model/model <nome> troca o modelo/provider/reset/help/help all lista todos os comandos/index/cost/stop/exitOs comandos ficam em inglês em qualquer idioma, já que é você quem digita. As descrições do /help aparecem no seu idioma.
Dicas
Quando você trava em um exercício, a ajuda vem em três etapas. Acima da resposta, o hibi mostra em qual delas você está, por exemplo, “dica 1 de 3”.
- etapa 1
Aponta a parte do código onde está o problema e indica qual conceito está envolvido. Não diz o que está errado.
- etapa 2
Diz qual é o problema e mostra exatamente onde ele está. Não escreve a correção.
- etapa 3
Mostra a correção, explica por que ela funciona e te passa um problema parecido, em outro contexto, para você resolver sozinho.
Ela aparece depois da sua primeira tentativa ou depois de uns três minutos no problema. Receber uma dica antes de tentar costuma ajudar menos a fixar o que você aprendeu.
Depois de mais duas tentativas ou de uns oito minutos sem avançar. No mesmo problema, a etapa nunca volta.
Se você pergunta sobre um código que já escreveu, o hibi pode pular a etapa 1. Você já encontrou o lugar, então apontar para ele de novo só faria você perder tempo.
Peça a resposta diretamente e você recebe. Só que esse exercício passa a valer menos no seu histórico, e o hibi registra que você pediu.
A ferramenta de dicas não tem ajuste de “profundidade”, e nenhuma ferramenta do hibi consegue escrever a solução de um exercício. Até onde a dica vai é definido pelo próprio código, com base nas suas tentativas e no tempo que você passou no problema.
Conferindo seu código
Quando você diz que terminou, o hibi roda o comando de testes do próprio projeto. O comando muda de acordo com o projeto:
Ele descobre qual é o comando quando lê o projeto pela primeira vez e nunca pega essa informação da conversa. Assim, nenhum texto escrito em um arquivo consegue mudar o que será executado.
Se os testes falharem porque falta alguma coisa no seu computador, como um compilador que não foi instalado, o hibi avisa e ajuda a resolver. Isso não conta como uma tentativa errada.
Nesse caso, o hibi lê seu código e faz uma avaliação. Ela vale mais ou menos um terço de um teste de verdade no seu histórico.
Perguntas antes das respostas
Às vezes o hibi faz uma pergunta antes de explicar alguma coisa ou rodar um teste. São três tipos de pergunta, e cada um aparece em um momento natural da conversa.
Ele confere o que você já sabe. Se você usa promises em JavaScript, pode perguntar se você se sente à vontade com elas e explicar o select do Go fazendo uma comparação entre os dois. Também pode perguntar algo como “se dois programas somam no mesmo contador ao mesmo tempo, o que acontece?” e partir da sua resposta.
Ele pergunta o que você espera que seu código faça naquele exercício. Quando o resultado mostra que você estava errado, fica mais fácil corrigir a ideia que você tinha.
Ele pede que você diga, em uma linha, qual era o problema no fim das contas. Um resumo quase certo pode revelar uma lacuna que um teste passando não mostra.
Para pular uma pergunta, é só continuar o que você estava fazendo. O hibi pergunta no máximo uma vez a cada quatro mensagens e seis vezes por sessão. Se você pular duas seguidas, ele para de perguntar até o fim da sessão. Para desligar as perguntas, use /prefs unsolicitedHints never.
Quizzes
Rodar o código não mostra tudo. Saber quando usar um lock é diferente de saber escrever um, então o hibi também faz perguntas de múltipla escolha.
Certo, errado ou “não sei”. Dizer que não sabe fica registrado como algo para estudar depois e nunca conta como erro. Um chute certo deixaria seu histórico menos fiel.
As alternativas erradas representam erros que alguém aprendendo poderia cometer de verdade, e cada uma está ligada ao mal-entendido que leva até ela. Quando você escolhe uma, o hibi explica esse mal-entendido e mostra a resposta certa.
A resposta certa só aparece depois que você responde. Quem confere a resposta é o código do hibi, então não dá para convencer o modelo a marcar uma resposta como certa.
Objetivos
Conte ao hibi onde você quer chegar: aprender uma linguagem, se preparar para entrevistas, construir um projeto. Ele guarda isso e retoma quando você volta (“Da última vez, você estava em: aprender Go.”).
Quando você pergunta o que fazer agora, o hibi sugere dois ou três assuntos com base no seu histórico:
- assuntos que você nunca viu
- assuntos que você já tentou, mas ainda não domina
- assuntos que você disse que sabe, mas nunca mostrou
- assuntos que você não pratica há umas três semanas
Essa lista é refeita a cada sessão. Não existe um cronograma fixo, porque um plano salvo ficaria desatualizado assim que você aprendesse alguma coisa nova.
Se você já sabe alguma coisa que ele sugeriu, é só falar. O hibi acredita em você e segue em frente sem te testar.
O que o hibi sabe sobre você
O hibi mantém dois registros.
evidence.jsonlTudo o que aconteceu, uma entrada por vez. As entradas nunca são editadas nem apagadas, só recebem novas entradas.
profile.jsonO quanto o hibi acha que você sabe de cada assunto. Essa estimativa é calculada a partir do histórico. Quando a fórmula melhora, todo o histórico pode ser recalculado com ela.
De onde vem cada evidência
Um teste que passou é um fato. Acertar uma pergunta de quiz é uma observação. O modelo achar que seu código está certo é uma opinião. Cada entrada do histórico diz de que tipo é, e isso define quanto ela vale.
1.0Seus testes rodaram e passaram ou falharam0.8Você respondeu uma pergunta de múltipla escolha0.5Algo que o hibi observou no seu projeto0.35O modelo leu seu código e achou que estava certo0.15Você disse que sabe0O hibi explicou algo ou deu uma dicaAlém disso, resolver sozinho vale o peso inteiro. Resolver depois de ver a correção vale mais ou menos um terço, e pedir a resposta diretamente corta esse valor pela metade de novo.
Confiança
Toda estimativa vem acompanhada do nível de confiança do hibi nela. Uma nota baixa com confiança baixa só quer dizer que o hibi ainda sabe pouco sobre você naquele assunto. Ele nunca mostra uma nota sem a confiança junto.
masterygoroutines: 0.62 (confidence 0.40, 3 direct)
O que o hibi percebeu
Com evidência suficiente, o hibi começa a perceber padrões no seu jeito de aprender. O /signals lista esses padrões e o quanto ele confia em cada um:
observed tendenciesself-assessment = tends to overestimate (55%, 12 events)hint-depth = usually unblocks at the first hint (50%, 10 events)these are guesses — declare the opposite with /prefs to override one
A primeira linha vem da comparação entre o que você previu antes de rodar os testes e o resultado: na maioria das vezes, você achava que ia passar, mas não passava.
São palpites e só aparecem depois de pelo menos oito eventos parecidos. O que você define em /prefs sempre vale mais do que um palpite do hibi.
Assuntos
Os assuntos formam uma árvore que cresce conforme você aprende. “linked list”, “linked lists” e “lista encadeada” contam como um único assunto.
O progresso em um assunto específico também conta, com peso menor, para os assuntos mais amplos acima dele. Resolver algo sobre goroutines também soma um pouco em concorrência.
Discordando de uma nota
Se o hibi diz que sua nota em ponteiros é 0,2 e você acha que está errado, diga isso. A nota não muda só porque você pediu. O hibi propõe um quiz ou um exercício sobre ponteiros, e é o resultado que muda a nota.
Discordar não custa nada e nunca abaixa uma nota por si só. Se você contestar o mesmo assunto de novo, o próximo resultado vale um pouco menos, mas o hibi aceita a contestação e propõe outro quiz.
Desfazer e esquecer
/undoDesfaz a última troca de mensagens. O que ela registrou sobre você deixa de contar, mas a conversa continua na tela.
/forget <assunto>Faz o mesmo com tudo o que foi registrado sobre um assunto.
Os dois funcionam adicionando ao histórico uma anotação que cancela as entradas anteriores. Assim, o histórico continua completo e ainda pode ser recalculado.
/forget all forgetEsse comando é a exceção. Ele apaga todo o seu histórico de aprendizado, sem volta. Repetir a palavra serve como confirmação.
Configurações
Para mudar alguma coisa, use /prefs <nome> <valor>.
namelanguagept-BRtheoryDepthminimal, balanced, thoroughbalancedexerciseSizesmall, medium, largemediumunsolicitedHintsnever, when-stuck, proactivewhen-stuckexplanationStyleconcise, detailedconciseNão existe configuração para o quanto o hibi segura a resposta. Dá para mudar o jeito como ele ensina, mas as dicas em etapas continuam valendo.
Onde ficam seus dados
Tudo fica no seu computador, dentro de uma pasta chamada .hibi na sua pasta de usuário:
~/.hibi/credentials.json sua chave de API, que só você consegue lerprofile.json suas preferências, objetivo e notasconcepts.json sua árvore de assuntosevidence.jsonl o histórico de tudo o que aconteceurepos/<id>/repo.json o que o hibi aprendeu sobre esse projetosession.json o exercício atual, as dicas e as perguntas
Suas notas, assuntos e histórico valem para todos os projetos. A sessão e os detalhes de cada projeto ficam separados.
A única coisa que sai do seu computador é a conversa enviada para a empresa de IA que você escolheu, usando a sua própria chave.
Para começar do zero, apague esta pasta:
rm -rf ~/.hibi
Como funciona por dentro
hibi clio terminal, que só exibe e enviapainel no editorplanejadoum por projeto · guarda a sessãocoreo tutor · sem disco, sem rede~/.hibi/sessão, assuntos, históricoempresa de IAsua chave · a única conexão externaO hibi não tem um modelo de IA próprio. Ele conduz a conversa com o modelo que você escolheu: define as regras de ensino, as ferramentas que ele pode usar e como o seu progresso é registrado.
Cada projeto tem um pequeno processo rodando em segundo plano que guarda a sessão. A interface do terminal é um cliente simples que conversa com ele por um socket local. No futuro, isso também vai permitir que um painel no editor entre na mesma sessão.
O hibi não depende do texto da conversa para saber onde você está. O exercício atual, a etapa da dica e o seu histórico ficam salvos em disco e são carregados de novo a cada mensagem. Você pode limpar a conversa no meio de um exercício e o hibi ainda sabe onde você parou.
O código é TypeScript rodando no Bun, dividido em três pacotes. O core é o tutor em si e não acessa disco nem rede diretamente; tudo passa por interfaces pequenas. O daemon é o processo em segundo plano, e o cli é a interface do terminal.
Situação do projeto
O hibi está na versão 0.1 e ainda é experimental. Mesmo assim, tudo o que aparece nesta página já funciona.
/profile, /state e /signals mostram ainda está em inglês e usa alguns termos técnicos.Os números que decidem quando uma dica sobe de etapa (duas tentativas, oito minutos, três minutos antes da primeira dica) e com que frequência o hibi faz perguntas são estimativas iniciais. Ainda não foram testados com ninguém além do autor. Se o hibi ajudar cedo ou tarde demais, abra uma issue e conte em qual exercício isso aconteceu.