Documentation
¶
Overview ¶
Package executor provides registry-backed tool execution. It routes tool invocations through the registry gateway and awaits results on Pulse streams.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface {
CallTool(ctx context.Context, toolset string, tool tools.Ident, payload []byte, meta toolregistry.ToolCallMeta) (toolUseID string, err error)
}
Client initiates tool calls through a registry gateway.
type Executor ¶
type Executor struct {
// contains filtered or unexported fields
}
func (*Executor) Execute ¶
func (e *Executor) Execute(ctx context.Context, meta *runtime.ToolCallMeta, call *planner.ToolRequest) (*planner.ToolResult, error)
type Option ¶
type Option func(*Executor)
func WithLogger ¶
WithLogger configures the executor logger. When nil, the executor uses a noop logger.
func WithResultEventKey ¶
WithResultEventKey sets the Pulse event name used for canonical ToolResultMessage payloads on per-call result streams.
func WithSinkName ¶
WithSinkName sets the Pulse sink/consumer-group name used when subscribing to per-call result streams. Callers should use a stable name across restarts so pending entries are not orphaned in Redis.
func WithStreamSink ¶
WithStreamSink configures the executor to forward best-effort tool output delta frames into the provided stream sink while it waits for the canonical tool result message. This does not affect tool execution semantics: the final tool result remains authoritative.
func WithTracer ¶
WithTracer configures the executor tracer. When nil, the executor uses a noop tracer.