Contexto do agente Shipped
O arquivo de contexto que morre com a task
Todo agente de código lê um arquivo de instruções. O CommitCycle mantém no AGENTS.md o que não muda com o trabalho, e escreve a task em si num arquivo ignorado pelo git no instante em que o trabalho é autorizado, removendo-o no instante em que é entregue — porque um contexto que sobrevive à sua task é pior do que contexto nenhum.
$ cycle start CC-58
<!-- cc:begin -->
### You are working on CC-58 — Export times out on large boards
Branch `task/CC-58-export-times-out-on-large-boards`. Access expires in about 8 hours.
What it must NOT do. No change to the export format.
No protected zone is open to this task.
<!-- cc:end -->
O cycle start escreve a task num CLAUDE.local.md ignorado pelo git, ao lado do mapa de zones do AGENTS.md, e o cycle submit tira de novo.
O padrão, e a parte que faltava
AGENTS.md é uma convenção hoje mantida sob a Linux Foundation, e na nossa contagem de 2026-08-09 estava em mais de 60.000 repositórios e era lida por mais de 25 ferramentas. Isso é uma vitória real — um arquivo, todos os agentes — e também é commodity: gerar um não é um produto, e preferimos dizer isso a vender para você.
O que nenhuma convenção fornece é um ciclo de vida. Um arquivo escrito uma vez se afasta do repositório que descreve, e nada no formato percebe. O CommitCycle escreve um bloco delimitado dentro do seu e só esse bloco lhe pertence: o mapa de zones, o board, a nota de entrega que ele espera e a regra de deploy, idêntico byte a byte entre tasks, então não é o arquivo em que um merge dá conflito. A task ativa, seus non-goals e o que o grant dela abre vão para CLAUDE.local.md — ignorado pelo git, escrito no gate, removido na entrega.
O que o bloco da task diz
<!-- cc:begin -->
## CommitCycle
### You are working on CC-326 — Seven Platform menu items still point at documentation
Branch `task/CC-326-seven-platform-menu-items...`. Access expires in about 8 hours.
**What it should do.** …o Goal da task…
**What it must NOT do.** …seus non-goals, na íntegra…
**No protected zone is open to this task.** Everything below is closed.
**Read before working** — the playbooks for this task's topics:
- .zones/playbooks/design.md
- .zones/playbooks/frontend.md
**Closed to this task.** You may not write there — nothing is stopping you,
so this one is on you:
- `schema` (deny): apps/api/migrations/**, apps/api/src/db/schema/**
<!-- cc:end -->Esse é um bloco real, recortado: o que foi escrito para a task que produziu esta página, antes de o CC-551 tirar essa metade do AGENTS.md; as mesmas linhas agora vão para CLAUDE.local.md. O bloco fica em inglês porque o agente que o lê trabalha em inglês, e o dashboard também. Repare na frase do meio: nothing is stopping you, so this one is on you. O arquivo é honesto sobre ser um conselho.
Por que ele expira
Porque a alternativa foi medida aqui, não imaginada. Um bloco de uma task já fechada ficou no nosso próprio trunk anunciando que havia trabalho ativo; cada sessão que clonava o repositório lia aquilo e acreditava, e o pull request seguinte herdava o conflito. A primeira correção foi fazer a entrega commitar a própria limpeza. A que se sustentou foi tirar a task do arquivo commitado de vez, para um arquivo ignorado pelo git que não chega ao trunk.
Há uma segunda razão, e é a que decide arquiteturas. Um resumo de um projeto é um artefato de um instante, sem ciclo de manutenção: o resumo guardado de um assistente descreveu este repositório como se não tivesse código de produto na semana em que o board dele contava setenta e sete tasks fechadas (2026-08-09). Resumos orientam; nunca testemunham.
Onde ele para
- Ele aconselha e não impõe. Nada aqui nega uma escrita. Isso é o modelo de zones, decidido na chamada da ferramenta — e este arquivo é a camada 1 de três exatamente por isso.
- Não consegue obrigar um agente a lê-lo. Nenhum arquivo de instruções consegue. O que o gate consegue é mantê-lo atual, para que um agente que o leia não seja induzido ao erro.
- Um bloco lhe pertence, não o seu arquivo. Tudo o que você escreveu em volta da marca é seu e continua intacto.
- Da metade da task só se sabe que chega ao Claude Code.
CLAUDE.local.mdé o arquivo do Claude Code, e se outros editores o carregam nunca foi verificado; conte com eles lendo o AGENTS.md, que traz o mapa e as regras, mas não a task ativa.
Os campos do bloco estão na documentação (em inglês), o mapa a partir do qual ele é gerado é o mapa de zones, e a camada que de fato diz não é a pilha de enforcement.
Perguntas que esta página responde
O CommitCycle substitui o meu AGENTS.md?
Não. Ele escreve um bloco delimitado dentro do seu e só esse bloco lhe pertence. Tudo o que você escreveu em volta fica intacto. O bloco guarda o que não muda com o trabalho; a task ativa vai para um CLAUDE.local.md ignorado pelo git, que é removido quando a task é entregue.
Um agente pode ignorar o que o AGENTS.md diz?
Pode, e o próprio bloco diz isso. O contexto aconselha — não consegue negar uma escrita. Isso é o hook local, que é outra camada. O check de CI, que poderia pegar o trabalho feito onde nenhum dos dois rodou, só roda no próprio repositório do CommitCycle.