UNPKG

@gguf/claw

Version:

Multi-channel AI gateway with extensible messaging integrations

78 lines (77 loc) 2.88 kB
import type { ClientToolDefinition } from "../../agents/pi-embedded-runner/run/params.js"; import type { ChannelOutboundTargetMode } from "../../channels/plugins/types.js"; import type { InputProvenance } from "../../sessions/input-provenance.js"; /** Image content block for Claude API multimodal messages. */ export type ImageContent = { type: "image"; data: string; mimeType: string; }; export type AgentStreamParams = { /** Provider stream params override (best-effort). */ temperature?: number; maxTokens?: number; }; export type AgentRunContext = { messageChannel?: string; accountId?: string; groupId?: string | null; groupChannel?: string | null; groupSpace?: string | null; currentChannelId?: string; currentThreadTs?: string; replyToMode?: "off" | "first" | "all"; hasRepliedRef?: { value: boolean; }; }; export type AgentCommandOpts = { message: string; /** Optional image attachments for multimodal messages. */ images?: ImageContent[]; /** Optional client-provided tools (OpenResponses hosted tools). */ clientTools?: ClientToolDefinition[]; /** Agent id override (must exist in config). */ agentId?: string; to?: string; sessionId?: string; sessionKey?: string; thinking?: string; thinkingOnce?: string; verbose?: string; json?: boolean; timeout?: string; deliver?: boolean; /** Override delivery target (separate from session routing). */ replyTo?: string; /** Override delivery channel (separate from session routing). */ replyChannel?: string; /** Override delivery account id (separate from session routing). */ replyAccountId?: string; /** Override delivery thread/topic id (separate from session routing). */ threadId?: string | number; /** Message channel context (webchat|voicewake|whatsapp|...). */ messageChannel?: string; channel?: string; /** Account ID for multi-account channel routing (e.g., WhatsApp account). */ accountId?: string; /** Context for embedded run routing (channel/account/thread). */ runContext?: AgentRunContext; /** Group id for channel-level tool policy resolution. */ groupId?: string | null; /** Group channel label for channel-level tool policy resolution. */ groupChannel?: string | null; /** Group space label for channel-level tool policy resolution. */ groupSpace?: string | null; /** Parent session key for subagent policy inheritance. */ spawnedBy?: string | null; deliveryTargetMode?: ChannelOutboundTargetMode; bestEffortDeliver?: boolean; abortSignal?: AbortSignal; lane?: string; runId?: string; extraSystemPrompt?: string; inputProvenance?: InputProvenance; /** Per-call stream param overrides (best-effort). */ streamParams?: AgentStreamParams; };