From 70f70683559a7d490280a543cd66dfd1e0cdc215 Mon Sep 17 00:00:00 2001 From: Chojan Shang Date: Thu, 4 Dec 2025 22:57:56 +0800 Subject: [PATCH 1/3] chore: make check happy Signed-off-by: Chojan Shang --- examples/agent.py | 2 +- examples/echo_agent.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/agent.py b/examples/agent.py index 10f843f..af9979e 100644 --- a/examples/agent.py +++ b/examples/agent.py @@ -25,9 +25,9 @@ HttpMcpServer, ImageContentBlock, Implementation, + McpServerStdio, ResourceContentBlock, SseMcpServer, - McpServerStdio, TextContentBlock, ) diff --git a/examples/echo_agent.py b/examples/echo_agent.py index a3b1310..4823cc3 100644 --- a/examples/echo_agent.py +++ b/examples/echo_agent.py @@ -19,9 +19,9 @@ HttpMcpServer, ImageContentBlock, Implementation, + McpServerStdio, ResourceContentBlock, SseMcpServer, - McpServerStdio, TextContentBlock, ) From 35e033975c3bc6087468f01da20d6a6059e0f76a Mon Sep 17 00:00:00 2001 From: Chojan Shang Date: Thu, 4 Dec 2025 23:01:56 +0800 Subject: [PATCH 2/3] chore: gen schema with 0.9.1 Signed-off-by: Chojan Shang --- schema/VERSION | 2 +- schema/schema.json | 545 +++++++++++++++++++++---- src/acp/meta.py | 2 +- src/acp/schema.py | 995 ++++++++++++++++++++++++++++++++++----------- 4 files changed, 1229 insertions(+), 315 deletions(-) diff --git a/schema/VERSION b/schema/VERSION index 719c2e3..939db70 100644 --- a/schema/VERSION +++ b/schema/VERSION @@ -1 +1 @@ -refs/tags/v0.8.0 +refs/tags/v0.9.1 diff --git a/schema/schema.json b/schema/schema.json index a8570b4..938b199 100644 --- a/schema/schema.json +++ b/schema/schema.json @@ -4,7 +4,12 @@ "description": "Capabilities supported by the agent.\n\nAdvertised during initialization to inform the client about\navailable features and content types.\n\nSee protocol docs: [Agent Capabilities](https://agentclientprotocol.com/protocol/initialization#agent-capabilities)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "loadSession": { "default": false, @@ -255,7 +260,12 @@ "description": "Optional annotations for the client. The client can use annotations to inform how objects are used or displayed", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "audience": { "items": { @@ -286,7 +296,12 @@ "description": "Audio provided to or from an LLM.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "annotations": { "anyOf": [ @@ -315,7 +330,12 @@ "description": "Describes an available authentication method.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "description": { "description": "Optional description providing more details about this authentication method.", @@ -343,7 +363,12 @@ "description": "Request parameters for the authenticate method.\n\nSpecifies which authentication method to use.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "methodId": { "description": "The ID of the authentication method to use.\nMust be one of the methods advertised in the initialize response.", @@ -361,7 +386,12 @@ "description": "Response to the `authenticate` method.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object", @@ -372,7 +402,12 @@ "description": "Information about a command.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "description": { "description": "Human-readable description of what the command does.", @@ -417,7 +452,12 @@ "description": "Available commands are ready or have changed", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "availableCommands": { "description": "Commands the agent can execute", @@ -436,7 +476,12 @@ "description": "Binary resource contents.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "blob": { "type": "string" @@ -461,7 +506,12 @@ "description": "Notification to cancel ongoing operations for a session.\n\nSee protocol docs: [Cancellation](https://agentclientprotocol.com/protocol/prompt-turn#cancellation)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -483,7 +533,12 @@ "description": "Capabilities supported by the client.\n\nAdvertised during initialization to inform the agent about\navailable features and methods.\n\nSee protocol docs: [Client Capabilities](https://agentclientprotocol.com/protocol/initialization#client-capabilities)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "fs": { "allOf": [ @@ -713,7 +768,12 @@ "description": "Standard content block (text, images, resources).", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "allOf": [ @@ -831,7 +891,12 @@ "description": "A streamed item of content", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "allOf": [ @@ -851,7 +916,12 @@ "description": "Request to create a new terminal and execute a command.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "args": { "description": "Array of command arguments.", @@ -908,7 +978,12 @@ "description": "Response containing the ID of the created terminal.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "terminalId": { "description": "The unique identifier for the created terminal.", @@ -926,7 +1001,12 @@ "description": "The current mode of the session has changed\n\nSee protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "currentModeId": { "allOf": [ @@ -946,7 +1026,12 @@ "description": "A diff representing file modifications.\n\nShows changes to files in a format suitable for display in the client UI.\n\nSee protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "newText": { "description": "The new content after modification.", @@ -974,7 +1059,12 @@ "description": "The contents of a resource, embedded into a prompt or tool call result.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "annotations": { "anyOf": [ @@ -1010,7 +1100,12 @@ "description": "An environment variable to set when launching an MCP server.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "name": { "description": "The name of the environment variable.", @@ -1062,7 +1157,12 @@ "description": "Filesystem capabilities supported by the client.\nFile system capabilities that a client may support.\n\nSee protocol docs: [FileSystem](https://agentclientprotocol.com/protocol/initialization#filesystem)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "readTextFile": { "default": false, @@ -1081,7 +1181,12 @@ "description": "An HTTP header to set when making requests to the MCP server.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "name": { "description": "The name of the HTTP header.", @@ -1102,7 +1207,12 @@ "description": "An image provided to or from an LLM.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "annotations": { "anyOf": [ @@ -1137,7 +1247,12 @@ "description": "Metadata about the implementation of the client or agent.\nDescribes the name and version of an MCP implementation, with an optional\ntitle for UI representation.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "name": { "description": "Intended for programmatic or logical use, but can be used as a display\nname fallback if title isn\u2019t present.", @@ -1165,7 +1280,12 @@ "description": "Request parameters for the initialize method.\n\nSent by the client to establish connection and negotiate capabilities.\n\nSee protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "clientCapabilities": { "allOf": [ @@ -1213,7 +1333,12 @@ "description": "Response to the `initialize` method.\n\nContains the negotiated protocol version and agent capabilities.\n\nSee protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "agentCapabilities": { "allOf": [ @@ -1275,7 +1400,12 @@ "description": "Request to kill a terminal command without releasing the terminal.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -1302,7 +1432,12 @@ "description": "Response to terminal/kill command method", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object", @@ -1313,7 +1448,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nRequest parameters for listing existing sessions.\n\nOnly available if the Agent supports the `listSessions` capability.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "cursor": { "description": "Opaque cursor token from a previous response's nextCursor field for cursor-based pagination", @@ -1338,7 +1478,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nResponse from listing sessions.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "nextCursor": { "description": "Opaque cursor token. If present, pass this in the next request's cursor parameter\nto fetch the next page. If absent, there are no more results.", @@ -1366,7 +1511,12 @@ "description": "Request parameters for loading an existing session.\n\nOnly available if the Agent supports the `loadSession` capability.\n\nSee protocol docs: [Loading Sessions](https://agentclientprotocol.com/protocol/session-setup#loading-sessions)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "cwd": { "description": "The working directory for this session.", @@ -1401,7 +1551,12 @@ "description": "Response from loading an existing session.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "models": { "anyOf": [ @@ -1434,7 +1589,12 @@ "description": "MCP capabilities supported by the agent", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "http": { "default": false, @@ -1496,16 +1656,18 @@ "description": "Stdio transport configuration\n\nAll Agents MUST support this transport." } ], - "description": "Configuration for connecting to an MCP (Model Context Protocol) server.\n\nMCP servers provide tools and context that the agent can use when\nprocessing prompts.\n\nSee protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)", - "discriminator": { - "propertyName": "type" - } + "description": "Configuration for connecting to an MCP (Model Context Protocol) server.\n\nMCP servers provide tools and context that the agent can use when\nprocessing prompts.\n\nSee protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)" }, "McpServerHttp": { "description": "HTTP transport configuration for MCP.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "headers": { "description": "HTTP headers to set when making requests to the MCP server.", @@ -1534,7 +1696,12 @@ "description": "SSE transport configuration for MCP.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "headers": { "description": "HTTP headers to set when making requests to the MCP server.", @@ -1563,7 +1730,12 @@ "description": "Stdio transport configuration for MCP.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "args": { "description": "Command-line arguments to pass to the MCP server.", @@ -1604,7 +1776,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nInformation about a selectable model.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "description": { "description": "Optional description of the model.", @@ -1636,7 +1813,12 @@ "description": "Request parameters for creating a new session.\n\nSee protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "cwd": { "description": "The working directory for this session. Must be an absolute path.", @@ -1662,7 +1844,12 @@ "description": "Response from creating a new session.\n\nSee protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "models": { "anyOf": [ @@ -1706,7 +1893,12 @@ "description": "An option presented to the user when requesting permission.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "kind": { "allOf": [ @@ -1769,7 +1961,12 @@ "description": "An execution plan for accomplishing complex tasks.\n\nPlans consist of multiple entries representing individual tasks or goals.\nAgents report plans to clients to provide visibility into their execution strategy.\nPlans can evolve during execution as the agent discovers new requirements or completes tasks.\n\nSee protocol docs: [Agent Plan](https://agentclientprotocol.com/protocol/agent-plan)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "entries": { "description": "The list of tasks to be accomplished.\n\nWhen updating a plan, the agent must send a complete list of all entries\nwith their current status. The client replaces the entire plan with each update.", @@ -1788,7 +1985,12 @@ "description": "A single entry in the execution plan.\n\nRepresents a task or goal that the assistant intends to accomplish\nas part of fulfilling the user's request.\nSee protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "description": "Human-readable description of what this task aims to accomplish.", @@ -1862,7 +2064,12 @@ "description": "Prompt capabilities supported by the agent in `session/prompt` requests.\n\nBaseline agent functionality requires support for [`ContentBlock::Text`]\nand [`ContentBlock::ResourceLink`] in prompt requests.\n\nOther variants must be explicitly opted in to.\nCapabilities for different types of content in prompt requests.\n\nIndicates which content types beyond the baseline (text and resource links)\nthe agent can process.\n\nSee protocol docs: [Prompt Capabilities](https://agentclientprotocol.com/protocol/initialization#prompt-capabilities)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "audio": { "default": false, @@ -1886,7 +2093,12 @@ "description": "Request parameters for sending a user prompt to the agent.\n\nContains the user's message and any additional context.\n\nSee protocol docs: [User Message](https://agentclientprotocol.com/protocol/prompt-turn#1-user-message)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "prompt": { "description": "The blocks of content that compose the user's message.\n\nAs a baseline, the Agent MUST support [`ContentBlock::Text`] and [`ContentBlock::ResourceLink`],\nwhile other variants are optionally enabled via [`PromptCapabilities`].\n\nThe Client MUST adapt its interface according to [`PromptCapabilities`].\n\nThe client MAY include referenced pieces of context as either\n[`ContentBlock::Resource`] or [`ContentBlock::ResourceLink`].\n\nWhen available, [`ContentBlock::Resource`] is preferred\nas it avoids extra round-trips and allows the message to include\npieces of context from sources the agent may not have access to.", @@ -1916,7 +2128,12 @@ "description": "Response from processing a user prompt.\n\nSee protocol docs: [Check for Completion](https://agentclientprotocol.com/protocol/prompt-turn#4-check-for-completion)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "stopReason": { "allOf": [ @@ -1945,7 +2162,12 @@ "description": "Request to read content from a text file.\n\nOnly available if the client supports the `fs.readTextFile` capability.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "limit": { "description": "Maximum number of lines to read.", @@ -1990,7 +2212,12 @@ "description": "Response containing the contents of a text file.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "type": "string" @@ -2007,7 +2234,12 @@ "description": "Request to release a terminal and free its resources.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -2034,7 +2266,12 @@ "description": "Response to terminal/release method", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object", @@ -2099,7 +2336,12 @@ "description": "Request for user permission to execute a tool call.\n\nSent when the agent needs authorization before performing a sensitive operation.\n\nSee protocol docs: [Requesting Permission](https://agentclientprotocol.com/protocol/tool-calls#requesting-permission)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "options": { "description": "Available permission options for the user to choose from.", @@ -2138,7 +2380,12 @@ "description": "Response to a permission request.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "outcome": { "allOf": [ @@ -2160,7 +2407,12 @@ "description": "A resource that the server is capable of reading, included in a prompt or tool call result.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "annotations": { "anyOf": [ @@ -2222,7 +2474,12 @@ "description": "The user selected one of the provided options.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "optionId": { "allOf": [ @@ -2242,7 +2499,12 @@ "description": "Session capabilities supported by the agent.\n\nAs a baseline, all Agents **MUST** support `session/new`, `session/prompt`, `session/cancel`, and `session/update`.\n\nOptionally, they **MAY** support other session methods and notifications by specifying additional capabilities.\n\nNote: `session/load` is still handled by the top-level `load_session` capability. This will be unified in future versions of the protocol.\n\nSee protocol docs: [Session Capabilities](https://agentclientprotocol.com/protocol/initialization#session-capabilities)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "list": { "anyOf": [ @@ -2266,7 +2528,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nInformation about a session returned by session/list", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "cwd": { "description": "The working directory for this session. Must be an absolute path.", @@ -2305,7 +2572,12 @@ "description": "Capabilities for the `session/list` method.\n\nBy supplying `{}` it means that the agent supports listing of sessions.\n\nFurther capabilities can be added in the future for other means of filtering or searching the list.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object" @@ -2314,7 +2586,12 @@ "description": "A mode the agent can operate in.\n\nSee protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "description": { "type": [ @@ -2343,7 +2620,12 @@ "description": "The set of modes and the one currently active.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "availableModes": { "description": "The set of modes that the Agent can operate in", @@ -2371,7 +2653,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nThe set of models and the one currently active.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "availableModels": { "description": "The set of models that the Agent can use", @@ -2399,7 +2686,12 @@ "description": "Notification containing a session update from the agent.\n\nUsed to stream real-time progress and results during prompt processing.\n\nSee protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -2582,7 +2874,12 @@ "description": "Request parameters for setting a session mode.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "modeId": { "allOf": [ @@ -2612,7 +2909,13 @@ "SetSessionModeResponse": { "description": "Response to `session/set_mode` method.", "properties": { - "_meta": {} + "_meta": { + "additionalProperties": true, + "type": [ + "object", + "null" + ] + } }, "type": "object", "x-method": "session/set_mode", @@ -2622,7 +2925,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nRequest parameters for setting a session model.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "modelId": { "allOf": [ @@ -2653,7 +2961,12 @@ "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nResponse to `session/set_model` method.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object", @@ -2694,7 +3007,12 @@ "description": "Embed a terminal created with `terminal/create` by its id.\n\nThe terminal must be added before calling `terminal/release`.\n\nSee protocol docs: [Terminal](https://agentclientprotocol.com/protocol/terminals)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "terminalId": { "type": "string" @@ -2709,7 +3027,12 @@ "description": "Exit status of a terminal command.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "exitCode": { "description": "The process exit code (may be null if terminated by signal).", @@ -2734,7 +3057,12 @@ "description": "Request to get the current output and status of a terminal.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -2761,7 +3089,12 @@ "description": "Response containing the terminal output and exit status.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "exitStatus": { "anyOf": [ @@ -2795,7 +3128,12 @@ "description": "Text provided to or from an LLM.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "annotations": { "anyOf": [ @@ -2820,7 +3158,12 @@ "description": "Text-based resource contents.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "mimeType": { "type": [ @@ -2845,7 +3188,12 @@ "description": "Represents a tool call that the language model has requested.\n\nTool calls are actions that the agent executes on behalf of the language model,\nsuch as reading files, executing code, or fetching data from external sources.\n\nSee protocol docs: [Tool Calls](https://agentclientprotocol.com/protocol/tool-calls)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "description": "Content produced by the tool call.", @@ -2972,7 +3320,12 @@ "description": "A file location being accessed or modified by a tool.\n\nEnables clients to implement \"follow-along\" features that track\nwhich files the agent is working with in real-time.\n\nSee protocol docs: [Following the Agent](https://agentclientprotocol.com/protocol/tool-calls#following-the-agent)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "line": { "description": "Optional line number within the file.", @@ -3022,7 +3375,12 @@ "description": "An update to an existing tool call.\n\nUsed to report progress and results as tools execute. All fields except\nthe tool call ID are optional - only changed fields need to be included.\n\nSee protocol docs: [Updating](https://agentclientprotocol.com/protocol/tool-calls#updating)", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "description": "Replace the content collection.", @@ -3152,7 +3510,12 @@ "description": "All text that was typed after the command name is provided as input.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "hint": { "description": "A hint to display when the input hasn't been provided yet", @@ -3168,7 +3531,12 @@ "description": "Request to wait for a terminal command to exit.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "sessionId": { "allOf": [ @@ -3195,7 +3563,12 @@ "description": "Response containing the exit status of a terminal command.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "exitCode": { "description": "The process exit code (may be null if terminated by signal).", @@ -3222,7 +3595,12 @@ "description": "Request to write content to a text file.\n\nOnly available if the client supports the `fs.writeTextFile` capability.", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] }, "content": { "description": "The text content to write to the file.", @@ -3254,7 +3632,12 @@ "description": "Response to `fs/write_text_file`", "properties": { "_meta": { - "description": "Extension point for implementations" + "additionalProperties": true, + "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + "type": [ + "object", + "null" + ] } }, "type": "object", diff --git a/src/acp/meta.py b/src/acp/meta.py index 2600fd9..9f9768c 100644 --- a/src/acp/meta.py +++ b/src/acp/meta.py @@ -1,5 +1,5 @@ # Generated from schema/meta.json. Do not edit by hand. -# Schema ref: refs/tags/v0.8.0 +# Schema ref: refs/tags/v0.9.1 AGENT_METHODS = { "authenticate": "authenticate", "initialize": "initialize", diff --git a/src/acp/schema.py b/src/acp/schema.py index e9e27a1..a1a8ed7 100644 --- a/src/acp/schema.py +++ b/src/acp/schema.py @@ -1,10 +1,10 @@ # Generated from schema/schema.json. Do not edit by hand. -# Schema ref: refs/tags/v0.8.0 +# Schema ref: refs/tags/v0.9.1 from __future__ import annotations from enum import Enum -from typing import Annotated, Any, List, Literal, Optional, Union +from typing import Annotated, Any, Dict, List, Literal, Optional, Union from pydantic import BaseModel as _BaseModel, Field, RootModel, ConfigDict @@ -31,10 +31,17 @@ class Jsonrpc(Enum): class AuthMethod(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Optional description providing more details about this authentication method. description: Annotated[ @@ -48,10 +55,17 @@ class AuthMethod(BaseModel): class AuthenticateRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the authentication method to use. # Must be one of the methods advertised in the initialize response. @@ -65,18 +79,32 @@ class AuthenticateRequest(BaseModel): class AuthenticateResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None class BlobResourceContents(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None blob: str mime_type: Annotated[Optional[str], Field(alias="mimeType")] = None @@ -84,10 +112,17 @@ class BlobResourceContents(BaseModel): class CreateTerminalResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The unique identifier for the created terminal. terminal_id: Annotated[ @@ -100,10 +135,17 @@ class CreateTerminalResponse(BaseModel): class Diff(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The new content after modification. new_text: Annotated[str, Field(alias="newText", description="The new content after modification.")] @@ -117,10 +159,17 @@ class Diff(BaseModel): class EnvVariable(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The name of the environment variable. name: Annotated[str, Field(description="The name of the environment variable.")] @@ -156,10 +205,17 @@ class Error(BaseModel): class FileSystemCapability(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Whether the Client supports `fs/read_text_file` requests. read_text_file: Annotated[ @@ -180,10 +236,17 @@ class FileSystemCapability(BaseModel): class HttpHeader(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The name of the HTTP header. name: Annotated[str, Field(description="The name of the HTTP header.")] @@ -192,10 +255,17 @@ class HttpHeader(BaseModel): class Implementation(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Intended for programmatic or logical use, but can be used as a display # name fallback if title isn’t present. @@ -226,18 +296,32 @@ class Implementation(BaseModel): class KillTerminalCommandResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None class ListSessionsRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Opaque cursor token from a previous response's nextCursor field for cursor-based pagination cursor: Annotated[ @@ -254,10 +338,17 @@ class ListSessionsRequest(BaseModel): class McpCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Agent supports [`McpServer::Http`]. http: Annotated[Optional[bool], Field(description="Agent supports [`McpServer::Http`].")] = False @@ -266,10 +357,17 @@ class McpCapabilities(BaseModel): class McpServerHttp(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # HTTP headers to set when making requests to the MCP server. headers: Annotated[ @@ -283,10 +381,17 @@ class McpServerHttp(BaseModel): class McpServerSse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # HTTP headers to set when making requests to the MCP server. headers: Annotated[ @@ -300,10 +405,17 @@ class McpServerSse(BaseModel): class McpServerStdio(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Command-line arguments to pass to the MCP server. args: Annotated[ @@ -319,14 +431,20 @@ class McpServerStdio(BaseModel): ] # Human-readable name identifying this MCP server. name: Annotated[str, Field(description="Human-readable name identifying this MCP server.")] - type: Literal["stdio"] = "stdio" class ModelInfo(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Optional description of the model. description: Annotated[Optional[str], Field(description="Optional description of the model.")] = None @@ -337,10 +455,17 @@ class ModelInfo(BaseModel): class PromptCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Agent supports [`ContentBlock::Audio`]. audio: Annotated[Optional[bool], Field(description="Agent supports [`ContentBlock::Audio`].")] = False @@ -360,19 +485,33 @@ class PromptCapabilities(BaseModel): class ReadTextFileResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None content: str class ReleaseTerminalResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None @@ -386,10 +525,17 @@ class Role(Enum): class SelectedPermissionOutcome(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the option the user selected. option_id: Annotated[ @@ -399,10 +545,17 @@ class SelectedPermissionOutcome(BaseModel): class SessionInfo(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The working directory for this session. Must be an absolute path. cwd: Annotated[ @@ -421,18 +574,32 @@ class SessionInfo(BaseModel): class SessionListCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None class SessionModelState(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The set of models that the Agent can use available_models: Annotated[ @@ -450,10 +617,17 @@ class SessionModelState(BaseModel): class SetSessionModeRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the mode to set. mode_id: Annotated[str, Field(alias="modeId", description="The ID of the mode to set.")] @@ -465,14 +639,21 @@ class SetSessionModeRequest(BaseModel): class SetSessionModeResponse(BaseModel): - field_meta: Annotated[Optional[Any], Field(alias="_meta")] = None + field_meta: Annotated[Optional[Dict[str, Any]], Field(alias="_meta")] = None class SetSessionModelRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the model to set. model_id: Annotated[str, Field(alias="modelId", description="The ID of the model to set.")] @@ -484,27 +665,48 @@ class SetSessionModelRequest(BaseModel): class SetSessionModelResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None class Terminal(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None terminal_id: Annotated[str, Field(alias="terminalId")] class TerminalExitStatus(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The process exit code (may be null if terminated by signal). exit_code: Annotated[ @@ -523,10 +725,17 @@ class TerminalExitStatus(BaseModel): class TerminalOutputRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The session ID for this request. session_id: Annotated[str, Field(alias="sessionId", description="The session ID for this request.")] @@ -538,10 +747,17 @@ class TerminalOutputRequest(BaseModel): class TerminalOutputResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Exit status if the command has completed. exit_status: Annotated[ @@ -555,10 +771,17 @@ class TerminalOutputResponse(BaseModel): class TextResourceContents(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None mime_type: Annotated[Optional[str], Field(alias="mimeType")] = None text: str @@ -574,10 +797,17 @@ class TerminalToolCallContent(Terminal): class ToolCallLocation(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Optional line number within the file. line: Annotated[Optional[int], Field(description="Optional line number within the file.", ge=0)] = None @@ -586,10 +816,17 @@ class ToolCallLocation(BaseModel): class UnstructuredCommandInput(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # A hint to display when the input hasn't been provided yet hint: Annotated[ @@ -599,10 +836,17 @@ class UnstructuredCommandInput(BaseModel): class WaitForTerminalExitRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The session ID for this request. session_id: Annotated[str, Field(alias="sessionId", description="The session ID for this request.")] @@ -614,10 +858,17 @@ class WaitForTerminalExitRequest(BaseModel): class WaitForTerminalExitResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The process exit code (may be null if terminated by signal). exit_code: Annotated[ @@ -636,10 +887,17 @@ class WaitForTerminalExitResponse(BaseModel): class WriteTextFileRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The text content to write to the file. content: Annotated[str, Field(description="The text content to write to the file.")] @@ -650,10 +908,17 @@ class WriteTextFileRequest(BaseModel): class WriteTextFileResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None @@ -677,10 +942,17 @@ class AgentErrorMessage(BaseModel): class Annotations(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None audience: Optional[List[Role]] = None last_modified: Annotated[Optional[str], Field(alias="lastModified")] = None @@ -688,10 +960,17 @@ class Annotations(BaseModel): class AudioContent(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None annotations: Optional[Annotations] = None data: str @@ -707,10 +986,17 @@ class AvailableCommandInput(RootModel[UnstructuredCommandInput]): class CancelNotification(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the session to cancel operations for. session_id: Annotated[ @@ -723,10 +1009,17 @@ class CancelNotification(BaseModel): class ClientCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # File system capabilities supported by the client. # Determines which file operations the agent can request. @@ -772,10 +1065,17 @@ class AudioContentBlock(AudioContent): class CreateTerminalRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Array of command arguments. args: Annotated[Optional[List[str]], Field(description="Array of command arguments.")] = None @@ -812,20 +1112,34 @@ class CreateTerminalRequest(BaseModel): class CurrentModeUpdate(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the current mode current_mode_id: Annotated[str, Field(alias="currentModeId", description="The ID of the current mode")] class ImageContent(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None annotations: Optional[Annotations] = None data: str @@ -834,10 +1148,17 @@ class ImageContent(BaseModel): class InitializeRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Capabilities supported by the client. client_capabilities: Annotated[ @@ -870,10 +1191,17 @@ class InitializeRequest(BaseModel): class KillTerminalCommandRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The session ID for this request. session_id: Annotated[str, Field(alias="sessionId", description="The session ID for this request.")] @@ -882,10 +1210,17 @@ class KillTerminalCommandRequest(BaseModel): class ListSessionsResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Opaque cursor token. If present, pass this in the next request's cursor parameter # to fetch the next page. If absent, there are no more results. @@ -909,10 +1244,17 @@ class SseMcpServer(McpServerSse): class NewSessionRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The working directory for this session. Must be an absolute path. cwd: Annotated[ @@ -930,10 +1272,17 @@ class NewSessionRequest(BaseModel): class PermissionOption(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Hint about the nature of this permission option. kind: Annotated[PermissionOptionKind, Field(description="Hint about the nature of this permission option.")] @@ -950,10 +1299,17 @@ class PermissionOption(BaseModel): class PlanEntry(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Human-readable description of what this task aims to accomplish. content: Annotated[ @@ -973,10 +1329,17 @@ class PlanEntry(BaseModel): class PromptResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Indicates why the agent stopped processing the turn. stop_reason: Annotated[ @@ -989,10 +1352,17 @@ class PromptResponse(BaseModel): class ReadTextFileRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Maximum number of lines to read. limit: Annotated[Optional[int], Field(description="Maximum number of lines to read.", ge=0)] = None @@ -1008,10 +1378,17 @@ class ReadTextFileRequest(BaseModel): class ReleaseTerminalRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The session ID for this request. session_id: Annotated[str, Field(alias="sessionId", description="The session ID for this request.")] @@ -1024,10 +1401,17 @@ class AllowedOutcome(SelectedPermissionOutcome): class RequestPermissionResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The user's decision on the permission request. outcome: Annotated[ @@ -1040,10 +1424,17 @@ class RequestPermissionResponse(BaseModel): class ResourceLink(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None annotations: Optional[Annotations] = None description: Optional[str] = None @@ -1055,10 +1446,17 @@ class ResourceLink(BaseModel): class SessionCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # **UNSTABLE** # @@ -1074,10 +1472,17 @@ class SessionCapabilities(BaseModel): class SessionMode(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None description: Optional[str] = None # Unique identifier for a Session Mode. @@ -1086,10 +1491,17 @@ class SessionMode(BaseModel): class SessionModeState(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The set of modes that the Agent can operate in available_modes: Annotated[ @@ -1111,20 +1523,34 @@ class CurrentModeUpdate(CurrentModeUpdate): class TextContent(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None annotations: Optional[Annotations] = None text: str class AgentCapabilities(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Whether the agent supports `session/load`. load_session: Annotated[ @@ -1156,10 +1582,17 @@ class AgentCapabilities(BaseModel): class AvailableCommand(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Human-readable description of what the command does. description: Annotated[str, Field(description="Human-readable description of what the command does.")] @@ -1176,10 +1609,17 @@ class AvailableCommand(BaseModel): class AvailableCommandsUpdate(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Commands the agent can execute available_commands: Annotated[ @@ -1245,10 +1685,17 @@ class ResourceContentBlock(ResourceLink): class EmbeddedResource(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None annotations: Optional[Annotations] = None # Resource content that can be embedded in a message. @@ -1259,10 +1706,17 @@ class EmbeddedResource(BaseModel): class InitializeResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Capabilities supported by the agent. agent_capabilities: Annotated[ @@ -1306,10 +1760,17 @@ class InitializeResponse(BaseModel): class LoadSessionRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The working directory for this session. cwd: Annotated[str, Field(description="The working directory for this session.")] @@ -1326,10 +1787,17 @@ class LoadSessionRequest(BaseModel): class LoadSessionResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # **UNSTABLE** # @@ -1354,10 +1822,17 @@ class LoadSessionResponse(BaseModel): class NewSessionResponse(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # **UNSTABLE** # @@ -1392,10 +1867,17 @@ class NewSessionResponse(BaseModel): class Plan(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The list of tasks to be accomplished. # @@ -1466,10 +1948,17 @@ class EmbeddedResourceContentBlock(EmbeddedResource): class ContentChunk(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # A single item of content content: Annotated[ @@ -1481,10 +1970,17 @@ class ContentChunk(BaseModel): class PromptRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The blocks of content that compose the user's message. # @@ -1568,10 +2064,17 @@ class ClientRequest(BaseModel): class Content(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The actual content block. content: Annotated[ @@ -1587,10 +2090,17 @@ class ContentToolCallContent(Content): class ToolCallUpdate(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Replace the content collection. content: Annotated[ @@ -1620,10 +2130,17 @@ class ToolCallUpdate(BaseModel): class RequestPermissionRequest(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Available permission options for the user to choose from. options: Annotated[ @@ -1647,10 +2164,17 @@ class ToolCallProgress(ToolCallUpdate): class ToolCall(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # Content produced by the tool call. content: Annotated[ @@ -1735,10 +2259,17 @@ class ToolCallStart(ToolCall): class SessionNotification(BaseModel): - # Extension point for implementations + # The _meta property is reserved by ACP to allow clients and agents to attach additional + # metadata to their interactions. Implementations MUST NOT make assumptions about values at + # these keys. + # + # See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility) field_meta: Annotated[ - Optional[Any], - Field(alias="_meta", description="Extension point for implementations"), + Optional[Dict[str, Any]], + Field( + alias="_meta", + description="The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)", + ), ] = None # The ID of the session this update pertains to. session_id: Annotated[ From cae6106c57384748ea959903cd11b7248171e7e1 Mon Sep 17 00:00:00 2001 From: Chojan Shang Date: Thu, 4 Dec 2025 23:15:43 +0800 Subject: [PATCH 3/3] chore: bump to 0.7.0 Signed-off-by: Chojan Shang --- pyproject.toml | 2 +- uv.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 14e47d2..7daddcf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "agent-client-protocol" -version = "0.6.3" +version = "0.7.0" description = "A Python implement of Agent Client Protocol (ACP, by Zed Industries)" authors = [ { name = "Chojan Shang", email = "psiace@apache.org" }, diff --git a/uv.lock b/uv.lock index 10967c7..6e0c87b 100644 --- a/uv.lock +++ b/uv.lock @@ -4,7 +4,7 @@ requires-python = ">=3.10, <3.15" [[package]] name = "agent-client-protocol" -version = "0.6.3" +version = "0.7.0" source = { editable = "." } dependencies = [ { name = "pydantic" },