UNPKG

@gguf/claw

Version:

Multi-channel AI gateway with extensible messaging integrations

917 lines (916 loc) 48.8 kB
import { z } from "zod"; import { AgentModelSchema } from "./zod-schema.agent-model.js"; export declare const HeartbeatSchema: z.ZodOptional<z.ZodObject<{ every: z.ZodOptional<z.ZodString>; activeHours: z.ZodOptional<z.ZodObject<{ start: z.ZodOptional<z.ZodString>; end: z.ZodOptional<z.ZodString>; timezone: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; model: z.ZodOptional<z.ZodString>; session: z.ZodOptional<z.ZodString>; includeReasoning: z.ZodOptional<z.ZodBoolean>; target: z.ZodOptional<z.ZodString>; to: z.ZodOptional<z.ZodString>; accountId: z.ZodOptional<z.ZodString>; prompt: z.ZodOptional<z.ZodString>; ackMaxChars: z.ZodOptional<z.ZodNumber>; suppressToolErrorWarnings: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; export declare const SandboxDockerSchema: z.ZodOptional<z.ZodObject<{ image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; workdir: z.ZodOptional<z.ZodString>; readOnlyRoot: z.ZodOptional<z.ZodBoolean>; tmpfs: z.ZodOptional<z.ZodArray<z.ZodString>>; network: z.ZodOptional<z.ZodString>; user: z.ZodOptional<z.ZodString>; capDrop: z.ZodOptional<z.ZodArray<z.ZodString>>; env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; setupCommand: z.ZodOptional<z.ZodString>; pidsLimit: z.ZodOptional<z.ZodNumber>; memory: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; memorySwap: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; cpus: z.ZodOptional<z.ZodNumber>; ulimits: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodObject<{ soft: z.ZodOptional<z.ZodNumber>; hard: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>]>>>; seccompProfile: z.ZodOptional<z.ZodString>; apparmorProfile: z.ZodOptional<z.ZodString>; dns: z.ZodOptional<z.ZodArray<z.ZodString>>; extraHosts: z.ZodOptional<z.ZodArray<z.ZodString>>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; export declare const SandboxBrowserSchema: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; cdpPort: z.ZodOptional<z.ZodNumber>; vncPort: z.ZodOptional<z.ZodNumber>; noVncPort: z.ZodOptional<z.ZodNumber>; headless: z.ZodOptional<z.ZodBoolean>; enableNoVnc: z.ZodOptional<z.ZodBoolean>; allowHostControl: z.ZodOptional<z.ZodBoolean>; autoStart: z.ZodOptional<z.ZodBoolean>; autoStartTimeoutMs: z.ZodOptional<z.ZodNumber>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; export declare const SandboxPruneSchema: z.ZodOptional<z.ZodObject<{ idleHours: z.ZodOptional<z.ZodNumber>; maxAgeDays: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; export declare const ToolPolicySchema: z.ZodOptional<z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; export declare const ToolsWebSearchSchema: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; provider: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"brave">, z.ZodLiteral<"perplexity">, z.ZodLiteral<"grok">]>>; apiKey: z.ZodOptional<z.ZodString>; maxResults: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; perplexity: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; baseUrl: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; grok: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; inlineCitations: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; export declare const ToolsWebFetchSchema: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; maxChars: z.ZodOptional<z.ZodNumber>; maxCharsCap: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; maxRedirects: z.ZodOptional<z.ZodNumber>; userAgent: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; export declare const ToolsWebSchema: z.ZodOptional<z.ZodObject<{ search: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; provider: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"brave">, z.ZodLiteral<"perplexity">, z.ZodLiteral<"grok">]>>; apiKey: z.ZodOptional<z.ZodString>; maxResults: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; perplexity: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; baseUrl: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; grok: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; inlineCitations: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; fetch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; maxChars: z.ZodOptional<z.ZodNumber>; maxCharsCap: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; maxRedirects: z.ZodOptional<z.ZodNumber>; userAgent: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>; export declare const ToolProfileSchema: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; export declare const ToolPolicyWithProfileSchema: z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; }, z.core.$strict>; export declare const ElevatedAllowFromSchema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>>; export declare const AgentSandboxSchema: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"off">, z.ZodLiteral<"non-main">, z.ZodLiteral<"all">]>>; workspaceAccess: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"none">, z.ZodLiteral<"ro">, z.ZodLiteral<"rw">]>>; sessionToolsVisibility: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"spawned">, z.ZodLiteral<"all">]>>; scope: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"session">, z.ZodLiteral<"agent">, z.ZodLiteral<"shared">]>>; perSession: z.ZodOptional<z.ZodBoolean>; workspaceRoot: z.ZodOptional<z.ZodString>; docker: z.ZodOptional<z.ZodObject<{ image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; workdir: z.ZodOptional<z.ZodString>; readOnlyRoot: z.ZodOptional<z.ZodBoolean>; tmpfs: z.ZodOptional<z.ZodArray<z.ZodString>>; network: z.ZodOptional<z.ZodString>; user: z.ZodOptional<z.ZodString>; capDrop: z.ZodOptional<z.ZodArray<z.ZodString>>; env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; setupCommand: z.ZodOptional<z.ZodString>; pidsLimit: z.ZodOptional<z.ZodNumber>; memory: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; memorySwap: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; cpus: z.ZodOptional<z.ZodNumber>; ulimits: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodObject<{ soft: z.ZodOptional<z.ZodNumber>; hard: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>]>>>; seccompProfile: z.ZodOptional<z.ZodString>; apparmorProfile: z.ZodOptional<z.ZodString>; dns: z.ZodOptional<z.ZodArray<z.ZodString>>; extraHosts: z.ZodOptional<z.ZodArray<z.ZodString>>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; browser: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; cdpPort: z.ZodOptional<z.ZodNumber>; vncPort: z.ZodOptional<z.ZodNumber>; noVncPort: z.ZodOptional<z.ZodNumber>; headless: z.ZodOptional<z.ZodBoolean>; enableNoVnc: z.ZodOptional<z.ZodBoolean>; allowHostControl: z.ZodOptional<z.ZodBoolean>; autoStart: z.ZodOptional<z.ZodBoolean>; autoStartTimeoutMs: z.ZodOptional<z.ZodNumber>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; prune: z.ZodOptional<z.ZodObject<{ idleHours: z.ZodOptional<z.ZodNumber>; maxAgeDays: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; export declare const AgentToolsSchema: z.ZodOptional<z.ZodObject<{ profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; byProvider: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; }, z.core.$strict>>>; elevated: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; allowFrom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>>; }, z.core.$strict>>; exec: z.ZodOptional<z.ZodObject<{ approvalRunningNoticeMs: z.ZodOptional<z.ZodNumber>; host: z.ZodOptional<z.ZodEnum<{ sandbox: "sandbox"; gateway: "gateway"; node: "node"; }>>; security: z.ZodOptional<z.ZodEnum<{ allowlist: "allowlist"; deny: "deny"; full: "full"; }>>; ask: z.ZodOptional<z.ZodEnum<{ off: "off"; "on-miss": "on-miss"; always: "always"; }>>; node: z.ZodOptional<z.ZodString>; pathPrepend: z.ZodOptional<z.ZodArray<z.ZodString>>; safeBins: z.ZodOptional<z.ZodArray<z.ZodString>>; backgroundMs: z.ZodOptional<z.ZodNumber>; timeoutSec: z.ZodOptional<z.ZodNumber>; cleanupMs: z.ZodOptional<z.ZodNumber>; notifyOnExit: z.ZodOptional<z.ZodBoolean>; notifyOnExitEmptySuccess: z.ZodOptional<z.ZodBoolean>; applyPatch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; workspaceOnly: z.ZodOptional<z.ZodBoolean>; allowModels: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; fs: z.ZodOptional<z.ZodObject<{ workspaceOnly: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; loopDetection: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; historySize: z.ZodOptional<z.ZodNumber>; warningThreshold: z.ZodOptional<z.ZodNumber>; criticalThreshold: z.ZodOptional<z.ZodNumber>; globalCircuitBreakerThreshold: z.ZodOptional<z.ZodNumber>; detectors: z.ZodOptional<z.ZodObject<{ genericRepeat: z.ZodOptional<z.ZodBoolean>; knownPollNoProgress: z.ZodOptional<z.ZodBoolean>; pingPong: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; sandbox: z.ZodOptional<z.ZodObject<{ tools: z.ZodOptional<z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>>; export declare const MemorySearchSchema: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; sources: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"memory">, z.ZodLiteral<"sessions">]>>>; extraPaths: z.ZodOptional<z.ZodArray<z.ZodString>>; experimental: z.ZodOptional<z.ZodObject<{ sessionMemory: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; provider: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"openai">, z.ZodLiteral<"local">, z.ZodLiteral<"gemini">, z.ZodLiteral<"voyage">]>>; remote: z.ZodOptional<z.ZodObject<{ baseUrl: z.ZodOptional<z.ZodString>; apiKey: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; batch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; wait: z.ZodOptional<z.ZodBoolean>; concurrency: z.ZodOptional<z.ZodNumber>; pollIntervalMs: z.ZodOptional<z.ZodNumber>; timeoutMinutes: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; fallback: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"openai">, z.ZodLiteral<"gemini">, z.ZodLiteral<"local">, z.ZodLiteral<"voyage">, z.ZodLiteral<"none">]>>; model: z.ZodOptional<z.ZodString>; local: z.ZodOptional<z.ZodObject<{ modelPath: z.ZodOptional<z.ZodString>; modelCacheDir: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; store: z.ZodOptional<z.ZodObject<{ driver: z.ZodOptional<z.ZodLiteral<"sqlite">>; path: z.ZodOptional<z.ZodString>; vector: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; extensionPath: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>; chunking: z.ZodOptional<z.ZodObject<{ tokens: z.ZodOptional<z.ZodNumber>; overlap: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; sync: z.ZodOptional<z.ZodObject<{ onSessionStart: z.ZodOptional<z.ZodBoolean>; onSearch: z.ZodOptional<z.ZodBoolean>; watch: z.ZodOptional<z.ZodBoolean>; watchDebounceMs: z.ZodOptional<z.ZodNumber>; intervalMinutes: z.ZodOptional<z.ZodNumber>; sessions: z.ZodOptional<z.ZodObject<{ deltaBytes: z.ZodOptional<z.ZodNumber>; deltaMessages: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; query: z.ZodOptional<z.ZodObject<{ maxResults: z.ZodOptional<z.ZodNumber>; minScore: z.ZodOptional<z.ZodNumber>; hybrid: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; vectorWeight: z.ZodOptional<z.ZodNumber>; textWeight: z.ZodOptional<z.ZodNumber>; candidateMultiplier: z.ZodOptional<z.ZodNumber>; mmr: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; lambda: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; temporalDecay: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; halfLifeDays: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>>; cache: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; maxEntries: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; export { AgentModelSchema }; export declare const AgentEntrySchema: z.ZodObject<{ id: z.ZodString; default: z.ZodOptional<z.ZodBoolean>; name: z.ZodOptional<z.ZodString>; workspace: z.ZodOptional<z.ZodString>; agentDir: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{ primary: z.ZodOptional<z.ZodString>; fallbacks: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>]>>; skills: z.ZodOptional<z.ZodArray<z.ZodString>>; memorySearch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; sources: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"memory">, z.ZodLiteral<"sessions">]>>>; extraPaths: z.ZodOptional<z.ZodArray<z.ZodString>>; experimental: z.ZodOptional<z.ZodObject<{ sessionMemory: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; provider: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"openai">, z.ZodLiteral<"local">, z.ZodLiteral<"gemini">, z.ZodLiteral<"voyage">]>>; remote: z.ZodOptional<z.ZodObject<{ baseUrl: z.ZodOptional<z.ZodString>; apiKey: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; batch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; wait: z.ZodOptional<z.ZodBoolean>; concurrency: z.ZodOptional<z.ZodNumber>; pollIntervalMs: z.ZodOptional<z.ZodNumber>; timeoutMinutes: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; fallback: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"openai">, z.ZodLiteral<"gemini">, z.ZodLiteral<"local">, z.ZodLiteral<"voyage">, z.ZodLiteral<"none">]>>; model: z.ZodOptional<z.ZodString>; local: z.ZodOptional<z.ZodObject<{ modelPath: z.ZodOptional<z.ZodString>; modelCacheDir: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; store: z.ZodOptional<z.ZodObject<{ driver: z.ZodOptional<z.ZodLiteral<"sqlite">>; path: z.ZodOptional<z.ZodString>; vector: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; extensionPath: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>; chunking: z.ZodOptional<z.ZodObject<{ tokens: z.ZodOptional<z.ZodNumber>; overlap: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; sync: z.ZodOptional<z.ZodObject<{ onSessionStart: z.ZodOptional<z.ZodBoolean>; onSearch: z.ZodOptional<z.ZodBoolean>; watch: z.ZodOptional<z.ZodBoolean>; watchDebounceMs: z.ZodOptional<z.ZodNumber>; intervalMinutes: z.ZodOptional<z.ZodNumber>; sessions: z.ZodOptional<z.ZodObject<{ deltaBytes: z.ZodOptional<z.ZodNumber>; deltaMessages: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; query: z.ZodOptional<z.ZodObject<{ maxResults: z.ZodOptional<z.ZodNumber>; minScore: z.ZodOptional<z.ZodNumber>; hybrid: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; vectorWeight: z.ZodOptional<z.ZodNumber>; textWeight: z.ZodOptional<z.ZodNumber>; candidateMultiplier: z.ZodOptional<z.ZodNumber>; mmr: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; lambda: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; temporalDecay: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; halfLifeDays: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>>; cache: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; maxEntries: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; humanDelay: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"off">, z.ZodLiteral<"natural">, z.ZodLiteral<"custom">]>>; minMs: z.ZodOptional<z.ZodNumber>; maxMs: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; heartbeat: z.ZodOptional<z.ZodObject<{ every: z.ZodOptional<z.ZodString>; activeHours: z.ZodOptional<z.ZodObject<{ start: z.ZodOptional<z.ZodString>; end: z.ZodOptional<z.ZodString>; timezone: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; model: z.ZodOptional<z.ZodString>; session: z.ZodOptional<z.ZodString>; includeReasoning: z.ZodOptional<z.ZodBoolean>; target: z.ZodOptional<z.ZodString>; to: z.ZodOptional<z.ZodString>; accountId: z.ZodOptional<z.ZodString>; prompt: z.ZodOptional<z.ZodString>; ackMaxChars: z.ZodOptional<z.ZodNumber>; suppressToolErrorWarnings: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; identity: z.ZodOptional<z.ZodObject<{ name: z.ZodOptional<z.ZodString>; theme: z.ZodOptional<z.ZodString>; emoji: z.ZodOptional<z.ZodString>; avatar: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; groupChat: z.ZodOptional<z.ZodObject<{ mentionPatterns: z.ZodOptional<z.ZodArray<z.ZodString>>; historyLimit: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; subagents: z.ZodOptional<z.ZodObject<{ allowAgents: z.ZodOptional<z.ZodArray<z.ZodString>>; model: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{ primary: z.ZodOptional<z.ZodString>; fallbacks: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>]>>; thinking: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; sandbox: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"off">, z.ZodLiteral<"non-main">, z.ZodLiteral<"all">]>>; workspaceAccess: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"none">, z.ZodLiteral<"ro">, z.ZodLiteral<"rw">]>>; sessionToolsVisibility: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"spawned">, z.ZodLiteral<"all">]>>; scope: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"session">, z.ZodLiteral<"agent">, z.ZodLiteral<"shared">]>>; perSession: z.ZodOptional<z.ZodBoolean>; workspaceRoot: z.ZodOptional<z.ZodString>; docker: z.ZodOptional<z.ZodObject<{ image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; workdir: z.ZodOptional<z.ZodString>; readOnlyRoot: z.ZodOptional<z.ZodBoolean>; tmpfs: z.ZodOptional<z.ZodArray<z.ZodString>>; network: z.ZodOptional<z.ZodString>; user: z.ZodOptional<z.ZodString>; capDrop: z.ZodOptional<z.ZodArray<z.ZodString>>; env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; setupCommand: z.ZodOptional<z.ZodString>; pidsLimit: z.ZodOptional<z.ZodNumber>; memory: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; memorySwap: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>; cpus: z.ZodOptional<z.ZodNumber>; ulimits: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodObject<{ soft: z.ZodOptional<z.ZodNumber>; hard: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>]>>>; seccompProfile: z.ZodOptional<z.ZodString>; apparmorProfile: z.ZodOptional<z.ZodString>; dns: z.ZodOptional<z.ZodArray<z.ZodString>>; extraHosts: z.ZodOptional<z.ZodArray<z.ZodString>>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; browser: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; image: z.ZodOptional<z.ZodString>; containerPrefix: z.ZodOptional<z.ZodString>; cdpPort: z.ZodOptional<z.ZodNumber>; vncPort: z.ZodOptional<z.ZodNumber>; noVncPort: z.ZodOptional<z.ZodNumber>; headless: z.ZodOptional<z.ZodBoolean>; enableNoVnc: z.ZodOptional<z.ZodBoolean>; allowHostControl: z.ZodOptional<z.ZodBoolean>; autoStart: z.ZodOptional<z.ZodBoolean>; autoStartTimeoutMs: z.ZodOptional<z.ZodNumber>; binds: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; prune: z.ZodOptional<z.ZodObject<{ idleHours: z.ZodOptional<z.ZodNumber>; maxAgeDays: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>; }, z.core.$strict>>; tools: z.ZodOptional<z.ZodObject<{ profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; byProvider: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; }, z.core.$strict>>>; elevated: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; allowFrom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>>; }, z.core.$strict>>; exec: z.ZodOptional<z.ZodObject<{ approvalRunningNoticeMs: z.ZodOptional<z.ZodNumber>; host: z.ZodOptional<z.ZodEnum<{ sandbox: "sandbox"; gateway: "gateway"; node: "node"; }>>; security: z.ZodOptional<z.ZodEnum<{ allowlist: "allowlist"; deny: "deny"; full: "full"; }>>; ask: z.ZodOptional<z.ZodEnum<{ off: "off"; "on-miss": "on-miss"; always: "always"; }>>; node: z.ZodOptional<z.ZodString>; pathPrepend: z.ZodOptional<z.ZodArray<z.ZodString>>; safeBins: z.ZodOptional<z.ZodArray<z.ZodString>>; backgroundMs: z.ZodOptional<z.ZodNumber>; timeoutSec: z.ZodOptional<z.ZodNumber>; cleanupMs: z.ZodOptional<z.ZodNumber>; notifyOnExit: z.ZodOptional<z.ZodBoolean>; notifyOnExitEmptySuccess: z.ZodOptional<z.ZodBoolean>; applyPatch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; workspaceOnly: z.ZodOptional<z.ZodBoolean>; allowModels: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; fs: z.ZodOptional<z.ZodObject<{ workspaceOnly: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; loopDetection: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; historySize: z.ZodOptional<z.ZodNumber>; warningThreshold: z.ZodOptional<z.ZodNumber>; criticalThreshold: z.ZodOptional<z.ZodNumber>; globalCircuitBreakerThreshold: z.ZodOptional<z.ZodNumber>; detectors: z.ZodOptional<z.ZodObject<{ genericRepeat: z.ZodOptional<z.ZodBoolean>; knownPollNoProgress: z.ZodOptional<z.ZodBoolean>; pingPong: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; sandbox: z.ZodOptional<z.ZodObject<{ tools: z.ZodOptional<z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>; export declare const ToolsSchema: z.ZodOptional<z.ZodObject<{ profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; byProvider: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; profile: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"minimal">, z.ZodLiteral<"coding">, z.ZodLiteral<"messaging">, z.ZodLiteral<"full">]>>; }, z.core.$strict>>>; web: z.ZodOptional<z.ZodObject<{ search: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; provider: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"brave">, z.ZodLiteral<"perplexity">, z.ZodLiteral<"grok">]>>; apiKey: z.ZodOptional<z.ZodString>; maxResults: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; perplexity: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; baseUrl: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; grok: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; inlineCitations: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; fetch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; maxChars: z.ZodOptional<z.ZodNumber>; maxCharsCap: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; cacheTtlMinutes: z.ZodOptional<z.ZodNumber>; maxRedirects: z.ZodOptional<z.ZodNumber>; userAgent: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>; media: z.ZodOptional<z.ZodObject<{ models: z.ZodOptional<z.ZodArray<z.ZodOptional<z.ZodObject<{ provider: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; capabilities: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"image">, z.ZodLiteral<"audio">, z.ZodLiteral<"video">]>>>; type: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"provider">, z.ZodLiteral<"cli">]>>; command: z.ZodOptional<z.ZodString>; args: z.ZodOptional<z.ZodArray<z.ZodString>>; prompt: z.ZodOptional<z.ZodString>; maxChars: z.ZodOptional<z.ZodNumber>; maxBytes: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; profile: z.ZodOptional<z.ZodString>; preferredProfile: z.ZodOptional<z.ZodString>; }, z.core.$strict>>>>; concurrency: z.ZodOptional<z.ZodNumber>; image: z.ZodOptional<z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; scope: z.ZodOptional<z.ZodObject<{ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>>; rules: z.ZodOptional<z.ZodArray<z.ZodObject<{ action: z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>; match: z.ZodOptional<z.ZodObject<{ channel: z.ZodOptional<z.ZodString>; chatType: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"direct">, z.ZodLiteral<"group">, z.ZodLiteral<"channel">, z.ZodLiteral<"dm">]>>; keyPrefix: z.ZodOptional<z.ZodString>; rawKeyPrefix: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>>; }, z.core.$strict>>; maxBytes: z.ZodOptional<z.ZodNumber>; maxChars: z.ZodOptional<z.ZodNumber>; prompt: z.ZodOptional<z.ZodString>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; attachments: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"all">]>>; maxAttachments: z.ZodOptional<z.ZodNumber>; prefer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"last">, z.ZodLiteral<"path">, z.ZodLiteral<"url">]>>; }, z.core.$strict>>; models: z.ZodOptional<z.ZodArray<z.ZodOptional<z.ZodObject<{ provider: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; capabilities: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"image">, z.ZodLiteral<"audio">, z.ZodLiteral<"video">]>>>; type: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"provider">, z.ZodLiteral<"cli">]>>; command: z.ZodOptional<z.ZodString>; args: z.ZodOptional<z.ZodArray<z.ZodString>>; prompt: z.ZodOptional<z.ZodString>; maxChars: z.ZodOptional<z.ZodNumber>; maxBytes: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; profile: z.ZodOptional<z.ZodString>; preferredProfile: z.ZodOptional<z.ZodString>; }, z.core.$strict>>>>; }, z.core.$strict>>>; audio: z.ZodOptional<z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; scope: z.ZodOptional<z.ZodObject<{ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>>; rules: z.ZodOptional<z.ZodArray<z.ZodObject<{ action: z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>; match: z.ZodOptional<z.ZodObject<{ channel: z.ZodOptional<z.ZodString>; chatType: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"direct">, z.ZodLiteral<"group">, z.ZodLiteral<"channel">, z.ZodLiteral<"dm">]>>; keyPrefix: z.ZodOptional<z.ZodString>; rawKeyPrefix: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>>; }, z.core.$strict>>; maxBytes: z.ZodOptional<z.ZodNumber>; maxChars: z.ZodOptional<z.ZodNumber>; prompt: z.ZodOptional<z.ZodString>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; attachments: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"all">]>>; maxAttachments: z.ZodOptional<z.ZodNumber>; prefer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"last">, z.ZodLiteral<"path">, z.ZodLiteral<"url">]>>; }, z.core.$strict>>; models: z.ZodOptional<z.ZodArray<z.ZodOptional<z.ZodObject<{ provider: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; capabilities: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"image">, z.ZodLiteral<"audio">, z.ZodLiteral<"video">]>>>; type: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"provider">, z.ZodLiteral<"cli">]>>; command: z.ZodOptional<z.ZodString>; args: z.ZodOptional<z.ZodArray<z.ZodString>>; prompt: z.ZodOptional<z.ZodString>; maxChars: z.ZodOptional<z.ZodNumber>; maxBytes: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; profile: z.ZodOptional<z.ZodString>; preferredProfile: z.ZodOptional<z.ZodString>; }, z.core.$strict>>>>; }, z.core.$strict>>>; video: z.ZodOptional<z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; scope: z.ZodOptional<z.ZodObject<{ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>>; rules: z.ZodOptional<z.ZodArray<z.ZodObject<{ action: z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>; match: z.ZodOptional<z.ZodObject<{ channel: z.ZodOptional<z.ZodString>; chatType: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"direct">, z.ZodLiteral<"group">, z.ZodLiteral<"channel">, z.ZodLiteral<"dm">]>>; keyPrefix: z.ZodOptional<z.ZodString>; rawKeyPrefix: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>>; }, z.core.$strict>>; maxBytes: z.ZodOptional<z.ZodNumber>; maxChars: z.ZodOptional<z.ZodNumber>; prompt: z.ZodOptional<z.ZodString>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; attachments: z.ZodOptional<z.ZodObject<{ mode: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"all">]>>; maxAttachments: z.ZodOptional<z.ZodNumber>; prefer: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"first">, z.ZodLiteral<"last">, z.ZodLiteral<"path">, z.ZodLiteral<"url">]>>; }, z.core.$strict>>; models: z.ZodOptional<z.ZodArray<z.ZodOptional<z.ZodObject<{ provider: z.ZodOptional<z.ZodString>; model: z.ZodOptional<z.ZodString>; capabilities: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<"image">, z.ZodLiteral<"audio">, z.ZodLiteral<"video">]>>>; type: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"provider">, z.ZodLiteral<"cli">]>>; command: z.ZodOptional<z.ZodString>; args: z.ZodOptional<z.ZodArray<z.ZodString>>; prompt: z.ZodOptional<z.ZodString>; maxChars: z.ZodOptional<z.ZodNumber>; maxBytes: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; language: z.ZodOptional<z.ZodString>; providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>>; deepgram: z.ZodOptional<z.ZodObject<{ detectLanguage: z.ZodOptional<z.ZodBoolean>; punctuate: z.ZodOptional<z.ZodBoolean>; smartFormat: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; baseUrl: z.ZodOptional<z.ZodString>; headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; profile: z.ZodOptional<z.ZodString>; preferredProfile: z.ZodOptional<z.ZodString>; }, z.core.$strict>>>>; }, z.core.$strict>>>; }, z.core.$strict>>; links: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; scope: z.ZodOptional<z.ZodObject<{ default: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>>; rules: z.ZodOptional<z.ZodArray<z.ZodObject<{ action: z.ZodUnion<readonly [z.ZodLiteral<"allow">, z.ZodLiteral<"deny">]>; match: z.ZodOptional<z.ZodObject<{ channel: z.ZodOptional<z.ZodString>; chatType: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"direct">, z.ZodLiteral<"group">, z.ZodLiteral<"channel">, z.ZodLiteral<"dm">]>>; keyPrefix: z.ZodOptional<z.ZodString>; rawKeyPrefix: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>>; }, z.core.$strict>>; maxLinks: z.ZodOptional<z.ZodNumber>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; models: z.ZodOptional<z.ZodArray<z.ZodObject<{ type: z.ZodOptional<z.ZodLiteral<"cli">>; command: z.ZodString; args: z.ZodOptional<z.ZodArray<z.ZodString>>; timeoutSeconds: z.ZodOptional<z.ZodNumber>; }, z.core.$strict>>>; }, z.core.$strict>>; sessions: z.ZodOptional<z.ZodObject<{ visibility: z.ZodOptional<z.ZodEnum<{ all: "all"; self: "self"; tree: "tree"; agent: "agent"; }>>; }, z.core.$strict>>; loopDetection: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; historySize: z.ZodOptional<z.ZodNumber>; warningThreshold: z.ZodOptional<z.ZodNumber>; criticalThreshold: z.ZodOptional<z.ZodNumber>; globalCircuitBreakerThreshold: z.ZodOptional<z.ZodNumber>; detectors: z.ZodOptional<z.ZodObject<{ genericRepeat: z.ZodOptional<z.ZodBoolean>; knownPollNoProgress: z.ZodOptional<z.ZodBoolean>; pingPong: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; message: z.ZodOptional<z.ZodObject<{ allowCrossContextSend: z.ZodOptional<z.ZodBoolean>; crossContext: z.ZodOptional<z.ZodObject<{ allowWithinProvider: z.ZodOptional<z.ZodBoolean>; allowAcrossProviders: z.ZodOptional<z.ZodBoolean>; marker: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; prefix: z.ZodOptional<z.ZodString>; suffix: z.ZodOptional<z.ZodString>; }, z.core.$strict>>; }, z.core.$strict>>; broadcast: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; }, z.core.$strict>>; agentToAgent: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; allow: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; elevated: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; allowFrom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>>; }, z.core.$strict>>; exec: z.ZodOptional<z.ZodObject<{ host: z.ZodOptional<z.ZodEnum<{ sandbox: "sandbox"; gateway: "gateway"; node: "node"; }>>; security: z.ZodOptional<z.ZodEnum<{ allowlist: "allowlist"; deny: "deny"; full: "full"; }>>; ask: z.ZodOptional<z.ZodEnum<{ off: "off"; "on-miss": "on-miss"; always: "always"; }>>; node: z.ZodOptional<z.ZodString>; pathPrepend: z.ZodOptional<z.ZodArray<z.ZodString>>; safeBins: z.ZodOptional<z.ZodArray<z.ZodString>>; backgroundMs: z.ZodOptional<z.ZodNumber>; timeoutSec: z.ZodOptional<z.ZodNumber>; cleanupMs: z.ZodOptional<z.ZodNumber>; notifyOnExit: z.ZodOptional<z.ZodBoolean>; notifyOnExitEmptySuccess: z.ZodOptional<z.ZodBoolean>; applyPatch: z.ZodOptional<z.ZodObject<{ enabled: z.ZodOptional<z.ZodBoolean>; workspaceOnly: z.ZodOptional<z.ZodBoolean>; allowModels: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; fs: z.ZodOptional<z.ZodObject<{ workspaceOnly: z.ZodOptional<z.ZodBoolean>; }, z.core.$strict>>; subagents: z.ZodOptional<z.ZodObject<{ tools: z.ZodOptional<z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; sandbox: z.ZodOptional<z.ZodObject<{ tools: z.ZodOptional<z.ZodObject<{ allow: z.ZodOptional<z.ZodArray<z.ZodString>>; alsoAllow: z.ZodOptional<z.ZodArray<z.ZodString>>; deny: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>>;