Skip to content

Releases

Hatchling 0.5.12

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 12 Nov 19:34
  • Sessão que já terminou não fica mais presa como "trabalhando" no notch nem no celular. Quando o aviso de fim de turno se perde (o Hatchling estava reiniciando, por exemplo), o "esperando você" do Claude Code agora marca a sessão como parada.

Hatchling 0.5.11

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 12 Nov 13:46

Segurança

  • Uma aprovação não é mais negada sozinha quando outro agente da mesma sessão termina
  • "Sempre permitir" vale só para aquele comando ou arquivo, não para a ferramenta inteira
  • Sair do modo de plano pede sua aprovação e mostra o plano no card
  • Prompts vindos do celular têm limite de tamanho e não entram se a sessão estiver esperando resposta
  • O token do servidor do celular agora fica no Keychain

Correções

  • Arquivo de configuração ilegível nunca mais é sobrescrito; o Hatchling guarda um backup antes de mexer
  • O Hatchling não encerra mais processos de sessões antigas
  • A atualização automática confere a versão e espera nenhuma sessão estar ocupada
  • Uma aprovação não fica escondida atrás de outro card
  • O celular recebe todas as aprovações pendentes, inclusive depois de reconectar

Desempenho

  • Menos leitura de arquivo, varredura e verificação em segundo plano

Interface

  • O painel abre mesmo sem sessão rodando
  • Responda aprovações pelo teclado: Return aprova, Esc nega, números escolhem a opção
  • A página Sobre mostra o estado da atualização
  • Confirmação antes de ações destrutivas e "Desfazer" ao apagar nota
  • Bandeja de arquivos com botão de escolher arquivos e menu de contexto
  • Pareamento renova o código expirado sozinho e explica erros do servidor
  • Melhor suporte ao VoiceOver e ao teclado
  • Configurações pouco usadas foram para "Avançado"
  • Tradução completa em português, turco e chinês

Hatchling 0.5.10

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 12 Nov 05:02
  • As falas do Hatch no notch ficam mais tempo: frase longa ganha mais tempo de leitura
  • Com o mouse em cima do balão, ele não fecha; fecha quando você tira o mouse
  • O cartão de sessão terminada fica 8 segundos aberto
  • Site novo: https://hatchling.mikaeldavid.dev

Hatchling 0.5.9

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 11 Nov 21:17
  • Hatch aprende sobre você: profissão, tecnologias, time, gostos. Tudo fica num arquivo seu, que dá pra ver e apagar em Ajustes > Sobre você
  • Botão de celular no topo do painel: mostra o QR pra parear o app do celular, o código e os celulares pareados
  • Ajustes > Celular em português, com QR maior e contagem regressiva do código
  • Correção: abrir Ajustes > Celular não corta mais o envio do estado das sessões pro celular

Hatchling 0.5.5

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 10 Nov 00:45
  • Hatch ganhou gestos novos: dança, sim, não, espreguiçar, esconde-esconde, pirueta, soluço, digitar e risada com as mãos na boca
  • Brincadeiras com o cursor: os olhos seguem o mouse, balançar em cima faz cócegas, parar em cima vira esconde-esconde, clique duplo dá pirueta
  • Gestos revisados: não trava mais dormindo, olhos sem borrão na troca pro sorriso, pirueta no lugar, cara de bravo com sobrancelhas
  • Falas espontâneas mais frequentes, com limite semanal, sessão nova, sessão longa e sessão interrompida

Hatchling 0.5.2

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 10 Nov 00:05
  • YOLO funciona também no app Claude desktop (aprova antes de cada ferramenta; não age nos modos auto e plano)
  • Limites de 5h e semanal ao vivo, lidos do próprio Claude Code; botão Entrar quando falta login no terminal
  • Janela de contexto correta (1M) nos modelos atuais
  • O app abre direto na saudação do Hatch
  • Resumos: depois de um, no máximo mais um; um resumo já mostrado não volta

Hatchling 0.5.1

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 09 Nov 21:13
  • Depois do resumo de uma sessão que terminou, aparece no máximo mais um: o da última que terminou, se for recente. Antes vinham todas, uma por uma.
  • Um resumo já mostrado não volta quando a sessão termina de novo sem nada novo.

Hatchling 0.5.0

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 09 Nov 20:53
  • Novo visual do painel: cards, aba Agentes, perguntas e aprovações
  • O Hatch dá oi ao abrir e comenta o que está acontecendo, pelo horário e pelas sessões
  • Notas e arquivos rolam pro lado com a roda do mouse
  • Resumos e falas com IA: Claude Haiku ou NVIDIA (chave grátis em build.nvidia.com)
  • Atualização automática: o app instala versões novas sozinho quando nenhuma sessão está ocupada

v0.4.0 — watch your agents from your phone

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 31 Aug 18:54

Hatchling now has a companion app, the panel shows the conversation itself, and the app stopped burning a core while idle.

Your agents, on your phone

Hatchling serves its state over a relay, so an iOS or Android device can watch every session, read the conversation, answer a permission prompt or a question, send a prompt, and interrupt a run — from anywhere, not just from the machine the agents are working on. Pairing is a code shown on the Mac and typed into the phone.

The conversation, in the panel

Clicking a session opens what was actually said, paged straight off the CLI's own transcript so nothing is cached and nothing goes stale. The terminal is still one click away; this is for reading.

Agent messages render as markdown — headings, bullets that keep their own numbering, fenced code, and inline bold, italics and code spans. Tables are stacked rather than gridded, because a three-column table in a panel this narrow is unreadable at any font size. What you typed stays literal.

An assistant turn reaches the transcript a line per block, so a sentence and each tool call it made were being shown as separate turns — a column of near-empty cards, one per tool. Entries that are nothing but a tool call now fold into the sentence that announced them, and repeated tools collapse into one chip with a count.

It stopped redrawing itself 120 times a second

Hatchling sat at around 15% of a core doing nothing at all. Every earlier attempt went after the drawing; profiling the running app showed the drawing was 2% of the cost.

The real cause: AppKit holds a window in continuous-layout mode — a full layout and constraint pass on every display refresh — for as long as anything asks it to redraw more often than every 250ms. The mascots ticked every 0.03s. It is a cliff rather than a slope: a 0.25s cadence measures 4.3% CPU and 126 layout passes a second, 0.26s measures 0.4% and 4 passes. Below the threshold the cost is identical whether it ticks 4 or 33 times a second, which is why drawing less, showing fewer mascots, and turning the animation-speed slider to zero had all changed nothing.

The mascots now tick past the cliff, and the status shimmer moved to Core Animation, which the window server interpolates without ever waking the app.

Measured on the running app, 30 samples a second apart:

before after
mean 14.9% 4.0%
median 14.1% 2.8%
floor 11.8% 0.6%

Also fixed

  • Permission and question cards never said which session was asking.
  • Rate limits now reach the phone, so the usage bars match on both.
  • The bridge could sit forever believing it was connected.
  • Multi-question answers were matched by position instead of by question.

Signed and notarised. Full changelog: https://github.com/MikaelDDavidd/hatchling/blob/main/CHANGELOG.md

v0.3.1 — the session list no longer vanishes

Choose a tag to compare

@MikaelDDavidd MikaelDDavidd released this 28 Jul 05:05

A maintenance release. Mostly one bug that made the panel look broken.

The session list could disappear entirely

If you had more sessions than the visible limit (5 by default), the list went
blank. The header, status pill and usage bar stayed, so the panel looked like it
had simply found nothing running.

Above that limit the list is wrapped in a scroll view, and that scroll view was
never given a height. NSScrollView has no intrinsicContentSize, so SwiftUI
resolved it to 0pt and the whole list vanished. Below the limit the list renders
directly and was never affected, which is exactly what made it feel random.

Measured with the same view hierarchy in isolation:

plain VStack (5 cards)     -> 432pt
ThinScrollView (7 cards)   ->   0pt

Fixed, and the last card is no longer clipped when the list is full.

Also fixed

  • Answering a multiple-choice question now actually reaches the agent. Answers
    were keyed by each question's header, but AskUserQuestion keys them by the
    question text. They came back and were silently ignored.
  • The statusline wrapper never captured rate limits. It piped the payload in
    through a heredoc while the statusline command was already reading stdin.
  • Claude and Codex usage bars were both green. Each CLI now keeps its own colour
    until usage climbs; from 70% the alert colour takes over.
  • The checkpoint shortcut showed its raw localisation key in Settings.

Install

Unzip and drag to Applications. The app is signed with a Developer ID but not
yet notarised, so the first launch needs right-click then Open.