30#include <neograph/types.h>
33#include <asio/awaitable.hpp>
109 d.
args = std::move(rewritten_args);
113 static ToolDecision deny(std::string
reason) {
116 d.reason = std::move(
reason);
120 static ToolDecision interrupt(std::string
reason) {
123 d.reason = std::move(
reason);
127 static ToolDecision interrupt(std::string
reason, json
payload) {
130 d.reason = std::move(
reason);
131 d.payload = std::move(
payload);
216NEOGRAPH_API asio::awaitable<std::vector<ChatMessage>>
218 ToolGate gate = {}, ToolGateContext gctx = {},
219 ToolExecutionContext execution = {});
NEOGRAPH_API export/import macro for shared-library builds.
What a ToolGate is allowed to know about the run it is gating.
std::string thread_id
Mirrors RunConfig::thread_id. Empty on the Agent path.
std::optional< json > resume_value
The human's answer from GraphEngine::resume().
int step
Super-step index. Zero on the Agent path.
std::shared_ptr< const std::vector< ToolCall > > batch_calls
Immutable assistant-message batch being decided.