Skip to main content
Modo de teste

Coloque um agente de teste funcional no ar contra obackend hospedado em dez minutos.

Uma chave de teste, um payload de mocks declarado e um único session.send(). Política, auditoria e memória por tenant disparam no mesmo caminho de código que o tráfego em produção usa, então o agente que você publica aqui é o agente que você leva para produção.

Três coisas que o modo de teste garante

Entrada determinística. Governança real. Um agente que alterna para produção.

01

Respostas determinísticas, sem OAuth de provedor

Declare um mock por chamada de ferramenta uma vez na criação da sessão; cada chamada correspondente retorna o valor que você fixou. Objetos estáticos ou arrays com estado: mesmo formato, mesmo nome canônico de ferramenta de uma chamada real. Sem chaves de sandbox para rotacionar, sem fluxos de consentimento de provedor para contornar nos testes.

02

Política, auditoria e memória disparam em cada envio

Os mesmos hooks de governança que rodam no tráfego em produção são avaliados em cada session.send() no modo de teste. Ajuste regras de aprovação, verifique o formato da cadeia de auditoria e veja as linhas de memória surgirem contra entradas determinísticas, antes que um único centavo real se mova.

03

O mesmo código do agente alterna para produção, sem mudanças

Remova o payload de mocks, aponte uma chave de ambiente de produção para o mesmo formato de sessão e o agente roda contra provedores reais. Sem ramificações de ambiente no seu código, sem uma segunda integração para manter.

O formato, antes do quickstart

Uma sessão. Um mock. Uma asserção.

Abreviado para mostrar o formato; o passo a passo completo com paridade entre TS + Python está no quickstart. O mock que você declara na criação é o valor que seu agente recebe de volta quando o LLM chama a ferramenta.

test-agent/session.ts
1import { codespar } from "@codespar/sdk";
2
3// One session, one declared mock, one assertion.
4const session = await codespar.create("user_test", {
5 servers: ["asaas"],
6 mocks: {
7 "asaas/create_payment": { id: "pay_test_42", status: "PENDING" },
8 },
9});
10
11const result = await session.send(
12 "Charge R$ 42 via Pix on Asaas"
13);
14
15// result.tool_calls[0].response.id === "pay_test_42"

Mesmo formato, mesmo nome canônico de ferramenta de uma chamada real. Remova o payload de mocks para publicar.

Depois dos primeiros dez minutos

O formato que se sustenta além do primeiro envio.

Mocks têm formatos

Fixe um objeto estático para testes de uma chamada, um array com estado para testes de sequência (cada chamada esvazia uma entrada, depois o limite entra em ação). Ambos os formatos vivem no mesmo payload de mocks na criação da sessão; ambos passam pelo mesmo validador de nome canônico de ferramenta que os provedores reais usam.

A cadeia de auditoria funciona da mesma forma

Chamadas de ferramenta no modo de teste emitem os mesmos eventos tool_call.succeeded e tool_call.failed que o tráfego em produção. A página de auditoria filtra o escopo por ambiente, então você revisa os eventos de uma sessão de teste sem rolar pelo ruído da produção.

Alternar o projeto é um único toggle

Um projeto carrega um campo de ambiente imutável. Crie um projeto de teste para o passo a passo, gere uma chave csk_test_* nele no cadastro, e o mesmo código do agente roda sem alterações quando você aponta uma chave csk_live_* para um projeto de ambiente de produção.

Dez minutos.Um agente funcional.

Obtenha uma chave de teste, percorra o quickstart e veja a cadeia de auditoria pousar contra os mocks que você declarou.

Modo de teste: um agente que move dinheiro em dez minutos | CodeSpar