Desenvolvimento orientado por especificação é uma abordagem emergente para workflows de programação assistidos por IA. Embora a definição do termo ainda esteja evoluindo, ele geralmente se refere a fluxos de trabalho que começam com uma especificação funcional estruturada e, em seguida, avançam por várias etapas para dividi-la em partes menores, soluções e tarefas. A especificação pode assumir diferentes formas — um único documento, um conjunto de documentos ou artefatos estruturados que capturem diversos aspectos funcionais. Temos observado muitas pessoas desenvolvedoras adotarem esse estilo (inclusive criamos uma versão interna na Thoughtworks). Três ferramentas, em particular, vêm explorando interpretações distintas do desenvolvimento orientado por especificação. O Kiro, da Amazon, orienta as pessoas usuárias por três estágios do fluxo — requisitos, design e criação de tarefas. O spec-kit, do GitHub, segue um processo semelhante em três etapas, mas adiciona uma orquestração mais rica, prompts configuráveis e uma “constituição” que define princípios imutáveis que devem ser sempre seguidos. Já o Tessl Framework (ainda em beta privado em setembro de 2025) adota uma abordagem mais radical, na qual a própria especificação se torna o artefato principal, em vez do código. Consideramos esse espaço fascinante, embora os workflows ainda sejam complexos e opinativos. Essas ferramentas se comportam de maneiras muito diferentes dependendo do tamanho e do tipo da tarefa; algumas geram arquivos de especificação longos e difíceis de revisar e, quando produzem PRDs ou histórias de usuário, nem sempre fica claro quem é o usuário final. Podemos estar reaprendendo uma lição amarga: que a elaboração manual de regras detalhadas para a IA, no fim das contas, não é escalável.