3 AI coding termos: Vibe, Spec, Agent Framework
Todo mundo chama tudo de “AI coding”. Karpathy chamou de Vibe Coding. AWS Kiro chamou de Spec-Driven Development. LangChain chamou de Agent Framework. Nenhum dos três é a mesma coisa, e tratar como se fosse me custou 3 sprints. Este texto é o mapa que eu queria ter tido antes de começar.
Os 3 termos que ninguém usa direito
Vibe Coding (Karpathy, 2025-02-02)
Andrej Karpathy postou o tweet-manifesto em 2 de fevereiro de 2025. A definição dele: “you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” O tweet passou de 4,5 milhões de views. Collins Dictionary escolheu “vibe coding” como palavra do ano de 2025.
Centro de gravidade: intenção. Você descreve o que quer, o LLM cospe código, você aceita.
Fica bom em protótipos, hackathons, código descartável. Quebra em qualquer coisa que precise de manutenção depois de sexta-feira.
Spec Coding (AWS Kiro, GitHub Spec Kit, 2025-)
A AWS lançou o Kiro em 14 de julho de 2025 (GA em novembro do mesmo ano) como “seu IDE agêntico para spec-driven development”. A ideia é o inverso do vibe: você escreve a especificação primeiro, o agente escreve o código depois.
Centro de gravidade: contrato. A spec é o artefato principal, o código é derivado.
Fica bom em features com requisitos claros e times que já pensam em ADR. Quebra quando a spec pré-cozida não bate com a realidade do sistema legado — aí você reescreve a spec três vezes e volta pro vibe.
Agent Frameworks (LangChain, CrewAI, AutoGen, OpenAI Agents SDK)
LangChain passa de 145 mil stars no GitHub em 2026. CrewAI passa de 55 mil, AutoGen passa de 60 mil (em modo manutenção desde outubro de 2025). Todos são infraestrutura de execução — não são metodologia.
Centro de gravidade: runtime. Como o agente chama ferramentas, mantém estado, retenta, orquestra outros agentes.
Fica bom em sistemas em produção com múltiplas ferramentas e pipelines de agente que atravessam várias sessões. Quebra quando você trata como metodologia. Não é.
O mapa em uma tabela
| Vibe Coding | Spec Coding | Agent Frameworks | |
|---|---|---|---|
| Origem | Karpathy tweet (2025-02) | AWS Kiro / Spec Kit (2025-) | LangChain (2022-) |
| Centro de gravidade | Intenção | Contrato | Runtime |
| Artefato principal | Prompt | Spec | Grafo de ferramentas |
| Fica bom em | Protótipo | Feature bem definida | Produção com N ferramentas |
| Quebra em | Manutenção | Legado | Ser tratado como metodologia |
Meu erro: tratei LangChain como Spec Coding
Levei 3 sprints para perceber. Eu escrevi specs de agente que descreviam como o LangGraph deveria rodar — mas “como” era exatamente o que o grafo estava resolvendo. Cada requisição nova do produto virava uma reescrita da spec e uma reescrita do grafo, porque eu tinha misturado os dois níveis.
O que teria evitado o erro: assumir que Agent Framework é infraestrutura de runtime, e a spec (se existir) fica em cima, não dentro. Assim como você não escreve spec de Kubernetes — você escreve spec de aplicação, e aceita que o Kubernetes é o runtime.
Escrevi mais sobre a definição “agent = model + harness” aqui — vale se você já passou pela ilusão de que trocar o modelo resolve o problema.
Por que a confusão persiste
Três razões, na ordem em que eu tropecei nelas:
- Todo mundo usa o mesmo prompt. Se eu digito “escreva um agente que faz X” no ChatGPT, Cursor, Kiro e Claude Code, os quatro cospem código funcional. Parece a mesma coisa. Só depois de manter esse código por 6 meses é que a diferença aparece
- Os frameworks se vendem como metodologia. A doc do LangChain lista “prompts”, “chains”, “agents”. A doc do Kiro fala de “specs”. Os dois parecem estar no mesmo nível conceitual. Não estão
- Vibe coding pegou como meme-tag. Qualquer coisa com IA no meio virou “vibe” na conversa informal. Quando o CTO diz “estamos fazendo vibe coding aqui”, pergunte se é Karpathy-vibe (protótipo descartável) ou vibe-genérico (usamos Copilot)
Decisão rápida
- Prototipando alguma coisa que vai ser jogada fora? Vibe
- Feature vai pra produção e você tem tempo pra escrever spec? Spec Coding
- Sistema já em produção, agente precisa chamar 5+ ferramentas e manter estado? Agent Framework
Se você marcou os três, o que você tem é um sistema em produção rodando um Agent Framework, com specs no nível de feature em cima, e alguém do time fazendo vibe coding no branch experimental. Esse é o estado saudável, na minha experiência. O problema é chamar os três pelo mesmo nome.
ken imoto · WebRTC & Voice AI engineer · kenimoto.dev · TabNews
Livro relacionado Harness Engineering Tutorial de Harness Engineering | design de AGENTS.md · implementação de hooks · operação de agentes de IA Ver a página do livro → Este artigo foi útil?