Objetivos de aprendizagem
Ao final deste capítulo, você deve ser capaz de:
- Explicar por que o aprendizado auto-evolutivo quebra o pressuposto do scaffolding estático — e como ele inverte a cláusula de expiração do livro;
- Descrever as etapas do ciclo fechado de captura de skills (gatilho, curadoria, isolamento, formato portável, reencontro indexado, manutenção contra a entropia);
- Comparar os dois designs concorrentes de aplicação do aprendizado — autônoma × promoção humana — e localizar um harness real na escada de maturidade da dimensão;
- Avaliar os riscos da dimensão (superstição, entropia, contaminação, prompt injection como aprendizado permanente) e as engenharias que os previnem.
O problema
As doze dimensões dos capítulos 02–13 descrevem scaffolding (andaime) estático: alguém — o autor do harness, o usuário, um plugin — escreve as instruções, tools e políticas, e o agente as consome. Este capítulo documenta a dimensão emergente que quebra esse pressuposto: o agente que escreve o próprio scaffolding — capturando procedimentos aprendidos como skills reutilizáveis.
A dimensão foi promovida a suplementar do template do benchmark (dimensão 13) por força de uma evidência: o Hermes Agent (Nous Research) implementa o ciclo completo, e a leitura do código confirma cada etapa (Apêndice A).
O estado da arte
O ciclo fechado: as seis etapas
O mecanismo de referência, verificado no código do Hermes (evidência detalhada no Apêndice A), fecha o ciclo em seis etapas:
- Gatilho autônomo — a revisão de aprendizado dispara sozinha, em background, sem o usuário pedir (com gatilho manual como complemento).
- Curadoria por um fork isolado — um clone do agente, com um prompt curatorial que define o que capturar e — o mais importante — anti-padrões do que NÃO aprender. Sem essa lista, o sistema degeneraria em superstição acumulada.
- Isolamento do meta-trabalho — o fork curador tem tools restritas e persistência desligada, para não contaminar a sessão real.
- Escrita em formato portável — a skill vira um
SKILL.mdsob standards rígidos, com a restrição de contexto moldando o formato do conhecimento. - Reencontro barato — índice compacto sempre no system prompt; conteúdo integral só entra no contexto sob demanda. Aprendizado indexado, não despejado.
- Manutenção contra a entropia — um curador periódico consolida, arquiva por inatividade e protege o que está fixado. Memória que só cresce vira ruído; o curador é o coletor de lixo do conhecimento.
A escada de maturidade na coorte avaliada
| Harness | Nota 13 | O que tem |
|---|---|---|
| Hermes | 3 | O ciclo fechado completo (Apêndice A), com aplicação autônoma |
| gemini-cli | 3 (retro) | Auto Memory: agente extrator com gates anti-ruído ("Default to NO SKILL", 5 perguntas de bloqueio) produzindo SKILL.md + patches de memória — mas com promoção humana via inbox (/memory inbox); dedupe, sandbox de escrita, evals dedicados |
| IronClaw | 2 | Extração automática de skills (learning.rs) com métricas de uso/confiança e versionamento |
| OpenClaw | 1 | Dreaming (consolidação autônoma de memória); Skill Workshop com fila de propostas |
| OpenHarness | 1 (retro) | Auto-extração de fatos por turno, com staleness por uso (60 dias) — fatos, não procedimentos |
| Codex CLI | 1 | Memórias automáticas com pruning (fatos, não procedimentos) |
| Goose | 1 | chatrecall (recall semântico de conversas passadas) |
| opencode, demais | 0 (retro) | Skills são consumo/distribuição; nada é escrito pela experiência |
A escada é nítida: memória de fatos (nível 1) → extração de procedimentos (nível 2) → ciclo curado com anti-padrões e manutenção (nível 3). O que separa o nível 3 não é capturar mais — é a engenharia de não capturar errado e de podar o que envelheceu.
Os dois designs concorrentes do nível 3
O nível 3 já tem dois designs concorrentes, com a divergência exatamente onde importa: quem aplica o que foi aprendido. O Hermes aplica autonomamente (com o curador limpando depois); o gemini-cli exige promoção humana (inbox — nada entra no contexto sem /memory inbox). É o trade-off clássico autonomia × controle do capítulo 07, reaparecendo na dimensão mais nova: o Hermes aposta que anti-padrões bastam para prevenir aprendizado ruim; o gemini-cli aposta que não. As próximas rodadas dirão qual escala melhor.
Por que isso muda a tese do livro
A cláusula de expiração (cap. 01, 14) diz: todo componente de harness é uma prótese para uma limitação atual do modelo, e expira quando o modelo melhora. O aprendizado auto-evolutivo inverte a cláusula: em vez de esperar o modelo dispensar o scaffolding, o par modelo+harness escreve scaffolding novo para si mesmo. Cada skill aprendida é um pedaço de harness gerado em runtime, específico ao usuário e ao ambiente — algo que nenhum autor de harness poderia ter escrito de fábrica.
Isso cria uma terceira via na taxonomia:
- Scaffolding de fábrica — escrito pelo autor do harness; expira com a evolução dos modelos.
- Scaffolding de fronteira — sandbox, permissões, interfaces; não expira (é sobre o mundo).
- Scaffolding auto-gerado — skills escritas pelo agente; cresce com o uso, e sua qualidade depende da engenharia de curadoria, não da capacidade bruta do modelo.
Os riscos: o espelho das promessas
Os riscos são o espelho das promessas: sem anti-padrões, superstição; sem curadoria, entropia; sem isolamento do meta-trabalho, contaminação; e — apontado pela avaliação do IronClaw (prompt-write safety; cf. cap. 07) — sem fronteira de escrita protegida, prompt injection vira aprendizado permanente: um atacante que convence o agente a "aprender" uma skill maliciosa persiste na memória procedural. A dimensão 13 madura exigirá a dimensão 6 madura.
Leitura executiva
A dimensão é a mais nova do template e a menos convergida: dois harnesses no nível 3 com designs opostos sobre quem aplica o aprendizado, e o resto da coorte entre memória de fatos e nada. O que já é consenso de engenharia entre os que chegaram lá: a peça central não é o mecanismo de captura, e sim os anti-padrões do que não aprender e a manutenção (consolidar, arquivar, nunca deletar). O que roubar hoje: lista de anti-padrões no prompt curatorial; isolamento do meta-trabalho em fork sem persistência; índice compacto com conteúdo sob demanda; curador periódico como coletor de lixo; fronteira de escrita protegida contra prompt injection.
Reavaliação retroativa da coorte de código pendente; a dimensão sai de "suplementar" quando ≥3 harnesses atingirem nível 2+.
Consulte também: a coleção viva Awesome Harness Engineering — Skills & MCP reúne mais recursos consultáveis desta dimensão, curados por problema.
Verificação
- Por que a lista de anti-padrões ("o que NÃO aprender") é descrita como a peça central da engenharia curatorial, e não o mecanismo de captura em si? O que acontece com um sistema que captura sem ela?
- Localize na escada de maturidade um harness que extrai fatos automaticamente com staleness por uso, mas não captura procedimentos. Que nota ele recebe, e o que faltaria para subir um nível?
- Hermes e gemini-cli estão ambos no nível 3, mas divergem em quem aplica o que foi aprendido. Reconstrua o trade-off autonomia × controle nesse contexto: qual é a aposta de cada design?
- Explique a frase "a dimensão 13 madura exigirá a dimensão 6 madura": por que prompt injection é qualitativamente mais grave num harness que aprende do que num harness estático?
Apêndice A — Hermes Agent
Evidência por repositório, com paths — material de complementação (versão online), expandido a cada rodada do benchmark. Avaliação completa:
../../benchmark/avaliacoes/hermes-agent.md.
O ciclo fechado do Hermes (evidência: agent/background_review.py e afins)
O mecanismo, verificado no código do fork avaliado:
1. Gatilho autônomo. A cada ~10 iterações de tool-calling (skill_nudge_interval, em agent/turn_finalizer.py), o harness dispara uma revisão em background — sem o usuário pedir. Há também o gatilho manual /learn.
2. Curadoria por um fork isolado. Um clone do agente roda em thread separada com o snapshot da conversa e um prompt curatorial (_SKILL_REVIEW_PROMPT) que é a peça central da engenharia. Ele instrui o curador a ser ativo ("um passe que não faz nada é aprendizado perdido"), define ordem de preferência (atualizar skill existente > criar nova; skills novas só class-level, nunca "fix-bug-1234") e — o mais importante — lista anti-padrões do que NÃO aprender: falhas dependentes de ambiente, claims negativos sobre tools ("o browser não funciona"), erros transitórios, narrativas one-off. Sem essa lista, o sistema degeneraria em superstição acumulada.
3. Isolamento do meta-trabalho. O fork tem whitelist de tools restrita (memory + skills), memória e persistência desligadas — para a curadoria não contaminar a sessão real — e herda o prefixo de prompt cacheado do pai (redução de ~26% no custo da revisão).
4. Escrita em formato portável. A skill vira um SKILL.md compatível com agentskills.io em ~/.hermes/skills/<categoria>/<nome>/ (com references/, templates/, scripts/), sob standards rígidos — descrição ≤60 caracteres porque o índice no system prompt trunca em 60: a restrição de contexto moldando o formato do conhecimento.
5. Reencontro barato. O índice compacto (nome + descrição) está sempre no system prompt; o conteúdo integral só entra no contexto quando o agente chama skill_view — aprendizado indexado, não despejado.
6. Manutenção contra a entropia. Um curador periódico (agent/curator.py) roda quando o agente está ocioso: consolida skills em umbrellas, arquiva por inatividade (90 dias — arquivar, nunca deletar), protege skills fixadas. Memória que só cresce vira ruído; o curador é o coletor de lixo do conhecimento.