Skip to content

Run steps

The history of each tool call: arguments, result, and tokens.

Updated on Aug 10, 2026

Each run keeps the full trail: which tool was called, with which arguments, what came back, and how many tokens each step cost. That is what lets you debug an agent that took a strange path — and audit what it did in production.

Step history: each tool call, with arguments, result, and tokens.

Bearer

List of steps, in orderNo native tools?
Models without function calling support are still usable: agent-kit brings an XML tag protocol that runs in the same loop, without the tools field.Tudo — ideal para UIs que mostram o progresso passo a passo.
messagesFalas dos agentes, ferramentas, fronteiras de nó e iterações de loop.
minimalSó o essencial: texto da resposta, stopped, error e done.

Fluxo do workflow

EventoQuandoCampos úteis
threadPrimeiro evento de todo run.thread_id — guarde para continuar e parar.
workflow_node_startUm nó começou.node_id, node_type, node_name
workflow_node_endUm nó terminou.successfalse traz error com a causa.
workflow_loopIteração de um while.iteration, path (loop/exit)
workflow_stoppedExecução parada a seu pedido.node_id do próximo nó que rodaria
workflow_errorUm nó falhou e o run vai encerrar.error, node_id
flow_stateEstado de captura de fluxo ao final do turno.pinned_node, pinned_agent
doneFim do run.usage — custo, tokens e tempo consolidados

Conversa

EventoQuandoCampos úteis
agent_messageUm agente do workflow falou (mensagem inteira).data.content, data.sender.name, data.context.node_id
chat_chunkFragmento de texto em streaming (caminho simples).data.content

Ferramentas

EventoQuandoCampos úteis
tool_useO agente decidiu chamar uma ferramenta.tool_name, tool_input
tool_executingA ferramenta está rodando.data.tool_name, data.status
tool_resultResultado devolvido ao agente.tool_name, output

Multi-agente

EventoQuandoCampos úteis
debate_start / debate_round / debate_endFases de um nó de debate.data.round, participantes
vote_castUm votante votou.data.vote, data.voter_index, sender.name
vote_resultResultado da votação.data.votes, data.winner, data.has_majority
sequential_start / sequential_endPipeline sequencial de agentes.data.agent_index
routing_decisionUm roteador escolheu o caminho.data.route

Há ainda eventos de atividade fina (search_started, fetch_progress, llm_thinking, processing_final_response…) — todos seguem o mesmo envelope {type, data}. Trate tipos desconhecidos como informativos: novos eventos podem surgir sem aviso.

Um run real, anotado

tribunal do júri — 3 jurados, votação secretajson
data: {"type":"thread","thread_id":"2586cf3b-..."}                    ← guarde
data: {"type":"workflow_node_start","data":{"node_id":"juiz-intro","node_type":"agent"}}
data: {"type":"agent_message","data":{"sender":{"name":"Juiz"},"content":"Apresento o caso..."}}
data: {"type":"workflow_loop","data":{"iteration":1,"path":"loop"}}    ← rodada 1
data: {"type":"workflow_node_start","data":{"node_id":"debate-jur","node_type":"debate"}}
data: {"type":"agent_message","data":{"sender":{"name":"Jurado Conservador"},"content":"..."}}
data: {"type":"vote_cast","data":{"vote":"culpado","voter_index":0}}
data: {"type":"vote_result","data":{"votes":{"culpado":2,"inocente":1},"winner":"culpado"}}
data: {"type":"workflow_loop","data":{"iteration":2,"path":"loop"}}    ← rodada 2
...
data: {"type":"workflow_node_start","data":{"node_id":"veredito","node_type":"agent"}}
data: {"type":"done","usage":{"cost":0.0075,"input_tokens":18240,"output_tokens":3105}}
Was this page helpful?