The MOSAICO A2A ACL protocol is designed to interact with agents handling ACL on top of A2A protocol.

The TextPart components of messages must have an illocution in metadata and literal in text field. See the examples below.

Example 1 : TextPart(kind='text', metadata={'illocution': 'tell', 'codec': 'atom-codec'}, text="ready")

Example 2 : TextPart(kind='text', metadata={'illocution': 'achieve', 'codec': 'atom-codec'}, text="ping")

The set of illocutions and literals a given agent can handle is described in its agent card skills.

The codec is used to encode/decode the content (text field) of the message.

Possible codecs (not limited to) :
 * atom_codec,
 * python_codec.