Desenvolvedor coloca agentes Claude Code e Codex no notch do MacBook com 0,5% de CPU

Quando três ou quatro sessões do Claude Code e do Codex rodam em paralelo, o tempo se perde na troca entre janelas. O autor da análise no Habr escreveu um app para macOS que mostra o status dos agentes no notch do MacBook. O notch brilha quando um agente está esperando pelo humano, e cada sessão vira um bonequinho em um escritório pixelado feito com SpriteKit. O Claude Code é monitorado por hooks, e o Codex pela leitura de logs, sem API. O brilho, feito com Core Animation, consome cerca de 0,5% da CPU. - Claude Code: status via hooks - Codex: leitura de logs, sem API - Brilho do notch: cerca de 0,5% de CPU

Processado por IA de Habr AI; editado por Hamidun News
Desenvolvedor coloca agentes Claude Code e Codex no notch do MacBook com 0,5% de CPU
Fonte: Habr AI. Colagem: Hamidun News.
Ouvir artigo
Ficha técnica e números-chave
ParâmetroDados
Fonte originalHabr AI ↗
Editor-chefe
Claude Codestatus via hooks
Codexleitura de logs, sem API
Brilho do notchcerca de 0,5% de CPU

Três ou quatro sessões paralelas do Claude Code e do Codex rapidamente transformam o dia de trabalho numa correria entre janelas: um agente terminou, outro espera confirmação, um terceiro travou. O autor da análise no Habr resolveu o problema com um pequeno app para macOS. Ele exibe o status de todos os agentes no notch do MacBook e acende um brilho quando alguém precisa de um humano. O app desenha cada sessão como um bonequinho em um escritório pixelado. Segundo o autor, o brilho custa cerca de 0,5% da CPU.

O problema: muitos agentes e nenhum painel de controle

Rodar agentes de programação em paralelo virou prática comum. Um refatora um módulo, outro escreve testes, um terceiro investiga um bug. As ferramentas para isso, porém, ainda são pensadas para uma janela de terminal e uma pessoa olhando justamente para ela. Se um agente parou esperando permissão para executar um comando, ele fica ocioso até você perceber. Em tarefas longas, essas pausas somam horas.

O notch é uma escolha lógica. É a única área da tela que as janelas não cobrem, e ela está sempre no campo de visão. O app ocupa um espaço vazio e não disputa lugar com o editor.

Como funciona

Para o Claude Code, o autor usa hooks. É um mecanismo que executa os seus comandos em eventos do ciclo de vida da sessão, como uma parada ou um pedido de atenção. O app recebe o sinal no momento do evento e não faz polling dos processos em loop.

Com o Codex, o esquema é outro. O autor lê os logs de sessão que a ferramenta grava em disco e dispensa a API. A solução é pragmática, mas tem uma ressalva: o formato dos logs não é um contrato público. Uma atualização do Codex pode mudar a estrutura dos arquivos, e o parser precisará de conserto.

A parte visual tem duas camadas:

  • o escritório pixelado é renderizado com SpriteKit, e cada sessão corresponde a um bonequinho;
  • o brilho do notch é feito com Core Animation, e não com redesenho constante da cena.

O segundo ponto explica o número de 0,5% de CPU. Uma animação conduzida pelo sistema de composição custa menos que a renderização quadro a quadro. Para um app que fica aberto o dia inteiro, isso é essencial. Um utilitário indicador não deve consumir recursos dos próprios agentes e da IDE.

Principais parâmetros

  • Plataforma: macOS, área do notch do MacBook.
  • Claude Code: os status chegam via hooks.
  • Codex: leitura de logs, sem API.
  • Visualização: escritório pixelado em SpriteKit.
  • Sinal de espera: brilho em Core Animation, cerca de 0,5% de CPU.
  • Estatísticas: o autor afirma que as coleta sem nenhum contador dentro do app. Ele detalha o método no artigo completo.

O que dá para aproveitar

Se você roda vários agentes ao mesmo tempo, não precisa começar pelo notch. A versão mínima cabe em uma noite: um hook do Claude Code no evento de parada grava o status em um arquivo ou envia uma notificação do sistema. Só isso já elimina metade das checagens de janelas.

Depois, vale decidir em que confiar. Hooks são melhores que o parsing de logs, porque são um ponto de extensão documentado. Os logs servem quando a ferramenta não tem um evento claro, mas reserve tempo para manutenção. Se você lê os arquivos da CLI de terceiros, mantenha uma validação de formato e mostre na interface o erro de parsing, em vez de presumir em silêncio que o agente travou.

Há ainda uma lição sobre consumo de recursos. Qualquer indicador em segundo plano ao lado de agentes que já pesam na CPU e na memória deve caber em frações de ponto percentual. É melhor entregar a animação ao sistema de composição do que redesenhar a cena a cada quadro.

O escritório pixelado pode ser visto como enfeite, mas tem um sentido prático. Um bonequinho na mesa, um na máquina de café e um com a mão levantada se leem mais rápido que uma tabela de status. Para quem desenvolve ferramentas de agentes, o projeto aponta o que falta aos próprios produtos: um fluxo estável de eventos sobre o estado da sessão, que não precise ser extraído de logs.

História

Perguntas frequentes sobre a notícia

O que se sabe sobre O problema: muitos agentes e nenhum painel de controle?

Rodar agentes de programação em paralelo virou prática comum. Um refatora um módulo, outro escreve testes, um terceiro investiga um bug. As ferramentas para isso, porém, ainda são pensadas para uma janela de terminal e uma pessoa olhando justamente para ela. Se um agente parou esperando permissão para executar um comando, ele fica ocioso até você perceber. Em tarefas longas, essas pausas somam horas. O notch é uma escolha lógica. É a única área da tela que as janelas não cobrem, e ela está sempre no campo de visão. O app ocupa um espaço vazio e não disputa lugar com o edito

Como funciona?

Para o Claude Code, o autor usa hooks. É um mecanismo que executa os seus comandos em eventos do ciclo de vida da sessão, como uma parada ou um pedido de atenção. O app recebe o sinal no momento do evento e não faz polling dos processos em loop. Com o Codex, o esquema é outro. O autor lê os logs de sessão que a ferramenta grava em disco e dispensa a API. A solução é pragmática, mas tem uma ressalva: o formato dos logs não é um contrato público. Uma atualização do Codex pode mudar a estrutura dos arquivos, e o parser precisará de conserto. A parte visual tem duas camadas: o

O que se sabe sobre Principais parâmetros?

Plataforma: macOS, área do notch do MacBook. Claude Code: os status chegam via hooks. Codex: leitura de logs, sem API. Visualização: escritório pixelado em SpriteKit. Sinal de espera: brilho em Core Animation, cerca de 0,5% de CPU. Estatísticas: o autor afirma que as coleta sem nenhum contador dentro do app. Ele detalha o método no artigo completo.

ZK
Zhemal Khamidun — CPO da Alpina Digital, gerente de produto do AlpinaGPT. Cria produtos de IA desde 2019. O Hamidun News é um projeto pessoal que virou um agregador em produção com mais de 6.000 leitores.
✦ Autonomous AI Agents

Delegate Deep Research, Coding & Workflows to an AI Agent

Deploy autonomous multi-step execution with NomadNet Agent (agent.nomadnet.ai) — automated web research, data synthesis, code generation, and complex task orchestration.

Launch NomadNet Agent →NomadNet AI Platform
O que você acha?
Carregando comentários…