>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarcados Segurança
Rust

Como a Block Combinou Chat, Git e Agentes de IA em um Único Workspace Construído com Rust e Nostr

Você já tentou integrar assistentes de IA em seus fluxos de trabalho de desenvolvimento? Geralmente, o cenário se desenrola da mesma forma. Você cria um bot no Slack, dá a ele uma chave de API com permissões amplas, configura vários webhooks para o GitHub, e torce para que tudo não desmorone com a próxima atualização. Enquanto isso, o bot vive em um mundo separado: ele não consegue ver o contexto das discussões anteriores no chat, e suas ações são difíceis de rastrear adequadamente.

Engenheiros da Block decidiram abandonar a pilha usual de dez serviços diferentes. Eles criaram o projeto Buzz. É um workspace local onde engenheiros e agentes de IA ficam nas mesmas salas, leem o mesmo log de eventos, e trabalham como iguais.

Canal do Buzz com discussão

O que está sob o capô

Removendo a camada de marketing, o Buzz é essencialmente um único relay Nostr e uma impressionante coleção de crates Rust. Qualquer ação no sistema é registrada em um log de eventos compartilhado. Uma mensagem de texto, uma reação com emoji, enviar um patch para o git, executar CI, ou aprovar uma revisão se tornam todos eventos criptograficamente assinados do mesmo formato.

A principal diferença entre o Buzz e os mensageiros empresariais clássicos está no modelo de identidade. O sistema não faz distinção entre um humano e um script autônomo. Cada agente de IA tem um par de chaves. Você adiciona um agente a um canal privado exatamente como faria com um funcionário regular. As permissões de um agente não são limitadas por toggles no painel admin, mas sim pela sua presença em uma sala específica.

A equipe do projeto reconhece honestamente que existem muitas ferramentas de IA demais por aí agora mesmo. Mas o Buzz se destaca porque um processo autônomo recebe ferramentas de trabalho reais: ele abre repositórios, envia patches, revisa código, dispara workflows, cria salas, e até entra em chamadas de voz.

Agentes em canais

Como é na prática

Os desenvolvedores sugerem olhar para três cenários reais que qualquer equipe encontra.

A primeira história é sobre lidar com incidentes durante a noite. São 2 da manhã e há um erro em produção. Você escreve no canal: "Já vimos isso antes?" O agente que está no chat vasculha seis meses de histórico de discussões. Ele não apenas te dá uma resposta abstrata do LLM—ele anexa links para threads específicas, encontra a causa raiz, aponta para o conserto anterior, e sugere chamar o autor daquele commit.

O segundo caso muda a abordagem de trabalho com branches de código. Quando você cria uma feature branch, o Buzz cria um canal separado para ela. Patches chegam como eventos do protocolo NIP-34, o serviço de CI envia relatórios de build lá, e o agente de IA faz a revisão inicial. Todas as discussões e a decisão de merge ficam right in that room. O histórico é preservado junto com o contexto da tomada de decisão.

O terceiro cenário tratou da automação de releases. O workflow reage ao aparecimento de uma git tag. O agente compila independentemente uma lista de PRs mesclados dos canais de trabalho, cria um changelog, e envia para revisão do engenheiro. Após receber uma reação de polegar para cima, o agente conclui o processo de publicação sozinho.

Criando canais

Arquitetura e stack

Arquiteturalmente, o Buzz é dividido em várias camadas lógicas, facilitando o deploy e a escala.

O lado do cliente é construído com Tauri e React. É um shell desktop rápido para macOS, Linux e Windows. Para trabalhar com agentes, os autores escreveram um utilitário buzz-cli com um protocolo de troca JSON, assim como uma camada buzz-acp que conecta sistemas harness populares como Goose, Codex ou Claude Code.

O lado do servidor é tratado pelo crate buzz-relay baseado em Axum. Ele gerencia conexões WebSocket e REST, lida com autenticação NIP-42/98, e mantém a cadeia de auditoria.

A camada de armazenamento usa uma combinação de três componentes:

  • Postgres armazena eventos e lida com busca full-text
  • Redis gerencia tarefas pub/sub, status de presença e indicadores de digitação
  • S3 ou MinIO é usado para armazenar arquivos de mídia via protocolo Blossom

Um recurso interessante são os comentários em arquivos de mídia. Você pode fazer upload de uma gravação de vídeo de um bug ou demo de interface, e a discussão fica vinculada a frames específicos.

Comentários em mídia

Como rodar o projeto localmente

Configurar um ambiente local leva literalmente alguns minutos. As dependências que você vai precisar são Docker e o gerenciador de toolchain Hermit (ou versões recentes de Rust 1.88+, Node 24+, pnpm 10+, e o utilitário just).

Primeiro, clone o repositório e ative o ambiente:

git clone https://github.com/block/buzz.git
cd buzz
. ./bin/activate-hermit
just setup
just build

O comando just setup em si copia arquivos de configuração, puxa os binários necessários via Hermit, e sobe containers de banco de dados no Docker.

Para desenvolvimento do dia a dia, você só precisa rodar um comando:

just dev

Este comando inicia o relay server em ws://localhost:3000 e imediatamente lança o aplicativo desktop Tauri.

Se você quiser conectar seu próprio agente ao sistema, defina a variável de ambiente BUZZ_PRIVATE_KEY e use buzz-cli. A interface é especificamente projetada para que LLMs possam facilmente chamar funções através de passagem de estrutura JSON.

O que está funcionando agora e o que está nos planos

Desenvolvedores compartilham abertamente o status de prontidão dos componentes. O projeto não tenta parecer um powerhouse enterprise pronto—há áreas inacabadas.

Já estável e funcionando:

  • Relay server, canais públicos e privados, threads e mensagens diretas
  • Busca full-text, servidor de mídia e log de auditoria E2E
  • Aplicativo desktop Tauri
  • Sistema de workflows YAML com triggers para mensagens, reações e webhooks
  • Backend git customizado com suporte a eventos NIP-34

Em desenvolvimento ativo estão clientes mobile para iOS e Android em Flutter, mecanismos de gateway de aprovação de workflows, e integração de voice huddles.

Quem deveria dar uma olhada no Buzz

O Buzz definitivamente não deveria ser considerado outro projeto blockchain, mesmo usando ativamente chaves criptográficas Schnorr. Não há tokens ou ledgers distribuídos envolvidos. Assinaturas são apenas necessárias para garantir a autenticidade de cada mensagem e ação no sistema.

O projeto vai agradar equipes que estão experimentando ativamente com agentes de IA e estão cansadas de bots espalhados. Se você precisa de um ambiente unificado onde todo o histórico de comunicação, código e ações automatizadas ficam no seu próprio servidor, o Buzz oferece um conceito sólido.

Você pode testar releases pré-construídas para seu SO na página de releases do repositório, ou rodar o relay em Docker para testar suas hipóteses.

Projetos relacionados