NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
Loading...
Searching...
No Matches
tool_effect_broker.h
Go to the documentation of this file.
1
5#pragma once
6
7#include <neograph/api.h>
8#include <neograph/tool.h>
9
10#include <asio/awaitable.hpp>
11
12#include <cstdint>
13#include <string>
14
15namespace neograph {
16
19 std::string owner_scope;
20 std::string run_id;
23 std::string program_version_id;
24 std::string operation_id;
25 std::string grant_id;
27 std::uint64_t attempt = 0;
28 std::string binding_fingerprint;
29 std::string thread_id;
30 std::string task_id;
32 std::uint64_t call_ordinal = 0;
34 std::string tool_call_id;
35};
36
54class NEOGRAPH_API ToolEffectBroker {
55public:
56 virtual ~ToolEffectBroker() = default;
57
58 virtual asio::awaitable<ToolExecutionResult> execute(
59 ToolEffectIdentity identity, Tool& tool, json arguments,
60 ToolExecutionContext context) = 0;
61};
62
63} // namespace neograph
NEOGRAPH_API export/import macro for shared-library builds.
The trusted host persists a dispatch marker before calling the controller, replays exact completed re...
Abstract base class for tools that agents can call.
Definition tool.h:114
One host-scoped, stable Core task and assistant-batch call ordinal.
std::string program_version_id
Exact Program grant authority.
std::uint64_t call_ordinal
Index in the gated assistant Tool batch, independent of worker order.
std::uint64_t attempt
Retry provenance only: advancing an attempt does not change the slot.
std::string tool_call_id
Provider-supplied correlation value; never use as the sole replay key.
Per-invocation context for a cooperative asynchronous tool.
Definition tool.h:39
Abstract tool interface for callable functions.