From e8b03a86223a033b4969e4e534d77b5545f0e75f Mon Sep 17 00:00:00 2001 From: HAL Date: Mon, 16 Feb 2026 15:03:47 -0600 Subject: [PATCH] fix(agents): replace anyOf with string in image tool schema MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Anthropic's API rejects `anyOf` in `input_schema`, causing all Claude requests to fail when the image tool is registered. Replace `Type.Union([Type.String(), Type.Array(Type.String())])` with `Type.String()` — the execute handler already normalizes both string and array inputs, so this is schema-only. Fixes #18551 --- src/agents/tools/image-tool.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/agents/tools/image-tool.ts b/src/agents/tools/image-tool.ts index 3d63623b7..acae02b77 100644 --- a/src/agents/tools/image-tool.ts +++ b/src/agents/tools/image-tool.ts @@ -376,7 +376,7 @@ export function createImageTool(options?: { description, parameters: Type.Object({ prompt: Type.Optional(Type.String()), - image: Type.Union([Type.String(), Type.Array(Type.String())]), + image: Type.String({ description: "Image path or URL (pass multiple as comma-separated)" }), model: Type.Optional(Type.String()), maxBytesMb: Type.Optional(Type.Number()), maxImages: Type.Optional(Type.Number()),