From 101a05992e1e86bc970926e16d6bbb79cd53f635 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 6 Aug 2026 15:23:15 +0000 Subject: [PATCH 1/4] chore: agent-server (software-agent-sdk) to v1.41.0 --- AGENTS.md | 6 +-- README.md | 4 +- package.json | 2 +- src/generated/agent-server-schema.ts | 76 +++++----------------------- 4 files changed, 20 insertions(+), 68 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 0d8f185..f72c0fe 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -386,10 +386,10 @@ Integration tests are in `src/__tests__/integration/` and require a running agen export LLM_API_KEY="your-api-key" export LLM_MODEL="anthropic/claude-sonnet-4-5-20250929" -# Start agent-server in Docker (software-agent-sdk v1.40.0) +# Start agent-server in Docker (software-agent-sdk v1.41.0) docker run -d --name agent-server -p 127.0.0.1:8010:8000 \ -v /tmp/agent-workspace:/workspace \ - ghcr.io/openhands/agent-server:1.40.0-python --host 0.0.0.0 + ghcr.io/openhands/agent-server:1.41.0-python --host 0.0.0.0 # Run integration tests npm run test:integration @@ -418,7 +418,7 @@ Required GitHub secrets: ### CI Image Version -- The integration workflow pins `ghcr.io/openhands/agent-server:1.40.0-python`, which corresponds to the `software-agent-sdk` release `v1.40.0`. +- The integration workflow pins `ghcr.io/openhands/agent-server:1.41.0-python`, which corresponds to the `software-agent-sdk` release `v1.41.0`. - Keep the TypeScript client tests strict against that released server image rather than adding compatibility fallbacks for older prerelease builds. ## Agent Behavior Guidelines diff --git a/README.md b/README.md index 0f96b72..0cc99f3 100644 --- a/README.md +++ b/README.md @@ -473,14 +473,14 @@ Integration tests require a running agent-server in Docker with a mounted worksp chmod 777 /tmp/agent-workspace ``` -2. Start the agent-server container (software-agent-sdk v1.40.0): +2. Start the agent-server container (software-agent-sdk v1.41.0): ```bash docker run -d \ --name agent-server \ -p 127.0.0.1:8010:8000 \ -v /tmp/agent-workspace:/workspace \ - ghcr.io/openhands/agent-server:1.40.0-python --host 0.0.0.0 + ghcr.io/openhands/agent-server:1.41.0-python --host 0.0.0.0 ``` 3. Wait for the server to be ready: diff --git a/package.json b/package.json index 001b6b8..9819dbe 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ } }, "config": { - "agentServerImage": "ghcr.io/openhands/agent-server:1.40.0-python" + "agentServerImage": "ghcr.io/openhands/agent-server:1.41.0-python" }, "scripts": { "build": "tsc && node ./scripts/copy-json-assets.mjs && node ./scripts/rewrite-relative-imports.mjs", diff --git a/src/generated/agent-server-schema.ts b/src/generated/agent-server-schema.ts index 1b5b718..eb2613e 100644 --- a/src/generated/agent-server-schema.ts +++ b/src/generated/agent-server-schema.ts @@ -1,5 +1,5 @@ // Generated file. Do not edit by hand. -// Source: ghcr.io/openhands/agent-server:1.40.0-python +// Source: ghcr.io/openhands/agent-server:1.41.0-python // Regenerate with: npm run generate:agent-server-api // This file is auto-generated by @hey-api/openapi-ts @@ -1437,16 +1437,6 @@ export type AgentDefinition = { mcp_config?: { [key: string]: McpServerInput; } | null; - /** - * Mcp Servers - * - * Deprecated compatibility alias for mcp_config. Use mcp_config for new clients. - * - * @deprecated - */ - mcp_servers?: { - [key: string]: unknown; - } | null; /** * Metadata * @@ -1715,14 +1705,6 @@ export type AgentProfileDiagnostics = { * Resolved Mcp Config Keys */ resolved_mcp_config_keys?: Array; - /** - * Resolved Mcp Servers - * - * Deprecated alias for resolved_mcp_config_keys. - * - * @deprecated - */ - resolved_mcp_servers?: Array; /** * Resolved Settings */ @@ -9625,14 +9607,6 @@ export type RedactedThinkingBlock = { * Legacy remote MCP server spec accepted by the public REST API. */ export type RemoteMcpServer = { - /** - * Api Key - * - * Deprecated bearer token. Prefer auth.strategy='bearer'. If provided without auth, sent as 'Authorization: Bearer '. - * - * @deprecated - */ - api_key?: string | null; /** * Auth */ @@ -12921,10 +12895,22 @@ export type WebhookSpec = { headers?: { [key: string]: string; }; + /** + * Max Batch Bytes + * + * Upper bound on the serialized size of each webhook request. A single event larger than this limit is sent by itself. + */ + max_batch_bytes?: number; + /** + * Max Queue Bytes + * + * Upper bound on the serialized size of events buffered for delivery. The oldest events are dropped when the queue exceeds this bound. + */ + max_queue_bytes?: number; /** * Max Queue Size * - * Upper bound on the number of events buffered for delivery. When the downstream is failing and events are re-queued for retry, the oldest events are dropped past this bound to prevent unbounded memory growth. + * Upper bound on the number of events buffered for delivery. The oldest events are dropped past this bound to prevent unbounded memory growth. */ max_queue_size?: number; /** @@ -13248,14 +13234,6 @@ export type WriteFileTool = { * Legacy remote MCP server spec accepted by the public REST API. */ export type RemoteMcpServerSpec = { - /** - * Api Key - * - * Deprecated bearer token. Prefer auth.strategy='bearer'. If provided without auth, sent as 'Authorization: Bearer '. - * - * @deprecated - */ - api_key?: string | null; /** * Auth */ @@ -14422,16 +14400,6 @@ export type AgentDefinitionWritable = { mcp_config?: { [key: string]: McpServerInputWritable; } | null; - /** - * Mcp Servers - * - * Deprecated compatibility alias for mcp_config. Use mcp_config for new clients. - * - * @deprecated - */ - mcp_servers?: { - [key: string]: unknown; - } | null; /** * Metadata * @@ -17217,14 +17185,6 @@ export type ReadFileToolWritable = { * Legacy remote MCP server spec accepted by the public REST API. */ export type RemoteMcpServerWritable = { - /** - * Api Key - * - * Deprecated bearer token. Prefer auth.strategy='bearer'. If provided without auth, sent as 'Authorization: Bearer '. - * - * @deprecated - */ - api_key?: string | null; /** * Auth */ @@ -18642,14 +18602,6 @@ export type WriteFileToolWritable = { * Legacy remote MCP server spec accepted by the public REST API. */ export type RemoteMcpServerSpecWritable = { - /** - * Api Key - * - * Deprecated bearer token. Prefer auth.strategy='bearer'. If provided without auth, sent as 'Authorization: Bearer '. - * - * @deprecated - */ - api_key?: string | null; /** * Auth */ From 61ad179483081b383c7c8587e79d66fde2ab91fc Mon Sep 17 00:00:00 2001 From: Vasco Schiavo <115561717+VascoSch92@users.noreply.github.com> Date: Thu, 6 Aug 2026 18:01:34 +0200 Subject: [PATCH 2/4] fix: sync acp-providers.json with openhands-sdk ACP_PROVIDERS (#328) --- src/models/acp-providers.json | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/models/acp-providers.json b/src/models/acp-providers.json index 6c1285f..d76a1e8 100644 --- a/src/models/acp-providers.json +++ b/src/models/acp-providers.json @@ -2,7 +2,7 @@ "claude-code": { "key": "claude-code", "display_name": "Claude Code", - "default_command": ["npx", "-y", "@agentclientprotocol/claude-agent-acp@0.44.0"], + "default_command": ["npx", "-y", "@agentclientprotocol/claude-agent-acp@0.63.0"], "api_key_env_var": "ANTHROPIC_API_KEY", "base_url_env_var": "ANTHROPIC_BASE_URL", "default_session_mode": "bypassPermissions", @@ -16,15 +16,19 @@ }, { "id": "opus[1m]", - "label": "Claude Opus 4.8 (1M)" + "label": "Claude Opus (1M)" + }, + { + "id": "claude-opus-5", + "label": "Claude Opus 5" }, { "id": "sonnet", - "label": "Claude Sonnet 4.6" + "label": "Claude Sonnet" }, { "id": "haiku", - "label": "Claude Haiku 4.5" + "label": "Claude Haiku" } ], "default_model": "opus[1m]", @@ -36,7 +40,7 @@ "codex": { "key": "codex", "display_name": "Codex", - "default_command": ["npx", "-y", "@agentclientprotocol/codex-acp@1.1.2"], + "default_command": ["npx", "-y", "@agentclientprotocol/codex-acp@1.1.7"], "api_key_env_var": "OPENAI_API_KEY", "base_url_env_var": "OPENAI_BASE_URL", "default_session_mode": "agent-full-access", From 315f3a439def362718c4b62bca98f360025531a3 Mon Sep 17 00:00:00 2001 From: Vasco Schiavo <115561717+VascoSch92@users.noreply.github.com> Date: Thu, 6 Aug 2026 18:13:54 +0200 Subject: [PATCH 3/4] fix: update codex-acp version assertion in acp-providers test (#329) --- src/__tests__/acp-providers.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/__tests__/acp-providers.test.ts b/src/__tests__/acp-providers.test.ts index 02a7fd5..f637721 100644 --- a/src/__tests__/acp-providers.test.ts +++ b/src/__tests__/acp-providers.test.ts @@ -41,7 +41,7 @@ describe('ACP provider credential descriptors', () => { it('uses the maintained Codex adapter and exposes GPT-5.6 models', () => { const codex = ACP_PROVIDERS.codex; - expect(codex.default_command).toEqual(['npx', '-y', '@agentclientprotocol/codex-acp@1.1.2']); + expect(codex.default_command).toEqual(['npx', '-y', '@agentclientprotocol/codex-acp@1.1.7']); expect(codex.default_session_mode).toBe('agent-full-access'); expect(codex.available_models.map((model) => model.id)).toEqual( expect.arrayContaining(['gpt-5.6', 'gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.6-luna']) From e9b2b5f2e745e894d02368cf297a0adfaff0c02b Mon Sep 17 00:00:00 2001 From: Vasco Schiavo <115561717+VascoSch92@users.noreply.github.com> Date: Fri, 7 Aug 2026 10:42:54 +0200 Subject: [PATCH 4/4] chore: empty commit to retrigger CI