MÓDULO 3.2

🧩 Fontes, temas, princípios e métodos

A wiki tem quatro tipos de página e três arquivos de controle. Aqui você vê o que vai em cada um, abre o hot real do mentor do Nei, aprende a julgar se a wiki soa como a pessoa ou como IA genérica e acompanha o caso real da legenda picada.

6
Tópicos
50
Minutos
Core
Nível
Prático
Tipo
0%0 de 6
1

🗂️ Os quatro tipos de página

Cada página responde a uma pergunta diferente sobre o especialista. Fonte: o que esta live ou guia diz? Tema: o que ele sabe sobre esse assunto? Princípio: o que ele defende de novo e de novo? Método: como ele faz (explica, depura, constrói, revisa)? Misturar as perguntas é o jeito mais rápido de ter uma wiki que fala muito e ensina pouco.

fontes/ · 22 uma por item do manifesto "o que esta fonte diz?" temas/ · 18o que ele sabe sobre um assunto + [[fontes]] principios/ · 12o que ele defende repetidamente + ≥1 [[fonte]] metodos/ · 21como ele faz: passos + exemplos + [[fontes]]

Como ler: fonte é a única página que nasce direto do raw; temas, princípios e métodos nascem da soma das fontes. Os números são da wiki do Nei hoje (depois da ingestão). O princípio está em destaque porque é o único tipo que o validador exige ligado a uma fonte: é a matéria-prima das regras da trilha 4.

PastaUma página por…Conteúdo mínimoExemplo no piloto
fontes/item do manifestoresumo, ideias centrais, Arquivo: raw/..., ligaçõesguia-execucao-longa-…-b4357
temas/assunto que a pessoa dominao que ela sabe + [[fontes]]custo-de-tokens
principios/coisa que ela defende sempreenunciado + trechos curtos + ≥1 [[fonte]]verificar-antes-de-afirmar
metodos/jeito de fazerpassos + exemplos + [[fontes]]depurar-ao-vivo

Princípio real: menor-custo-que-resolve

Enunciado: "Custo entra na conta antes de construir: assinatura em vez de API, menor modelo e menor esforço que cobrem o risco, modelo grátis para volume, worker determinístico no lugar de LLM. Exceção: risco irreversível não tem opção barata."

Repare na exceção: princípio bom diz também quando não vale.

Método real: depurar-ao-vivo (passos)

  1. Deixar o erro acontecer
  2. Copiar a mensagem de erro com o contexto de antes
  3. Levar ao chat e pedir a causa em vez de tentar no escuro
  4. Formular a hipótese e aplicar o contorno
  5. Conferir o resultado real, não o OK da ferramenta
  6. Documentar a dica no material do curso

Fonte

O que este item diz

Tema

O que ele sabe

Princípio

O que ele defende

Método

Como ele faz

2

🔁 Links nos dois sentidos

Se a fonte da live de execução longa liga [[criterio-de-pronto-explicito]], o princípio também deve listar essa fonte. Assim o mentor anda nos dois sentidos: da fonte para a ideia ("o que essa live ensina?") e da ideia para as provas ("onde ele disse isso?"). É o segundo caminho que sustenta uma citação.

🆕 O que é um link [[...]] e um "link de volta"?

[[nome-da-pagina]] é o jeito da wiki dizer "veja também": o nome entre colchetes é o nome do arquivo sem .md, em qualquer pasta da wiki. Link de volta é o mesmo par na direção contrária: se A aponta para B, B aponta para A. Por isso nomes de página não podem se repetir entre pastas.

fonte: guia-execucao-longa princípio: criterio-de-pronto-explicito tema: subagentes fonte: video-transcript ✓ ida e volta a fonte não aponta de volta ✗ mão única

Como ler: em cima, o par saudável: a fonte aponta o princípio e o princípio aponta a fonte. Embaixo, um caso real do piloto: o tema subagentes cita a fonte video-transcript, mas a página dessa fonte não menciona o tema. O mentor que parte da fonte nunca chega lá.

🧪 Copy-run — ache as ligações de mão única entre fontes e conceitos

Objetivo: até o kit 1.2, o validar_links.py não checava os dois sentidos. Este script, só com a biblioteca padrão do Python, lista os pares fonte↔conceito em que falta o link de volta. Rode na pasta do mentor:

cd ~/projetos/mentor-<slug>
python3 - <<'EOF'
import re
from pathlib import Path
LINK = re.compile(r"\[\[([^\]|#]+)(?:[#|][^\]]*)?\]\]")
pags = {p.stem: p for p in Path("wiki").rglob("*.md") if p.stem not in ("index", "hot", "log")}
sai = {s: {x.strip() for x in LINK.findall(p.read_text(encoding="utf-8"))} for s, p in pags.items()}
fonte = {s for s, p in pags.items() if p.parent.name == "fontes"}
n = 0
for a in sorted(sai):
    for b in sorted(sai[a]):
        if b in sai and a not in sai[b] and (a in fonte) != (b in fonte):
            print(f"sem volta: {a} -> {b}"); n += 1
print(f"{n} ligações fonte<->conceito de mão única")
EOF

Saída real no piloto (com o validar_links.py do kit 1.2 em exit 0):

sem volta: guia-agente-claude-codex-migrar-do-claude-pro-codex-ou-ac831 -> guia-de-projeto-landing
sem volta: subagentes -> video-live-100-videosdia-com-ia-agentes-metodos-e-escala-rea
sem volta: subagentes -> video-transcript
3 ligações fonte<->conceito de mão única

Como verificar: a última linha dá o total. Zero é o ideal; poucos casos se corrigem pedindo ao agente "acrescente o link de volta nestes pares" e rodando o script de novo até dar 0. Depois, validar_links.py tem que continuar em exit 0.

✅ No kit 1.3, o validador reprova

O achado virou regra: desde o kit 1.3, o validar_links.py exige ida e volta entre fonte e conceito (tema, princípio, método). Cada ligação de mão única vira erro e o exit deixa de ser 0, com mensagens como:

mão única: subagentes → fontes/video-transcript, mas a fonte não liga de volta

Foi ele que apontou as 3 ligações do mentor do Nei, e as 3 foram fechadas. O script acima continua útil se o seu mentor foi gerado antes do 1.3 e você ainda não rodou novo-mentor.py --atualizar (módulo 6.2).

💡 Dica prática

Repare que 2 dos 3 casos do piloto passam pelo tema subagentes, tocado depois pela ingestão de um guia novo. Ingestão é onde a volta costuma faltar: a página nova aponta para as velhas, e ninguém reabre as velhas. Rode o script depois de todo /<slug>-ingere.

3

🧭 index, hot e log: os três arquivos de controle

Além das páginas de conteúdo, a wiki tem três arquivos que não ensinam nada sozinhos, mas organizam o resto. O validador reprova se qualquer um faltar.

🔥

wiki/hot.md

De 10 a 20 conceitos mais citados, uma linha cada, com o link e o nº de fontes. É a porta de entrada: o mentor lê primeiro, porque cabe inteiro no contexto. No piloto: 20 itens.

🗺️

wiki/index.md

O mapa completo: toda página da wiki, por pasta, com uma linha de descrição e, para temas e princípios, quantas fontes os sustentam. No piloto: 73 entradas.

📜

wiki/log.md

O histórico: o que entrou, quando e o que mudou. Só se acrescenta linha, nunca se apaga. É ele que diz se uma regra foi reforçada por fonte nova.

pergunta hot.md princípio fonte raw/ (conferir) 20 linhasenunciado + trechosresumo + ideiassó para citar

Como ler: da esquerda para a direita, cada passo é mais longo e mais caro. O mentor só avança quando precisa: a maioria das perguntas se resolve no hot e no princípio; o raw é aberto para conferir uma citação, não para estudar.

O wiki/log.md real do piloto (formato)

| data       | fonte                                  | páginas tocadas                | regras promovidas            |
|------------|----------------------------------------|--------------------------------|------------------------------|
| 2026-10-05 | acervo inicial (21 itens do MANIFESTO: | 21 fontes, 18 temas,           | — (fase 3 ainda não rodou)   |
|            | 15 vídeos, 6 guias)                    | 12 princípios, 19 métodos,     |                              |
|            |                                        | index, hot                     |                              |
| 2026-10-05 | /nei-ingere guia agente-claude-codex   | fonte nova; 2 métodos novos;   | R1, R2, R6 reforçadas;       |
|            |                                        | temas, princípios, index, hot  | R9 e R10 criadas já ativas   |

Duas linhas contam a história inteira da wiki: a compilação inicial e a primeira ingestão (trilha 6). O texto das colunas foi resumido e quebrado aqui para caber na tela.

hot

Porta de entrada

index

Mapa de tudo

log

Só acrescentar

Raw por último

Para conferir

4

🔥 O hot do Nei

O número entre parênteses no hot é quantas páginas de fonte ligam aquele conceito. Não é opinião da IA sobre o que importa: é contagem. Na fase 2, os quatro princípios do topo foram verificar antes de afirmar (17 fontes), menor custo que resolve (16), medir antes de acreditar (14) e critério de pronto explícito (10). Depois da ingestão de um guia novo, três deles subiram um ponto.

verificar antes de afirmarmenor custo que resolve medir antes de acreditarcritério de pronto explícito 1718 1617 1414 1011 fase 2 (73 páginas) depois da ingestão (76 páginas)

Como ler: cada barra roxa é o nº de fontes na fase 2; a fina, em ciano, é o número de hoje. A ordem não mudou com a fonte nova, e isso é bom sinal: o topo do hot reflete o que ele repete de verdade, não o último material lido.

🧪 Copy-run — confira o número do hot você mesmo

Objetivo: não confiar no número que o agente escreveu no hot; recontar as fontes que ligam cada princípio.

cd ~/projetos/mentor-<slug>
for p in <principio-1> <principio-2> <principio-3>; do
  echo "$p $(grep -l "\[\[$p\]\]" wiki/fontes/*.md | wc -l)"
done

Saída real no piloto (com os quatro princípios do topo):

verificar-antes-de-afirmar 18
menor-custo-que-resolve 17
medir-antes-de-acreditar 14
criterio-de-pronto-explicito 11

Como verificar: compare com cat wiki/hot.md. No piloto bate linha por linha: (18), (17), (14), (11). Se não bater no seu, o hot está desatualizado; peça ao agente para refazer só o hot a partir da contagem.

📋 As primeiras linhas do wiki/hot.md real

  • 1.[[verificar-antes-de-afirmar]] (18): o OK da ferramenta não prova nada; confere o resultado real antes de dar como feito.
  • 2.[[menor-custo-que-resolve]] (17): custo entra na conta antes de construir: assinatura, menor modelo/esforço, worker no lugar de LLM.
  • 3.[[medir-antes-de-acreditar]] (14): decisão vem do número (antes/depois, com/sem), não do hype.
  • 4.[[criterio-de-pronto-explicito]] (11): pronto = comando com saída esperada; todo loop com critério de sucesso, aborto e limite.

O hot segue com princípios (7), métodos (4) e temas (9), num total de 20 linhas.

5

🧑‍⚖️ É a pessoa ou é IA genérica?

"Verificar antes de afirmar" poderia estar em qualquer manual de boas práticas. O que torna a página do Nei é o resto: os trechos literais com arquivo de origem, o jeito particular ("o OK da ferramenta não prova nada", "refresh no GitHub") e a exceção que ele faz. O validador não julga isso; você julga. No piloto, a leitura do hot deu nota 8/10 de "reconheço a pessoa".

✓ Sinais de que é a pessoa

  • ✓Trecho literal que você acha no raw com grep
  • ✓Exemplo concreto do mundo dela (ferramenta, número, caso)
  • ✓Exceção ou limite que só quem pratica conhece
  • ✓Várias fontes diferentes sustentando a mesma ideia

✗ Sinais de IA genérica

  • ✗Frase que serviria para qualquer especialista do domínio
  • ✗"Trecho" que não aparece em lugar nenhum do raw
  • ✗Princípio sustentado por uma fonte só, com frase vaga
  • ✗Listas de "boas práticas" sem exemplo de como ela faz

🧪 Copy-run — a auditoria em duas partes

Objetivo: o agente aponta candidatos a genérico; você confere os trechos com um comando. Parte 1, cole no Claude Code na pasta do mentor:

Leia wiki/hot.md e as páginas de wiki/principios/.
Para cada princípio, responda numa tabela:
1. nº de fontes que o ligam (conte os [[links]] em wiki/fontes/, não copie do hot);
2. um trecho literal curto que só <nome do especialista> diria, com o caminho raw/... ;
3. GENÉRICO ou DELE: GENÉRICO se o enunciado caberia em qualquer manual do domínio
   sem perder nada.
No fim, liste 3 páginas mais "dele" e 3 mais genéricas.
Não invente trechos: se não achar, escreva "sem trecho". Não altere nenhum arquivo.

Parte 2, no terminal: pegue três trechos da tabela e procure cada um no raw.

cd ~/projetos/mentor-<slug>
grep -rnF "<trecho copiado da tabela>" raw/ | cut -d: -f1,2; echo "exit=$?"
git status raw/

Saída real no piloto (trecho "Arquivo existir não é prova", do princípio verificar-antes-de-afirmar):

raw/guia/agente-claude-codex-migrar-do-claude-pro-codex-ou--ac8311.md:21
exit=0

Como verificar: cada trecho aparece com arquivo e linha; git status raw/ não lista nada (raw intocado). Trecho de guia que não aparece é inventado. Trecho de vídeo que não aparece pode ser o caso do próximo tópico: a frase existe, mas está quebrada entre duas linhas da legenda.

Checagem rápida: uma página de princípio diz "documentação é importante", liga uma única fonte e traz um trecho que o grep não acha no raw (que é um guia). O que fazer?

6

✂️ Caso real 3: a legenda picada

Na leitura da wiki, o Nei achou trechos de vídeo cortados no meio da frase, como "brilhante. Cuidado para vocês não". A causa estava no raw: a legenda automática quebra a fala em linhas de 4 a 8 palavras, cada uma com sua marca de tempo [hh:mm:ss]. Uma citação que cruza duas linhas fica com a marca no meio do texto e não é encontrada por busca literal.

✗ Antes: o raw real do piloto

[00:25:40] né? eh, estrelas. Isso é muito legal
[00:25:43] porque mostra o movimento, mas é mais um
[00:25:46] movimento de de atenção. Objeto
[00:25:50] brilhante. Cuidado para vocês não
[00:25:51] perderem tempo com isso. O que que eu
[00:25:53] fiz? Eu baixei, instalei ele na minha
[00:25:56] máquina e eu estou rodando.

"Objeto brilhante" está dividido entre duas linhas, com [00:25:50] no meio.

✓ Depois: o formato do kit 1.2

[00:25:40] né? eh, estrelas. Isso é muito legal porque mostra o movimento, mas é mais um movimento de de atenção. Objeto brilhante. Cuidado para vocês não perderem tempo com isso. O que que eu fiz? Eu baixei, instalei ele na minha máquina e eu estou rodando. …

As linhas viram um parágrafo, com uma marca de tempo a cada ~30 s. A frase fica inteira e pode ser citada com sentido.

[00:25:40][00:25:43][00:25:46][00:25:50][00:25:51][00:25:53][00:25:56] né? eh, estrelas…porque mostra o……atenção. Objetobrilhante. Cuidado…perderem tempo…fiz? Eu baixei…máquina e eu… junta ~30 s [00:25:40] né? eh, estrelas. Isso é muito legal porque mostra o movimento… Objeto brilhante. Cuidado para vocês não perderem tempo com isso. O que que eu fiz?… e no validador: normalizar() tira [hh:mm:ss], caixa, acento e pontuação antes de comparar → a citação casa mesmo cruzando linhas

Como ler: em vermelho, as marcas que cortavam a fala; o funil junta as linhas em blocos de ~30 s e sobra uma marca por parágrafo. A faixa de baixo é a segunda metade da correção: mesmo num raw antigo, o validador ignora as marcas de tempo ao procurar uma citação.

16:15

Detectado na fase 2: trechos picados na wiki. Gravidade média no diário; ideia de correção anotada na hora: juntar linhas em parágrafos e fazer a normalização ignorar [hh:mm:ss].

16:25

Contornado na fase 3: a sessão de regras percebeu sozinha o problema das legendas cruzando linha e usou citações curtas, de uma linha. Validador OK de primeira.

1.2

Corrigido no kit 1.2: o coletor de vídeo agrupa a legenda em parágrafos de cerca de 30 s, e o validador de citações ignora as marcas de tempo. O raw do piloto ficou como estava, porque raw não se edita.

🧪 Copy-run — veja a busca literal falhar numa frase que existe

Objetivo: sentir o problema na mão. No seu raw de vídeo, escolha duas palavras seguidas que estejam em linhas diferentes e procure as duas juntas.

cd ~/projetos/mentor-<slug>
grep -rnF "<fim de uma linha> <começo da próxima>" raw/videos/; echo "exit=$?"
grep -rnF "<fim de uma linha>" raw/videos/ | head -3

Saída real no piloto (com "Objeto brilhante"):

$ grep -rnF "Objeto brilhante" raw/videos/; echo "exit=$?"
exit=1

Como verificar: a frase falada não aparece (exit=1), mas cada metade aparece sozinha, em linhas vizinhas. Se o seu raw foi coletado com o kit 1.2 ou mais novo, a busca acha o parágrafo inteiro: sinal de que a correção chegou.

⚠️ Atenção

A tentação é "consertar" o raw antigo juntando as linhas na mão. Não faça: o stats.py acusa o sha256 diferente e você perde a prova do que foi coletado. O caminho certo é o do piloto: corrigir a ferramenta (coletor e validador) e, se quiser o formato novo, coletar de novo aquele vídeo.

📌 Resumo do Módulo

✓
Quatro perguntas, quatro pastas - o que a fonte diz, o que ele sabe, o que ele defende, como ele faz.
✓
Links nos dois sentidos - o script acha os de mão única (3 no piloto, todos fechados); desde o kit 1.3, o validar_links reprova.
✓
hot, index, log - porta de entrada, mapa e histórico que só cresce.
✓
O hot é contagem - 17/16/14/10 na fase 2, 18/17/14/11 depois da ingestão; reconte com grep.
✓
Julgamento humano - 3 páginas mais dele, 3 mais genéricas, trechos conferidos no raw; nota 8 no piloto.
✓
Legenda picada - corrigida na ferramenta (parágrafos de ~30 s + validador sem marcas), nunca no raw.

Próximo Módulo:

4.1 - Conduta, não frase de efeito: como os princípios da wiki viram as regras do mentor.