





















@@ -565,7 +565,18 @@ export function createImageGenerateTool(options?: {
565565workspaceDir?: string;
566566sandbox?: ImageGenerateSandboxConfig;
567567fsPolicy?: ToolFsPolicy;
568-}): AnyAgentTool {
568+}): AnyAgentTool | null {
569+const cfg = options?.config ?? getRuntimeConfig();
570+const imageGenerationModelConfig = resolveImageGenerationModelConfigForTool({
571+ cfg,
572+agentDir: options?.agentDir,
573+});
574+if (!imageGenerationModelConfig) {
575+return null;
576+}
577+const effectiveCfg =
578+applyImageGenerationModelConfigDefaults(cfg, imageGenerationModelConfig) ?? cfg;
579+const remoteMediaSsrfPolicy = resolveRemoteMediaSsrfPolicy(effectiveCfg);
569580const sandboxConfig =
570581options?.sandbox && options.sandbox.root.trim()
571582 ? {
@@ -584,9 +595,8 @@ export function createImageGenerateTool(options?: {
584595execute: async (_toolCallId, args) => {
585596const params = args as Record<string, unknown>;
586597const action = resolveAction(params);
587-const cfg = options?.config ?? getRuntimeConfig();
588598if (action === "list") {
589-const runtimeProviders = listRuntimeImageGenerationProviders({ config: cfg });
599+const runtimeProviders = listRuntimeImageGenerationProviders({ config: effectiveCfg });
590600const providers = runtimeProviders.map((provider) =>
591601Object.assign(
592602{ id: provider.id },
@@ -597,7 +607,7 @@ export function createImageGenerateTool(options?: {
597607configured: isCapabilityProviderConfigured({
598608providers: runtimeProviders,
599609 provider,
600- cfg,
610+cfg: effectiveCfg,
601611agentDir: options?.agentDir,
602612}),
603613authEnvVars: getImageGenerationProviderAuthEnvVars(provider.id),
@@ -647,16 +657,6 @@ export function createImageGenerateTool(options?: {
647657};
648658}
649659650-const imageGenerationModelConfig = resolveImageGenerationModelConfigForTool({
651- cfg,
652-agentDir: options?.agentDir,
653-});
654-if (!imageGenerationModelConfig) {
655-throw new ToolInputError("No image-generation model configured.");
656-}
657-const effectiveCfg =
658-applyImageGenerationModelConfigDefaults(cfg, imageGenerationModelConfig) ?? cfg;
659-const remoteMediaSsrfPolicy = resolveRemoteMediaSsrfPolicy(effectiveCfg);
660660const prompt = readStringParam(params, "prompt", { required: true });
661661const imageInputs = normalizeReferenceImages(params);
662662const model = readStringParam(params, "model");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。