Skip to main content

AgentToolEvent

Typed tool event. JSON fields are descriptor-versioned and validated against the descriptor returned by crowdyStudioAgentToolDescriptors; they are never arbitrary executor input.

type AgentToolEvent implements AgentEventBase {
protocolVersion: String!
eventId: String!
sessionId: String!
seq: BigInt!
type: CrowdyStudioAgentEventType!
runId: String
version: String!
createdAt: DateTime!
toolCallId: String!
toolName: String!
toolVersion: String!
status: CrowdyStudioAgentToolCallStatus!
safeSummary: String
descriptorDigest: String
argumentHash: String
executor: CrowdyStudioAgentToolExecutor
contextVersion: String
clientEpoch: BigInt
argumentsJson: String
leaseId: String
approvalGrant: String
idempotencyKey: String
resultJson: String
invocation: AgentToolInvocation
result: AgentToolResultEnvelope
error: AgentError
deadline: DateTime
}

Fields

AgentToolEvent.protocolVersion ● String! non-null scalar

Event envelope version; always 'crowdy.agent-event/1'.

AgentToolEvent.eventId ● String! non-null scalar

Stable event UUID for deduplication.

AgentToolEvent.sessionId ● String! non-null scalar

Owning session UUID.

AgentToolEvent.seq ● BigInt! non-null scalar

Strictly increasing session sequence as a decimal BigInt.

AgentToolEvent.type ● CrowdyStudioAgentEventType! non-null enum

Stable version 1 event discriminator.

AgentToolEvent.runId ● String scalar

Related run UUID, or null for session-only facts.

AgentToolEvent.version ● String! non-null scalar

Versioned event payload contract.

AgentToolEvent.createdAt ● DateTime! non-null scalar

Commit timestamp.

AgentToolEvent.toolCallId ● String! non-null scalar

Stable tool call UUID.

AgentToolEvent.toolName ● String! non-null scalar

Logical versioned tool name.

AgentToolEvent.toolVersion ● String! non-null scalar

Pinned semantic tool version.

AgentToolEvent.status ● CrowdyStudioAgentToolCallStatus! non-null enum

Required durable tool status for this event.

AgentToolEvent.safeSummary ● String scalar

Safe bounded human summary, or null.

AgentToolEvent.descriptorDigest ● String scalar

Pinned descriptor digest, or null before dispatch.

AgentToolEvent.argumentHash ● String scalar

Canonical argument hash, or null.

AgentToolEvent.executor ● CrowdyStudioAgentToolExecutor enum

SERVER or BROWSER executor, or null.

AgentToolEvent.contextVersion ● String scalar

Authoritative dispatch context version, or null.

AgentToolEvent.clientEpoch ● BigInt scalar

Fenced browser epoch for a dispatch, or null.

AgentToolEvent.argumentsJson ● String scalar

Descriptor-schema-validated, redaction-safe canonical JSON arguments for browser dispatch; null otherwise.

AgentToolEvent.leaseId ● String scalar

Bound lease UUID, or null.

AgentToolEvent.approvalGrant ● String scalar

Opaque approval capability, or null.

AgentToolEvent.idempotencyKey ● String scalar

Executor idempotency key, or null.

AgentToolEvent.resultJson ● String scalar

Descriptor-schema-validated, redaction-safe canonical JSON result summary; source and prompt bodies are omitted.

AgentToolEvent.invocation ● AgentToolInvocation object

Complete browser invocation on TOOL_DISPATCHED; null for other events.

AgentToolEvent.result ● AgentToolResultEnvelope object

Complete typed terminal result when available.

AgentToolEvent.error ● AgentError object

Safe typed terminal tool error, or null.

AgentToolEvent.deadline ● DateTime scalar

Dispatch deadline, or null for non-dispatch events.

Interfaces

AgentEventBase interface

Common identity/order fields on every typed durable agent event variant.

Implemented By

CrowdyStudioAgentEvent union