Expand description
Capabilities negotiation and inline-catalog parsing.
This module implements the A2UI v1.0 capabilities handshake types and a lightweight parser for inline catalogs — catalog JSON embedded directly in a client’s capabilities payload rather than fetched from a URL.
Inline catalog functions are schema-only: they describe their argument
and return shapes but have no native Rust implementation. They are registered
into a Catalog via
SchemaOnlyFunction
so that the existing handle_call_function path can discover and reject
execution attempts uniformly. Inline catalog components have no native
renderer and are drawn at render time by the generic fallback renderer
(GenericComponent).
Structs§
- Client
Capabilities - Client-side capabilities sent to the server during the handshake.
- Client
Capabilities Builder - Builder for
ClientCapabilities. - Client
Capabilities Envelope - The full client capabilities payload, keyed under a
v1.0protocol version. - Function
Schema - The schema (argument shape + return type) of one inline-catalog function,
extracted for registration as a [
SchemaOnlyFunction]. - Inline
Catalog - A parsed inline catalog — enough metadata to register its functions and to know which component names should fall back to the generic renderer.
- Server
Capabilities - Server-side capabilities advertised by an A2UI agent/server.
- Server
Capabilities Envelope - The full server capabilities payload, keyed under a
v1.0protocol version.
Functions§
- parse_
inline_ catalog - Parse an inline catalog from a raw JSON value.