UserMessage class final

A user message upsert.

Only UserMessage::message_id is required. content has patch semantics: an omitted field leaves existing message content unchanged, null clears the value, and a concrete array replaces the previous value. For a new messageId, omitted fields use client defaults. content is replaced as a whole array; send [] or null to clear it.

Implemented types
Annotations
  • @JsonSerializable.new(createFactory: false, createToJson: false)

Constructors

UserMessage({required MessageId messageId, AcpPatch<List<ContentBlock>> content = const AcpPatch<List<ContentBlock>>.unchanged(), AcpJsonObject? meta})
Creates a UserMessage value.
UserMessage.fromJson(Map<String, Object?> json)
Decodes a JSON object, discarding recoverable issues.
factory

Properties

content AcpPatch<List<ContentBlock>>
Complete replacement content for this message.
final
hashCode int
The hash code for this object.
no setterinherited
messageId MessageId
A unique identifier for the message.
final
meta AcpJsonObject?
The _meta property is reserved by ACP to allow clients and agents to attach additional metadata to their interactions. Implementations MUST NOT make assumptions about values at these keys. Omitted means no metadata update; null is an explicit clear signal.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toAcpJson() AcpJsonObject
Converts this protocol value to its immutable JSON representation.
override
toJson() Map<String, Object?>
Encodes this value to its wire object.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

decode(Object? json) → AcpDecoded<UserMessage>
Decodes this model and reports recoverable issues.