| Ferramentas executáveis e simultâneas | Integradas, com ordenação determinística dos resultados e timeouts por ferramenta |
| Validação em runtime | Esquemas de entrada, saída, eventos e resultado final do agente com parse, safeParse ou funções validadoras |
| Aprovação humana | Por ferramenta ou chamada, com aprovação pelo ID exato da chamada e rejeição ao retomar |
| Ferramentas com intervenção humana | Pausa com onToolCalled e transformação com onResponseReceived |
| Ferramentas manuais | execute: false e toolOutputs fornecidos externamente |
| Ferramentas que informam progresso | Ferramentas geradoras assíncronas e eventos tool.preliminary_result |
| Recuperação de erros de ferramentas | Interrompe a execução ou retorna um erro estruturado da ferramenta ao modelo |
| Streaming | Deltas do modelo e consumidores reproduzíveis de texto, raciocínio, itens, ferramentas e eventos completos |
| Controles de parada | Etapas, duração, tokens, custo, chamadas de ferramentas, motivo de conclusão e predicados personalizados |
| Turnos dinâmicos | Modelo, instruções, valores de amostragem, conjuntos de ferramentas, alteração de contexto e nextTurnParams dinâmicos |
| Continuação durável | Resultados de execução serializáveis ou um acesso a state com carregamento e salvamento controlados pelo aplicativo |
| Observabilidade | Uso e custo normalizados, avisos, motivos de conclusão, resultados das etapas, eventos do ciclo de vida e ferramentas de desenvolvimento locais |