Expand description
Implementation — the clientInfo / agentInfo block
the editor and the agent exchange in initialize.
The schema’s source of truth is
crates/protocol-droid-schema/spec/acp/v1.25.0/schema.json
under $defs.Implementation. The shape:
name: programmatic identifier (required)title: human-readable display name (optional)version: semver string (required)_meta: per-implementation metadata (optional, open shape, kept as a JSONValuefor forward compatibility)
§Why a BTreeMap for _meta
The schema’s _meta is an open object with
additionalProperties: true. A typed
BTreeMap<String, serde_json::Value> is the closest
the Rust type system can get to the wire form
without losing the JSON’s “anything goes” semantics.
The map keeps the wire form deterministic
(alphabetical by key) so test fixtures stay readable.
Structs§
- Implementation
- The
clientInfo/agentInfoblock. The same shape on both sides of the wire, mirrored by the schema.