MÓDULO 3.3

🧲 Memória, padrões e suplementos

O que faz o coach melhorar com o tempo: o recall semântico, o /advice reconciliado aos seus dados, o /supplements ligado às risk flags, e quando ignorar o coach.

7
Tópicos
~35
Minutos
Prático
Nível
Uso
Tipo
Seu progresso neste módulo 0% · 0 de 7
1

🧲 Recall semântico em ação

A frase que mostra o coach "lembrando" é sempre parecida: "da última vez que você jantou tarde, o recovery caiu pra 52% no dia seguinte". Ele não está adivinhando — toda mensagem sua virou uma linha com memória semântica, e quando você pergunta algo parecido com o passado, ele surfa esse histórico e traz o trecho relevante de semanas atrás.

🟢 Novo aqui? Três palavras antes de seguir

  • Embedding (vetor) — é a sua frase virada em uma lista de números que captura o sentido, não as palavras exatas. "Posso comer doce hoje?" e "dá pra comer sobremesa?" caem perto no espaço, mesmo escritas diferente. No HealthOS quem gera é a OpenAI (a chave OPENAI_API_KEY).
  • pgvector — uma extensão do Postgres (no seu Supabase) que guarda esses vetores e acha os mais "próximos" por similaridade. É o que a migration 0001_init.sql liga.
  • Recall semântico — "buscar por significado". Em vez de procurar a palavra exata, o coach busca mensagens passadas com sentido parecido com o que você acabou de dizer.
💬 Sua mensagem"posso jantar tarde?" 🔢 Embeddingvira vetor (sentido) 🗄️ pgvectorbusca por similaridade 🧠 Padrão recuperado"jantar 21h → recovery 52%" o coach abre a resposta com "da última vez que você…" — o trecho veio de semanas atrás

📊 Como ler: da esquerda pra direita é a busca: a frase de hoje (ciano) vira vetor, o pgvector acha o passado mais parecido e o coach traz o padrão (roxo). Não é a última mensagem — é a mais relevante, ainda que de semanas atrás.

Na prática isso muda o tom: em vez de "evite jantar tarde" (genérico), vem "você já viu isso derrubar o seu número três vezes". O coach está surfando os seus próprios padrões — e é por isso que ele fica mais útil quanto mais semanas você acumula.

Conceitos-chave

Por sentido

Acha o passado parecido, não a palavra exata.

Vetor + pgvector

Frase vira números; o banco acha o mais próximo.

"Da última vez…"

A frase que mostra a memória trabalhando.

Melhora com o tempo

Mais semanas = mais padrões para surfar.

2

📚 /advice — dica de expert reconciliada

Você viu um influencer dizer "jejum de 16h todo dia acelera a perda de gordura". O /advice pega essa dica, busca a fonte numa base de tips de experts (RAG, com citação) e — o pulo do gato — reconcilia com os seus números antes de devolver. A dica genérica vira "pra você, hoje, isto faz ou não sentido".

🟢 Novo aqui?

RAG (Retrieval-Augmented Generation) — "geração aumentada por busca". Em vez de responder de cabeça, o coach primeiro busca trechos reais (a dica do expert + a sua linha de dados) e só então escreve, citando de onde tirou. É o que evita o "achismo" e deixa a resposta rastreável.

▶️ Copie e rode — pedir o /advice sobre uma dica

Objetivo: ver o coach reconciliar uma dica de influencer aos seus dados, com a fonte citada.

# No Telegram, mande para o bot:
/advice <cole-aqui-a-dica-que-voce-ouviu>

# Ex.: /advice jejum de 16h todo dia acelera a perda de gordura

# Prefere terminal? advice.py é o único script que precisa de requests:
pip install requests
python3 agent/scripts/advice.py "jejum 16/8 acelera a perda de gordura"
Como verificar: a resposta cita a fonte e fecha reconciliando com você — algo como "a dica existe, mas seu cortisol AM já está alto e você dorme ~6h: jejum agressivo pode piorar o cortisol; leve ao seu médico antes". No checklist de build é o item "Influencer advice RAG returns cited tips reconciled to your data".

💡 A diferença em uma frase

Um chatbot repete a dica do influencer. O /advice a confronta com os seus exames e genética — e te diz quando a dica famosa não serve para o seu corpo.

Conceitos-chave

RAG citado

Busca a fonte e cita de onde veio.

Reconcilia

Confronta a dica com os seus números.

requests

Única dependência fora da stdlib.

Sempre verificar

A saída é pergunta pro médico, não ordem.

3

💊 /supplements — stack ligado às suas flags

O /supplements não devolve a lista da moda. Ele devolve o seu cronograma, onde cada item está amarrado a uma risk flag vinda do seu DNA e dos seus exames. No design, cada marcador ou SNP mapeia para uma flag → um suplemento → um alvo no schema. É assim que o conselho é mecanismo-aware, não palpite.

🟢 Novo aqui?

Risk flag — uma "bandeira de risco" que o sistema acende quando um exame ou um gene seu pede atenção (ex.: sensível a gordura saturada, sensível a sal, vitamina D baixa, clearance de toxinas ruim). Cada flag puxa um suplemento ou um alvo no banco — é o elo entre o seu dado bruto e a ação.

fontes risk flags stack + alvo 🧬 DNA (SNPs) 🩸 Exames de sangue 🧂 sensível a sal 🥓 gordura saturada ☀️ vitamina D baixa 💊 /supplementscronograma + alvo no schema cada marcador/SNP → uma flag → um suplemento ou alvo no schema

📊 Como ler: os seus dados (ciano, à esquerda) acendem flags no meio; cada flag (setas roxas) puxa um item do stack à direita. Troque o seu DNA/exame e o stack muda — é por isso que ele é seu, não genérico.

▶️ Copie e rode — pedir o stack do dia

Objetivo: ver o cronograma de suplementos ligado às suas metas + risk flags, com o porquê de cada item.

# No Telegram, mande para o bot:
/supplements

# Quer conferir os dados crus que alimentam o stack?
python3 agent/scripts/db.py select goals
python3 agent/scripts/db.py select lab_results   # <suas-flags-vêm-daqui>
Como verificar: sai um cronograma (manhã / treino / noite) e cada item carrega o motivo amarrado a uma flag — ex.: "Vitamina D 4000 UI: seu SNP de VDR + exame baixo" ou "Ômega-3: flag de gordura saturada". Se um item não rastreia até uma flag ou meta, ele não deveria estar ali.

Conceitos-chave

Flag → item

Cada suplemento tem uma razão rastreável.

DNA + exames

As flags nascem do seu painel real.

Cronograma

Manhã / treino / noite, não uma lista solta.

Mecanismo-aware

Diz o porquê no seu corpo, não só "tome".

4

📈 Padrões ao longo do tempo

Porque tudo vira linha estruturada no banco, o coach não só reage à última mensagem — ele enxerga padrões ao longo de semanas. O insight que mais marcou o autor: o corpo é interconectado. Sono ruim sobe o cortisol, e o cortisol amplifica tudo — pressão, fome, recuperação. Foi o coach que mandou ele descansar — e ele tirou o primeiro rest day voluntário em meses.

😴 Sono ruimrepetido na semana 📈 Cortisol sobeo "amplificador" 🌀 Amplifica tudoPA ↑ · fome ↑ · recovery ↓ 🛌 Coach: descansa1º rest day voluntário o descanso quebra a cascata — e a semana seguinte abre com recovery melhor

📊 Como ler: da esquerda pra direita é a cascata (sono → cortisol → tudo piora); a linha tracejada roxa é o coach interrompendo o ciclo com um rest day. O insight só aparece porque a memória é estruturada e enxerga a semana inteira.

1

Semana 1 — pontos soltos

Cada dia é só um número. Recovery sobe e desce sem explicação aparente.

2

Semana 2 — o coach liga os pontos

"Nas noites de sono < 6h, o seu recovery cai no dia seguinte." A memória estruturada virou correlação.

3

Insight — o corpo é interconectado

Sono ruim → cortisol alto → tudo piora. O coach passou a dizer quando puxar e quando descansar. Resultado: o primeiro rest day voluntário em meses.

💡 Por que isso só funciona com memória estruturada

Um padrão é uma correlação ao longo do tempo. Sem linhas estruturadas (sono, recovery, BP, comida) gravadas dia após dia, não há o que correlacionar — você só teria a última mensagem. A memória é o produto.

Conceitos-chave

Interconectado

Sono mexe no cortisol que mexe em tudo.

Cortisol amplifica

Puxa pressão, fome e queda de recovery.

Padrão > reação

Semanas, não só a última mensagem.

Rest day

Descansar virou decisão guiada por dado.

5

📝 Ajustar o CLAUDE.md

O CLAUDE.md é o cérebro do coach — perfil, metas, estilo e os padrões que você já aprendeu sobre si. Conforme o uso revela coisas novas (como a cascata do sono do tópico 4), você volta lá e edita. Foi assim que o autor deixou o coach "savage" de propósito: ele não responde a lembrete educado, então pediu que o coach cobrasse energia e check-ins na marra.

▶️ Copie e rode — ensinar um padrão novo ao coach

Objetivo: registrar no cérebro do coach um padrão que você descobriu e o estilo que você quer.

# Abra o cérebro do coach e cole no fim:
#   agent/CLAUDE.md

## Estilo do coach
- Seja direto e "savage": me cobre energia e check-ins.
  Não respondo a lembrete educado.

## Padrões que eu já aprendi
- Jantar depois das 20h derruba meu recovery no dia seguinte.
- Café só 90 min após acordar; nada de cafeína após as 14h.
- <cole-aqui-o-seu-próximo-padrão>
Como verificar: salve, reinicie o agente e mande uma mensagem comum. O tom muda (mais cobrança) e as regras novas aparecem nas respostas. Atenção: seu CLAUDE.md preenchido tem perfil real — nunca versione no git.

🔁 É um loop, não uma config única

O coach revela um padrão → você confirma → você grava no CLAUDE.md → ele passa a usar daí pra frente. Quanto mais você ensina, mais ele soa como você conhecendo o seu corpo.

Conceitos-chave

O cérebro

CLAUDE.md guarda perfil, metas e estilo.

Você edita

Aprendeu algo? Grava lá e o coach usa.

"Savage" opcional

Defina o tom: do gentil ao implacável.

Fora do git

Perfil real preenchido nunca é versionado.

6

⚖️ Influencer × os seus números

A regra de ouro do design: o dono dos dados sempre vence. Qualquer dica externa — por mais famoso que seja quem disse — é reconciliada contra os seus números. Quando a dica genérica bate de frente com o seu exame, o seu exame ganha.

✗ Conselho genérico de influencer

  • "Todo mundo deveria tomar 5g de creatina e cortar sal." — igual pra 10 milhões de pessoas.
  • Não sabe que você é sensível a sal (sobe 10-15% a pressão num almoço salgado).
  • "Café o dia todo te mantém produtivo." — sem ver o seu gene de cafeína nem a sua hidratação.

✓ Reconciliado aos seus dados

  • "A dica existe, mas o seu painel pede atenção ao sal — vamos pelo seu número."
  • "Você metaboliza cafeína rápido: 1 café cedo, corta à tarde — o resto era sede."
  • Cita a fonte da dica E mostra o seu dado lado a lado, para você decidir com o médico.

🧬 Genes são botões, não destino

O DNA do autor sinalizou sensibilidade a gordura saturada, a sal, clearance de toxinas ruim e intolerância a lactose. O coach constrói em cima dessas flags — em vez de repetir conselho genérico. É o oposto de seguir o influencer da semana.

Conceitos-chave

Seu dado vence

A dica externa cede ao seu número.

Genes = botões

Ajustam a dose; não são sentença.

Lado a lado

Dica citada + seu exame, para você decidir.

Anti-hype

Specific beats generic, sempre.

7

🩺 Quando ignorar o coach

O coach é uma ferramenta de registro e raciocínio, não um médico. Toda essa memória e personalização não transformam o coach em autoridade clínica. Há momentos em que a resposta certa é fechar o Telegram e ligar para um profissional.

⚠️ Alerta vermelho — pare e procure um clínico

  • Qualquer sintoma agudo (dor no peito, falta de ar, pressão muito alta). O coach não diagnostica e é instruído a encaminhar.
  • Mudar suplemento ou — jamais — medicação. Ele não toca em medicação; interações são assunto de médico/nutricionista.
  • A IA pode alucinar: afirmar com confiança algo errado ou inventar um número. Trate toda sugestão como pergunta para levar ao médico.
  • Amostras de DNA enviadas pelo correio degradam — o painel da clínica e o do Ancestry podem não bater. Não decida nada com base num único laudo.

✓ Uso saudável do coach

  • Registrar, ver tendência e formular perguntas melhores para o seu médico.
  • Levar o plano a um clínico antes de seguir — como o autor fez a cada passo.
  • Tratar a saída como hipótese a verificar, não ordem a cumprir.

✗ Seguir cegamente

  • Tomar dose nova só porque o coach sugeriu, sem clínico no loop.
  • Ignorar um sintoma porque "o recovery estava verde".
  • Confundir personalização com diagnóstico — são coisas diferentes.

✅ Auto-checagem (opcional): o coach sugeriu uma dose nova de suplemento. Qual é a atitude certa?

Conceitos-chave

Médico no loop

Verifique tudo com um clínico.

Pode alucinar

Confiante e errado é possível.

Não diagnostica

Encaminha; não mexe em medicação.

Hipótese, não ordem

Pergunta para o médico, não prescrição.

📋 Resumo do módulo

Recall semântico — a frase vira vetor, o pgvector acha o passado parecido, e o coach abre com "da última vez que você…".
/advice reconciliado — RAG citado que confronta a dica do expert com os seus números.
/supplements por flag — cada item do stack amarrado a uma risk flag do seu DNA + exames.
Padrões no tempo — memória estruturada vira insight: sono → cortisol → o primeiro rest day voluntário.
Você no comando — edite o CLAUDE.md, seu dado vence o influencer, e ignore o coach quando o médico precisa entrar.

Próximo módulo:

3.4 — Dashboard e acompanhamento: o painel de tendências, o card de Sleep & Recovery e como ler as semanas de uma vez.