Coding-Agent State Protocol

O modelo guarda o contexto. O CASP prova que o estado é verdadeiro — contra o git.

O CASP mantém uma imagem sempre verdadeira de onde cada um dos seus projetos realmente está — a qualquer momento, validada contra o git. Volte após uma semana ou após meses, em qualquer stack, em qualquer número de agentes, sessões ou colegas: abra-a e o estado é verdadeiro — ou o casp check bloqueia o push até que seja.

Checagem pré-voo + caixa-preta para suas sessões de código com IA
$npm i -g @justethales/casp copiar
Ver no GitHub
casp check — validador de divergência
01 / O fio que você não para de perder

Um arquivo de estado desatualizado deixa seu agente confiante e errado.

Você volta a um projeto depois de uma semana — ou faz malabarismo com cinco ao mesmo tempo. O agente lê um arquivo de estado que não corresponde mais à realidade, começa com confiança um trabalho que já foi entregue, e você queima uma tarde inteira desfazendo isso.

Quadros, cartões e planilhas não salvam você: reconstruir o contexto é manual, e o agente não consegue ler nada disso. O estado precisa ser legível por máquina, nativo do git — e comprovadamente verdadeiro.

O CASP dá a cada projeto um fio único que sobrevive de uma sessão à outra — e não pode divergir em silêncio.
state.json ● DRIFTED
{
  "phase": "13 — camera streaming",
  "next_prompt": "phases/14-camera.md",
                  // shipped in v13.4
  "last_commit": "a1f3c9",
                  // not in git history
  "migrations": ["0001""0007"],
                  // git stops at 0006
}
02 / A diferença decisiva

Todo mundo armazena o contexto. O CASP o valida.

O CASP é a base determinística do ciclo de autoverificação — a única verificação de "verifique seu trabalho" que não é o modelo verificando a si mesmo: o estado contra o git, na fronteira do push, onde a verificação interna ao ciclo não consegue chegar. O espaço vizinho — Mem0, Letta, Zep, os novos projetos de "memória" nativos do git — todos armazenam o que aconteceu; quase nenhum verifica que o estado armazenado ainda corresponde ao git. Essa verificação é o casp check — obrigatória antes de cada push.

divergência do next-prompt
detectada

Seu next_prompt aponta para um arquivo que já foi entregue — ou que não existe. O CASP se recusa a iniciar a sessão errada.

verdade de referência do git
imposta

last_commit ausente do histórico, lista de migrações dessincronizada, estado não commitado — confrontado com o próprio git, não com um palpite.

push, bloqueado
determinístico

Nenhum score de similaridade aproximado. Uma barreira pass/fail rígida e repetível que para o push enquanto o estado mente.

03 / Ao lado da sua stack existente

Git, PRs e CI não sabem o que entra a seguir.

O CASP não substitui nada no seu fluxo de trabalho. Ele preenche a única lacuna que nada mais cobre — o presente validado de um projeto, em uma forma que seu agente pode ler e sobre a qual pode agir.

Jira · Linear
Intenção
O que você planeja fazer.
Diverge da realidade, vive na nuvem, seu agente não consegue lê-lo de forma confiável.
CASP
Presente validado
Onde o projeto está agora — e o próximo passo exato, provado contra o git.
Legível por máquina, dentro do repositório, determinístico. O fio único sobre o qual os agentes agem.
git · PR · CI
Histórico & verificação
O que mudou · foi revisado · compila.
Um registro perfeito do passado — e mudo sobre o que vem a seguir.
04 / Três arquivos. Um único fio.

Todo o protocolo cabe no seu repositório.

Sem banco de dados. Sem serviço. Sem armazenamento vetorial. Três arquivos simples que um agente pode ler já na primeira linha de qualquer sessão.

state.json
fonte da verdade

Legível por máquina, por projeto: fase atual, fase seguinte, o next-prompt exato a executar, as fases entregues, as migrações aplicadas, o último commit, o último identificador de sessão.

now.md
para humanos

O "onde estou agora" em uma única tela. Abra-o, recupere o fio em cinco segundos — sem arqueologia.

roadmap.md
o que entra a seguir

As 3 próximas a entregar mais um placar de fases. O agente sempre sabe a ordem do trabalho.

Os templates são barreiras, não orientações.  Os templates canônicos session-prompt, session-log e audit-brief fazem com que cada sessão — humana ou agente — produza artefatos com o mesmo formato. A estrutura é imposta, não sugerida.
05 / Planeje uma vez, entregue em fatias

Você escreve o plano uma vez. Seu agente pergunta o que vem a seguir.

Transforme sua especificação numa fila de prompts de sessão — cada um deles um arquivo no seu repositório que declara o que vem antes dele. O casp next entrega ao seu agente a cabeça dessa fila, e se recusa a entregar uma fatia já entregue.

O casp next imprime o prompt. Nunca o executa — quem executa é o seu agente. O CASP é a parte que torna a passagem de bastão confiável, não um orquestrador.

docs/plan/sessions/ — a fila 2 shipped · 3 queued
PHASE-AUTH-GATE.mdnext_after: —shipped
PHASE-BILLING-CORE.mdnext_after: auth-gateshipped
PHASE-AUDIT-LOG.mdnext_after: team-rolesqueued
PHASE-API-DOCS.mdnext_after: audit-logqueued

Ao fim de cada sessão o seu agente anexa o registro, incrementa o estado e redige o próximo prompt da fila — você ajusta uma linha em vez de escrever do zero. E o quadro de fases continua em roadmap.md, para que qualquer agente conheça a ordem do trabalho.

roadmap.md — placar de fases 13 entregues 22 no total
10apiMotor de sincronização em tempo realentregue
11mobileNotificações pushentregue
12mobileCache offline-firstentregue
13webPermissões de equipeentregue
15apiCobrança por assentoem fila
16mobileLogin biométricoem fila
/ Em produção

Não é uma demo. Dois produtos em produção rodam sobre o CASP hoje.

Cada número abaixo é lido diretamente do state.json de cada projeto — o mesmo arquivo que o agente lê, validado contra o git no último push. Nenhuma conta de marketing.

LIVE

Um ERP de gestão de frota voltado ao cliente de uma empresa de transporte na Costa do Marfim — web + mobile, multimódulo, multipapel: motoristas, veículos, conformidade, caixa, oficina, contencioso, contabilidade.

25+
fases entregues
20+
migrações monitoradas
6
sessões em um dia

Cada módulo é uma fase validada. O agente lê o cockpit, executa a próxima fase a partir de next_prompt, e nunca reentregou um módulo já entregue — mesmo num dia de seis sessões.

LIVE

A plataforma interna de ops & orquestração de lançamentos da ZeroSuite — uma roadmap de vários meses tocada por uma equipe de verdade, com gating em modo de lançamento e um backlog pós-lançamento monitorado.

41
fases entregues
17
migrações
3
operadores

Um fio validado único sobre 40+ fases e três pessoas — mais 58 itens explicitamente adiados para depois do lançamento, nenhum deles perdido. É o caso do "grande projeto multiusuário" para o qual o CASP foi feito.

Mesmo protocolo, dois produtos muito diferentes. O cockpit é a única coisa que eles compartilham.

06 / Estado, não memória

O CASP não é uma camada de memória para IA.

As ferramentas de memória guardam quem você é. O CASP acompanha onde o seu projeto está — e o prova. Artefato diferente, operação diferente, falha diferente que ele previne.

CASP
Camadas de memória · Mem0 / Letta / "soul" nativo do git
O que ele carrega
O estado de execução do projeto
Fatos & preferências do usuário
Operação central
Valida contra o git
Armazena & recupera
Em caso de conflito
Verificação determinística contra a verdade de referência
Palpite de similaridade aproximado
Quando ele executa
Barreira síncrona — bloqueia o push
Recuperação assíncrona / eventual
Sai da sua máquina
Nunca · zero telemetria
Varia / nuvem
07 / O posto de comando

Cinco verbos. Digitados sem esforço.

Uma sílaba, nenhum homógrafo, os mesmos em inglês, francês ou espanhol.

casp initInstala a camada de continuidade em qualquer repositório.
casp statusInstantâneo em uma tela: fase, próxima, o que foi entregue.
casp checkO validador de divergência. Obrigatório antes de cada push.
casp nextInicia automaticamente a próxima sessão a partir de state.next_prompt.
casp new promptGera um session-prompt sob barreira a partir do template canônico.
casp new logAbre um session-log no formato que cada sessão compartilha.
08 / No seu editor

Slash-commands nativas para o seu agente.

O CASP fornece slash-commands do Claude Code para que o estado viva onde você já trabalha.

/casp

Status somente leitura — o agente lê o fio atual antes de escrever uma única linha.

/next

Inicia automaticamente a próxima sessão direto de state.next_prompt. Sem copiar e colar, sem adivinhação.

Compatível com Claude Code · Cursor · Aider · Continue — tudo o que lê arquivos.

09 / Para organizações de engenharia

Quando os agentes rodam sem supervisão, a divergência vira um problema de frota.

Um agente fazendo a coisa errada custa uma tarde. Cem agentes fazendo isso em cem repositórios custam um trimestre. O CASP é o guarda-corpo determinístico que você insere no laço de automação — o mesmo formato em cada projeto.

Uma verificação de status de CI obrigatória

O casp check ocupa o mesmo lugar que o lint e os testes. Um estado que mente não pode ser mergeado — a divergência é bloqueada no nível da organização, não deixada à disciplina de cada um.

Um guarda-corpo para frotas de agentes

Agentes autônomos multiplicam os erros. O CASP entrega a cada um deles o mesmo fio validado para ler e a mesma barreira rígida antes de fazer push. Automação sem o imposto do trabalho em dobro.

Uma trilha de auditoria, de graça

Cada transição de estado é um commit git. Um registro completo, comparável e reversível de como cada projeto avançou — o git log é a sua trilha de conformidade.

Aprovado pela infosec por concepção

100% local, zero telemetria, sem nuvem, sem conta. Nada a auditar, nada a exfiltrar. A revisão de segurança cabe em uma linha: ele nunca sai da máquina.

.github/workflows/ci.yml
jobs:
  state-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 0 }   # casp checks against full git history
      - run: npx @justethales/casp check       # ✗ fails the build the moment state drifts

Um protocolo, todos os repositórios. O mesmo formato validado, em toda a organização.

10 / O contrato

Categórico de propósito.

Um protocolo conquista adoção sendo previsível. Estas regras não dobram.

P01

Validar o estado, não a intenção

O CASP verifica o que o seu repositório é, nunca o que você pretendia fazer. Os fatos contra o git, toda vez.

P02

Os templates são barreiras

Os artefatos canônicos são impostos, não sugeridos. Cada sessão sai com o mesmo formato.

P03

check antes de cada push

O validador não é opcional. Um estado que mente nunca chega ao seu remote.

P04

Nada sai da sua máquina

Determinístico, nativo do git, 100% local. Zero telemetria. Sem nuvem, sem conta, sem fatura.

Em produção em dois minutos

Dê a cada projeto um fio que o seu agente não consegue perder.

Instale, inicialize, e o seu agente lê a verdade já na primeira linha.

  terminal
$ npm i -g @justethales/casp
$ casp init          # scaffold the layer
$ casp status        # where am I right now
$ casp check         # prove the state is true