UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

64 lines (63 loc) 1.67 kB
import { i as runComfyWorkflow, r as isComfyCapabilityConfigured, t as DEFAULT_COMFY_MODEL } from "./workflow-runtime-Bg2gqOI5.js"; //#region extensions/comfy/image-generation-provider.ts function buildComfyImageGenerationProvider() { return { id: "comfy", label: "ComfyUI", defaultModel: DEFAULT_COMFY_MODEL, models: [DEFAULT_COMFY_MODEL], isConfigured: ({ cfg, agentDir }) => isComfyCapabilityConfigured({ cfg, agentDir, capability: "image" }), capabilities: { generate: { maxCount: 1, supportsSize: false, supportsAspectRatio: false, supportsResolution: false }, edit: { enabled: true, maxCount: 1, maxInputImages: 1, supportsSize: false, supportsAspectRatio: false, supportsResolution: false } }, async generateImage(req) { if ((req.inputImages?.length ?? 0) > 1) throw new Error("Comfy image generation currently supports at most one reference image"); const result = await runComfyWorkflow({ cfg: req.cfg, agentDir: req.agentDir, authStore: req.authStore, prompt: req.prompt, model: req.model, timeoutMs: req.timeoutMs, capability: "image", outputKinds: ["images"], inputImage: req.inputImages?.[0] }); return { images: result.assets.map((asset) => ({ buffer: asset.buffer, mimeType: asset.mimeType, fileName: asset.fileName, metadata: { nodeId: asset.nodeId, promptId: result.promptId } })), model: result.model, metadata: { promptId: result.promptId, outputNodeIds: result.outputNodeIds } }; } }; } //#endregion export { buildComfyImageGenerationProvider as t };