|
NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
|
Subset of AgentCard required to interact (spec §5.5). More...
#include <types.h>
Public Attributes | |
| bool | extended_card = false |
| The authenticated extended card is not implemented by A2AServer: the server always declares it unsupported, whatever these fields say. | |
| json | extensions |
capabilities.extensions (both versions): an array of AgentExtension objects {uri, description, required, params}. | |
| std::string | protocol_version |
The 0.3 card's protocolVersion; A2AServer always serves "0.3.0" in the 0.3 card and 1.0 interfaces in the 1.0 card. | |
| bool | push_notifications = false |
| Push notifications are not implemented by A2AServer: the server always declares them unsupported, whatever this field says. | |
| json | raw |
| Full original document as received. Preserves fields we don't yet model. | |
| json | security_requirements |
1.0 securityRequirements: an array of {"schemes": {"<name>": {"list": [<scope>...]}}}. | |
| json | security_schemes |
1.0 securitySchemes: an object mapping a scheme name to a 1.0 SecurityScheme in ProtoJSON form, e.g. | |
| std::vector< std::string > | skill_names |
| Parsed skill ids. | |
| std::vector< AgentSkill > | skills |
| Full skill objects (parsed, or set by a server). | |
| bool | streaming = true |
| A2AServer supports streaming (SendStreamingMessage, SubscribeToTask) unless this is false; then those methods answer UnsupportedOperationError (-32004). | |
| std::vector< AgentInterface > | supported_interfaces |
1.0 supportedInterfaces in card order (preferred first). | |
| std::string | url |
| Public endpoint of the JSON-RPC binding. | |
Subset of AgentCard required to interact (spec §5.5).
We deserialise only fields the client actually consumes; unknown fields are kept verbatim in raw for forward-compat.
A2AServer serves one card per protocol version (see to_json(json&, const AgentCard&, WireDialect)): a GET with A2A-Version: 1.0 receives the pure 1.0 card; a GET without the header (spec §3.6.2: 0.3) receives the 0.3 card, which also lists the 1.0 interface in supportedInterfaces.
| json neograph::a2a::AgentCard::extensions |
capabilities.extensions (both versions): an array of AgentExtension objects {uri, description, required, params}.
Null when none. A server that accepts NeoGraph collaboration envelopes adds COLLABORATION_EXTENSION_URI (collaboration.h).
| json neograph::a2a::AgentCard::security_requirements |
| json neograph::a2a::AgentCard::security_schemes |
| std::vector<std::string> neograph::a2a::AgentCard::skill_names |
| std::vector<AgentSkill> neograph::a2a::AgentCard::skills |
| std::vector<AgentInterface> neograph::a2a::AgentCard::supported_interfaces |
| std::string neograph::a2a::AgentCard::url |
Public endpoint of the JSON-RPC binding.
Empty on a server card: the server then advertises the address the client used (the request's Host, http scheme), or its bound address; set it behind a TLS-terminating proxy (or see A2AServer::set_trust_forwarded_headers). The 0.3 JSON of a card with no url takes the first interface of the preferred transport, else leaves the member out.