- Onde as empresas mais pecam
- A anatomia de um harness
- Dois harnesses: o da ferramenta e o seu
- Quando vale construir o seu
- Níveis de maturidade
- O que entra no arquivo de regras
- O custo que não aparece no diagrama
- Por onde começar (sem construir tudo de uma vez)
- As armadilhas de virar bandeira
- Para estudar mais
- Mini-glossário
O modelo de IA é o motor. Mas ninguém dirige um motor: dirige-se um carro, com volante, freio, painel e cinto de segurança. Harness é o carro. É tudo o que existe em volta do modelo para que ele trabalhe de verdade, dentro de limites, e com alguém conferindo o resultado.
O termo virou moda, e por isso mesmo virou vago. Este artigo é a base de uma série: o que um harness realmente contém, a diferença entre o que já vem pronto e o que você constrói, quando vale a pena construir, e o erro que vejo repetido nas empresas — montar o harness e esquecer dele.
Tudo o que existe em volta do modelo de IA para transformá-lo em um agente que trabalha de verdade — as ferramentas que ele pode usar, as regras que ele segue e as verificações que barram o erro. O modelo sozinho só gera texto; o harness o transforma em trabalho.
Onde as empresas mais pecam
Antes da teoria, o erro mais comum — e o mais caro. As empresas costumam errar de três formas ao mesmo tempo:
- Superestimam o harness. Tratam como produto que se instala e resolve: "montamos os agentes, agora a qualidade está garantida". Não está. Um harness é um ponto de partida, não uma entrega.
- Subestimam a manutenção e o amadurecimento. Ninguém é dono dele, ninguém tem tempo reservado para ajustá-lo, e cada falha real que poderia virar uma regra melhor vira só mais um incidente esquecido.
- Querem tudo muito rápido. Copiam uma estrutura pronta, ligam todos os agentes de uma vez e não medem nada. O resultado é qualidade reduzida, o time perde a confiança no processo e o abandona.
Um harness maduro não nasce de uma sprint. Ele é resultado de ciclos repetidos: usar, observar onde falhou, aprender, ajustar. Isso leva meses, não semanas — e só acontece se alguém tiver o trabalho de fazer.
Não basta manter o harness (agentes, gates, regras, métricas). É preciso também melhorar o processo fora dele, conforme o aprendizado. Muitos dos problemas que o harness pega nascem antes dele: requisito mal levantado, "pronto" nunca definido, time que não sabe delegar para a IA. Se o crítico devolve toda semana uma spec ambígua, a correção não é adicionar mais um gate — é melhorar como o requisito é levantado. Ajustar só dentro do harness trata o sintoma; o processo em volta é a causa.
A anatomia de um harness
Um harness não é uma coisa só. São camadas, e nem toda organização precisa de todas. Cada uma responde a uma pergunta diferente:
| Camada | O que é | Pergunta que responde |
|---|---|---|
| Instruções e regras | Arquivo com a arquitetura, os padrões e as proibições do projeto | "Como este projeto funciona e o que nunca fazer?" |
| Ferramentas | O que o agente pode fazer: ler e editar arquivos, rodar comandos, consultar sistemas | "O que ele consegue fazer?" |
| Permissões | O que exige confirmação e o que é bloqueado | "Até onde ele pode ir sozinho?" |
| Hooks | Scripts executados automaticamente em certos eventos (ex.: rodar o build ao terminar) | "O que acontece sem ninguém precisar lembrar?" |
| Skills | Pacotes de instruções que o agente carrega quando a tarefa pede | "Como se faz esta tarefa do jeito certo?" |
| Contexto e memória | O que o modelo enxerga a cada chamada e o que fica registrado entre sessões | "O que ele sabe e o que aprendeu?" |
| Verificações | Build, testes, revisão independente, evidência | "Como sei que está certo?" |
| Papéis (agentes) | Agentes especializados com escopo fechado | "Quem faz o quê, e quem confere quem?" |
A última camada é o assunto do artigo sobre multiagente. Repare que ela é a única realmente opcional: dá para ter um ótimo harness só com as sete primeiras.
Dois harnesses: o da ferramenta e o seu
Existem dois níveis de harness, e eles não competem — se complementam:
| Harness da própria ferramenta | Harness próprio (o seu) | |
|---|---|---|
| O que é | O que já vem pronto na ferramenta de IA que você usa (como o Claude Code): ciclo de agente, leitura e edição de arquivos, execução de comandos, permissões, gestão de contexto, subagentes, hooks | O que você constrói por cima: regras, agentes com papéis, gates, base de conhecimento e métricas do seu projeto ou empresa |
| Para que serve | Fazer a IA trabalhar bem em qualquer projeto, sem configuração | Fazer a IA trabalhar do seu jeito: com a sua arquitetura, os seus padrões e o seu critério de "pronto" |
| Quem mantém | O fabricante — evolui junto com o modelo, sem esforço seu | Você — cada peça é sua responsabilidade |
| Limite | Não conhece as regras do seu negócio nem o que o seu time considera aceitável | Custa tempo para construir e, principalmente, para manter |
O harness próprio serve a fins bem específicos: impor padrões do time (arquitetura, bibliotecas proibidas, convenções), garantir verificações que não podem depender de boa vontade (build, teste, revisão independente), carregar conhecimento do domínio (o que já deu errado, o que já foi decidido) e tornar a qualidade mensurável.
Use o harness da ferramenta como base e customize o mínimo necessário. Tudo o que você constrói por cima é peso que precisará acompanhar a evolução da ferramenta e dos modelos.
Quando vale construir o seu
Nem todo projeto precisa de um harness próprio. Um checklist honesto:
| Vale construir se... | Não vale (ainda) se... |
|---|---|
| Há padrões e regras que a ferramenta não conhece e que se repetem em todo trabalho | Você trabalha sozinho num protótipo descartável |
| Mais de uma pessoa usa IA no mesmo código e precisa de consistência | Não sabe ainda o que considera "certo" no projeto |
| O mesmo tipo de erro acontece várias vezes | Os erros são raros e pontuais |
| Há exigência de auditoria, segurança ou conformidade | Não há ninguém com tempo para manter |
| O sistema tem regras de negócio complexas ou legado a preservar | O harness da ferramenta, sozinho, já resolve o que você precisa |
Se você marcou "não vale" em mais da metade, comece pelo básico do próximo tópico e só evolua quando o problema aparecer.
Níveis de maturidade
Um harness cresce por níveis. A regra é subir um nível só quando o problema do nível atual aparecer e se repetir — nunca por antecipação.
| Nível | O que você adiciona | Problema que resolve | Custo de manter |
|---|---|---|---|
| 0 | Nada: usa a ferramenta como vem | — | Nenhum |
| 1 | Arquivo de regras do projeto | IA sem contexto, que repete o mesmo erro | Baixo: revisar de vez em quando |
| 2 | Verificações automáticas (build e testes via hook) | "Eu rodei e passou" sem prova | Baixo a médio |
| 3 | Papéis e gates (crítico, revisão independente) | Auto-aprovação, erro de spec e design que só aparece tarde | Médio a alto |
| 4 | Métricas e avaliação do próprio harness | Não saber se uma mudança ajudou | Alto |
A maioria dos times ganha muito entre os níveis 1 e 2, e pouca gente precisa chegar ao 4. Meu próprio harness está no nível 4 porque tenho um motivo específico (medir o efeito de cada mudança). Ter chegado lá não é mérito; é custo que aceitei pagar.
O que entra no arquivo de regras
O nível 1 é o mais barato e o mais mal aproveitado. Um arquivo de regras ruim é longo, genérico e ignorado. Um bom é curto e cada linha existe por um motivo.
| Coloque | Não coloque |
|---|---|
| Arquitetura e regra de dependência entre camadas | O que já é óbvio lendo o código |
| Comandos para build, teste e execução | Tutoriais e explicações longas |
| Convenções que não dá para deduzir do código | Regras duplicadas em vários lugares |
| Proibições explícitas (bibliotecas, práticas) | Conselhos vagos: "seja cuidadoso", "escreva código limpo" |
| Armadilhas que já causaram erro real | Regras que ninguém sabe por que existem |
Um teste simples para cada linha: "que erro real isso evita?" Se não há resposta, a linha é ruído, e ruído custa: tudo que fica sempre carregado é pago em toda chamada e disputa espaço com o que importa.
O custo que não aparece no diagrama
Montar o harness é a parte cara que todo mundo enxerga. A parte cara que ninguém enxerga é mantê-lo.
Um harness é um conjunto de compensações: cada regra, cada gate, cada passo obrigatório existe porque, numa certa versão de modelo e de ferramenta, algo dava errado sem ele. Quando o modelo evolui, parte dessas compensações deixa de ser necessária. Quando a ferramenta ganha um recurso nativo, parte vira duplicação. E o harness, parado, continua aplicando tudo isso:
- Passos obrigatórios que o modelo novo faria melhor sozinho. Quebrar em micro-tarefas, reforçar contexto, decompor o raciocínio: andaimes que ajudavam um modelo mais fraco e agora só limitam um mais capaz.
- Instruções que competem com recursos novos da ferramenta. Você construiu à mão o que a plataforma passou a oferecer pronto, e os dois convivem em conflito.
- Instruções sempre carregadas que só crescem. Cada incidente vira uma regra nova; nenhuma regra é removida; o contexto pago em toda chamada engorda.
- Premissas congeladas. "Spec formal sempre" foi certo para o modelo de ontem; para o de hoje, pode ser cerimônia.
O harness deixa de ajudar e passa a atrapalhar: mais lento, mais caro e, o pior, o time continua confiando nele. Um harness desatualizado é pior que nenhum, porque ninguém desconfia dele.
Sinais de que isso já começou:
| Sintoma | O que provavelmente aconteceu |
|---|---|
| O crítico aprova tudo, sempre | O gate virou ritual: ninguém mais lê |
| O time diz "vou fazer direto, sem passar pelo fluxo" | O atrito passou a custar mais que o benefício |
| Agentes gastam mais token do que o pedido justifica | A régua de esforço ficou para trás dos modelos |
| Modelo novo entrega igual, ou melhor, sem um componente | O componente virou peso morto |
| A base de conhecimento contradiz o código atual | Ninguém faz curadoria há meses |
| Ninguém sabe explicar por que um gate existe | O porquê se perdeu, e sem ele não dá para decidir remover |
Uma rotina de manutenção que funciona
- Trate o harness como produto, não como projeto. Projeto acaba; produto tem dono, backlog e cadência de revisão.
- Reavalie a cada troca de modelo ou ferramenta. É o gatilho natural. Rode os mesmos cenários com e sem cada componente e compare (o artigo sobre medição mostra como).
- Remova com medição, nunca por sensação. Num branch, medir antes e depois, decidir. "Acho que não ajuda mais" não é dado.
- Pergunte: "se eu montasse isso hoje, com o modelo atual, ficaria igual?" Se a resposta é não, você está mantendo um museu.
- Registre o porquê de cada regra e gate. Componente sem motivo escrito não pode ser reavaliado: só mantido por medo ou removido por chute.
- Reserve tempo. Se manter o harness não está na agenda de ninguém, ele não vai ser mantido.
Por onde começar (sem construir tudo de uma vez)
Se ficou com a impressão de que é preciso montar o sistema inteiro, não é. Do mais barato ao mais caro:
- Comece pelo harness da ferramenta e um arquivo de regras do projeto. Registre ali a arquitetura, os padrões e o que a IA nunca deve fazer. Só isso já elimina uma parte grande dos erros de "IA sem contexto".
- Adicione verificações automáticas. Build e testes rodando de verdade, com o resultado guardado: não a palavra de quem implementou.
- Adicione um crítico só de leitura e um único gate, depois da spec. É o ponto mais barato para pegar erro: corrigir texto custa uma fração de corrigir código.
- Só então acrescente o resto: mais papéis, revisão de código independente, métricas, base de conhecimento.
E uma regra para cada peça que você adicionar: escreva o problema que ela resolve e a data em que vai reavaliá-la.
As armadilhas de virar bandeira
- Copiar a estrutura sem entender o porquê de cada gate. Vira teatro de processo: os nomes estão lá, a disciplina não.
- Empilhar camadas de revisão sem verificação real. "Agente revisor" e "agente crítico" não valem nada se ninguém checa build, teste ou evidência.
- Usar o processo completo para qualquer mudança. Passar uma correção de uma linha por todas as fases não é rigor, é desperdício.
- Achar que o processo substitui entender o problema de negócio. Nenhum gate resolve requisito mal levantado.
- Configurar uma vez e esquecer. A armadilha desta série inteira, e a mais silenciosa.
Um cenário comum: o time adota "harness" como palavra de ordem, monta agentes com nomes bonitos, e nas primeiras semanas a entrega até parece mais organizada. Meses depois, ninguém lembra por que o gate de crítica existe, ele vira etapa que todo mundo aprova sem ler, e o processo que devia pegar erro cedo só atrasa a entrega — pior que não ter processo, porque agora há falsa sensação de segurança.
Para estudar mais
- Guia da Anthropic sobre agentes: Building effective agents. Defende começar com a solução mais simples possível e só aumentar a complexidade quando for necessário, princípio que vale para o harness também.
- Documentação de subagentes do Claude Code: Create custom subagents. Mostra como um agente especializado, com contexto e ferramentas próprios, é configurado na prática.
- Termos para pesquisar: spec-driven development, agent evals, context engineering.
Mini-glossário
| Termo | O que é |
|---|---|
| Harness | Tudo o que existe em volta do modelo de IA para transformá-lo em agente que trabalha de verdade: ferramentas, regras, permissões e verificações. |
| Agente | Modelo de IA com um papel, um objetivo e ferramentas para agir (ler arquivos, rodar comandos, editar código). |
| Subagente | Agente disparado por outro para uma tarefa específica. Começa sem a memória da conversa e devolve só o resultado. |
| Orquestrador | A thread que coordena: guarda o contexto completo, delega cada fase e junta os resultados. |
| Gate | Ponto de verificação entre fases. O trabalho só avança com aprovação explícita; caso contrário volta com uma lista de correções. |
| Spec / spec-driven | Especificação escrita do que deve ser feito. Spec-driven é começar pela spec, antes do design e do código. |
| Skill | Pacote de instruções reutilizável que o agente carrega quando a tarefa pede (por exemplo, o padrão de testes do projeto). |
| Hook | Script que a ferramenta executa automaticamente em certos eventos, como rodar o build ao encerrar uma resposta. |
| MCP (Model Context Protocol) | Padrão aberto para conectar o agente a ferramentas e fontes de dados externas. |
| Contexto | Tudo o que o modelo enxerga em uma chamada: instruções, arquivos lidos, histórico da conversa. É limitado e custa a cada chamada. |
| Token | Unidade de texto que o modelo processa. Limite de contexto e custo de uso são medidos em tokens. |
| Evidência | Artefato que prova que algo foi executado de verdade, como o log de um build ou de um teste. Vale mais que "eu rodei e passou". |
Vamos publicar novos artigos, cada um aprofundando um ponto estratégico deste tema. Se houver algum que você gostaria de ver primeiro, me diga.
- 1O que eu construíA história por trás: o problema, o fluxo que montei e as armadilhas de usar harness como bandeira.
- 2Harness de IAA base conceitual: anatomia, harness da ferramenta contra o seu, níveis de maturidade e custo de manter.Você está aqui
- 3Multiagente na práticaQuando usar vários agentes, padrões de organização, um exemplo completo e os modos de falha.
- 4Como medir o harnessAs três camadas de medição e uma versão mínima para começar em uma tarde.