Code Plain

Seu agente melhorou ou piorou com o modelo novo?

Você não sabe. A configuração dele é um punhado de frases, e frase não tem placar. O dcode trata comportamento como contrato: cada regra tem um limiar, roda contra um modelo de verdade, e o resultado fica escrito.

Ver no GitHubInstalarcurl -fsSL https://raw.githubusercontent.com/aguinelo/dcode/main/install.sh | sh
A interface do dcode no terminal: painel principal com a resposta do agente, coluna lateral mostrando o diff arquivo a arquivo e o estado da sessão, e barra de status na base.
O dcode trabalhando: à esquerda o ciclo, à direita o que mudou em cada arquivo e quanto de contexto foi consumido.

Fronteira do sistema operacional

Apple Seatbelt no macOS, bubblewrap e Landlock no Linux. Isolamento e aprovação são eixos separados, então ele pergunta sobre o que é diferente em natureza — não sobre tudo, até você desligar a pergunta e a segurança virar enfeite.

Fala com qualquer modelo, e sabe a diferença

O formato da conversa é reaproveitável; os limiares medidos pertencem ao modelo. "Compatível com OpenAI" descreve como os dados são serializados, não como o modelo se comporta.

Sabe quando terminou, e quando andou para trás

Você declara a linha de chegada como comandos. O ciclo executa, devolve ao modelo a saída que falhou e, quando uma tentativa quebra algo que passava, desfaz aquela tentativa e diz em voz alta.

58contratos declarados
18de fato medidos
93%cobertura, com portão de 90% por pacote

O que está aberto

  1. floor-yields-to-project em 5%. Instruções do projeto não governam o piso embutido do jeito que o pedido do usuário governa. Mesma regra, lugar diferente. Falta mecanismo.
  2. 40 contratos declarados e nunca medidos. Cada medição custa chamadas reais de modelo.
  3. Múltiplos provedores, MCP, plugins, sessão compartilhada, desktop, IDE.

A meta

Um pull request para o dcode escrito de ponta a ponta pelo próprio dcode, passando na revisão e no portão de cobertura sem nenhuma edição manual.

É a melhor avaliação que o projeto tem: o próprio conjunto de testes e a própria lista de revisão viram o critério. E vem com uma armadilha conhecida — é obrigatório manter no material de avaliação um código que não seja Go, senão o agente fica excelente em Go e medíocre no resto sem a métrica perceber.

Ver no GitHub