From cac93b0cc994f1b4fe5d984f92f7c17a9933fab3 Mon Sep 17 00:00:00 2001 From: Zamil Majdy Date: Thu, 12 Feb 2026 02:41:12 +0000 Subject: [PATCH] fix(chat): increase SDK buffer limit and add jq - Add sdk_max_buffer_size config option (default 10MB, was 1MB) - Pass max_buffer_size to ClaudeAgentOptions to prevent crashes on large tool outputs - Install jq in Dockerfile for JSON processing capabilities Fixes AUTOGPT-SERVER-7V2 --- autogpt_platform/backend/Dockerfile | 3 ++- autogpt_platform/backend/backend/api/features/chat/config.py | 5 +++++ .../backend/backend/api/features/chat/sdk/service.py | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/autogpt_platform/backend/Dockerfile b/autogpt_platform/backend/Dockerfile index 9bd455e490..ef783cc56c 100644 --- a/autogpt_platform/backend/Dockerfile +++ b/autogpt_platform/backend/Dockerfile @@ -62,12 +62,13 @@ ENV POETRY_HOME=/opt/poetry \ DEBIAN_FRONTEND=noninteractive ENV PATH=/opt/poetry/bin:$PATH -# Install Python, FFmpeg, and ImageMagick (required for video processing blocks) +# Install Python, FFmpeg, ImageMagick, and CLI tools for agent use RUN apt-get update && apt-get install -y \ python3.13 \ python3-pip \ ffmpeg \ imagemagick \ + jq \ && rm -rf /var/lib/apt/lists/* # Copy only necessary files from builder diff --git a/autogpt_platform/backend/backend/api/features/chat/config.py b/autogpt_platform/backend/backend/api/features/chat/config.py index dce774c5fb..eda88f23fe 100644 --- a/autogpt_platform/backend/backend/api/features/chat/config.py +++ b/autogpt_platform/backend/backend/api/features/chat/config.py @@ -97,6 +97,11 @@ class ChatConfig(BaseSettings): default=True, description="Use Claude Agent SDK for chat completions", ) + sdk_max_buffer_size: int = Field( + default=10 * 1024 * 1024, # 10MB (default SDK is 1MB) + description="Max buffer size in bytes for SDK JSON message parsing. " + "Increase if tool outputs exceed the limit.", + ) # Extended thinking configuration for Claude models thinking_enabled: bool = Field( diff --git a/autogpt_platform/backend/backend/api/features/chat/sdk/service.py b/autogpt_platform/backend/backend/api/features/chat/sdk/service.py index 4792267ce2..7ab5c10ed2 100644 --- a/autogpt_platform/backend/backend/api/features/chat/sdk/service.py +++ b/autogpt_platform/backend/backend/api/features/chat/sdk/service.py @@ -290,6 +290,7 @@ async def stream_chat_completion_sdk( allowed_tools=COPILOT_TOOL_NAMES, hooks=create_security_hooks(user_id, sdk_cwd=sdk_cwd), # type: ignore[arg-type] cwd=sdk_cwd, + max_buffer_size=config.sdk_max_buffer_size, ) adapter = SDKResponseAdapter(message_id=message_id)