001 / relatório de treino · caso real · 12 jun 2026
Uma rodada completa de treino do agente de vendas da 4virtue dentro do Sparring, com verba fechada de US$ 2. Em vez de baterias de simulação, stress probes: momentos críticos congelados de conversas reais (anonimizadas), um turno por vez. Este relatório mostra tudo — o baseline que falhou, as lições e a versão que passou. Valores comerciais aparecem redigidos (R$ •••); o resto é execução crua.
002 / o método
E isso não precisa de conversa inteira nem de um LLM atuando persona: precisa do histórico congelado até o momento crítico e de UMA resposta do agente, avaliada por checks determinísticos. Um probe custa centavos; a simulação completa fica reservada pro que é genuinamente multi-turno.
As peças são open source no harness: cli/probe.js (runner + checks + ledger com teto de gasto) e cli/build-prompt.js (prompt em camadas). Schemas e fluxo no AGENTS.md do repositório.
003 / o banco de cenários
Regra do banco: cenário só entra se veio de conversa real (anonimizada) ou de lição já paga em rodada anterior. Nada de persona inventada "pra parecer difícil" — a rua escreve melhor que a gente.
Não mendigar opinião do site; abrir o negócio da pessoa.
origem: conversas reaisObjeção + interesse na mesma leva — responder ao interesse.
origem: conversa real (anonimizada)Perguntar o receio em alternativas; não despejar tabela.
origem: conversa real (anonimizada)Entender antes de precificar; número só na insistência.
regressão de rodada anteriorResponder direto do conhecimento; nunca "na reunião".
regressão de rodada anteriorValidar a cautela sem desculpas; verificação sem clique.
origem: fala real de leadSaída elegante + porta futura; sem sondar o concorrente.
origem: ruaNota no CRM + silêncio total. Qualquer texto é spam.
antes custava uma sim; agora $0,015Não repetir o template; pedir a pessoa certa.
regressãoPonte pro humano: nota + contexto + sugestão + "minutinho".
regressãoEscala com contexto + silêncio absoluto. Improvisar é falha grave.
regressãoO prazo do lead manda: silêncio.
regra da operação realRetomada leve, sem culpa, facilitando a decisão.
regra da operação realRetomar com valor novo; nunca "e aí, viu?".
regra da operação real004 / baseline
O marco zero honesto custou US$ 0,27. O agente estava mais forte do que parecia — silêncios, escalada e robô impecáveis — mas caiu exatamente onde o vendedor humano já tinha visto a conversa morrer na rua. E um probe passou nos checks escondendo um vício que só apareceu na leitura.
| probe | grupo | resultado | o lance do baseline | custo |
|---|---|---|---|---|
| a1-legal-e-morre | escuta | PASS | pivotou pro negócio ("clientes chegam mais por...?") | $0,051 |
| a2-sem-dinheiro | escuta | PASS | como funciona em 1 frase + isolou a causa | $0,015 |
| a3-depende-da-proposta | escuta | FAIL | despejou a tabela inteira de preço — ver seção 005 | $0,015 |
| a4-preco-cedo | escuta | PASS | sem número na primeira pergunta | $0,015 |
| a5-pergunta-objetiva | escuta | PASS | domínio e manutenção respondidos direto | $0,016 |
| b1-medo-de-golpe | confiança | PASS | "Tá certíssimo de desconfiar" + caminho sem clique | $0,012 |
| b2-ja-fechei-com-outro | confiança | PASS c/ vício | "Já chegou a começar com ele?" — ver seção 006 | $0,014 |
| c1-rejeicao-seca | silêncio | PASS | nota + silêncio deliberado | $0,013 |
| c2-robo-saudacao | silêncio | PASS | curto, humano, pediu a pessoa certa | $0,014 |
| c3-cliente-pronto | ponte | PASS | ponte completa + funil movido + "minutinho" | $0,017 |
| c4-fora-do-conhecimento | ponte | PASS | escalou com contexto + silêncio absoluto | $0,015 |
| d1-tick20min | timing | PASS | silêncio — o prazo do lead não venceu | $0,034 |
| d2-tick12h | timing | PASS | retomada leve + ofereceu marcar pela pessoa | $0,018 |
| d3-tick2h-sumico | timing | PASS | valor novo, sem cobrar opinião | $0,017 |
005 / a correção que importava
O mesmo momento congelado — a lead elogiou, disse que não pode investir, ouviu o reframe de resultado e respondeu "Depende da proposta". À esquerda, o baseline. À direita, a versão treinada.
Bônus do processo: na primeira rodada da versão nova esse probe "falhou" com a resposta CERTA — o check exigia terminar em pergunta, e a mensagem humana de referência também termina em afirmação. O check estava errado, não o agente. O runner ganhou minQuestions e a lição ficou registrada: ginásio também quebra, e o processo precisa pegar isso.
006 / o que os checks não viam
O b2 do baseline passou em todos os checks — mas a leitura pegou o agente caçando brecha no concorrente. Por isso todo probe tem duas camadas: checks determinísticos E critérios pra leitura humana. O padrão flagrado virou check novo e regressão eterna.
007 / a versão nova
A versão treinada não é um remendo — é o prompt reorganizado em 4 camadas que compilam num arquivo só (node cli/build-prompt.js <id>). Cada lição passa a ter casa: ajuste vira "adicionar um caso", não "mexer no prompt inteiro". Modelos grandes vão bem com muito contexto, desde que limpo.
008 / simulação 1
Persona fiel à rua — e ela nunca fecha nesta conversa: o melhor desfecho possível é sair com um compromisso concreto de retomada + atividade registrada no CRM. Sucesso redefinido por cenário: contra esse perfil, vitória não é reunião marcada; é não queimar uma interessada. Na primeira rodada o agente cravou a parcela sem ela ter pedido número, e ela esfriou ("ah tá, vou pensar então") — virou regra de playbook. A rodada final, na íntegra:
Funil movido pelos fatos; nota com a causa real da objeção a cada turno; e a peça-chave: atividade "Retomar com Elisa na segunda" com contexto completo — o compromisso não se perde.
"Me chama segunda" conquistado sem pressão, encerramento limpo em UMA mensagem. O teto possível com esse perfil — igual ao desfecho da conversa real que inspirou a persona.
009 / simulação 2
Jorge, 56, móveis sob medida, leigo, com medo de golpe e sem ver valor em site. A conversa precisa atravessar GOLPE → VALOR → PREÇO, nesta ordem. Na primeira rodada o agente respondeu o pedido de explicação com um folheto de 4 parágrafos (virou a regra das 4 linhas). Rodada final:
010 / diário de lições
O coração do processo: falha → triagem em UMA causa (repertório · ginásio quebrado · limite do modelo) → mexe no lugar certo → vira regressão pra sempre. Remendo de prompt sem triagem é como o time perde o controle do agente.
Baseline, probe a3 (e a rua, na conversa real). Virou movimento de playbook: perguntar o receio em alternativas. Regressão: probe a3.
"Já começou com ele?" passou nos checks, caiu na leitura. Playbook: respeitar sem sondar. Checks endurecidos no b2.
Parcela cravada pra quem se declarou sem dinheiro → "vou pensar". O vendedor humano venceu esse lance SEM número. Playbook + exemplo reescrito.
Jorge pediu "me explica por aqui" e levou 4 parágrafos. Playbook do golpe: ≤ 4 linhas e UMA pergunta — folheto assusta mais que o link.
A regra "sempre obrigado" existe, é clara, e o modelo (reasoning low) ignorou. Nenhum remendo de prompt — registrado como evidência. Se acumular: A/B com reasoning medium (14 probes × 2 setups ≈ US$ 0,60). É assim que upgrade de modelo vira decisão com dado, não achismo.
A liso "deu tchau" sem esperar resposta; o Jorge saiu pra "verificar e voltar". Personas corrigidas: a leva não encerra; a verificação é na hora.
Resposta idêntica ao gabarito humano falhou no "termina em pergunta" — a mensagem real também termina em afirmação. Runner ganhou minQuestions.
011 / a verba
Cada centavo medido por chamada e acumulado num ledger com teto duro de US$ 2 — atingiu, nada mais roda. Treinar barato não é luxo: é o que permite iterar sem medo.
Pra escala: a rodada anterior do projeto, feita só com simulações completas, custou US$ 1,87. Com a pirâmide, duas versões inteiras de prompt foram medidas, corrigidas e re-medidas por US$ 1,33 — e o sweep completo de regressão agora custa ~US$ 0,25 pra sempre.
012 / o ciclo daqui pra frente
Próxima fase: modo sombra. Em produção o agente não envia nada — a resposta dele vira nota privada, e o vendedor humano aprova, edita ou ignora. Como o agente é sem-estado, o histórico real é a memória dele: ele nem percebe. Cada edição humana vira um probe novo no banco, e o gate de ativação é objetivo: repasse sem edição em N conversas seguidas. Risco zero, e a rua treinando o agente de graça.
Tudo que aparece aqui — probe runner, checks, ledger, build de camadas, CLI de simulação, schemas de ICP e ferramenta — está no repositório, MIT, pronto pra você apontar pro SEU negócio.
github.com/MatheusSimonaci/sparring conhecer o Sparring