RunStarted
AG-UI A turn of the model starts.
threadId- The session.
runId- The turn.
inputoptional- What the turn was started with.
contestooptional- Where it runs:
{ progetto, cartella, branch }.
The Archive · Desktop reference
What a TALOS Desktop session streams: the AG-UI events, the events TALOS adds, and the stream of a workflow run.
Reference for TALOS Desktop 0.1.25 generated from the source of the release · released
A session streams what happens in it as it happens: GET /api/v1/sessions/{sessionId}/events (server-sent events, see Local API). The events follow the AG-UI protocol; TALOS adds its own, marked below. A field TALOS adds to a standard event is optional for a client that does not know it.
On connection the stream first replays what the session already recorded, then continues live; talos.fine-rigiocata marks the boundary.
RunStartedA turn of the model starts.
threadIdrunIdinputoptionalcontestooptional{ progetto, cartella, branch }.RunFinishedThe turn ended well.
threadIdrunIdoutcomeoptional{ type: "success" }.resultoptional{ detto, compattazioni, premesseNegate, usage }: the final answer, how many compactions happened, the premises the model denied, and the token usage (null when no provider reported it).RunErrorThe turn ended without success: an error, a stop, or the turn limit.
messagecodeoptionalfermato for a stop), or an error code.classeoptionalmessageChiaveoptionalmessageParamsoptionalRunRedirectRequestedYou sent a message to redirect the turn in progress.
redirectIdtestoRunRedirectAppliedThe redirect reached the model.
redirectIdtestoimmaginioptionalRunRedirectCancelledThe redirect was withdrawn before it reached the model.
redirectIdRunRedirectFailedThe redirect could not be applied.
redirectIdmessagecodeoptionalreasonoptionalparamsoptionalTextMessageStartA message of the model begins.
messageIdroleassistant.TextMessageContentA piece of the message, as it streams.
messageIddeltaTextMessageEndThe message is complete.
messageIdReasoningMessageStartThe model’s reasoning begins (models and providers that expose it).
messageIdrolereasoning.ReasoningMessageContentA piece of the reasoning.
messageIddeltaReasoningMessageEndThe reasoning is complete.
messageIdToolCallStartThe model calls a tool.
toolCallIdtoolCallNameparentMessageIdoptionalavviatoAoptionalToolCallArgsThe arguments of the call, as JSON text (streamed in pieces).
toolCallIddeltaComandoUtenteIniziatoA command you typed yourself (! in the composer) starts: it is not a turn of the model and can run beside one.
comandoIdcomandoComandoUtenteFinitoYour command ended.
comandoIdcodiceoptionalenforcementoptionalerroreoptionalToolCallOutputOutput of a command while it runs: progress to show, not the result.
toolCallIddeltaToolCallResultThe result of the call, as the model reads it.
messageIdtoolCallIdcontentroletool.isErroroptionaldurataMsoptionalcomandooptionalcwdoptionalstdoutoptionalstderroptionalexitCodeoptionalinSfondooptionalfileSfondooptionalsfondoDaoptionalreceiptoptionaloutcomeoptionalsuspiciousoptionalStateDeltaA change of the session’s state, as JSON Patch operations.
delta/file/<path> when the agent wrote a file (value the new text, prima the text before, allegato a reference for binary files), /usage for the running token totals, /recuperoCronologia when the history was recovered on resume.ArtifactCreatedThe agent made an interactive visual (artifact_create).
messageIdidGET /api/v1/artifacts/{artifactId}.titolovoceLibreriaIdoptionalWorkspaceChangedFiles of the session’s folder changed on disk.
percorsiApprovalRequestedThe agent waits for your approval before an action.
requestIdPOST /api/v1/sessions/{sessionId}/approve.azioneQueuedMessageDeliveredA message you queued reached the model.
testoApprovalResolvedThe approval was answered.
requestIdapprovatotrue or false.ambitooptionalmotivooptionalrispostoDaoptionalUserQuestionRequestedThe agent asks you a question (ask_user_question).
requestIdPOST /api/v1/sessions/{sessionId}/question.questionsatoptionaltoolCallIdoptionalorigineoptionalripristinabileoptionalMcpElicitationRequestedNot yet described: the fields below are read from the release.
requestIdservermodemessagerequestedSchemaoptionalurloptionaldominiooptionalelicitationIdoptionalatoptionalMcpElicitationResolvedNot yet described: the fields below are read from the release.
requestIdactionatoptionaldaoptionalmotivooptionalUserQuestionResolvedThe question was answered, skipped, cancelled or expired.
requestIdstatusanswersoptionalskippedoptionalnotesoptionalatoptionaldaoptionalmotivooptionalrispostoDaoptionalHookInvokedA trusted hook ran (see Hooks).
hookIdtipoazioneesito{ consentito, motivo? }.RuntimeFallbackThe local engine failed and the turn continues on a cloud model (only with fallbackConsent).
fromlocal.toopenrouter.reasonproviderlocal.runtimeIdmodelIdbackendatA CUSTOM event is { "type": "CUSTOM", "name": "…", "value": … }:
talos.agentitalos.coda{ voci, inPausa }.talos.compattazionefase is inizio, fine or annullata, with the tokens before and after and whether it can be undone.talos.processo-sfondoattesa-approvazione-silenziotalos.plantalos.plan.v1): proposed, revised, approved or rejected.talos.agent-dialoguetalos.impostazioni-sessionetalos.richiesta-piano-fallitatalos.journal-riparatotalos.provider-retrytalos.fornitore-a-valleavviso-fornitorecambio-fornitoreconsumo-fornitoretalos.fine-rigiocataGET /api/v1/sessions/{sessionId}/workflows/{runId}/events streams named events; it closes when the run is over.
event: run-updateid is the run’s new sequence number.event: run-error{ code }. The stream closes.