32namespace neograph::a2a {
73 A2AServer(std::shared_ptr<neograph::graph::GraphEngine> engine,
75 std::shared_ptr<GraphAgentAdapter> adapter = {});
81 bool start(
const std::string& host,
int port);
98 std::unique_ptr<Impl> impl_;
Core data types for the Agent-to-Agent (A2A) protocol.
NEOGRAPH_API export/import macro for shared-library builds.
HTTP server exposing a NeoGraph as an A2A agent.
bool start(const std::string &host, int port)
Bind + listen.
void stop()
Signal the server to stop accepting connections and join.
A2AServer(std::shared_ptr< neograph::graph::GraphEngine > engine, AgentCard card, std::shared_ptr< GraphAgentAdapter > adapter={})
bool is_running() const
True once start_async() has the server listening.
bool start_async(const std::string &host, int port)
Bind + spawn a worker thread; returns when the server is ready to accept connections.
int port() const
Bound port — useful when caller passed 0 to bind a free port.
Adapt a NeoGraph run to the A2A request/response shape.
virtual std::string output_channel() const
Channel name to read the agent's text response from (default "response").
virtual neograph::json build_initial_state(const std::string &user_text) const
Hook to populate the initial graph state.
virtual std::string input_channel() const
Channel name to write the inbound user text into (default "prompt").
Main graph execution engine with super-step loop and HITL support.
Subset of AgentCard required to interact (spec §5.5).