|
NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
|
Node that forwards an input string to a remote A2A agent. More...
#include <a2a_caller_node.h>
Public Types | |
| using | MessageIdFactory = std::function< std::string()> |
| Returns one message ID per outbound A2A call. | |
Public Member Functions | |
| std::string | get_name () const override |
| Get the node's unique name within the graph. | |
| asio::awaitable< neograph::graph::NodeOutput > | run (neograph::graph::NodeInput in) override |
v0.4 PR 9a: unified run — reads input_key from state, forwards to the remote A2A agent, writes the response (and task_id / context_id continuation handles) back. | |
Node that forwards an input string to a remote A2A agent.
Reads from input_key (default "prompt"), writes the agent's first text response into output_key (default "response"). The context id is written to "<output_key>_context_id" so the next call continues the conversation; "<output_key>_task_id" holds the task id only while the task waits for input (INPUT_REQUIRED / AUTH_REQUIRED), so the next call resumes that task, and is empty once the task is terminal (A2A 3.4.3: a terminal task accepts no further messages).
Definition at line 38 of file a2a_caller_node.h.
| using neograph::a2a::A2ACallerNode::MessageIdFactory = std::function<std::string()> |
Returns one message ID per outbound A2A call.
Custom factories must be thread-safe when the node is used by concurrent graph branches.
Definition at line 42 of file a2a_caller_node.h.
|
inlineoverridevirtual |
Get the node's unique name within the graph.
Implements neograph::graph::GraphNode.
Definition at line 60 of file a2a_caller_node.h.
|
overridevirtual |
v0.4 PR 9a: unified run — reads input_key from state, forwards to the remote A2A agent, writes the response (and task_id / context_id continuation handles) back.
Cancel propagates through the underlying A2AClient transport: the run's token, or the node's attempt_timeout_ms, ends a call in flight. The client itself puts no deadline on the exchange unless set_timeout sets one.
Implements neograph::graph::GraphNode.