← VoltarElefante

Tools de sessão de agente

Referência para quem desenvolve ou configura um Runner. As tools de sessão fazem parte do servidor MCP do Elefante, mas só respondem a um Elefante Runner conectado com a identidade de uma conexão do espaço. Um assistente conectado como você mesmo (Claude, ChatGPT) recebe "Only runners can use session tools".

Eventos

O Runner fica sabendo do trabalho por eventos, um por acontecimento, numerados em ordem crescente. Cada evento traz o tipo, a sessão, a data, os dados e um texto de orientação para o agente (prompt).

EventoQuando chegaDados principais
session.createdA tarefa foi delegada ao papel atendido pelo RunnerTarefa, entradas da tarefa, papel com instruções, prompt de sistema, repositório do projeto, número de sessões anteriores e quem delegou
session.messageUma pessoa respondeu a uma pergunta ou mandou uma instruçãoTexto ou opção escolhida, a pergunta respondida e quem escreveu
session.approvalA pessoa decidiu um pedido de aprovaçãoPedido, aprovado ou não, comentário e quem decidiu
session.cancelA sessão foi encerrada por alguémMotivo: stopped (parada), undelegated (delegação removida) ou redelegated (outro agente) e quem fez

Os eventos chegam de dois jeitos: pelo canal de eventos em /mcp/events, ou pela tool events_wait, para agentes sem canal próprio. Um Runner desconectado recebe os eventos pendentes quando volta.

Tools

ToolPermissãoO que faz
events_waitleituraEspera eventos com número maior que after_id. Volta na hora se houver eventos; senão espera até timeout segundos (padrão 25, máximo 50). Devolve até 100 eventos
session_listleituraLista as sessões do Runner, as abertas por padrão (open_only), da mais nova para a mais antiga, até 100. Use ao reconectar para retomar o trabalho
session_getleituraEstado da sessão, a tarefa (com as entradas), o papel, o prompt de sistema, o repositório e as últimas 200 atividades, da mais antiga para a mais nova. Releia a cada evento em vez de guardar estado
session_historyleituraA conversa das sessões anteriores da mesma tarefa: perguntas, respostas, aprovações, resultados. Use quando session.created informar sessões anteriores, para não perguntar de novo
session_activityalteraçãoPublica na conversa: thought (resumo do raciocínio) e action (o que fez) aparecem recolhidos; response aparece como mensagem
session_askalteraçãoFaz uma pergunta, com options opcionais, e deixa a sessão em Aguardando resposta. Vai para o responsável pela tarefa, ou para to_user_id
session_request_approvalalteraçãoPede aprovação com um resumo (summary) e deixa a sessão em Aguardando aprovação. Vai para o responsável pela tarefa, ou para approver_id
session_artifactalteraçãoEntrega um resultado: text ou markdown (o conteúdo), link ou image (a URL), com title opcional. Use antes de encerrar
session_usagealteraçãoInforma o modelo e os tokens medidos pelo Runner, o tempo de resposta em milissegundos e o custo em dólar. Os totais aparecem no cabeçalho da aba Agente. Aceita sessão já encerrada
session_completealteraçãoEncerra como Concluída, com um summary opcional. Deixe vazio quando a resposta ou o resultado já dizem tudo
session_failalteraçãoEncerra como Falhou, com o motivo em error

O primeiro session_activity ou session_artifact tira a sessão de Aguardando o agente e a leva para Trabalhando. A pergunta e o pedido de aprovação também avisam a pessoa em Atualizações e por notificação no celular, em nome do papel.

Regras

  • Cada Runner só enxerga as próprias sessões.
  • Só sessões abertas aceitam atividade, pergunta, aprovação, resultado e encerramento. session_get, session_history e session_usage funcionam também em sessões encerradas.
  • O destinatário de uma pergunta ou aprovação precisa ser o responsável pela tarefa, quem a criou ou um seguidor. Sem destinatário, vale o responsável (ou, sem ele, quem criou).
  • Delegar de novo a mesma tarefa encerra a sessão aberta com o motivo redelegated e abre outra.

Se deu errado

Mensagem ou sintomaCausaO que fazer
Only runners can use session toolsO token não é de uma conexão de Runner ativaConecte o Elefante Runner escolhendo a conexão do espaço na tela de autorização
Session not foundA sessão não existe ou é de outro RunnerConfira o session_id com session_list
Session is closedA sessão já foi concluída, falhou ou foi paradaPare o trabalho. Uma nova sessão chega por session.created
Recipient must be the task owner, creator or a followerto_user_id ou approver_id não é responsável, criador nem seguidor da tarefaDeixe o campo vazio para falar com o responsável, ou escolha outra pessoa

Onde acessar

Endereços a partir do domínio da sua conta.

OndeEndereçoAcesso direto
Servidor MCPhttps://app.elefante.com/mcpSim
Canal de eventos do Runnerhttps://app.elefante.com/mcp/eventsSim
Aba Agente da tarefa/task/{id}#agentSim