UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

60 lines 3.03 kB
import { Gs as PluginCommandContext, Ks as PluginCommandResult, bd as PluginCommandReplyOptions, yd as PLUGIN_COMMAND_DISPATCH } from "../agent-harness-runtime-CZIVRpx-.js"; import { r as OpenClawConfig } from "../types.openclaw-BdCLfP4c.js"; //#region src/plugins/plugin-command-runtime.d.ts declare const pluginCommandDispatchBrand: unique symbol; type PluginCommandDispatchContext = Readonly<{ senderId?: string; channel: string; channelId?: PluginCommandContext["channelId"]; isAuthorizedSender: boolean; senderIsOwner?: boolean; gatewayClientScopes?: PluginCommandContext["gatewayClientScopes"]; agentId?: string; sessionKey?: PluginCommandContext["sessionKey"]; sessionId?: PluginCommandContext["sessionId"]; sessionTarget?: PluginCommandContext["sessionTarget"]; sessionFile?: PluginCommandContext["sessionFile"]; authProfileId?: string; commandBody: string; config: OpenClawConfig; from?: PluginCommandContext["from"]; to?: PluginCommandContext["to"]; originatingTo?: string; accountId?: PluginCommandContext["accountId"]; messageThreadId?: PluginCommandContext["messageThreadId"]; threadParentId?: PluginCommandContext["threadParentId"]; diagnosticsSessions?: PluginCommandContext["diagnosticsSessions"]; diagnosticsUploadApproved?: PluginCommandContext["diagnosticsUploadApproved"]; diagnosticsPreviewOnly?: PluginCommandContext["diagnosticsPreviewOnly"]; diagnosticsPrivateRouted?: PluginCommandContext["diagnosticsPrivateRouted"]; runtimeContext?: { compactCurrent?: (signal?: AbortSignal) => ReturnType<NonNullable<NonNullable<PluginCommandContext["runtimeContext"]>["compactCurrent"]>>; }; }>; /** Opaque capability bound to one selected command in one registry generation. */ type PluginCommandDispatch = Readonly<{ kind: "plugin"; execute: (context: PluginCommandDispatchContext) => Promise<PluginCommandResult>; [pluginCommandDispatchBrand]: true; }>; type PluginCommandCatalogDecision = PluginCommandDispatch | Readonly<{ kind: "non-plugin"; }>; type PluginCommandNativeCandidate = Readonly<{ name: string; description: string; descriptionLocalizations?: Readonly<Record<string, string>>; acceptsArgs: boolean; requireAuth: boolean; progressMessage?: string; prepareDispatch: (rawArgs?: string) => PluginCommandCatalogDecision; }>; type PluginCommandRuntime = Readonly<{ listNativeCandidates: (provider: string) => readonly PluginCommandNativeCandidate[]; /** @deprecated Accounts reload automatically; retained for v2026.9.1 callers until the next breaking SDK. */ retainNativeCatalog: (provider: string) => void; }>; /** Creates one command runtime bound permanently to the current scoped registry generation. */ export declare function createPluginCommandRuntime(): PluginCommandRuntime; //#endregion export { PLUGIN_COMMAND_DISPATCH, type PluginCommandCatalogDecision, type PluginCommandDispatch, type PluginCommandDispatchContext, type PluginCommandNativeCandidate, type PluginCommandReplyOptions, type PluginCommandRuntime };