Class InterceptModeHandler
Intercept mode: suppresses OpenClaw's agent and routes the message through JD.AI instead.
On receiving a user message, calls chat.abort to stop OpenClaw's processing,
runs the message through JD.AI (Semantic Kernel → Ollama/provider), then injects
the response back via chat.inject (without re-triggering OpenClaw's agent).
public sealed class InterceptModeHandler : IOpenClawModeHandler
- Inheritance
-
InterceptModeHandler
- Implements
- Inherited Members
Constructors
InterceptModeHandler(ILogger<InterceptModeHandler>)
Intercept mode: suppresses OpenClaw's agent and routes the message through JD.AI instead.
On receiving a user message, calls chat.abort to stop OpenClaw's processing,
runs the message through JD.AI (Semantic Kernel → Ollama/provider), then injects
the response back via chat.inject (without re-triggering OpenClaw's agent).
public InterceptModeHandler(ILogger<InterceptModeHandler> logger)
Parameters
loggerILogger<InterceptModeHandler>
Properties
Mode
The routing mode this handler supports.
public OpenClawRoutingMode Mode { get; }
Property Value
Methods
HandleAsync(OpenClawEvent, string, OpenClawChannelRouteConfig, OpenClawBridgeChannel, Func<string, string, Task<string?>>, CancellationToken)
Processes an incoming OpenClaw event. Returns true if the message was handled.
public Task<bool> HandleAsync(OpenClawEvent evt, string channelName, OpenClawChannelRouteConfig routeConfig, OpenClawBridgeChannel bridge, Func<string, string, Task<string?>> messageProcessor, CancellationToken ct = default)
Parameters
evtOpenClawEventThe raw OpenClaw event.
channelNamestringThe OpenClaw channel name (e.g., "discord", "signal").
routeConfigOpenClawChannelRouteConfigThe per-channel routing configuration.
bridgeOpenClawBridgeChannelThe OpenClaw bridge for sending responses.
messageProcessorFunc<string, string, Task<string>>Callback that runs user content through the JD.AI agent and returns the response.
ctCancellationTokenCancellation token.