Agentic OS · estudo de caso

Um atendente de WhatsApp que nunca inventa

O OS completo de uma clínica odontológica, construído camada por camada com a skill os-agentes. Seis pastas, nenhuma linha de código.

# o OS inteiro é uma pasta
criaagentes/
├── CLAUDE.md              # quem ele é
├── substrate/             # o que ele sabe
│   ├── compendium.md      # ← a única fonte
│   ├── sources.md
│   └── subject-matter-expertise/
├── rules/                 # o que ele nunca faz
│   ├── never.md
│   └── always.md
├── skills/                # como ele responde
│   └── responder-duvida-whatsapp/
├── tools.md               # o que ele alcança
├── agents/                # quem decide
│   └── recepcionista-whatsapp/
├── memory.md              # toda decisão e o porquê
└── OS-AUDIT.md            # onde ele quebra primeiro
O que é

Um agente de verdade não é um prompt. É uma casa com seis cômodos.

Este repositório é o estudo de caso completo de um atendente de WhatsApp para a Clínica Sorriso Prime (uma clínica fictícia, usada para demonstração). Ele foi construído inteiro com a skill os-agentes (/os-agentes), uma camada por vez, e cada decisão está registrada com o motivo. A maioria das mensagens que chega no WhatsApp de uma clínica é gente nova perguntando preço e horário. É isso que ele resolve.

📌 A regra que sustenta tudo

Se não está escrito no compêndio, não existe. O assistente não completa a resposta por conta própria, mesmo quando a resposta parece óbvia. Teste rápido de qualquer resposta: onde é que isso está escrito?

🚪 Um portão de saída para humano

Dor, sintoma, remédio, desconto, reclamação, urgência ou qualquer coisa fora do compêndio viram alerta no Telegram, com prioridade normal, alta ou urgente. Parar não é o agente falhando, é o agente funcionando.

🧾 Cada decisão com o porquê

O memory.md guarda as escolhas e o motivo delas. Por que o alerta é no Telegram e não no WhatsApp, por que a agenda é só leitura, por que só existe uma skill. Daqui a três meses, ninguém precisa lembrar.

Como funciona

As seis camadas, nesta ordem

A ordem não é decorativa. Identidade define o que o substrato precisa cobrir; o substrato alimenta as skills; as skills existem antes do agente que as orquestra. Pular etapa é construir na areia.

Identidade Substrato Regras e Hooks Skills Ferramentas Agente
1

Identidade · CLAUDE.md

26 linhas. Quem ele é, quem ele atende, e quatro recusas testáveis. A mais importante: nunca dizer que tem vaga.

2

Substrato · substrate/

A maior camada. O documento oficial da clínica fica como fonte; o compendium.md é o destilado que o atendente lê no dia a dia.

3

Regras · rules/

Uma regra é uma placa escrita "não entre". Um hook é uma porta trancada. Aqui existe um hook que importa: o alerta do Telegram dispara sozinho.

4

Skills · skills/

Uma só, de propósito. Classificar a mensagem em três caixas: responde sozinho, depende da agenda, ou é de gente.

5

Ferramentas · tools.md

Google Agenda somente leitura, e alerta num grupo de Telegram. Uma janela, não a chave da casa. Nenhum segredo mora na pasta.

6

Agente · agents/

A skill é a ferramenta, o agente é o cozinheiro. Papel estreito, e um portão de revisão de cinco perguntas antes de qualquer resposta sair.

Pré-requisitos

O que você precisa para reproduzir isto

Nada de servidor, build ou dependência. O OS é uma pasta de arquivos de texto. O que faz o trabalho é o Claude Code lendo essa pasta.

Claude Code

É onde as camadas são construídas e onde o agente roda.

# abra na pasta do OS
cd criaagentes && claude

A skill os-agentes

É ela que faz este projeto existir: guia a construção camada por camada, faz as perguntas e escreve os arquivos. Instale e chame por /os-agentes.

# repo: github.com/inematds/os-agentes
/os-agentes help

O material da sua operação

Preço, horário, políticas, as perguntas que mais se repetem. Escrito ou na sua cabeça, os dois servem.

# vira substrate/compendium.md
/os-agentes layer substrate
Guia de uso · passo a passo

Construindo o seu, do zero

Este OS foi construído exatamente com os comandos abaixo, nesta ordem. Cada comando termina fazendo duas ou três perguntas simples e escrevendo os arquivos da camada.

1

Comece pelo objetivo, em português

Sem jargão. Diga o que você quer que aconteça. O OS Coach cria o memory.md e já entra na camada de Identidade.

/os-agentes start quero criar um agente para atender dúvidas das pessoas na minha clínica usando whatsapp
# → memory.md + CLAUDE.md
2

Avance uma camada por vez

Cada next pega a próxima camada inacabada, pergunta só o que falta, e escreve os arquivos. Sem despejo de seis camadas de uma vez.

/os-agentes next   # → substrate/compendium.md + sources.md
/os-agentes next   # → rules/never.md + rules/always.md
/os-agentes next   # → skills/responder-duvida-whatsapp/SKILL.md
/os-agentes next   # → tools.md
/os-agentes next   # → agents/recepcionista-whatsapp/AGENT.md
3

Entregue o material que você já tem

Se já existe uma tabela de preço, um documento de políticas ou um papel na recepção, aponte o arquivo. O substrato é a maior camada, e é a que mais economiza tempo quando o material já existe.

# basta apontar o caminho do arquivo na conversa
# → vira substrate/subject-matter-expertise/ (fonte)
# → destilado em substrate/compendium.md (o que o agente lê)
4

Volte numa camada quando quiser

As camadas não são degraus de mão única. Toda vez que uma resposta sai errada, o conserto é no compêndio ou na skill, nunca na cabeça de quem estava de plantão.

/os-agentes layer substrate   # identity | substrate | rules | skills | tools | agents
/os-agentes status           # onde parei?
5

Audite contra o objetivo, não no abstrato

Dá nota nas seis camadas, aponta onde quebra primeiro, e escreve o resultado em OS-AUDIT.md. Nesta auditoria, duas camadas caíram de nota, e uma delas por um motivo que ninguém tinha visto.

/os-agentes audit
# → OS-AUDIT.md: scorecard + as 3 jogadas que mais importam
Exemplos

As três caixas, em conversa

Toda mensagem cai numa das três. E existe uma regra que resolve os casos difíceis: na dúvida sobre a caixa, é sempre a terceira.

Caixa 1 · responde sozinho
PacienteQuanto custa a limpeza?
AtendenteA limpeza simples custa a partir de R$ 180. O valor pode variar conforme a avaliação do dentista.
Está no compêndio, palavra por palavra. Nada a mais.
Caixa 2 · depende da agenda
PacienteTem horário amanhã às 14h?
AtendenteVou confirmar na agenda para não te passar um horário errado. Qual é o seu nome completo?
Ver um buraco livre na agenda não é ter consulta marcada. A palavra "confirmada" é da recepção.
Caixa 3 · é de gente
PacienteEstou com uma dor muito forte no dente. O que pode ser?
AtendenteEntendi. Como envolve dor e avaliação clínica, não posso dizer o que pode ser. Vou encaminhar sua mensagem para a equipe da clínica agora.
🚨 Telegram · Prioridade Alta · e o alerta dispara sozinho, não depende de ele lembrar.
O erro que este OS foi desenhado para impedir.

Não é a resposta feia. É a resposta bonita, simpática, plausível e inventada. Ela passa despercebida justamente porque parece certa. Um preço chutado vira reclamação, um horário chutado vira paciente na porta sem vaga, e uma opinião sobre dor vira risco de saúde. Todos são o mesmo erro de roupa diferente: afirmar como oficial uma coisa que ele não sabe.

Roadmap

O que está pronto, e o que a auditoria pegou

As seis camadas estão escritas. A auditoria de 2026-07-15 rebaixou duas, e as duas por motivos honestos. O scorecard completo está em OS-AUDIT.md.

Pronto
As seis camadas, amarradas na mesma ideiaIdentidade, Regras, Skill e Agente se sustentam mesmo se todo o conteúdo do compêndio for trocado amanhã. Por isso a troca dos dados é trabalho de digitar, não de refazer.
Pendente
Trocar os dados fictícios pelos reaisO compêndio está bem organizado, mas cada valor dele é inventado. Um assistente cuja regra número um é nunca inventar, munido de um livro inteiro de invenções, responde coisas tecnicamente corretas e factualmente falsas.
Pendente
O WhatsApp não está no arquivo de conexõesO objetivo tem a palavra WhatsApp dentro dele, e o tools.md lista Google Agenda e Telegram, mas não o WhatsApp. Ligamos os dois fios auxiliares e esquecemos o cano principal.
Pendente
Dez conversas de mentira antes de ligar em qualquer coisaSeis camadas escritas, zero mensagens rodadas. Passar dez mensagens reais pelo agente, incluindo as chatas, e perguntar em cada resposta: onde é que isso está escrito?
Futuro
Fazer o OS melhorar sozinhoNenhuma camada é "composta" ainda: não existe caminho que leve o erro de volta para o compêndio. Se a mesma pergunta aparece três vezes e não está lá, ela deveria entrar sozinha.