Skip to content

InterventionHandler

Defined in: src/interventions/handler.ts:42

Base class for intervention handlers.

Handlers override the lifecycle methods they care about. Default implementations return Proceed. The framework detects which methods are overridden and only registers hook callbacks for those.

class CedarAuth extends InterventionHandler {
readonly name = 'cedar-auth'
override beforeToolCall(event: BeforeToolCallEvent): InterventionAction {
if (!this.isAuthorized(event)) {
return deny('User not authorized for this tool')
}
return proceed()
}
}
new InterventionHandler(): InterventionHandler;

InterventionHandler

abstract readonly name: string;

Defined in: src/interventions/handler.ts:43


readonly onError: OnError = 'throw';

Defined in: src/interventions/handler.ts:46

What to do when this handler throws. Defaults to ‘throw’.

beforeInvocation(_event): Awaitable<Proceed | Deny | Guide | Transform>;

Defined in: src/interventions/handler.ts:48

ParameterType
_eventBeforeInvocationEvent

Awaitable<Proceed | Deny | Guide | Transform>


beforeToolCall(_event): Awaitable<Proceed | Deny | Guide | Transform | Confirm>;

Defined in: src/interventions/handler.ts:52

ParameterType
_eventBeforeToolCallEvent

Awaitable<Proceed | Deny | Guide | Transform | Confirm>


afterToolCall(_event): Awaitable<Proceed | Transform>;

Defined in: src/interventions/handler.ts:56

ParameterType
_eventAfterToolCallEvent

Awaitable<Proceed | Transform>


beforeModelCall(_event): Awaitable<Proceed | Deny | Guide | Transform>;

Defined in: src/interventions/handler.ts:60

ParameterType
_eventBeforeModelCallEvent

Awaitable<Proceed | Deny | Guide | Transform>


afterModelCall(_event): Awaitable<Proceed | Guide | Transform>;

Defined in: src/interventions/handler.ts:64

ParameterType
_eventAfterModelCallEvent

Awaitable<Proceed | Guide | Transform>