Voltar ao blog

Por que construímos o Beadbox

Por que construímos o Beadbox

Você pode rodar 10 agentes de IA de programação em paralelo agora. Abra uma sessão tmux, dê uma tarefa para cada agente e deixe eles se coordenarem pelo beads. Funciona. Nós fazemos isso todos os dias.

Mas o que ninguém comenta: você não consegue ver nada disso acontecendo.

A lacuna de visibilidade

beads resolveu o problema de memória. Antes do beads, os agentes esqueciam tudo entre sessões. Eles reviravam arquivos markdown de tarefas, perdiam contexto após compactação e redescobriram os mesmos bugs três vezes. beads deu a eles memória persistente, estruturada e versionada no Git. Isso foi uma revolução.

Mas beads é uma ferramenta CLI. Foi construída para agentes, não para os humanos que os supervisionam. Quando você quer entender o estado do seu projeto, roda bd list. Recebe uma lista plana de issues. Roda bd show bb-abc para ler um. Depois outro. Depois roda bd dep list para entender o que está bloqueando o quê. Pedaço por pedaço, você reconstrói o quadro na sua cabeça.

Isso funciona com cinco issues. Desmorona com cinquenta. E quando você tem 10 agentes criando, atualizando e fechando issues em tempo real, a CLI não acompanha você, muito menos eles.

O que construímos

Beadbox é a camada visual em cima do beads. Ele monitora seu diretório .beads/ em busca de mudanças e renderiza tudo em um app desktop nativo em milissegundos. Quando um agente atualiza um issue no terminal, você vê no Beadbox antes do prompt do shell voltar.

Sem contas. Sem nuvem. Sem sincronização. Seus dados ficam na sua máquina, no mesmo diretório .beads/ que seus agentes já usam. O Beadbox apenas lê e mostra o que está acontecendo.

Veja como isso funciona na prática:

Árvores de épicos com barras de progresso. Seu épico de nível superior mostra 7 de 12 filhos completos. Você expande, vê quais subtarefas estão bloqueadas, quais estão em QA e qual agente está trabalhando em cada uma. Um olhar substitui uma dúzia de comandos bd show.

Sincronização em tempo real. Monitoramos o sistema de arquivos em busca de mudanças no banco de dados. Quando um agente faz commit de uma mudança de status, o Beadbox capta pelo pipeline de file-watch e envia para a UI via WebSocket. Sem polling. Sem botão de refresh.

Suporte a múltiplos workspaces. Se você trabalha em vários projetos, troque entre bancos de dados beads por um dropdown. Cada workspace lembra seus próprios filtros e estado de visualização.

Visibilidade de dependências. Relações de bloqueio aparecem como badges em cada issue. Você vê de relance que bb-q3l está esperando por bb-f8o sem rodar nenhum comando.

Como construímos o Beadbox

Usamos beads e Beadbox para construir o Beadbox. Não é um truque. Nosso workflow diário roda mais de 10 agentes Claude Code coordenados por um agente supervisor. Engenharia, QA, produto, marketing, shipping: tudo rastreado como beads em um único banco de dados. Nelson acompanha toda a operação no Beadbox enquanto agentes criam issues, reivindicam trabalho, fazem push de código e reportam de volta.

Cada funcionalidade que lançamos é testada primeiro no nosso próprio workflow. Se a árvore de épicos não faz sentido quando você tem 50 issues ativos em 6 agentes, corrigimos antes que outra pessoa bata nessa parede.

A stack é intencionalmente simples: Next.js para a UI, Tauri para o wrapper nativo, o CLI bd como única fonte da verdade. Nunca lemos o banco de dados diretamente. Toda operação passa pelo bd, o que significa que o Beadbox sempre concorda com seu terminal.

Para onde estamos indo

Hoje, Beadbox é um dashboard. Você acompanha seus agentes trabalhando. Faz triagem de issues. Acompanha o progresso em épicos.

Amanhã, se torna o plano de controle. Estamos construindo em direção a um mundo onde você pode despachar trabalho para agentes, revisar a saída deles e gerenciar toda a sua frota a partir de uma única janela. O terminal continua sendo o lar do agente. O Beadbox se torna o seu.

Estamos em beta, então é gratuito. Experimente.