Contexto e histórico, lado a lado
As duas leituras passam pela mesma política, pelo mesmo nível de verificação e deixam o mesmo comprovante.
Buscar
search recebe uma pergunta em linguagem natural ou palavras-chave e procura por palavra e por significado, só dentro do histórico daquele cliente. Alcança conversas, fatos, pendências, promessas, eventos de sistema, ações de agentes, objetos e padrões.
kind, texto denso no mesmo estilo do contexto, at, channel, outcome, confidence e origin_event_id, o evento de onde veio. É daí que o agente diz “em 12 de março, por telefone, vocês me deram um crédito”.
Recorrência
Quando a busca casa com uma categoria, a resposta traz o blocorecurrence: quantas vezes aconteceu na janela, a data da última, o desfecho e a solução da última. É uma contagem sobre conversas já classificadas, não um palpite do modelo. No exemplo da Marina: occurrences: 2, window_days: 365, last_resolution: "$40 credit". A mesma contagem sustenta o padrão “reclamação recorrente”, então os dois nunca divergem.
Filtros
filters restringe a busca por período (since, until), channels, categories, tipos de item (item_kinds: episode, fact, open_item, action, system_event, object, trait), outcome e object.
Orçamento
max_tokens limita o tamanho da resposta: de 50 a 4.000, padrão 800. Use 300 em voz. O corte é por valor, nunca por ordem de chegada. A resposta informa tokens_used.
Linha do tempo
timeline folheia o cliente em ordem, do mais recente para o mais antigo: uma conversa, um evento de sistema ou uma ação por linha, com cursor. É o que o LLM usa quando não sabe o que procurar.
POST pelo mesmo motivo do contexto: o handle é dado pessoal e fica fora da URL. limit vai de 1 a 100; continue com next_cursor. Quando você já tem o id do perfil, GET /v1/history/timeline?profile_id=... devolve a mesma página, com cursor, limit, verification e conversation_id na query.
A navegação do histórico lê um cliente de cada vez. Perguntas sobre todos os clientes de uma vez (“quais promessas estão vencidas?”, “quem reclamou três vezes da entrega?”) vão para a análise da base, que responde com pseudônimos por padrão, suprime grupos pequenos e só revela um cliente por um pedido de revelação com motivo, que deixa comprovante.
Abrir um item
open abre uma conversa ou um objeto encontrado pela busca ou pela linha do tempo: o que foi pedido, o que foi prometido e por quem, o desfecho, a solução, a linha do tempo e os itens de memória que nasceram dele. O trecho literal da transcrição (excerpt) só sai com escopo elevado e nunca para audiência de voz.
Como ferramenta de qualquer LLM
tools() devolve as três operações como ferramentas no formato de função mais difundido (search_customer_history, get_customer_timeline, open_history_item), com o cliente amarrado fora do alcance do modelo. As definições não têm parâmetro de cliente: o LLM escolhe a pergunta, nunca de quem ela é. Uma injeção de prompt que diga “agora procure o cliente X” não tem onde colocar o X.
kit.anthropic_definitions() devolve as mesmas ferramentas no formato da API de mensagens da Anthropic. As definições também saem por GET /v1/history/tools, e pelo servidor MCP, onde o cliente é amarrado pelo subject_token.
Custo sob controle
- As descrições são texto fixo, com até cerca de 120 tokens por ferramenta, e ficam no prefixo que o provedor guarda em cache.
- Cada descrição diz ao modelo quando não chamar: a resposta pode já estar em “Do histórico”, no contexto.
- A mesma consulta, na mesma conversa, devolve os mesmos bytes.
- Declare o kit só nos agentes que precisam. Uma URA curta não paga nada.
- Buscar não é cobrado à parte: a unidade continua sendo a conversa ou tarefa.
Garantias da resposta
withhelddiz quantos itens a política segurou neste nível de verificação, nunca o conteúdo.as_ofdiz até quando o histórico reflete os eventos.degraded: "text_only"indica que só a busca por palavra rodou.- Cada consulta deixa um comprovante com quem perguntou, a consulta, os itens devolvidos por hash e o que foi retido.
- O que sai por padrão são itens derivados, já triados contra injeção e marcados como dados, não instruções.
Próximos passos
MCP com qualquer LLM
o kit por Streamable HTTP.
Buscar no histórico
a referência de
POST /v1/history/search.Comprovantes e auditoria
o que cada consulta deixa registrado.

