Documentation
¶
Overview ¶
Code generated from JSON schema. DO NOT EDIT.
Index ¶
- Constants
- func MarshalParts(parts []Part) ([]byte, error)
- func NewAgentEvent(eventType, eventID string, data map[string]any) cloudevents.Event
- func NewDeltaEvent(message *Message) cloudevents.Event
- func NewIterationCompletedEvent(iteration int, taskID string, finalMessage *Message) cloudevents.Event
- func NewMessageEvent(eventType, eventID string, message *Message) cloudevents.Event
- type APIKeySecurityScheme
- type AgentCapabilities
- type AgentCard
- type AgentCardSignature
- type AgentExtension
- type AgentInterface
- type AgentProvider
- type AgentSkill
- type Artifact
- type AuthenticationInfo
- type AuthorizationCodeOAuthFlow
- type CancelTaskRequest
- type ClientCredentialsOAuthFlow
- type DataPart
- type DeleteTaskPushNotificationConfigParams
- type DeleteTaskPushNotificationConfigRequest
- type FilePart
- type GetExtendedAgentCardRequest
- type GetTaskPushNotificationConfigParams
- type GetTaskPushNotificationConfigRequest
- type GetTaskRequest
- type HTTPAuthSecurityScheme
- type ImplicitOAuthFlow
- type JSONParseError
- type JSONRPCError
- type JSONRPCErrorResponse
- type JSONRPCMessage
- type JSONRPCRequest
- type JSONRPCResponse
- type JSONRPCSuccessResponse
- type ListTaskPushNotificationConfigParams
- type ListTaskPushNotificationConfigRequest
- type ListTaskPushNotificationConfigResponse
- type ListTasksRequest
- type ListTasksResponse
- type Message
- func NewAssistantMessage(messageID string, parts []Part) *Message
- func NewInputRequiredMessage(toolCallID, message string) *Message
- func NewStreamingStatusMessage(messageID, status string, metadata map[string]any) *Message
- func NewToolResultMessage(toolCallID string, toolName string, result any, hasError bool) *Message
- type MessageSendConfiguration
- type MessageSendParams
- type MutualTlsSecurityScheme
- type OAuth2SecurityScheme
- type OAuthFlows
- type OpenIdConnectSecurityScheme
- type Part
- func CreateDataPart(data map[string]any, metadata ...map[string]any) Part
- func CreateFilePart(name, mediaType string, fileWithBytes *string, fileWithURI *string, ...) Part
- func CreateTextPart(text string, metadata ...map[string]any) Part
- func NewDataPart(data map[string]any) Part
- func NewTextPart(text string) Part
- func NewToolCallPart(toolCallID, toolName string, arguments map[string]any) Part
- func UnmarshalPart(data []byte) (Part, error)
- func UnmarshalParts(data []byte) ([]Part, error)
- type PasswordOAuthFlow
- type PushNotificationConfig
- type Role
- type Security
- type SecurityScheme
- type SendMessageConfiguration
- type SendMessageRequest
- type SendMessageResponse
- type SetTaskPushNotificationConfigRequest
- type StreamResponse
- type StringList
- type Struct
- type SubscribeToTaskRequest
- type Task
- type TaskArtifactUpdateEvent
- type TaskIdParams
- type TaskList
- type TaskListParams
- type TaskPushNotificationConfig
- type TaskQueryParams
- type TaskState
- type TaskStatus
- type TaskStatusUpdateEvent
- type Timestamp
Constants ¶
const ( HealthStatusHealthy = "healthy" HealthStatusDegraded = "degraded" HealthStatusUnhealthy = "unhealthy" )
Health status constants
const ( EventDelta = "adk.agent.delta" EventIterationCompleted = "adk.agent.iteration.completed" EventToolStarted = "adk.agent.tool.started" EventToolCompleted = "adk.agent.tool.completed" EventToolFailed = "adk.agent.tool.failed" EventToolResult = "adk.agent.tool.result" EventInputRequired = "adk.agent.input.required" EventTaskInterrupted = "adk.agent.task.interrupted" EventTaskStatusChanged = "adk.agent.task.status.changed" EventStreamFailed = "adk.agent.stream.failed" )
CloudEvent type constants for agent streaming operations
const (
ToolInputRequired = "input_required"
)
Tool name constants
Variables ¶
This section is empty.
Functions ¶
func MarshalParts ¶ added in v0.14.0
MarshalParts is a utility function to marshal a slice of Parts
func NewAgentEvent ¶ added in v0.9.4
func NewAgentEvent(eventType, eventID string, data map[string]any) cloudevents.Event
NewAgentEvent creates a CloudEvent for agent lifecycle events
func NewDeltaEvent ¶ added in v0.9.4
func NewDeltaEvent(message *Message) cloudevents.Event
NewDeltaEvent creates a CloudEvent for streaming deltas, with the message in the data field
func NewIterationCompletedEvent ¶ added in v0.9.4
func NewIterationCompletedEvent(iteration int, taskID string, finalMessage *Message) cloudevents.Event
NewIterationCompletedEvent creates a CloudEvent for iteration completed with the final message
func NewMessageEvent ¶ added in v0.9.4
func NewMessageEvent(eventType, eventID string, message *Message) cloudevents.Event
NewMessageEvent creates a CloudEvent with a message payload and custom event type
Types ¶
type APIKeySecurityScheme ¶
type APIKeySecurityScheme struct {
Description *string `json:"description,omitempty"`
Location string `json:"location"`
Name string `json:"name"`
}
Defines a security scheme using an API key.
type AgentCapabilities ¶
type AgentCapabilities struct {
Extensions []AgentExtension `json:"extensions,omitempty"`
PushNotifications *bool `json:"pushNotifications,omitempty"`
StateTransitionHistory *bool `json:"stateTransitionHistory,omitempty"`
Streaming *bool `json:"streaming,omitempty"`
}
Defines optional capabilities supported by an agent.
type AgentCard ¶
type AgentCard struct {
AdditionalInterfaces []AgentInterface `json:"additionalInterfaces,omitempty"`
Capabilities AgentCapabilities `json:"capabilities"`
DefaultInputModes []string `json:"defaultInputModes"`
DefaultOutputModes []string `json:"defaultOutputModes"`
Description string `json:"description"`
DocumentationURL *string `json:"documentationUrl,omitempty"`
IconURL *string `json:"iconUrl,omitempty"`
Name string `json:"name"`
PreferredTransport *string `json:"preferredTransport,omitempty"`
ProtocolVersion string `json:"protocolVersion"`
Provider *AgentProvider `json:"provider,omitempty"`
Security []Security `json:"security,omitempty"`
SecuritySchemes map[string]SecurityScheme `json:"securitySchemes,omitempty"`
Signatures []AgentCardSignature `json:"signatures,omitempty"`
Skills []AgentSkill `json:"skills"`
SupportedInterfaces []AgentInterface `json:"supportedInterfaces,omitempty"`
SupportsExtendedAgentCard *bool `json:"supportsExtendedAgentCard,omitempty"`
URL *string `json:"url,omitempty"`
Version string `json:"version"`
}
AgentCard is a self-describing manifest for an agent. It provides essential metadata including the agent's identity, capabilities, skills, supported communication methods, and security requirements. Next ID: 20
type AgentCardSignature ¶ added in v0.8.0
type AgentCardSignature struct {
Header *Struct `json:"header,omitempty"`
Protected string `json:"protected"`
Signature string `json:"signature"`
}
AgentCardSignature represents a JWS signature of an AgentCard. This follows the JSON format of an RFC 7515 JSON Web Signature (JWS).
type AgentExtension ¶
type AgentExtension struct {
Description string `json:"description"`
Params *Struct `json:"params,omitempty"`
Required bool `json:"required"`
URI string `json:"uri"`
}
A declaration of a protocol extension supported by an Agent.
type AgentInterface ¶
type AgentInterface struct {
ProtocolBinding string `json:"protocolBinding"`
Tenant *string `json:"tenant,omitempty"`
URL string `json:"url"`
}
Declares a combination of a target URL and a transport protocol for interacting with the agent. This allows agents to expose the same functionality over multiple protocol binding mechanisms.
type AgentProvider ¶
Represents the service provider of an agent.
type AgentSkill ¶
type AgentSkill struct {
Description string `json:"description"`
Examples []string `json:"examples,omitempty"`
ID string `json:"id"`
InputModes []string `json:"inputModes,omitempty"`
Name string `json:"name"`
OutputModes []string `json:"outputModes,omitempty"`
Security []Security `json:"security,omitempty"`
Tags []string `json:"tags"`
}
Represents a distinct capability or function that an agent can perform.
type Artifact ¶
type Artifact struct {
ArtifactID string `json:"artifactId"`
Description *string `json:"description,omitempty"`
Extensions []string `json:"extensions,omitempty"`
Metadata *Struct `json:"metadata,omitempty"`
Name *string `json:"name,omitempty"`
Parts []Part `json:"parts"`
}
Artifacts represent task outputs.
type AuthenticationInfo ¶ added in v0.17.0
type AuthenticationInfo struct {
Credentials *string `json:"credentials,omitempty"`
Schemes []string `json:"schemes"`
}
Defines authentication details, used for push notifications.
type AuthorizationCodeOAuthFlow ¶
type AuthorizationCodeOAuthFlow struct {
AuthorizationURL string `json:"authorizationUrl"`
RefreshURL *string `json:"refreshUrl,omitempty"`
Scopes map[string]string `json:"scopes"`
TokenURL string `json:"tokenUrl"`
}
Defines configuration details for the OAuth 2.0 Authorization Code flow.
type CancelTaskRequest ¶
Represents a request for the `tasks/cancel` method.
type ClientCredentialsOAuthFlow ¶
type ClientCredentialsOAuthFlow struct {
RefreshURL *string `json:"refreshUrl,omitempty"`
Scopes map[string]string `json:"scopes"`
TokenURL string `json:"tokenUrl"`
}
Defines configuration details for the OAuth 2.0 Client Credentials flow.
type DataPart ¶
type DataPart struct {
Data Struct `json:"data"`
}
DataPart represents a structured blob.
type DeleteTaskPushNotificationConfigParams ¶
type DeleteTaskPushNotificationConfigParams = DeleteTaskPushNotificationConfigRequest
DeleteTaskPushNotificationConfigParams is an alias for DeleteTaskPushNotificationConfigRequest
type DeleteTaskPushNotificationConfigRequest ¶
type DeleteTaskPushNotificationConfigRequest struct {
Name string `json:"name"`
Tenant string `json:"tenant"`
}
Represents a request for the `tasks/pushNotificationConfig/delete` method.
type FilePart ¶
type FilePart struct {
FileWithBytes *string `json:"fileWithBytes,omitempty"`
FileWithURI *string `json:"fileWithUri,omitempty"`
MediaType string `json:"mediaType"`
Name string `json:"name"`
}
FilePart represents the different ways files can be provided. If files are small, directly feeding the bytes is supported via file_with_bytes. If the file is large, the agent should read the content as appropriate directly from the file_with_uri source.
type GetExtendedAgentCardRequest ¶ added in v0.17.0
type GetExtendedAgentCardRequest struct {
Tenant string `json:"tenant"`
}
type GetTaskPushNotificationConfigParams ¶
type GetTaskPushNotificationConfigParams = GetTaskPushNotificationConfigRequest
GetTaskPushNotificationConfigParams is an alias for GetTaskPushNotificationConfigRequest
type GetTaskRequest ¶
type GetTaskRequest struct {
HistoryLength *int `json:"historyLength,omitempty"`
Name string `json:"name"`
Tenant *string `json:"tenant,omitempty"`
}
Represents a request for the `tasks/get` method.
type HTTPAuthSecurityScheme ¶
type HTTPAuthSecurityScheme struct {
BearerFormat *string `json:"bearerFormat,omitempty"`
Description *string `json:"description,omitempty"`
Scheme string `json:"scheme"`
}
Defines a security scheme using HTTP authentication.
type ImplicitOAuthFlow ¶
type ImplicitOAuthFlow struct {
AuthorizationURL string `json:"authorizationUrl"`
RefreshURL *string `json:"refreshUrl,omitempty"`
Scopes map[string]string `json:"scopes"`
}
Defines configuration details for the OAuth 2.0 Implicit flow.
type JSONParseError ¶
type JSONParseError struct {
Code int `json:"code"`
Data *any `json:"data,omitempty"`
Message string `json:"message"`
}
An error indicating that the server received invalid JSON.
type JSONRPCError ¶
type JSONRPCError struct {
Code int `json:"code"`
Data *any `json:"data,omitempty"`
Message string `json:"message"`
}
Represents a JSON-RPC 2.0 Error object, included in an error response.
type JSONRPCErrorResponse ¶
type JSONRPCErrorResponse struct {
Error any `json:"error"`
ID any `json:"id"`
JSONRPC string `json:"jsonrpc"`
}
Represents a JSON-RPC 2.0 Error Response object.
type JSONRPCMessage ¶
Defines the base structure for any JSON-RPC 2.0 request, response, or notification.
type JSONRPCRequest ¶
type JSONRPCRequest struct {
ID *any `json:"id,omitempty"`
JSONRPC string `json:"jsonrpc"`
Method string `json:"method"`
Params map[string]any `json:"params,omitempty"`
}
Represents a JSON-RPC 2.0 Request object.
type JSONRPCResponse ¶
type JSONRPCResponse any
A discriminated union representing all possible JSON-RPC 2.0 responses for the A2A specification methods.
type JSONRPCSuccessResponse ¶
type JSONRPCSuccessResponse struct {
ID any `json:"id"`
JSONRPC string `json:"jsonrpc"`
Result any `json:"result"`
}
Represents a successful JSON-RPC 2.0 Response object.
type ListTaskPushNotificationConfigParams ¶
type ListTaskPushNotificationConfigParams = ListTaskPushNotificationConfigRequest
ListTaskPushNotificationConfigParams is an alias for ListTaskPushNotificationConfigRequest
type ListTaskPushNotificationConfigResponse ¶
type ListTaskPushNotificationConfigResponse struct {
Configs []TaskPushNotificationConfig `json:"configs,omitempty"`
NextPageToken string `json:"nextPageToken"`
}
Represents a successful response for the `tasks/pushNotificationConfig/list` method.
type ListTasksRequest ¶
type ListTasksRequest struct {
ContextID string `json:"contextId"`
HistoryLength *int `json:"historyLength,omitempty"`
IncludeArtifacts *bool `json:"includeArtifacts,omitempty"`
LastUpdatedAfter int `json:"lastUpdatedAfter"`
PageSize *int `json:"pageSize,omitempty"`
PageToken string `json:"pageToken"`
Status TaskState `json:"status"`
Tenant string `json:"tenant"`
}
Parameters for listing tasks with optional filtering criteria.
type ListTasksResponse ¶
type ListTasksResponse struct {
NextPageToken string `json:"nextPageToken"`
PageSize int `json:"pageSize"`
Tasks []Task `json:"tasks"`
TotalSize int `json:"totalSize"`
}
Result object for tasks/list method containing an array of tasks and pagination information.
type Message ¶
type Message struct {
ContextID *string `json:"contextId,omitempty"`
Extensions []string `json:"extensions,omitempty"`
MessageID string `json:"messageId"`
Metadata *Struct `json:"metadata,omitempty"`
Parts []Part `json:"parts"`
ReferenceTaskIds []string `json:"referenceTaskIds,omitempty"`
Role Role `json:"role"`
TaskID *string `json:"taskId,omitempty"`
}
Message is one unit of communication between client and server. It is associated with a context and optionally a task. Since the server is responsible for the context definition, it must always provide a context_id in its messages. The client can optionally provide the context_id if it knows the context to associate the message to. Similarly for task_id, except the server decides if a task is created and whether to include the task_id.
func NewAssistantMessage ¶ added in v0.9.4
NewAssistantMessage creates a standardized assistant message
func NewInputRequiredMessage ¶ added in v0.9.4
NewInputRequiredMessage creates an input required message
func NewStreamingStatusMessage ¶ added in v0.9.4
NewStreamingStatusMessage creates a status message for streaming
func NewToolResultMessage ¶ added in v0.9.4
NewToolResultMessage creates a standardized tool result message
func (*Message) UnmarshalJSON ¶ added in v0.14.0
UnmarshalJSON custom unmarshaler for Message that properly handles typed Parts
type MessageSendConfiguration ¶
type MessageSendConfiguration struct {
AcceptedOutputModes []string `json:"acceptedOutputModes,omitempty"`
Blocking *bool `json:"blocking,omitempty"`
HistoryLength *int `json:"historyLength,omitempty"`
PushNotificationConfig *PushNotificationConfig `json:"pushNotificationConfig,omitempty"`
}
Defines configuration options for a `message/send` or `message/stream` request.
type MessageSendParams ¶
type MessageSendParams struct {
Configuration *MessageSendConfiguration `json:"configuration,omitempty"`
Message Message `json:"message"`
Metadata map[string]any `json:"metadata,omitempty"`
}
Defines the parameters for a request to send a message to an agent. This can be used to create a new task, continue an existing one, or restart a task.
type MutualTlsSecurityScheme ¶ added in v0.17.0
type MutualTlsSecurityScheme struct {
Description string `json:"description"`
}
Defines a security scheme using mTLS authentication.
type OAuth2SecurityScheme ¶
type OAuth2SecurityScheme struct {
Description *string `json:"description,omitempty"`
Flows OAuthFlows `json:"flows"`
Oauth2metadataURL *string `json:"oauth2MetadataUrl,omitempty"`
}
Defines a security scheme using OAuth 2.0.
type OAuthFlows ¶
type OAuthFlows struct {
AuthorizationCode *AuthorizationCodeOAuthFlow `json:"authorizationCode,omitempty"`
ClientCredentials *ClientCredentialsOAuthFlow `json:"clientCredentials,omitempty"`
Implicit *ImplicitOAuthFlow `json:"implicit,omitempty"`
Password *PasswordOAuthFlow `json:"password,omitempty"`
}
Defines the configuration for the supported OAuth 2.0 flows.
type OpenIdConnectSecurityScheme ¶
type OpenIdConnectSecurityScheme struct {
Description *string `json:"description,omitempty"`
OpenIDConnectURL string `json:"openIdConnectUrl"`
}
Defines a security scheme using OpenID Connect.
type Part ¶
type Part struct {
Data *DataPart `json:"data,omitempty"`
File *FilePart `json:"file,omitempty"`
Metadata *Struct `json:"metadata,omitempty"`
Text *string `json:"text,omitempty"`
}
Part represents a container for a section of communication content. Parts can be purely textual, some sort of file (image, video, etc) or a structured data blob (i.e. JSON).
func CreateDataPart ¶ added in v0.14.0
CreateDataPart creates a Part with data content
func CreateFilePart ¶ added in v0.14.0
func CreateFilePart(name, mediaType string, fileWithBytes *string, fileWithURI *string, metadata ...map[string]any) Part
CreateFilePart creates a Part with file content
func CreateTextPart ¶ added in v0.14.0
CreateTextPart creates a Part with text content
func NewDataPart ¶ added in v0.9.4
NewDataPart creates a generic data part for a message
func NewTextPart ¶ added in v0.9.4
NewTextPart creates a text part for a message
func NewToolCallPart ¶ added in v0.9.4
NewToolCallPart creates a tool call part for a message
func UnmarshalPart ¶ added in v0.14.0
UnmarshalPart unmarshals a single Part from JSON with proper type handling
func UnmarshalParts ¶ added in v0.14.0
UnmarshalParts is a utility function to unmarshal a slice of Parts with proper type handling
type PasswordOAuthFlow ¶
type PasswordOAuthFlow struct {
RefreshURL *string `json:"refreshUrl,omitempty"`
Scopes map[string]string `json:"scopes"`
TokenURL string `json:"tokenUrl"`
}
Defines configuration details for the OAuth 2.0 Resource Owner Password flow.
type PushNotificationConfig ¶
type PushNotificationConfig struct {
Authentication *AuthenticationInfo `json:"authentication,omitempty"`
ID *string `json:"id,omitempty"`
Token *string `json:"token,omitempty"`
URL string `json:"url"`
}
Configuration for setting up push notifications for task updates.
type Security ¶ added in v0.17.0
type Security struct {
Schemes map[string]StringList `json:"schemes,omitempty"`
}
type SecurityScheme ¶
type SecurityScheme struct {
APIKeySecurityScheme *APIKeySecurityScheme `json:"apiKeySecurityScheme,omitempty"`
HTTPAuthSecurityScheme *HTTPAuthSecurityScheme `json:"httpAuthSecurityScheme,omitempty"`
MtlsSecurityScheme *MutualTlsSecurityScheme `json:"mtlsSecurityScheme,omitempty"`
Oauth2securityScheme *OAuth2SecurityScheme `json:"oauth2SecurityScheme,omitempty"`
OpenIDConnectSecurityScheme *OpenIdConnectSecurityScheme `json:"openIdConnectSecurityScheme,omitempty"`
}
Defines a security scheme that can be used to secure an agent's endpoints. This is a discriminated union type based on the OpenAPI 3.2 Security Scheme Object. See: https://spec.openapis.org/oas/v3.2.0.html#security-scheme-object
type SendMessageConfiguration ¶ added in v0.17.0
type SendMessageConfiguration struct {
AcceptedOutputModes []string `json:"acceptedOutputModes,omitempty"`
Blocking bool `json:"blocking"`
HistoryLength *int `json:"historyLength,omitempty"`
PushNotificationConfig *PushNotificationConfig `json:"pushNotificationConfig,omitempty"`
}
Configuration of a send message request.
type SendMessageRequest ¶
type SendMessageRequest struct {
Configuration *SendMessageConfiguration `json:"configuration,omitempty"`
Message *Message `json:"message,omitempty"`
Metadata *Struct `json:"metadata,omitempty"`
Tenant string `json:"tenant"`
}
/////////// Request Messages /////////// Represents a request for the `message/send` method.
type SendMessageResponse ¶
type SendMessageResponse struct {
Message *Message `json:"message,omitempty"`
Task *Task `json:"task,omitempty"`
}
////// Response Messages ///////////
type SetTaskPushNotificationConfigRequest ¶
type SetTaskPushNotificationConfigRequest struct {
Config TaskPushNotificationConfig `json:"config"`
ConfigID string `json:"configId"`
Parent string `json:"parent"`
Tenant *string `json:"tenant,omitempty"`
}
Represents a request for the `tasks/pushNotificationConfig/set` method.
type StreamResponse ¶ added in v0.17.0
type StreamResponse struct {
ArtifactUpdate *TaskArtifactUpdateEvent `json:"artifactUpdate,omitempty"`
Message *Message `json:"message,omitempty"`
StatusUpdate *TaskStatusUpdateEvent `json:"statusUpdate,omitempty"`
Task *Task `json:"task,omitempty"`
}
A wrapper object used in streaming operations to encapsulate different types of response data.
type StringList ¶ added in v0.17.0
type StringList struct {
List []string `json:"list,omitempty"`
}
protolint:disable REPEATED_FIELD_NAMES_PLURALIZED
type SubscribeToTaskRequest ¶ added in v0.17.0
type Task ¶
type Task struct {
Artifacts []Artifact `json:"artifacts,omitempty"`
ContextID string `json:"contextId"`
History []Message `json:"history,omitempty"`
ID string `json:"id"`
Metadata *Struct `json:"metadata,omitempty"`
Status TaskStatus `json:"status"`
}
Task is the core unit of action for A2A. It has a current status and when results are created for the task they are stored in the artifact. If there are multiple turns for a task, these are stored in history.
type TaskArtifactUpdateEvent ¶
type TaskArtifactUpdateEvent struct {
Append *bool `json:"append,omitempty"`
Artifact Artifact `json:"artifact"`
ContextID string `json:"contextId"`
LastChunk *bool `json:"lastChunk,omitempty"`
Metadata *Struct `json:"metadata,omitempty"`
TaskID string `json:"taskId"`
}
TaskArtifactUpdateEvent represents a task delta where an artifact has been generated.
type TaskIdParams ¶
type TaskIdParams struct {
ID string `json:"id"`
Metadata map[string]any `json:"metadata,omitempty"`
}
Parameters for task operations that require only a task ID.
type TaskList ¶
type TaskList = ListTasksResponse
TaskList represents a list of tasks with pagination info (alias for generated type)
type TaskListParams ¶
type TaskListParams struct {
ContextID *string `json:"contextId,omitempty"`
Limit int `json:"limit,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
Offset int `json:"offset,omitempty"`
State *TaskState `json:"state,omitempty"`
}
Parameters for listing tasks with optional filtering and pagination.
type TaskPushNotificationConfig ¶
type TaskPushNotificationConfig struct {
Name string `json:"name"`
PushNotificationConfig PushNotificationConfig `json:"pushNotificationConfig"`
}
A container associating a push notification configuration with a specific task.
type TaskQueryParams ¶
type TaskQueryParams struct {
HistoryLength *int `json:"historyLength,omitempty"`
ID string `json:"id"`
Metadata map[string]any `json:"metadata,omitempty"`
}
Defines parameters for querying a task, with an option to limit history length.
type TaskState ¶
type TaskState string
Filter tasks by their current status state.
const ( TaskStateAuthRequired TaskState = "TASK_STATE_AUTH_REQUIRED" TaskStateCancelled TaskState = "TASK_STATE_CANCELLED" TaskStateCompleted TaskState = "TASK_STATE_COMPLETED" TaskStateFailed TaskState = "TASK_STATE_FAILED" TaskStateInputRequired TaskState = "TASK_STATE_INPUT_REQUIRED" TaskStateRejected TaskState = "TASK_STATE_REJECTED" TaskStateSubmitted TaskState = "TASK_STATE_SUBMITTED" TaskStateUnspecified TaskState = "TASK_STATE_UNSPECIFIED" TaskStateWorking TaskState = "TASK_STATE_WORKING" )
TaskState enum values
type TaskStatus ¶
type TaskStatus struct {
Message *Message `json:"message,omitempty"`
State TaskState `json:"state"`
Timestamp *Timestamp `json:"timestamp,omitempty"`
}
A container for the status of a task
type TaskStatusUpdateEvent ¶
type TaskStatusUpdateEvent struct {
ContextID string `json:"contextId"`
Final bool `json:"final"`
Metadata *Struct `json:"metadata,omitempty"`
Status TaskStatus `json:"status"`
TaskID string `json:"taskId"`
}
An event sent by the agent to notify the client of a change in a task's status.