Do zero a um cubo giratório feito por bate-papo
Em 24 horas, quatro trilhas paralelas transformaram a aposta principal do produto em algo que você pode ver: diga uma frase, ele escreve o código e o navegador recarrega o resultado. O dia entregou um loop de ponta a ponta de autoverificação "bate-papo → cubo giratório", além da arquitetura em camadas, tempo de execução real do agente, interface de três colunas e centenas de passes de polimento que o sustentam.
A estrela do norte: por que "um cubo giratório"
Tudo neste dia visava um ponto de aceitação: em uma máquina limpa, clonar, inserir uma chave, executar um comando e, em seguida, dizer ao agente na interface "faça um cubo giratório" - ele edita o código, o motor recarrega a quente e um cubo giratório aparece no navegador imediatamente. O cubo em si não tem nada de notável, mas é a prova mínima da aposta principal do produto – “você pode construir algo genuinamente executável apenas falando” – e se algum elo dessa cadeia quebrar, a plataforma não se sustenta. Resumir a meta em um ponto de aceitação inequívoco que uma única captura de tela pode provar significa que a equipe não está “sentindo o progresso”, mas perseguindo uma meta difícil de aprovação/reprovação. Esse dia passou.
O loop de ponta a ponta é executado: diga uma frase, a imagem muda
Este loop encadeia seis links de ponta a ponta: você declara um requisito na caixa de bate-papo → o agente escreve o código correspondente no arquivo do jogo → um observador de arquivo percebe a mudança → um canal em tempo real notifica o front end → o mecanismo carrega dinamicamente o novo código → a imagem é atualizada instantaneamente. Este dia conectou esses seis links de forma completa e estável pela primeira vez, e uma captura de tela automatizada do navegador capturou o cubo no meio da rotação inclinada, sem erros durante todo o caminho, exceto um aviso inofensivo de ícone ausente. Isso significa que “o que você vê é o que você obtém” não é mais uma linha em uma apresentação de visão, mas um pipeline real acionado repetidamente. Cada experiência posterior de “construir enquanto conversa e ver o resultado imediatamente” baseia-se neste ciclo; com ele funcionando, o produto realmente ganhou vida uma vez.
As três camadas aterrissam: papéis claros, substituíveis
Para fazer esse loop durar muito tempo, o sistema foi dividido em partes com responsabilidades claras e substituíveis de forma independente: um kernel de tempo de execução que realmente orienta o pensamento e a ação do agente (lidando com chamadas de modelo, ferramentas, sessões, memória); uma ponte pura de orquestração e interface (transmitindo alterações de arquivos para o front-end, nunca tocando no modelo grande em si); um motor (renderizando o código do jogo em uma imagem); além da interface de três colunas que o usuário enfrenta. Essa divisão foi escrita em um contrato de interface interna e definida como uma regra de ferro para não ser relitigada levianamente - o kernel é o kernel, orquestração é orquestração, os limites permanecem inequívocos. Seu valor: cada camada pode evoluir e ser trocada por conta própria, um problema em uma camada não arrasta o todo e "trocar o mecanismo, trocar a interface" torna-se possível mais tarde, em vez de reescrever.
Substituindo o "placeholder shell" por um tempo de execução de agente real
Na versão pré-amanhecer do loop, o que impulsionava o agente ainda era um shell temporário; hoje, em mais de trinta etapas, ele foi substituído por um verdadeiro tempo de execução de agente de "classe de assistente de codificação profissional". Este kernel tem o que um agente real precisa: ele pode chamar o modelo grande, usar ferramentas, manter sessões e memória e avançar em um loop "pensar-agir". Após a troca, o sistema recebeu respostas de modelos genuínos pela primeira vez e executou um ciclo completo de “modelo real + ferramentas reais”. Essa etapa empurrou o produto de “parece que pode conversar” para “pode realmente fazer o trabalho” – as conversas anteriores eram uma performance; agora por trás deles está um mecanismo que pode ler, escrever e usar ferramentas para mudar genuinamente seu projeto.
Não reinvente: reutilize padrões em vez de copiar milhares de linhas
Ao preencher a capacidade do agente, duas partes poderiam ter sido feitas "copiando mil linhas de outro lugar": a camada de protocolo que traz a capacidade da ferramenta e um protocolo padrão de evento de conversação. A decisão deste dia foi clara: onde quer que já exista um padrão aberto maduro que possa ser instalado e usado diretamente, não o copie novamente à mão. Assim, ambos foram substituídos por implementações padrão oficiais das versões anteriores escritas à mão: o código do protocolo da ferramenta encolheu de cem linhas para oitenta e recebeu transportes mais completos e notificações de alteração de capacidade gratuitamente; o protocolo de eventos de conversação extraiu uma biblioteca padrão e reexportou mais de trinta eventos padrão quase sem nenhum código novo. Juntas, as duas etapas somaram duzentas linhas de rede e ainda forneceram capacidade de nível empresarial. Por trás disso está uma disciplina recorrente: dedique esforços aos problemas difíceis que ninguém resolveu para você, e não à reinvenção de rodas que já estão estabelecidas nos padrões públicos.
Centenas de passagens de interface de bate-papo: de texto bruto até quase desktop
Depois que o loop realmente funcionou, as lacunas de experiência da interface se tornaram o ponto mais delicado. Este dia, em pequenos passos ao longo de cem iterações, aprimorou o painel de bate-papo de “texto bruto e caixas de espaço reservado” para algo próximo a um assistente de desktop maduro. Inclui um renderizador Markdown completo escrito à mão (blocos de código, listas, tabelas, listas de tarefas, todos suportados), uma animação de streaming caractere por caractere cuja velocidade se adapta ao comprimento do conteúdo, chamadas de ferramentas condensadas em uma tag de "pílula" de alta densidade que se expande para o resultado completo, a "autocorreção/reflexão" do agente é acionada visualmente, contraste entre bolhas e fundo ajustado para atender aos padrões de acessibilidade e animações em loop desativadas para usuários que preferem movimento reduzido. Cada passagem tocou em uma coisa, foi autotestada e registrou uma nota. A questão é clara: por mais forte que seja a capacidade, se for difícil de ler ou parecer barato, os usuários não confiarão nele; polir a superfície que você olha para algo agradável já faz parte do recurso principal.
Uma reestruturação plana + desenvolvimento zero-build e executado a partir da fonte
À tarde, ocorreu um achatamento estrutural: os diretórios, antes profundamente aninhados, foram colocados de forma plana para que as partes ficassem lado a lado de uma forma mais direta. Paralelamente, foi estabelecido um modo de desenvolvimento de "construção zero": após a clonagem, um comando executa o código-fonte diretamente, sem uma longa etapa de compilação e empacotamento primeiro. Para os desenvolvedores, isso significa mudar uma linha e ver o resultado no navegador quase imediatamente, aumentando a velocidade da iteração; para os recém-chegados, o caminho “do clone à visão da imagem” é reduzido ao mínimo. A simplificação estrutural é intangível, mas decide se as próximas semanas poderão manter uma cadência de “um grande passo por dia” – quanto mais simples e clara for a base, mais rápido e mais estável será a construção sobre ela.
O Studio de três colunas ganha forma: arquivos, visualização, console, switchers
À noite, o Studio de três colunas foi apresentado, com um conjunto de painéis genuinamente utilizáveis ao mesmo tempo: a árvore de arquivos à esquerda conectada a arquivos de projetos reais, clique em um produto para visualizá-lo; uma janela de visualização ao vivo no centro conectada diretamente ao mecanismo, com leitura de taxa de quadros, pausa, recarga, tela cheia e modos de desktop/dispositivo móvel; além de um painel que canaliza a saída do console do mecanismo, um switcher que lista e reproduz sessões anteriores e entradas para alternar projetos e jogos com um “novo” menu. Notavelmente, este dia também seguiu um instinto e fundiu os dois conceitos “projeto” e “jogo” em um só – o usuário disse que eram a mesma coisa, então a interface não deveria forçá-los a separá-los. Com isso, o layout "gerenciar à esquerda / visualizar centro / conversar à direita" foi estabelecido e o Studio começou a convergir de uma pilha de recursos para um formato de produto utilizável.
O que este dia significa
Visto em conjunto, o peso deste dia é este: não foi o envio de um único recurso, mas a tese central do produto sendo comprovada de ponta a ponta pela primeira vez. De uma frase a um cubo em movimento, cada link intermediário – renderização, tempo de execução, orquestração, interface – foi genuinamente executado, em uma máquina limpa, evidenciado por uma captura de tela. Tudo que é complexo depois do cubo – jogos reais, cenas complexas, toda uma equipe de agentes – cresce nesse tronco já conectado. É exatamente por isso que vale a pena registrar este dia como modelo: conecte primeiro a cadeia principal mais crítica e falsificável e depois fale sobre as ramificações; correr uma vez é o que lhe dá confiança pela segunda vez e pela centésima.