Pular para o conteúdo
OkMigo

← voltar para o guia de integração

O agente de domínio do seu serviço

Sem agente, o amigo do OkMigo escolhe sozinho entre as operações da sua conversa e monta os parâmetros de cada uma. Com o agente, ele passa o pedido em linguagem natural para quem entende do assunto: um agente que conhece o seu vocabulário, as suas ambiguidades e qual ferramenta resolve o quê. O seu servidor MCP continua sendo a fronteira de dado e de ação. O agente fica em cima do MCP, nunca no lugar dele.

Declare o agente no manifesto

Um bloco a mais no mesmo Aplicativo. Sem ele, nada muda.

from okmigo_cartao import AgenteDeDominio, Exemplo, Orcamento

APLICATIVO = Aplicativo(
    ...,
    conversa=("buscar_pedidos", "status_do_pedido", "cancelar_pedido"),
    agente=AgenteDeDominio(
        competencias=("status de um pedido", "pedidos atrasados"),
        ferramentas=("buscar_pedidos", "status_do_pedido"),
        instrucoes="Pedido citado pelo nome do cliente e ambíguo vira pergunta "
                   "com as opções. Prazo é sempre em dias úteis.",
        exemplos=(Exemplo("cadê o pedido da Ana?", "respondido"),
                  Exemplo("cancela o pedido 123", "acao_proposta")),
        orcamento=Orcamento(chamadas=3, tokens=12_000, segundos=20),
    ),
)
  1. competenciasSão o que o amigo lê para decidir se pergunta ao seu serviço: frases curtas, até seis.
  2. ferramentasSão só de leitura (anotadas como readOnlyHint no seu servidor MCP) e todas na conversa. O registro recusa ferramenta que escreve.
  3. instrucoesVocabulário e uso das ferramentas, até 4.000 caracteres. ⛔ Não é lugar de regra de negócio: a regra mora na operação MCP, onde é testável.
  4. exemplosUm pedido e a forma de resposta esperada. Viram a bateria de avaliação que roda antes de o agente ser ligado para as pessoas.
  5. orcamentoO teto de um pedido: até 4 chamadas de ferramenta, 20 mil tokens e 30 segundos.

O agente é executado pelo OkMigo (modo declarado): você não hospeda modelo nenhum, e a mensagem da pessoa não sai do OkMigo. O seu serviço recebe só os parâmetros das ferramentas, como sempre. Não há modo em que o agente rode no seu servidor: o texto da pessoa sairia do OkMigo, e essa é uma fronteira que o OkMigo não abre.

As quatro respostas

O agente termina sempre numa destas formas. Fora delas, não há resposta.

formaquandoo que o OkMigo faz
respondidohá dado para responderO amigo repassa com o tom dele, e todo número que ele escrever tem de estar na resposta. Se não estiver, a pessoa lê o texto do seu serviço, sem retoque. A data-base é obrigatória.
precisa_esclarecerambiguidade: dois papéis, dois clientes com o mesmo nomeA pergunta vai à pessoa como veio, e o OkMigo guarda o estado. Quando ela escolhe uma das opções, o próprio OkMigo pergunta de novo ao seu agente, sem o modelo remontar parâmetro nenhum.
acao_propostaa pessoa quer que algo aconteçaNada é executado. A proposta vira uma pendência de confirmação, e a escrita só acontece num turno seguinte, com o «sim» da pessoa.
indisponivelsem dado, fonte fora do ar, fora do domínioA pessoa lê a frase segura. O amigo não responde o assunto de cabeça.

Para validar do seu lado, validar_resposta() do okmigo-cartao aplica as mesmas regras que o OkMigo aplica.

O que o OkMigo garante, e você não precisa fazer

Checklist antes de registrar