niadraProcessor() é um processador de entrada e de saída para o agente do Mastra: reescreve o prompt de cada chamada ao modelo sem tocar na lista de mensagens e registra a resposta final. niadraTools(session) devolve o kit do histórico como ferramentas do Mastra. Só em TypeScript.
Instalar
@niadra/sdk no npm.
As cinco primitivas
A sessão vem do request context (
requestContext.set("niadra", convo)), ou fica fixa quando o processador é construído para uma conversa só.
Exemplo mínimo
examples/mastra.ts.
Memória do agente
niadraProcessor({ agentMemory: true }) põe as notas do próprio agente antes do contexto do cliente, e niadraTools(convo, { agentMemory: { write: true } }) acrescenta as duas ferramentas. Veja Memória do agente.
Registros de turno
Com a funcionalidadeturns ligada no espaço (ela vem ligada), niadraProcessor({ turns: true }) grava cada requisição como um registro de turno, com as chamadas de ferramenta e de modelo. Uma execução dentro de um turno em andamento grava nele, e num replay as ferramentas do Mastra respondem do registro. Um turno nunca espera pela Niadra e nunca repete o texto da conversa.
Limites
- A
Memorydo Mastra (threads, working memory) continua do Mastra; a Niadra é a memória do cliente compartilhada com os outros agentes da empresa. - Nada aqui derruba a chamada: sem contexto, o prompt vai como o Mastra o montou.
- Testado contra
@mastra/core1.71 com um modelo falso e a Niadra no emulador.
Próximos passos
Vercel AI SDK
o middleware para
wrapLanguageModel.SDK de TypeScript
a conversa, o
suffix e o markInjected().
