HookHandler: Hook Handler

HookHandlerR Documentation

Hook Handler

Description

R6 class to manage and execute hooks.

Public fields

hooks

List of hook functions.

Methods

Public methods


Method new()

Initialize HookHandler

Usage
HookHandler$new(hooks_list = list())
Arguments
hooks_list

A list of hook functions. Supported hooks:

  • on_generation_start(model, prompt, tools)

  • on_generation_end(result)

  • on_tool_start(tool, args)

  • on_tool_end(tool, result)

  • on_tool_approval(tool, args) - Return TRUE to approve, FALSE to deny.


Method trigger_generation_start()

Trigger on_generation_start

Usage
HookHandler$trigger_generation_start(model, prompt, tools)
Arguments
model

The language model object.

prompt

The prompt being sent.

tools

The list of tools provided.


Method trigger_generation_end()

Trigger on_generation_end

Usage
HookHandler$trigger_generation_end(result)
Arguments
result

The generation result object.


Method trigger_tool_start()

Trigger on_tool_start

Usage
HookHandler$trigger_tool_start(tool, args)
Arguments
tool

The tool object.

args

The arguments for the tool.


Method trigger_tool_end()

Trigger on_tool_end

Usage
HookHandler$trigger_tool_end(
  tool,
  result,
  success = TRUE,
  error = NULL,
  args = NULL
)
Arguments
tool

The tool object.

result

The result from the tool execution.

success

Logical indicating whether execution succeeded.

error

Optional error message when execution failed.

args

Optional tool arguments for downstream telemetry.


Method clone()

The objects of this class are cloneable with this method.

Usage
HookHandler$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.


aisdk documentation built on May 29, 2026, 9:07 a.m.