handshakeManifest property
List<({String namespace, List<Map<String, Object?> > toolDescriptors, List<String> tools})>
get
handshakeManifest
Handshake manifest carrying each registered tool's device-owned description and raw input schema alongside the legacy bare-name list.
Entries and tools preserve registration order. manifest remains the names-only public view for callers that do not serialize a handshake. Reading this getter does not finalize the registry.
Implementation
List<
({
String namespace,
List<String> tools,
List<Map<String, Object?>> toolDescriptors,
})
>
get handshakeManifest =>
List<
({
String namespace,
List<String> tools,
List<Map<String, Object?>> toolDescriptors,
})
>.unmodifiable(<
({
String namespace,
List<String> tools,
List<Map<String, Object?>> toolDescriptors,
})
>[
for (final _Entry e in _entries)
(
namespace: e.plugin.namespace,
tools: List<String>.unmodifiable(
e.plugin.tools.map((LeonardTool t) => t.name),
),
toolDescriptors: List<Map<String, Object?>>.unmodifiable(
<Map<String, Object?>>[
for (final LeonardTool tool in e.plugin.tools)
Map<String, Object?>.unmodifiable(<String, Object?>{
'name': tool.name,
'description': tool.description,
'inputSchema': tool.inputSchema.raw,
}),
],
),
),
]);