🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@agentclientprotocol/sdk

Package Overview
Dependencies
Maintainers
3
Versions
46
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@agentclientprotocol/sdk - npm Package Compare versions

Comparing version
0.5.1
to
0.6.0
+24
dist/schema/index.d.ts
export type * from "./types.gen";
export declare const AGENT_METHODS: {
readonly authenticate: "authenticate";
readonly initialize: "initialize";
readonly session_cancel: "session/cancel";
readonly session_list: "session/list";
readonly session_load: "session/load";
readonly session_new: "session/new";
readonly session_prompt: "session/prompt";
readonly session_set_mode: "session/set_mode";
readonly session_set_model: "session/set_model";
};
export declare const CLIENT_METHODS: {
readonly fs_read_text_file: "fs/read_text_file";
readonly fs_write_text_file: "fs/write_text_file";
readonly session_request_permission: "session/request_permission";
readonly session_update: "session/update";
readonly terminal_create: "terminal/create";
readonly terminal_kill: "terminal/kill";
readonly terminal_output: "terminal/output";
readonly terminal_release: "terminal/release";
readonly terminal_wait_for_exit: "terminal/wait_for_exit";
};
export declare const PROTOCOL_VERSION = 1;
// This file is auto-generated by @hey-api/openapi-ts
export const AGENT_METHODS = {
authenticate: "authenticate",
initialize: "initialize",
session_cancel: "session/cancel",
session_list: "session/list",
session_load: "session/load",
session_new: "session/new",
session_prompt: "session/prompt",
session_set_mode: "session/set_mode",
session_set_model: "session/set_model",
};
export const CLIENT_METHODS = {
fs_read_text_file: "fs/read_text_file",
fs_write_text_file: "fs/write_text_file",
session_request_permission: "session/request_permission",
session_update: "session/update",
terminal_create: "terminal/create",
terminal_kill: "terminal/kill",
terminal_output: "terminal/output",
terminal_release: "terminal/release",
terminal_wait_for_exit: "terminal/wait_for_exit",
};
export const PROTOCOL_VERSION = 1;
//# sourceMappingURL=index.js.map
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAIrD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;CAC9B,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,oBAAoB;IACxC,0BAA0B,EAAE,4BAA4B;IACxD,cAAc,EAAE,gBAAgB;IAChC,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,wBAAwB;CACxC,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC"}
/**
* Capabilities supported by the agent.
*
* Advertised during initialization to inform the client about
* available features and content types.
*
* See protocol docs: [Agent Capabilities](https://agentclientprotocol.com/protocol/initialization#agent-capabilities)
*/
export type AgentCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Whether the agent supports `session/load`.
*/
loadSession?: boolean;
/**
* MCP capabilities supported by the agent.
*/
mcpCapabilities?: McpCapabilities;
/**
* Prompt capabilities supported by the agent.
*/
promptCapabilities?: PromptCapabilities;
sessionCapabilities?: SessionCapabilities;
};
export type AgentNotification = {
method: string;
params?: SessionNotification | ExtNotification | null;
};
export type AgentRequest = {
id: RequestId;
method: string;
params?: WriteTextFileRequest | ReadTextFileRequest | RequestPermissionRequest | CreateTerminalRequest | TerminalOutputRequest | ReleaseTerminalRequest | WaitForTerminalExitRequest | KillTerminalCommandRequest | ExtRequest | null;
};
export type AgentResponse = {
id: RequestId;
/**
* All possible responses that an agent can send to a client.
*
* This enum is used internally for routing RPC responses. You typically won't need
* to use this directly - the responses are handled automatically by the connection.
*
* These are responses to the corresponding `ClientRequest` variants.
*/
result: InitializeResponse | AuthenticateResponse | NewSessionResponse | LoadSessionResponse | ListSessionsResponse | SetSessionModeResponse | PromptResponse | SetSessionModelResponse | ExtResponse;
} | {
error: _Error;
id: RequestId;
};
/**
* Optional annotations for the client. The client can use annotations to inform how objects are used or displayed
*/
export type Annotations = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
audience?: Array<Role> | null;
lastModified?: string | null;
priority?: number | null;
};
/**
* Audio provided to or from an LLM.
*/
export type AudioContent = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
annotations?: Annotations | null;
data: string;
mimeType: string;
};
/**
* Describes an available authentication method.
*/
export type AuthMethod = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Optional description providing more details about this authentication method.
*/
description?: string | null;
/**
* Unique identifier for this authentication method.
*/
id: string;
/**
* Human-readable name of the authentication method.
*/
name: string;
};
/**
* Request parameters for the authenticate method.
*
* Specifies which authentication method to use.
*/
export type AuthenticateRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the authentication method to use.
* Must be one of the methods advertised in the initialize response.
*/
methodId: string;
};
/**
* Response to the `authenticate` method.
*/
export type AuthenticateResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
/**
* Information about a command.
*/
export type AvailableCommand = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Human-readable description of what the command does.
*/
description: string;
/**
* Input for the command if required
*/
input?: AvailableCommandInput | null;
/**
* Command name (e.g., `create_plan`, `research_codebase`).
*/
name: string;
};
/**
* All text that was typed after the command name is provided as input.
*/
export type AvailableCommandInput = UnstructuredCommandInput;
/**
* Available commands are ready or have changed
*/
export type AvailableCommandsUpdate = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Commands the agent can execute
*/
availableCommands: Array<AvailableCommand>;
};
/**
* Binary resource contents.
*/
export type BlobResourceContents = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
blob: string;
mimeType?: string | null;
uri: string;
};
/**
* Notification to cancel ongoing operations for a session.
*
* See protocol docs: [Cancellation](https://agentclientprotocol.com/protocol/prompt-turn#cancellation)
*/
export type CancelNotification = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the session to cancel operations for.
*/
sessionId: SessionId;
};
/**
* Capabilities supported by the client.
*
* Advertised during initialization to inform the agent about
* available features and methods.
*
* See protocol docs: [Client Capabilities](https://agentclientprotocol.com/protocol/initialization#client-capabilities)
*/
export type ClientCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* File system capabilities supported by the client.
* Determines which file operations the agent can request.
*/
fs?: FileSystemCapability;
/**
* Whether the Client support all `terminal*` methods.
*/
terminal?: boolean;
};
export type ClientNotification = {
method: string;
params?: CancelNotification | ExtNotification | null;
};
export type ClientRequest = {
id: RequestId;
method: string;
params?: InitializeRequest | AuthenticateRequest | NewSessionRequest | LoadSessionRequest | ListSessionsRequest | SetSessionModeRequest | PromptRequest | SetSessionModelRequest | ExtRequest | null;
};
export type ClientResponse = {
id: RequestId;
/**
* All possible responses that a client can send to an agent.
*
* This enum is used internally for routing RPC responses. You typically won't need
* to use this directly - the responses are handled automatically by the connection.
*
* These are responses to the corresponding `AgentRequest` variants.
*/
result: WriteTextFileResponse | ReadTextFileResponse | RequestPermissionResponse | CreateTerminalResponse | TerminalOutputResponse | ReleaseTerminalResponse | WaitForTerminalExitResponse | KillTerminalCommandResponse | ExtResponse;
} | {
error: _Error;
id: RequestId;
};
/**
* Standard content block (text, images, resources).
*/
export type Content = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The actual content block.
*/
content: ContentBlock;
};
/**
* Content blocks represent displayable information in the Agent Client Protocol.
*
* They provide a structured way to handle various types of user-facing content—whether
* it's text from language models, images for analysis, or embedded resources for context.
*
* Content blocks appear in:
* - User prompts sent via `session/prompt`
* - Language model output streamed through `session/update` notifications
* - Progress updates and results from tool calls
*
* This structure is compatible with the Model Context Protocol (MCP), enabling
* agents to seamlessly forward content from MCP tool outputs without transformation.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/content)
*/
export type ContentBlock = (TextContent & {
type: "text";
}) | (ImageContent & {
type: "image";
}) | (AudioContent & {
type: "audio";
}) | (ResourceLink & {
type: "resource_link";
}) | (EmbeddedResource & {
type: "resource";
});
/**
* A streamed item of content
*/
export type ContentChunk = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* A single item of content
*/
content: ContentBlock;
};
/**
* Request to create a new terminal and execute a command.
*/
export type CreateTerminalRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Array of command arguments.
*/
args?: Array<string>;
/**
* The command to execute.
*/
command: string;
/**
* Working directory for the command (absolute path).
*/
cwd?: string | null;
/**
* Environment variables for the command.
*/
env?: Array<EnvVariable>;
/**
* Maximum number of output bytes to retain.
*
* When the limit is exceeded, the Client truncates from the beginning of the output
* to stay within the limit.
*
* The Client MUST ensure truncation happens at a character boundary to maintain valid
* string output, even if this means the retained output is slightly less than the
* specified limit.
*/
outputByteLimit?: number | null;
/**
* The session ID for this request.
*/
sessionId: SessionId;
};
/**
* Response containing the ID of the created terminal.
*/
export type CreateTerminalResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The unique identifier for the created terminal.
*/
terminalId: string;
};
/**
* The current mode of the session has changed
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
export type CurrentModeUpdate = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the current mode
*/
currentModeId: SessionModeId;
};
/**
* A diff representing file modifications.
*
* Shows changes to files in a format suitable for display in the client UI.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)
*/
export type Diff = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The new content after modification.
*/
newText: string;
/**
* The original content (None for new files).
*/
oldText?: string | null;
/**
* The file path being modified.
*/
path: string;
};
/**
* The contents of a resource, embedded into a prompt or tool call result.
*/
export type EmbeddedResource = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
annotations?: Annotations | null;
resource: EmbeddedResourceResource;
};
/**
* Resource content that can be embedded in a message.
*/
export type EmbeddedResourceResource = TextResourceContents | BlobResourceContents;
/**
* An environment variable to set when launching an MCP server.
*/
export type EnvVariable = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The name of the environment variable.
*/
name: string;
/**
* The value to set for the environment variable.
*/
value: string;
};
/**
* JSON-RPC error object.
*
* Represents an error that occurred during method execution, following the
* JSON-RPC 2.0 error object specification with optional additional data.
*
* See protocol docs: [JSON-RPC Error Object](https://www.jsonrpc.org/specification#error_object)
*/
export type _Error = {
/**
* A number indicating the error type that occurred.
* This must be an integer as defined in the JSON-RPC specification.
*/
code: number;
/**
* Optional primitive or structured value that contains additional information about the error.
* This may include debugging information or context-specific details.
*/
data?: unknown;
/**
* A string providing a short description of the error.
* The message should be limited to a concise single sentence.
*/
message: string;
};
/**
* Allows the Agent to send an arbitrary notification that is not part of the ACP spec.
* Extension notifications provide a way to send one-way messages for custom functionality
* while maintaining protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export type ExtNotification = unknown;
/**
* Allows for sending an arbitrary request that is not part of the ACP spec.
* Extension methods provide a way to add custom functionality while maintaining
* protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export type ExtRequest = unknown;
/**
* Allows for sending an arbitrary response to an [`ExtRequest`] that is not part of the ACP spec.
* Extension methods provide a way to add custom functionality while maintaining
* protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export type ExtResponse = unknown;
/**
* Filesystem capabilities supported by the client.
* File system capabilities that a client may support.
*
* See protocol docs: [FileSystem](https://agentclientprotocol.com/protocol/initialization#filesystem)
*/
export type FileSystemCapability = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Whether the Client supports `fs/read_text_file` requests.
*/
readTextFile?: boolean;
/**
* Whether the Client supports `fs/write_text_file` requests.
*/
writeTextFile?: boolean;
};
/**
* An HTTP header to set when making requests to the MCP server.
*/
export type HttpHeader = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The name of the HTTP header.
*/
name: string;
/**
* The value to set for the HTTP header.
*/
value: string;
};
/**
* An image provided to or from an LLM.
*/
export type ImageContent = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
annotations?: Annotations | null;
data: string;
mimeType: string;
uri?: string | null;
};
/**
* Metadata about the implementation of the client or agent.
* Describes the name and version of an MCP implementation, with an optional
* title for UI representation.
*/
export type Implementation = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Intended for programmatic or logical use, but can be used as a display
* name fallback if title isn’t present.
*/
name: string;
/**
* Intended for UI and end-user contexts — optimized to be human-readable
* and easily understood.
*
* If not provided, the name should be used for display.
*/
title?: string | null;
/**
* Version of the implementation. Can be displayed to the user or used
* for debugging or metrics purposes. (e.g. "1.0.0").
*/
version: string;
};
/**
* Request parameters for the initialize method.
*
* Sent by the client to establish connection and negotiate capabilities.
*
* See protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)
*/
export type InitializeRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Capabilities supported by the client.
*/
clientCapabilities?: ClientCapabilities;
/**
* Information about the Client name and version sent to the Agent.
*
* Note: in future versions of the protocol, this will be required.
*/
clientInfo?: Implementation | null;
/**
* The latest protocol version supported by the client.
*/
protocolVersion: ProtocolVersion;
};
/**
* Response to the `initialize` method.
*
* Contains the negotiated protocol version and agent capabilities.
*
* See protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)
*/
export type InitializeResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Capabilities supported by the agent.
*/
agentCapabilities?: AgentCapabilities;
/**
* Information about the Agent name and version sent to the Client.
*
* Note: in future versions of the protocol, this will be required.
*/
agentInfo?: Implementation | null;
/**
* Authentication methods supported by the agent.
*/
authMethods?: Array<AuthMethod>;
/**
* The protocol version the client specified if supported by the agent,
* or the latest protocol version supported by the agent.
*
* The client should disconnect, if it doesn't support this version.
*/
protocolVersion: ProtocolVersion;
};
/**
* Request to kill a terminal command without releasing the terminal.
*/
export type KillTerminalCommandRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The session ID for this request.
*/
sessionId: SessionId;
/**
* The ID of the terminal to kill.
*/
terminalId: string;
};
/**
* Response to terminal/kill command method
*/
export type KillTerminalCommandResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Request parameters for listing existing sessions.
*
* Only available if the Agent supports the `listSessions` capability.
*
* @experimental
*/
export type ListSessionsRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Opaque cursor token from a previous response's nextCursor field for cursor-based pagination
*/
cursor?: string | null;
/**
* Filter sessions by working directory. Must be an absolute path.
*/
cwd?: string | null;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Response from listing sessions.
*
* @experimental
*/
export type ListSessionsResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* 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.
*/
nextCursor?: string | null;
/**
* Array of session information objects
*/
sessions: Array<SessionInfo>;
};
/**
* Request parameters for loading an existing session.
*
* Only available if the Agent supports the `loadSession` capability.
*
* See protocol docs: [Loading Sessions](https://agentclientprotocol.com/protocol/session-setup#loading-sessions)
*/
export type LoadSessionRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The working directory for this session.
*/
cwd: string;
/**
* List of MCP servers to connect to for this session.
*/
mcpServers: Array<McpServer>;
/**
* The ID of the session to load.
*/
sessionId: SessionId;
};
/**
* Response from loading an existing session.
*/
export type LoadSessionResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Initial model state if supported by the Agent
*
* @experimental
*/
models?: SessionModelState | null;
/**
* Initial mode state if supported by the Agent
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
modes?: SessionModeState | null;
};
/**
* MCP capabilities supported by the agent
*/
export type McpCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Agent supports [`McpServer::Http`].
*/
http?: boolean;
/**
* Agent supports [`McpServer::Sse`].
*/
sse?: boolean;
};
/**
* Configuration for connecting to an MCP (Model Context Protocol) server.
*
* MCP servers provide tools and context that the agent can use when
* processing prompts.
*
* See protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)
*/
export type McpServer = (McpServerHttp & {
type: "http";
}) | (McpServerSse & {
type: "sse";
}) | ({
type?: "stdio";
} & McpServerStdio);
/**
* HTTP transport configuration for MCP.
*/
export type McpServerHttp = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* HTTP headers to set when making requests to the MCP server.
*/
headers: Array<HttpHeader>;
/**
* Human-readable name identifying this MCP server.
*/
name: string;
/**
* URL to the MCP server.
*/
url: string;
};
/**
* SSE transport configuration for MCP.
*/
export type McpServerSse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* HTTP headers to set when making requests to the MCP server.
*/
headers: Array<HttpHeader>;
/**
* Human-readable name identifying this MCP server.
*/
name: string;
/**
* URL to the MCP server.
*/
url: string;
};
/**
* Stdio transport configuration for MCP.
*/
export type McpServerStdio = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Command-line arguments to pass to the MCP server.
*/
args: Array<string>;
/**
* Path to the MCP server executable.
*/
command: string;
/**
* Environment variables to set when launching the MCP server.
*/
env: Array<EnvVariable>;
/**
* Human-readable name identifying this MCP server.
*/
name: string;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* A unique identifier for a model.
*
* @experimental
*/
export type ModelId = string;
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Information about a selectable model.
*
* @experimental
*/
export type ModelInfo = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Optional description of the model.
*/
description?: string | null;
/**
* Unique identifier for the model.
*/
modelId: ModelId;
/**
* Human-readable name of the model.
*/
name: string;
};
/**
* Request parameters for creating a new session.
*
* See protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)
*/
export type NewSessionRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The working directory for this session. Must be an absolute path.
*/
cwd: string;
/**
* List of MCP (Model Context Protocol) servers the agent should connect to.
*/
mcpServers: Array<McpServer>;
};
/**
* Response from creating a new session.
*
* See protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)
*/
export type NewSessionResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Initial model state if supported by the Agent
*
* @experimental
*/
models?: SessionModelState | null;
/**
* Initial mode state if supported by the Agent
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
modes?: SessionModeState | null;
/**
* Unique identifier for the created session.
*
* Used in all subsequent requests for this conversation.
*/
sessionId: SessionId;
};
/**
* An option presented to the user when requesting permission.
*/
export type PermissionOption = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Hint about the nature of this permission option.
*/
kind: PermissionOptionKind;
/**
* Human-readable label to display to the user.
*/
name: string;
/**
* Unique identifier for this permission option.
*/
optionId: PermissionOptionId;
};
/**
* Unique identifier for a permission option.
*/
export type PermissionOptionId = string;
/**
* The type of permission option being presented to the user.
*
* Helps clients choose appropriate icons and UI treatment.
*/
export type PermissionOptionKind = "allow_once" | "allow_always" | "reject_once" | "reject_always";
/**
* An execution plan for accomplishing complex tasks.
*
* Plans consist of multiple entries representing individual tasks or goals.
* Agents report plans to clients to provide visibility into their execution strategy.
* Plans can evolve during execution as the agent discovers new requirements or completes tasks.
*
* See protocol docs: [Agent Plan](https://agentclientprotocol.com/protocol/agent-plan)
*/
export type Plan = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The list of tasks to be accomplished.
*
* When updating a plan, the agent must send a complete list of all entries
* with their current status. The client replaces the entire plan with each update.
*/
entries: Array<PlanEntry>;
};
/**
* A single entry in the execution plan.
*
* Represents a task or goal that the assistant intends to accomplish
* as part of fulfilling the user's request.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export type PlanEntry = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Human-readable description of what this task aims to accomplish.
*/
content: string;
/**
* The relative importance of this task.
* Used to indicate which tasks are most critical to the overall goal.
*/
priority: PlanEntryPriority;
/**
* Current execution status of this task.
*/
status: PlanEntryStatus;
};
/**
* Priority levels for plan entries.
*
* Used to indicate the relative importance or urgency of different
* tasks in the execution plan.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export type PlanEntryPriority = "high" | "medium" | "low";
/**
* Status of a plan entry in the execution flow.
*
* Tracks the lifecycle of each task from planning through completion.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export type PlanEntryStatus = "pending" | "in_progress" | "completed";
/**
* Prompt capabilities supported by the agent in `session/prompt` requests.
*
* Baseline agent functionality requires support for [`ContentBlock::Text`]
* and [`ContentBlock::ResourceLink`] in prompt requests.
*
* Other variants must be explicitly opted in to.
* Capabilities for different types of content in prompt requests.
*
* Indicates which content types beyond the baseline (text and resource links)
* the agent can process.
*
* See protocol docs: [Prompt Capabilities](https://agentclientprotocol.com/protocol/initialization#prompt-capabilities)
*/
export type PromptCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Agent supports [`ContentBlock::Audio`].
*/
audio?: boolean;
/**
* Agent supports embedded context in `session/prompt` requests.
*
* When enabled, the Client is allowed to include [`ContentBlock::Resource`]
* in prompt requests for pieces of context that are referenced in the message.
*/
embeddedContext?: boolean;
/**
* Agent supports [`ContentBlock::Image`].
*/
image?: boolean;
};
/**
* Request parameters for sending a user prompt to the agent.
*
* Contains the user's message and any additional context.
*
* See protocol docs: [User Message](https://agentclientprotocol.com/protocol/prompt-turn#1-user-message)
*/
export type PromptRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The blocks of content that compose the user's message.
*
* As a baseline, the Agent MUST support [`ContentBlock::Text`] and [`ContentBlock::ResourceLink`],
* while other variants are optionally enabled via [`PromptCapabilities`].
*
* The Client MUST adapt its interface according to [`PromptCapabilities`].
*
* The client MAY include referenced pieces of context as either
* [`ContentBlock::Resource`] or [`ContentBlock::ResourceLink`].
*
* When available, [`ContentBlock::Resource`] is preferred
* as it avoids extra round-trips and allows the message to include
* pieces of context from sources the agent may not have access to.
*/
prompt: Array<ContentBlock>;
/**
* The ID of the session to send this user message to
*/
sessionId: SessionId;
};
/**
* Response from processing a user prompt.
*
* See protocol docs: [Check for Completion](https://agentclientprotocol.com/protocol/prompt-turn#4-check-for-completion)
*/
export type PromptResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Indicates why the agent stopped processing the turn.
*/
stopReason: StopReason;
};
/**
* Protocol version identifier.
*
* This version is only bumped for breaking changes.
* Non-breaking changes should be introduced via capabilities.
*/
export type ProtocolVersion = number;
/**
* Request to read content from a text file.
*
* Only available if the client supports the `fs.readTextFile` capability.
*/
export type ReadTextFileRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Maximum number of lines to read.
*/
limit?: number | null;
/**
* Line number to start reading from (1-based).
*/
line?: number | null;
/**
* Absolute path to the file to read.
*/
path: string;
/**
* The session ID for this request.
*/
sessionId: SessionId;
};
/**
* Response containing the contents of a text file.
*/
export type ReadTextFileResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
content: string;
};
/**
* Request to release a terminal and free its resources.
*/
export type ReleaseTerminalRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The session ID for this request.
*/
sessionId: SessionId;
/**
* The ID of the terminal to release.
*/
terminalId: string;
};
/**
* Response to terminal/release method
*/
export type ReleaseTerminalResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
/**
* JSON RPC Request Id
*
* An identifier established by the Client that MUST contain a String, Number, or NULL value if included. If it is not included it is assumed to be a notification. The value SHOULD normally not be Null [1] and Numbers SHOULD NOT contain fractional parts [2]
*
* The Server MUST reply with the same value in the Response object if included. This member is used to correlate the context between the two objects.
*
* [1] The use of Null as a value for the id member in a Request object is discouraged, because this specification uses a value of Null for Responses with an unknown id. Also, because JSON-RPC 1.0 uses an id value of Null for Notifications this could cause confusion in handling.
*
* [2] Fractional parts may be problematic, since many decimal fractions cannot be represented exactly as binary fractions.
*/
export type RequestId = null | bigint | string;
/**
* The outcome of a permission request.
*/
export type RequestPermissionOutcome = {
outcome: "cancelled";
} | (SelectedPermissionOutcome & {
outcome: "selected";
});
/**
* Request for user permission to execute a tool call.
*
* Sent when the agent needs authorization before performing a sensitive operation.
*
* See protocol docs: [Requesting Permission](https://agentclientprotocol.com/protocol/tool-calls#requesting-permission)
*/
export type RequestPermissionRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Available permission options for the user to choose from.
*/
options: Array<PermissionOption>;
/**
* The session ID for this request.
*/
sessionId: SessionId;
/**
* Details about the tool call requiring permission.
*/
toolCall: ToolCallUpdate;
};
/**
* Response to a permission request.
*/
export type RequestPermissionResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The user's decision on the permission request.
*/
outcome: RequestPermissionOutcome;
};
/**
* A resource that the server is capable of reading, included in a prompt or tool call result.
*/
export type ResourceLink = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
annotations?: Annotations | null;
description?: string | null;
mimeType?: string | null;
name: string;
size?: bigint | null;
title?: string | null;
uri: string;
};
/**
* The sender or recipient of messages and data in a conversation.
*/
export type Role = "assistant" | "user";
/**
* The user selected one of the provided options.
*/
export type SelectedPermissionOutcome = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the option the user selected.
*/
optionId: PermissionOptionId;
};
/**
* Session capabilities supported by the agent.
*
* As a baseline, all Agents **MUST** support `session/new`, `session/prompt`, `session/cancel`, and `session/update`.
*
* Optionally, they **MAY** support other session methods and notifications by specifying additional capabilities.
*
* Note: `session/load` is still handled by the top-level `load_session` capability. This will be unified in future versions of the protocol.
*
* See protocol docs: [Session Capabilities](https://agentclientprotocol.com/protocol/initialization#session-capabilities)
*/
export type SessionCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Whether the agent supports `session/list`.
*
* @experimental
*/
list?: SessionListCapabilities | null;
};
/**
* A unique identifier for a conversation session between a client and agent.
*
* Sessions maintain their own context, conversation history, and state,
* allowing multiple independent interactions with the same agent.
*
* See protocol docs: [Session ID](https://agentclientprotocol.com/protocol/session-setup#session-id)
*/
export type SessionId = string;
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Information about a session returned by session/list
*
* @experimental
*/
export type SessionInfo = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The working directory for this session. Must be an absolute path.
*/
cwd: string;
/**
* Unique identifier for the session
*/
sessionId: SessionId;
/**
* Human-readable title for the session
*/
title?: string | null;
/**
* ISO 8601 timestamp of last activity
*/
updatedAt?: string | null;
};
/**
* Capabilities for the `session/list` method.
*
* By supplying `{}` it means that the agent supports listing of sessions.
*
* Further capabilities can be added in the future for other means of filtering or searching the list.
*/
export type SessionListCapabilities = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
/**
* A mode the agent can operate in.
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
export type SessionMode = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
description?: string | null;
id: SessionModeId;
name: string;
};
/**
* Unique identifier for a Session Mode.
*/
export type SessionModeId = string;
/**
* The set of modes and the one currently active.
*/
export type SessionModeState = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The set of modes that the Agent can operate in
*/
availableModes: Array<SessionMode>;
/**
* The current mode the Agent is in.
*/
currentModeId: SessionModeId;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* The set of models and the one currently active.
*
* @experimental
*/
export type SessionModelState = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The set of models that the Agent can use
*/
availableModels: Array<ModelInfo>;
/**
* The current model the Agent is in.
*/
currentModelId: ModelId;
};
/**
* Notification containing a session update from the agent.
*
* Used to stream real-time progress and results during prompt processing.
*
* See protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)
*/
export type SessionNotification = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the session this update pertains to.
*/
sessionId: SessionId;
/**
* The actual update content.
*/
update: SessionUpdate;
};
/**
* Different types of updates that can be sent during session processing.
*
* These updates provide real-time feedback about the agent's progress.
*
* See protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)
*/
export type SessionUpdate = (ContentChunk & {
sessionUpdate: "user_message_chunk";
}) | (ContentChunk & {
sessionUpdate: "agent_message_chunk";
}) | (ContentChunk & {
sessionUpdate: "agent_thought_chunk";
}) | (ToolCall & {
sessionUpdate: "tool_call";
}) | (ToolCallUpdate & {
sessionUpdate: "tool_call_update";
}) | (Plan & {
sessionUpdate: "plan";
}) | (AvailableCommandsUpdate & {
sessionUpdate: "available_commands_update";
}) | (CurrentModeUpdate & {
sessionUpdate: "current_mode_update";
});
/**
* Request parameters for setting a session mode.
*/
export type SetSessionModeRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the mode to set.
*/
modeId: SessionModeId;
/**
* The ID of the session to set the mode for.
*/
sessionId: SessionId;
};
/**
* Response to `session/set_mode` method.
*/
export type SetSessionModeResponse = {
_meta?: {
[key: string]: unknown;
};
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Request parameters for setting a session model.
*
* @experimental
*/
export type SetSessionModelRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The ID of the model to set.
*/
modelId: ModelId;
/**
* The ID of the session to set the model for.
*/
sessionId: SessionId;
};
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Response to `session/set_model` method.
*
* @experimental
*/
export type SetSessionModelResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
/**
* Reasons why an agent stops processing a prompt turn.
*
* See protocol docs: [Stop Reasons](https://agentclientprotocol.com/protocol/prompt-turn#stop-reasons)
*/
export type StopReason = "end_turn" | "max_tokens" | "max_turn_requests" | "refusal" | "cancelled";
/**
* Embed a terminal created with `terminal/create` by its id.
*
* The terminal must be added before calling `terminal/release`.
*
* See protocol docs: [Terminal](https://agentclientprotocol.com/protocol/terminals)
*/
export type Terminal = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
terminalId: string;
};
/**
* Exit status of a terminal command.
*/
export type TerminalExitStatus = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The process exit code (may be null if terminated by signal).
*/
exitCode?: number | null;
/**
* The signal that terminated the process (may be null if exited normally).
*/
signal?: string | null;
};
/**
* Request to get the current output and status of a terminal.
*/
export type TerminalOutputRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The session ID for this request.
*/
sessionId: SessionId;
/**
* The ID of the terminal to get output from.
*/
terminalId: string;
};
/**
* Response containing the terminal output and exit status.
*/
export type TerminalOutputResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Exit status if the command has completed.
*/
exitStatus?: TerminalExitStatus | null;
/**
* The terminal output captured so far.
*/
output: string;
/**
* Whether the output was truncated due to byte limits.
*/
truncated: boolean;
};
/**
* Text provided to or from an LLM.
*/
export type TextContent = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
annotations?: Annotations | null;
text: string;
};
/**
* Text-based resource contents.
*/
export type TextResourceContents = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
mimeType?: string | null;
text: string;
uri: string;
};
/**
* Represents a tool call that the language model has requested.
*
* Tool calls are actions that the agent executes on behalf of the language model,
* such as reading files, executing code, or fetching data from external sources.
*
* See protocol docs: [Tool Calls](https://agentclientprotocol.com/protocol/tool-calls)
*/
export type ToolCall = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Content produced by the tool call.
*/
content?: Array<ToolCallContent>;
/**
* The category of tool being invoked.
* Helps clients choose appropriate icons and UI treatment.
*/
kind?: ToolKind;
/**
* File locations affected by this tool call.
* Enables "follow-along" features in clients.
*/
locations?: Array<ToolCallLocation>;
/**
* Raw input parameters sent to the tool.
*/
rawInput?: unknown;
/**
* Raw output returned by the tool.
*/
rawOutput?: unknown;
/**
* Current execution status of the tool call.
*/
status?: ToolCallStatus;
/**
* Human-readable title describing what the tool is doing.
*/
title: string;
/**
* Unique identifier for this tool call within the session.
*/
toolCallId: ToolCallId;
};
/**
* Content produced by a tool call.
*
* Tool calls can produce different types of content including
* standard content blocks (text, images) or file diffs.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)
*/
export type ToolCallContent = (Content & {
type: "content";
}) | (Diff & {
type: "diff";
}) | (Terminal & {
type: "terminal";
});
/**
* Unique identifier for a tool call within a session.
*/
export type ToolCallId = string;
/**
* A file location being accessed or modified by a tool.
*
* Enables clients to implement "follow-along" features that track
* which files the agent is working with in real-time.
*
* See protocol docs: [Following the Agent](https://agentclientprotocol.com/protocol/tool-calls#following-the-agent)
*/
export type ToolCallLocation = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Optional line number within the file.
*/
line?: number | null;
/**
* The file path being accessed or modified.
*/
path: string;
};
/**
* Execution status of a tool call.
*
* Tool calls progress through different statuses during their lifecycle.
*
* See protocol docs: [Status](https://agentclientprotocol.com/protocol/tool-calls#status)
*/
export type ToolCallStatus = "pending" | "in_progress" | "completed" | "failed";
/**
* An update to an existing tool call.
*
* Used to report progress and results as tools execute. All fields except
* the tool call ID are optional - only changed fields need to be included.
*
* See protocol docs: [Updating](https://agentclientprotocol.com/protocol/tool-calls#updating)
*/
export type ToolCallUpdate = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* Replace the content collection.
*/
content?: Array<ToolCallContent> | null;
/**
* Update the tool kind.
*/
kind?: ToolKind | null;
/**
* Replace the locations collection.
*/
locations?: Array<ToolCallLocation> | null;
/**
* Update the raw input.
*/
rawInput?: unknown;
/**
* Update the raw output.
*/
rawOutput?: unknown;
/**
* Update the execution status.
*/
status?: ToolCallStatus | null;
/**
* Update the human-readable title.
*/
title?: string | null;
/**
* The ID of the tool call being updated.
*/
toolCallId: ToolCallId;
};
/**
* Categories of tools that can be invoked.
*
* Tool kinds help clients choose appropriate icons and optimize how they
* display tool execution progress.
*
* See protocol docs: [Creating](https://agentclientprotocol.com/protocol/tool-calls#creating)
*/
export type ToolKind = "read" | "edit" | "delete" | "move" | "search" | "execute" | "think" | "fetch" | "switch_mode" | "other";
/**
* All text that was typed after the command name is provided as input.
*/
export type UnstructuredCommandInput = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* A hint to display when the input hasn't been provided yet
*/
hint: string;
};
/**
* Request to wait for a terminal command to exit.
*/
export type WaitForTerminalExitRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The session ID for this request.
*/
sessionId: SessionId;
/**
* The ID of the terminal to wait for.
*/
terminalId: string;
};
/**
* Response containing the exit status of a terminal command.
*/
export type WaitForTerminalExitResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The process exit code (may be null if terminated by signal).
*/
exitCode?: number | null;
/**
* The signal that terminated the process (may be null if exited normally).
*/
signal?: string | null;
};
/**
* Request to write content to a text file.
*
* Only available if the client supports the `fs.writeTextFile` capability.
*/
export type WriteTextFileRequest = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
/**
* The text content to write to the file.
*/
content: string;
/**
* Absolute path to the file to write.
*/
path: string;
/**
* The session ID for this request.
*/
sessionId: SessionId;
};
/**
* Response to `fs/write_text_file`
*/
export type WriteTextFileResponse = {
/**
* Extension point for implementations
*/
_meta?: {
[key: string]: unknown;
};
};
// This file is auto-generated by @hey-api/openapi-ts
export {};
//# sourceMappingURL=types.gen.js.map
{"version":3,"file":"types.gen.js","sourceRoot":"","sources":["../../src/schema/types.gen.ts"],"names":[],"mappings":"AAAA,qDAAqD"}

Sorry, the diff of this file is too big to display

// This file is auto-generated by @hey-api/openapi-ts
import { z } from "zod/v4";
/**
* Describes an available authentication method.
*/
export const zAuthMethod = z.object({
_meta: z.object().optional(),
description: z.union([z.string(), z.null()]).optional(),
id: z.string(),
name: z.string(),
});
/**
* Request parameters for the authenticate method.
*
* Specifies which authentication method to use.
*/
export const zAuthenticateRequest = z.object({
_meta: z.object().optional(),
methodId: z.string(),
});
/**
* Response to the `authenticate` method.
*/
export const zAuthenticateResponse = z.object({
_meta: z.object().optional(),
});
/**
* Binary resource contents.
*/
export const zBlobResourceContents = z.object({
_meta: z.object().optional(),
blob: z.string(),
mimeType: z.union([z.string(), z.null()]).optional(),
uri: z.string(),
});
/**
* Response containing the ID of the created terminal.
*/
export const zCreateTerminalResponse = z.object({
_meta: z.object().optional(),
terminalId: z.string(),
});
/**
* A diff representing file modifications.
*
* Shows changes to files in a format suitable for display in the client UI.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)
*/
export const zDiff = z.object({
_meta: z.object().optional(),
newText: z.string(),
oldText: z.union([z.string(), z.null()]).optional(),
path: z.string(),
});
/**
* An environment variable to set when launching an MCP server.
*/
export const zEnvVariable = z.object({
_meta: z.object().optional(),
name: z.string(),
value: z.string(),
});
/**
* JSON-RPC error object.
*
* Represents an error that occurred during method execution, following the
* JSON-RPC 2.0 error object specification with optional additional data.
*
* See protocol docs: [JSON-RPC Error Object](https://www.jsonrpc.org/specification#error_object)
*/
export const zError = z.object({
code: z.number().int(),
data: z.unknown().optional(),
message: z.string(),
});
/**
* Allows the Agent to send an arbitrary notification that is not part of the ACP spec.
* Extension notifications provide a way to send one-way messages for custom functionality
* while maintaining protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export const zExtNotification = z.unknown();
/**
* Allows for sending an arbitrary request that is not part of the ACP spec.
* Extension methods provide a way to add custom functionality while maintaining
* protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export const zExtRequest = z.unknown();
/**
* Allows for sending an arbitrary response to an [`ExtRequest`] that is not part of the ACP spec.
* Extension methods provide a way to add custom functionality while maintaining
* protocol compatibility.
*
* See protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/extensibility)
*/
export const zExtResponse = z.unknown();
/**
* Filesystem capabilities supported by the client.
* File system capabilities that a client may support.
*
* See protocol docs: [FileSystem](https://agentclientprotocol.com/protocol/initialization#filesystem)
*/
export const zFileSystemCapability = z.object({
_meta: z.object().optional(),
readTextFile: z.boolean().optional().default(false),
writeTextFile: z.boolean().optional().default(false),
});
/**
* Capabilities supported by the client.
*
* Advertised during initialization to inform the agent about
* available features and methods.
*
* See protocol docs: [Client Capabilities](https://agentclientprotocol.com/protocol/initialization#client-capabilities)
*/
export const zClientCapabilities = z.object({
_meta: z.object().optional(),
fs: zFileSystemCapability
.optional()
.default({ readTextFile: false, writeTextFile: false }),
terminal: z.boolean().optional().default(false),
});
/**
* An HTTP header to set when making requests to the MCP server.
*/
export const zHttpHeader = z.object({
_meta: z.object().optional(),
name: z.string(),
value: z.string(),
});
/**
* Metadata about the implementation of the client or agent.
* Describes the name and version of an MCP implementation, with an optional
* title for UI representation.
*/
export const zImplementation = z.object({
_meta: z.object().optional(),
name: z.string(),
title: z.union([z.string(), z.null()]).optional(),
version: z.string(),
});
/**
* Response to terminal/kill command method
*/
export const zKillTerminalCommandResponse = z.object({
_meta: z.object().optional(),
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Request parameters for listing existing sessions.
*
* Only available if the Agent supports the `listSessions` capability.
*
* @experimental
*/
export const zListSessionsRequest = z.object({
_meta: z.object().optional(),
cursor: z.union([z.string(), z.null()]).optional(),
cwd: z.union([z.string(), z.null()]).optional(),
});
/**
* MCP capabilities supported by the agent
*/
export const zMcpCapabilities = z.object({
_meta: z.object().optional(),
http: z.boolean().optional().default(false),
sse: z.boolean().optional().default(false),
});
/**
* HTTP transport configuration for MCP.
*/
export const zMcpServerHttp = z.object({
_meta: z.object().optional(),
headers: z.array(zHttpHeader),
name: z.string(),
url: z.string(),
});
/**
* SSE transport configuration for MCP.
*/
export const zMcpServerSse = z.object({
_meta: z.object().optional(),
headers: z.array(zHttpHeader),
name: z.string(),
url: z.string(),
});
/**
* Stdio transport configuration for MCP.
*/
export const zMcpServerStdio = z.object({
_meta: z.object().optional(),
args: z.array(z.string()),
command: z.string(),
env: z.array(zEnvVariable),
name: z.string(),
});
/**
* Configuration for connecting to an MCP (Model Context Protocol) server.
*
* MCP servers provide tools and context that the agent can use when
* processing prompts.
*
* See protocol docs: [MCP Servers](https://agentclientprotocol.com/protocol/session-setup#mcp-servers)
*/
export const zMcpServer = z.union([
zMcpServerHttp.and(z.object({
type: z.literal("http"),
})),
zMcpServerSse.and(z.object({
type: z.literal("sse"),
})),
z
.object({
type: z.literal("stdio").optional(),
})
.and(zMcpServerStdio),
]);
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* A unique identifier for a model.
*
* @experimental
*/
export const zModelId = z.string();
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Information about a selectable model.
*
* @experimental
*/
export const zModelInfo = z.object({
_meta: z.object().optional(),
description: z.union([z.string(), z.null()]).optional(),
modelId: zModelId,
name: z.string(),
});
/**
* Request parameters for creating a new session.
*
* See protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)
*/
export const zNewSessionRequest = z.object({
_meta: z.object().optional(),
cwd: z.string(),
mcpServers: z.array(zMcpServer),
});
/**
* Unique identifier for a permission option.
*/
export const zPermissionOptionId = z.string();
/**
* The type of permission option being presented to the user.
*
* Helps clients choose appropriate icons and UI treatment.
*/
export const zPermissionOptionKind = z.union([
z.literal("allow_once"),
z.literal("allow_always"),
z.literal("reject_once"),
z.literal("reject_always"),
]);
/**
* An option presented to the user when requesting permission.
*/
export const zPermissionOption = z.object({
_meta: z.object().optional(),
kind: zPermissionOptionKind,
name: z.string(),
optionId: zPermissionOptionId,
});
/**
* Priority levels for plan entries.
*
* Used to indicate the relative importance or urgency of different
* tasks in the execution plan.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export const zPlanEntryPriority = z.union([
z.literal("high"),
z.literal("medium"),
z.literal("low"),
]);
/**
* Status of a plan entry in the execution flow.
*
* Tracks the lifecycle of each task from planning through completion.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export const zPlanEntryStatus = z.union([
z.literal("pending"),
z.literal("in_progress"),
z.literal("completed"),
]);
/**
* A single entry in the execution plan.
*
* Represents a task or goal that the assistant intends to accomplish
* as part of fulfilling the user's request.
* See protocol docs: [Plan Entries](https://agentclientprotocol.com/protocol/agent-plan#plan-entries)
*/
export const zPlanEntry = z.object({
_meta: z.object().optional(),
content: z.string(),
priority: zPlanEntryPriority,
status: zPlanEntryStatus,
});
/**
* An execution plan for accomplishing complex tasks.
*
* Plans consist of multiple entries representing individual tasks or goals.
* Agents report plans to clients to provide visibility into their execution strategy.
* Plans can evolve during execution as the agent discovers new requirements or completes tasks.
*
* See protocol docs: [Agent Plan](https://agentclientprotocol.com/protocol/agent-plan)
*/
export const zPlan = z.object({
_meta: z.object().optional(),
entries: z.array(zPlanEntry),
});
/**
* Prompt capabilities supported by the agent in `session/prompt` requests.
*
* Baseline agent functionality requires support for [`ContentBlock::Text`]
* and [`ContentBlock::ResourceLink`] in prompt requests.
*
* Other variants must be explicitly opted in to.
* Capabilities for different types of content in prompt requests.
*
* Indicates which content types beyond the baseline (text and resource links)
* the agent can process.
*
* See protocol docs: [Prompt Capabilities](https://agentclientprotocol.com/protocol/initialization#prompt-capabilities)
*/
export const zPromptCapabilities = z.object({
_meta: z.object().optional(),
audio: z.boolean().optional().default(false),
embeddedContext: z.boolean().optional().default(false),
image: z.boolean().optional().default(false),
});
/**
* Protocol version identifier.
*
* This version is only bumped for breaking changes.
* Non-breaking changes should be introduced via capabilities.
*/
export const zProtocolVersion = z.number().int().gte(0).lte(65535);
/**
* Request parameters for the initialize method.
*
* Sent by the client to establish connection and negotiate capabilities.
*
* See protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)
*/
export const zInitializeRequest = z.object({
_meta: z.object().optional(),
clientCapabilities: zClientCapabilities
.optional()
.default({
fs: { readTextFile: false, writeTextFile: false },
terminal: false,
}),
clientInfo: z.union([zImplementation, z.null()]).optional(),
protocolVersion: zProtocolVersion,
});
/**
* Response containing the contents of a text file.
*/
export const zReadTextFileResponse = z.object({
_meta: z.object().optional(),
content: z.string(),
});
/**
* Response to terminal/release method
*/
export const zReleaseTerminalResponse = z.object({
_meta: z.object().optional(),
});
/**
* JSON RPC Request Id
*
* An identifier established by the Client that MUST contain a String, Number, or NULL value if included. If it is not included it is assumed to be a notification. The value SHOULD normally not be Null [1] and Numbers SHOULD NOT contain fractional parts [2]
*
* The Server MUST reply with the same value in the Response object if included. This member is used to correlate the context between the two objects.
*
* [1] The use of Null as a value for the id member in a Request object is discouraged, because this specification uses a value of Null for Responses with an unknown id. Also, because JSON-RPC 1.0 uses an id value of Null for Notifications this could cause confusion in handling.
*
* [2] Fractional parts may be problematic, since many decimal fractions cannot be represented exactly as binary fractions.
*/
export const zRequestId = z.union([z.null(), z.coerce.bigint(), z.string()]);
/**
* The sender or recipient of messages and data in a conversation.
*/
export const zRole = z.enum(["assistant", "user"]);
/**
* Optional annotations for the client. The client can use annotations to inform how objects are used or displayed
*/
export const zAnnotations = z.object({
_meta: z.object().optional(),
audience: z.union([z.array(zRole), z.null()]).optional(),
lastModified: z.union([z.string(), z.null()]).optional(),
priority: z.union([z.number(), z.null()]).optional(),
});
/**
* Audio provided to or from an LLM.
*/
export const zAudioContent = z.object({
_meta: z.object().optional(),
annotations: z.union([zAnnotations, z.null()]).optional(),
data: z.string(),
mimeType: z.string(),
});
/**
* An image provided to or from an LLM.
*/
export const zImageContent = z.object({
_meta: z.object().optional(),
annotations: z.union([zAnnotations, z.null()]).optional(),
data: z.string(),
mimeType: z.string(),
uri: z.union([z.string(), z.null()]).optional(),
});
/**
* A resource that the server is capable of reading, included in a prompt or tool call result.
*/
export const zResourceLink = z.object({
_meta: z.object().optional(),
annotations: z.union([zAnnotations, z.null()]).optional(),
description: z.union([z.string(), z.null()]).optional(),
mimeType: z.union([z.string(), z.null()]).optional(),
name: z.string(),
size: z.union([z.coerce.bigint(), z.null()]).optional(),
title: z.union([z.string(), z.null()]).optional(),
uri: z.string(),
});
/**
* The user selected one of the provided options.
*/
export const zSelectedPermissionOutcome = z.object({
_meta: z.object().optional(),
optionId: zPermissionOptionId,
});
/**
* The outcome of a permission request.
*/
export const zRequestPermissionOutcome = z.union([
z.object({
outcome: z.literal("cancelled"),
}),
zSelectedPermissionOutcome.and(z.object({
outcome: z.literal("selected"),
})),
]);
/**
* Response to a permission request.
*/
export const zRequestPermissionResponse = z.object({
_meta: z.object().optional(),
outcome: zRequestPermissionOutcome,
});
/**
* A unique identifier for a conversation session between a client and agent.
*
* Sessions maintain their own context, conversation history, and state,
* allowing multiple independent interactions with the same agent.
*
* See protocol docs: [Session ID](https://agentclientprotocol.com/protocol/session-setup#session-id)
*/
export const zSessionId = z.string();
/**
* Notification to cancel ongoing operations for a session.
*
* See protocol docs: [Cancellation](https://agentclientprotocol.com/protocol/prompt-turn#cancellation)
*/
export const zCancelNotification = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
});
export const zClientNotification = z.object({
method: z.string(),
params: z
.union([z.union([zCancelNotification, zExtNotification]), z.null()])
.optional(),
});
/**
* Request to create a new terminal and execute a command.
*/
export const zCreateTerminalRequest = z.object({
_meta: z.object().optional(),
args: z.array(z.string()).optional(),
command: z.string(),
cwd: z.union([z.string(), z.null()]).optional(),
env: z.array(zEnvVariable).optional(),
outputByteLimit: z.union([z.number().int().gte(0), z.null()]).optional(),
sessionId: zSessionId,
});
/**
* Request to kill a terminal command without releasing the terminal.
*/
export const zKillTerminalCommandRequest = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
terminalId: z.string(),
});
/**
* Request parameters for loading an existing session.
*
* Only available if the Agent supports the `loadSession` capability.
*
* See protocol docs: [Loading Sessions](https://agentclientprotocol.com/protocol/session-setup#loading-sessions)
*/
export const zLoadSessionRequest = z.object({
_meta: z.object().optional(),
cwd: z.string(),
mcpServers: z.array(zMcpServer),
sessionId: zSessionId,
});
/**
* Request to read content from a text file.
*
* Only available if the client supports the `fs.readTextFile` capability.
*/
export const zReadTextFileRequest = z.object({
_meta: z.object().optional(),
limit: z.union([z.number().int().gte(0), z.null()]).optional(),
line: z.union([z.number().int().gte(0), z.null()]).optional(),
path: z.string(),
sessionId: zSessionId,
});
/**
* Request to release a terminal and free its resources.
*/
export const zReleaseTerminalRequest = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
terminalId: z.string(),
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Information about a session returned by session/list
*
* @experimental
*/
export const zSessionInfo = z.object({
_meta: z.object().optional(),
cwd: z.string(),
sessionId: zSessionId,
title: z.union([z.string(), z.null()]).optional(),
updatedAt: z.union([z.string(), z.null()]).optional(),
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Response from listing sessions.
*
* @experimental
*/
export const zListSessionsResponse = z.object({
_meta: z.object().optional(),
nextCursor: z.union([z.string(), z.null()]).optional(),
sessions: z.array(zSessionInfo),
});
/**
* Capabilities for the `session/list` method.
*
* By supplying `{}` it means that the agent supports listing of sessions.
*
* Further capabilities can be added in the future for other means of filtering or searching the list.
*/
export const zSessionListCapabilities = z.object({
_meta: z.object().optional(),
});
/**
* Session capabilities supported by the agent.
*
* As a baseline, all Agents **MUST** support `session/new`, `session/prompt`, `session/cancel`, and `session/update`.
*
* Optionally, they **MAY** support other session methods and notifications by specifying additional capabilities.
*
* Note: `session/load` is still handled by the top-level `load_session` capability. This will be unified in future versions of the protocol.
*
* See protocol docs: [Session Capabilities](https://agentclientprotocol.com/protocol/initialization#session-capabilities)
*/
export const zSessionCapabilities = z.object({
_meta: z.object().optional(),
list: z.union([zSessionListCapabilities, z.null()]).optional(),
});
/**
* Capabilities supported by the agent.
*
* Advertised during initialization to inform the client about
* available features and content types.
*
* See protocol docs: [Agent Capabilities](https://agentclientprotocol.com/protocol/initialization#agent-capabilities)
*/
export const zAgentCapabilities = z.object({
_meta: z.object().optional(),
loadSession: z.boolean().optional().default(false),
mcpCapabilities: zMcpCapabilities
.optional()
.default({ http: false, sse: false }),
promptCapabilities: zPromptCapabilities.optional().default({
audio: false,
embeddedContext: false,
image: false,
}),
sessionCapabilities: zSessionCapabilities.optional().default({}),
});
/**
* Response to the `initialize` method.
*
* Contains the negotiated protocol version and agent capabilities.
*
* See protocol docs: [Initialization](https://agentclientprotocol.com/protocol/initialization)
*/
export const zInitializeResponse = z.object({
_meta: z.object().optional(),
agentCapabilities: zAgentCapabilities.optional().default({
loadSession: false,
mcpCapabilities: { http: false, sse: false },
promptCapabilities: {
audio: false,
embeddedContext: false,
image: false,
},
sessionCapabilities: {},
}),
agentInfo: z.union([zImplementation, z.null()]).optional(),
authMethods: z.array(zAuthMethod).optional().default([]),
protocolVersion: zProtocolVersion,
});
/**
* Unique identifier for a Session Mode.
*/
export const zSessionModeId = z.string();
/**
* The current mode of the session has changed
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
export const zCurrentModeUpdate = z.object({
_meta: z.object().optional(),
currentModeId: zSessionModeId,
});
/**
* A mode the agent can operate in.
*
* See protocol docs: [Session Modes](https://agentclientprotocol.com/protocol/session-modes)
*/
export const zSessionMode = z.object({
_meta: z.object().optional(),
description: z.union([z.string(), z.null()]).optional(),
id: zSessionModeId,
name: z.string(),
});
/**
* The set of modes and the one currently active.
*/
export const zSessionModeState = z.object({
_meta: z.object().optional(),
availableModes: z.array(zSessionMode),
currentModeId: zSessionModeId,
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* The set of models and the one currently active.
*
* @experimental
*/
export const zSessionModelState = z.object({
_meta: z.object().optional(),
availableModels: z.array(zModelInfo),
currentModelId: zModelId,
});
/**
* Response from loading an existing session.
*/
export const zLoadSessionResponse = z.object({
_meta: z.object().optional(),
models: z.union([zSessionModelState, z.null()]).optional(),
modes: z.union([zSessionModeState, z.null()]).optional(),
});
/**
* Response from creating a new session.
*
* See protocol docs: [Creating a Session](https://agentclientprotocol.com/protocol/session-setup#creating-a-session)
*/
export const zNewSessionResponse = z.object({
_meta: z.object().optional(),
models: z.union([zSessionModelState, z.null()]).optional(),
modes: z.union([zSessionModeState, z.null()]).optional(),
sessionId: zSessionId,
});
/**
* Request parameters for setting a session mode.
*/
export const zSetSessionModeRequest = z.object({
_meta: z.object().optional(),
modeId: zSessionModeId,
sessionId: zSessionId,
});
/**
* Response to `session/set_mode` method.
*/
export const zSetSessionModeResponse = z.object({
_meta: z.object().optional(),
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Request parameters for setting a session model.
*
* @experimental
*/
export const zSetSessionModelRequest = z.object({
_meta: z.object().optional(),
modelId: zModelId,
sessionId: zSessionId,
});
/**
* **UNSTABLE**
*
* This capability is not part of the spec yet, and may be removed or changed at any point.
*
* Response to `session/set_model` method.
*
* @experimental
*/
export const zSetSessionModelResponse = z.object({
_meta: z.object().optional(),
});
/**
* Reasons why an agent stops processing a prompt turn.
*
* See protocol docs: [Stop Reasons](https://agentclientprotocol.com/protocol/prompt-turn#stop-reasons)
*/
export const zStopReason = z.union([
z.literal("end_turn"),
z.literal("max_tokens"),
z.literal("max_turn_requests"),
z.literal("refusal"),
z.literal("cancelled"),
]);
/**
* Response from processing a user prompt.
*
* See protocol docs: [Check for Completion](https://agentclientprotocol.com/protocol/prompt-turn#4-check-for-completion)
*/
export const zPromptResponse = z.object({
_meta: z.object().optional(),
stopReason: zStopReason,
});
export const zAgentResponse = z.union([
z.object({
id: zRequestId,
result: z.union([
zInitializeResponse,
zAuthenticateResponse,
zNewSessionResponse,
zLoadSessionResponse,
zListSessionsResponse,
zSetSessionModeResponse,
zPromptResponse,
zSetSessionModelResponse,
zExtResponse,
]),
}),
z.object({
error: zError,
id: zRequestId,
}),
]);
/**
* Embed a terminal created with `terminal/create` by its id.
*
* The terminal must be added before calling `terminal/release`.
*
* See protocol docs: [Terminal](https://agentclientprotocol.com/protocol/terminals)
*/
export const zTerminal = z.object({
_meta: z.object().optional(),
terminalId: z.string(),
});
/**
* Exit status of a terminal command.
*/
export const zTerminalExitStatus = z.object({
_meta: z.object().optional(),
exitCode: z.union([z.number().int().gte(0), z.null()]).optional(),
signal: z.union([z.string(), z.null()]).optional(),
});
/**
* Request to get the current output and status of a terminal.
*/
export const zTerminalOutputRequest = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
terminalId: z.string(),
});
/**
* Response containing the terminal output and exit status.
*/
export const zTerminalOutputResponse = z.object({
_meta: z.object().optional(),
exitStatus: z.union([zTerminalExitStatus, z.null()]).optional(),
output: z.string(),
truncated: z.boolean(),
});
/**
* Text provided to or from an LLM.
*/
export const zTextContent = z.object({
_meta: z.object().optional(),
annotations: z.union([zAnnotations, z.null()]).optional(),
text: z.string(),
});
/**
* Text-based resource contents.
*/
export const zTextResourceContents = z.object({
_meta: z.object().optional(),
mimeType: z.union([z.string(), z.null()]).optional(),
text: z.string(),
uri: z.string(),
});
/**
* Resource content that can be embedded in a message.
*/
export const zEmbeddedResourceResource = z.union([
zTextResourceContents,
zBlobResourceContents,
]);
/**
* The contents of a resource, embedded into a prompt or tool call result.
*/
export const zEmbeddedResource = z.object({
_meta: z.object().optional(),
annotations: z.union([zAnnotations, z.null()]).optional(),
resource: zEmbeddedResourceResource,
});
/**
* Content blocks represent displayable information in the Agent Client Protocol.
*
* They provide a structured way to handle various types of user-facing content—whether
* it's text from language models, images for analysis, or embedded resources for context.
*
* Content blocks appear in:
* - User prompts sent via `session/prompt`
* - Language model output streamed through `session/update` notifications
* - Progress updates and results from tool calls
*
* This structure is compatible with the Model Context Protocol (MCP), enabling
* agents to seamlessly forward content from MCP tool outputs without transformation.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/content)
*/
export const zContentBlock = z.union([
zTextContent.and(z.object({
type: z.literal("text"),
})),
zImageContent.and(z.object({
type: z.literal("image"),
})),
zAudioContent.and(z.object({
type: z.literal("audio"),
})),
zResourceLink.and(z.object({
type: z.literal("resource_link"),
})),
zEmbeddedResource.and(z.object({
type: z.literal("resource"),
})),
]);
/**
* Standard content block (text, images, resources).
*/
export const zContent = z.object({
_meta: z.object().optional(),
content: zContentBlock,
});
/**
* A streamed item of content
*/
export const zContentChunk = z.object({
_meta: z.object().optional(),
content: zContentBlock,
});
/**
* Request parameters for sending a user prompt to the agent.
*
* Contains the user's message and any additional context.
*
* See protocol docs: [User Message](https://agentclientprotocol.com/protocol/prompt-turn#1-user-message)
*/
export const zPromptRequest = z.object({
_meta: z.object().optional(),
prompt: z.array(zContentBlock),
sessionId: zSessionId,
});
export const zClientRequest = z.object({
id: zRequestId,
method: z.string(),
params: z
.union([
z.union([
zInitializeRequest,
zAuthenticateRequest,
zNewSessionRequest,
zLoadSessionRequest,
zListSessionsRequest,
zSetSessionModeRequest,
zPromptRequest,
zSetSessionModelRequest,
zExtRequest,
]),
z.null(),
])
.optional(),
});
/**
* Content produced by a tool call.
*
* Tool calls can produce different types of content including
* standard content blocks (text, images) or file diffs.
*
* See protocol docs: [Content](https://agentclientprotocol.com/protocol/tool-calls#content)
*/
export const zToolCallContent = z.union([
zContent.and(z.object({
type: z.literal("content"),
})),
zDiff.and(z.object({
type: z.literal("diff"),
})),
zTerminal.and(z.object({
type: z.literal("terminal"),
})),
]);
/**
* Unique identifier for a tool call within a session.
*/
export const zToolCallId = z.string();
/**
* A file location being accessed or modified by a tool.
*
* Enables clients to implement "follow-along" features that track
* which files the agent is working with in real-time.
*
* See protocol docs: [Following the Agent](https://agentclientprotocol.com/protocol/tool-calls#following-the-agent)
*/
export const zToolCallLocation = z.object({
_meta: z.object().optional(),
line: z.union([z.number().int().gte(0), z.null()]).optional(),
path: z.string(),
});
/**
* Execution status of a tool call.
*
* Tool calls progress through different statuses during their lifecycle.
*
* See protocol docs: [Status](https://agentclientprotocol.com/protocol/tool-calls#status)
*/
export const zToolCallStatus = z.union([
z.literal("pending"),
z.literal("in_progress"),
z.literal("completed"),
z.literal("failed"),
]);
/**
* Categories of tools that can be invoked.
*
* Tool kinds help clients choose appropriate icons and optimize how they
* display tool execution progress.
*
* See protocol docs: [Creating](https://agentclientprotocol.com/protocol/tool-calls#creating)
*/
export const zToolKind = z.union([
z.literal("read"),
z.literal("edit"),
z.literal("delete"),
z.literal("move"),
z.literal("search"),
z.literal("execute"),
z.literal("think"),
z.literal("fetch"),
z.literal("switch_mode"),
z.literal("other"),
]);
/**
* Represents a tool call that the language model has requested.
*
* Tool calls are actions that the agent executes on behalf of the language model,
* such as reading files, executing code, or fetching data from external sources.
*
* See protocol docs: [Tool Calls](https://agentclientprotocol.com/protocol/tool-calls)
*/
export const zToolCall = z.object({
_meta: z.object().optional(),
content: z.array(zToolCallContent).optional(),
kind: zToolKind.optional(),
locations: z.array(zToolCallLocation).optional(),
rawInput: z.unknown().optional(),
rawOutput: z.unknown().optional(),
status: zToolCallStatus.optional(),
title: z.string(),
toolCallId: zToolCallId,
});
/**
* An update to an existing tool call.
*
* Used to report progress and results as tools execute. All fields except
* the tool call ID are optional - only changed fields need to be included.
*
* See protocol docs: [Updating](https://agentclientprotocol.com/protocol/tool-calls#updating)
*/
export const zToolCallUpdate = z.object({
_meta: z.object().optional(),
content: z.union([z.array(zToolCallContent), z.null()]).optional(),
kind: z.union([zToolKind, z.null()]).optional(),
locations: z.union([z.array(zToolCallLocation), z.null()]).optional(),
rawInput: z.unknown().optional(),
rawOutput: z.unknown().optional(),
status: z.union([zToolCallStatus, z.null()]).optional(),
title: z.union([z.string(), z.null()]).optional(),
toolCallId: zToolCallId,
});
/**
* Request for user permission to execute a tool call.
*
* Sent when the agent needs authorization before performing a sensitive operation.
*
* See protocol docs: [Requesting Permission](https://agentclientprotocol.com/protocol/tool-calls#requesting-permission)
*/
export const zRequestPermissionRequest = z.object({
_meta: z.object().optional(),
options: z.array(zPermissionOption),
sessionId: zSessionId,
toolCall: zToolCallUpdate,
});
/**
* All text that was typed after the command name is provided as input.
*/
export const zUnstructuredCommandInput = z.object({
_meta: z.object().optional(),
hint: z.string(),
});
/**
* All text that was typed after the command name is provided as input.
*/
export const zAvailableCommandInput = zUnstructuredCommandInput;
/**
* Information about a command.
*/
export const zAvailableCommand = z.object({
_meta: z.object().optional(),
description: z.string(),
input: z.union([zAvailableCommandInput, z.null()]).optional(),
name: z.string(),
});
/**
* Available commands are ready or have changed
*/
export const zAvailableCommandsUpdate = z.object({
_meta: z.object().optional(),
availableCommands: z.array(zAvailableCommand),
});
/**
* Different types of updates that can be sent during session processing.
*
* These updates provide real-time feedback about the agent's progress.
*
* See protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)
*/
export const zSessionUpdate = z.union([
zContentChunk.and(z.object({
sessionUpdate: z.literal("user_message_chunk"),
})),
zContentChunk.and(z.object({
sessionUpdate: z.literal("agent_message_chunk"),
})),
zContentChunk.and(z.object({
sessionUpdate: z.literal("agent_thought_chunk"),
})),
zToolCall.and(z.object({
sessionUpdate: z.literal("tool_call"),
})),
zToolCallUpdate.and(z.object({
sessionUpdate: z.literal("tool_call_update"),
})),
zPlan.and(z.object({
sessionUpdate: z.literal("plan"),
})),
zAvailableCommandsUpdate.and(z.object({
sessionUpdate: z.literal("available_commands_update"),
})),
zCurrentModeUpdate.and(z.object({
sessionUpdate: z.literal("current_mode_update"),
})),
]);
/**
* Notification containing a session update from the agent.
*
* Used to stream real-time progress and results during prompt processing.
*
* See protocol docs: [Agent Reports Output](https://agentclientprotocol.com/protocol/prompt-turn#3-agent-reports-output)
*/
export const zSessionNotification = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
update: zSessionUpdate,
});
export const zAgentNotification = z.object({
method: z.string(),
params: z
.union([z.union([zSessionNotification, zExtNotification]), z.null()])
.optional(),
});
/**
* Request to wait for a terminal command to exit.
*/
export const zWaitForTerminalExitRequest = z.object({
_meta: z.object().optional(),
sessionId: zSessionId,
terminalId: z.string(),
});
/**
* Response containing the exit status of a terminal command.
*/
export const zWaitForTerminalExitResponse = z.object({
_meta: z.object().optional(),
exitCode: z.union([z.number().int().gte(0), z.null()]).optional(),
signal: z.union([z.string(), z.null()]).optional(),
});
/**
* Request to write content to a text file.
*
* Only available if the client supports the `fs.writeTextFile` capability.
*/
export const zWriteTextFileRequest = z.object({
_meta: z.object().optional(),
content: z.string(),
path: z.string(),
sessionId: zSessionId,
});
export const zAgentRequest = z.object({
id: zRequestId,
method: z.string(),
params: z
.union([
z.union([
zWriteTextFileRequest,
zReadTextFileRequest,
zRequestPermissionRequest,
zCreateTerminalRequest,
zTerminalOutputRequest,
zReleaseTerminalRequest,
zWaitForTerminalExitRequest,
zKillTerminalCommandRequest,
zExtRequest,
]),
z.null(),
])
.optional(),
});
/**
* Response to `fs/write_text_file`
*/
export const zWriteTextFileResponse = z.object({
_meta: z.object().optional(),
});
export const zClientResponse = z.union([
z.object({
id: zRequestId,
result: z.union([
zWriteTextFileResponse,
zReadTextFileResponse,
zRequestPermissionResponse,
zCreateTerminalResponse,
zTerminalOutputResponse,
zReleaseTerminalResponse,
zWaitForTerminalExitResponse,
zKillTerminalCommandResponse,
zExtResponse,
]),
}),
z.object({
error: zError,
id: zRequestId,
}),
]);
//# sourceMappingURL=zod.gen.js.map
{"version":3,"file":"zod.gen.js","sourceRoot":"","sources":["../../src/schema/zod.gen.ts"],"names":[],"mappings":"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"}
+9
-4

@@ -1,3 +0,4 @@

import * as schema from "./schema.js";
export * from "./schema.js";
import * as schema from "./schema/index.js";
export type * from "./schema/types.gen.js";
export * from "./schema/index.js";
export * from "./stream.js";

@@ -185,3 +186,3 @@ import type { Stream } from "./stream.js";

*/
kill(): Promise<schema.KillTerminalResponse>;
kill(): Promise<schema.KillTerminalCommandResponse>;
/**

@@ -290,2 +291,4 @@ * Releases the terminal and frees all associated resources.

* Select a model for a given session.
*
* @experimental
*/

@@ -572,3 +575,3 @@ setSessionModel(params: schema.SetSessionModelRequest): Promise<schema.SetSessionModelResponse>;

*/
killTerminal?(params: schema.KillTerminalCommandRequest): Promise<schema.KillTerminalResponse | void>;
killTerminal?(params: schema.KillTerminalCommandRequest): Promise<schema.KillTerminalCommandResponse | void>;
/**

@@ -660,2 +663,4 @@ * Extension method

* Select a model for a given session.
*
* @experimental
*/

@@ -662,0 +667,0 @@ setSessionModel?(params: schema.SetSessionModelRequest): Promise<schema.SetSessionModelResponse | void>;

import { z } from "zod";
import * as schema from "./schema.js";
export * from "./schema.js";
import * as schema from "./schema/index.js";
import * as validate from "./schema/zod.gen.js";
export * from "./schema/index.js";
export * from "./stream.js";

@@ -34,7 +35,7 @@ /**

case schema.AGENT_METHODS.initialize: {
const validatedParams = schema.initializeRequestSchema.parse(params);
const validatedParams = validate.zInitializeRequest.parse(params);
return agent.initialize(validatedParams);
}
case schema.AGENT_METHODS.session_new: {
const validatedParams = schema.newSessionRequestSchema.parse(params);
const validatedParams = validate.zNewSessionRequest.parse(params);
return agent.newSession(validatedParams);

@@ -46,3 +47,3 @@ }

}
const validatedParams = schema.loadSessionRequestSchema.parse(params);
const validatedParams = validate.zLoadSessionRequest.parse(params);
return agent.loadSession(validatedParams);

@@ -54,3 +55,3 @@ }

}
const validatedParams = schema.setSessionModeRequestSchema.parse(params);
const validatedParams = validate.zSetSessionModeRequest.parse(params);
const result = await agent.setSessionMode(validatedParams);

@@ -60,3 +61,3 @@ return result ?? {};

case schema.AGENT_METHODS.authenticate: {
const validatedParams = schema.authenticateRequestSchema.parse(params);
const validatedParams = validate.zAuthenticateRequest.parse(params);
const result = await agent.authenticate(validatedParams);

@@ -66,3 +67,3 @@ return result ?? {};

case schema.AGENT_METHODS.session_prompt: {
const validatedParams = schema.promptRequestSchema.parse(params);
const validatedParams = validate.zPromptRequest.parse(params);
return agent.prompt(validatedParams);

@@ -74,3 +75,3 @@ }

}
const validatedParams = schema.setSessionModelRequestSchema.parse(params);
const validatedParams = validate.zSetSessionModelRequest.parse(params);
const result = await agent.setSessionModel(validatedParams);

@@ -92,3 +93,3 @@ return result ?? {};

case schema.AGENT_METHODS.session_cancel: {
const validatedParams = schema.cancelNotificationSchema.parse(params);
const validatedParams = validate.zCancelNotification.parse(params);
return agent.cancel(validatedParams);

@@ -353,23 +354,23 @@ }

case schema.CLIENT_METHODS.fs_write_text_file: {
const validatedParams = schema.writeTextFileRequestSchema.parse(params);
const validatedParams = validate.zWriteTextFileRequest.parse(params);
return client.writeTextFile?.(validatedParams);
}
case schema.CLIENT_METHODS.fs_read_text_file: {
const validatedParams = schema.readTextFileRequestSchema.parse(params);
const validatedParams = validate.zReadTextFileRequest.parse(params);
return client.readTextFile?.(validatedParams);
}
case schema.CLIENT_METHODS.session_request_permission: {
const validatedParams = schema.requestPermissionRequestSchema.parse(params);
const validatedParams = validate.zRequestPermissionRequest.parse(params);
return client.requestPermission(validatedParams);
}
case schema.CLIENT_METHODS.terminal_create: {
const validatedParams = schema.createTerminalRequestSchema.parse(params);
const validatedParams = validate.zCreateTerminalRequest.parse(params);
return client.createTerminal?.(validatedParams);
}
case schema.CLIENT_METHODS.terminal_output: {
const validatedParams = schema.terminalOutputRequestSchema.parse(params);
const validatedParams = validate.zTerminalOutputRequest.parse(params);
return client.terminalOutput?.(validatedParams);
}
case schema.CLIENT_METHODS.terminal_release: {
const validatedParams = schema.releaseTerminalRequestSchema.parse(params);
const validatedParams = validate.zReleaseTerminalRequest.parse(params);
const result = await client.releaseTerminal?.(validatedParams);

@@ -379,7 +380,7 @@ return result ?? {};

case schema.CLIENT_METHODS.terminal_wait_for_exit: {
const validatedParams = schema.waitForTerminalExitRequestSchema.parse(params);
const validatedParams = validate.zWaitForTerminalExitRequest.parse(params);
return client.waitForTerminalExit?.(validatedParams);
}
case schema.CLIENT_METHODS.terminal_kill: {
const validatedParams = schema.killTerminalCommandRequestSchema.parse(params);
const validatedParams = validate.zKillTerminalCommandRequest.parse(params);
const result = await client.killTerminal?.(validatedParams);

@@ -403,3 +404,3 @@ return result ?? {};

case schema.CLIENT_METHODS.session_update: {
const validatedParams = schema.sessionNotificationSchema.parse(params);
const validatedParams = validate.zSessionNotification.parse(params);
return client.sessionUpdate(validatedParams);

@@ -492,2 +493,4 @@ }

* Select a model for a given session.
*
* @experimental
*/

@@ -494,0 +497,0 @@ async setSessionModel(params) {

@@ -1,1 +0,1 @@

{"version":3,"file":"acp.js","sourceRoot":"","sources":["../src/acp.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"acp.js","sourceRoot":"","sources":["../src/acp.ts"],"names":[],"mappings":"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"}
{
"name": "@agentclientprotocol/sdk",
"version": "0.5.1",
"version": "0.6.0",
"publishConfig": {

@@ -33,3 +33,3 @@ "access": "public"

"test": "vitest run",
"generate": "node scripts/generate.js && npm run format",
"generate": "node scripts/generate.js",
"build": "npm run generate && tsc",

@@ -47,16 +47,15 @@ "format": "prettier --write .",

},
"dependencies": {
"zod": "^3.0.0"
"peerDependencies": {
"zod": "^3.25.0 || ^4.0.0"
},
"devDependencies": {
"@types/node": "^24.9.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.46.2",
"@hey-api/openapi-ts": "^0.88.0",
"@types/node": "^24.10.1",
"@typescript-eslint/eslint-plugin": "^8.48.0",
"@typescript-eslint/parser": "^8.48.0",
"concurrently": "^9.2.1",
"eslint": "^9.38.0",
"eslint": "^9.39.1",
"eslint-config-prettier": "^10.1.8",
"http-server": "^14.1.1",
"json-schema-to-typescript": "^15.0.4",
"prettier": "^3.6.2",
"ts-to-zod": "^3.15.0",
"prettier": "^3.7.1",
"tsx": "^4.20.6",

@@ -66,4 +65,5 @@ "typedoc": "^0.28.14",

"typescript": "^5.9.3",
"vitest": "^4.0.2"
"vitest": "^4.0.14",
"zod": "^3.25.0 || ^4.0.0"
}
}

Sorry, the diff of this file is too big to display

export const AGENT_METHODS = {
authenticate: "authenticate",
initialize: "initialize",
session_cancel: "session/cancel",
session_load: "session/load",
session_new: "session/new",
session_prompt: "session/prompt",
session_set_mode: "session/set_mode",
session_set_model: "session/set_model",
};
export const CLIENT_METHODS = {
fs_read_text_file: "fs/read_text_file",
fs_write_text_file: "fs/write_text_file",
session_request_permission: "session/request_permission",
session_update: "session/update",
terminal_create: "terminal/create",
terminal_kill: "terminal/kill",
terminal_output: "terminal/output",
terminal_release: "terminal/release",
terminal_wait_for_exit: "terminal/wait_for_exit",
};
export const PROTOCOL_VERSION = 1;
import { z } from "zod";
/** @internal */
export const nullSchema = z.null();
/** @internal */
export const numberSchema = z.number();
/** @internal */
export const stringSchema = z.string();
/** @internal */
export const writeTextFileRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
content: z.string(),
path: z.string(),
sessionId: z.string(),
});
/** @internal */
export const readTextFileRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
limit: z.number().optional().nullable(),
line: z.number().optional().nullable(),
path: z.string(),
sessionId: z.string(),
});
/** @internal */
export const terminalOutputRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
terminalId: z.string(),
});
/** @internal */
export const releaseTerminalRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
terminalId: z.string(),
});
/** @internal */
export const waitForTerminalExitRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
terminalId: z.string(),
});
/** @internal */
export const killTerminalCommandRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
terminalId: z.string(),
});
/** @internal */
export const extMethodRequestSchema = z.record(z.unknown());
/** @internal */
export const roleSchema = z.union([z.literal("assistant"), z.literal("user")]);
/** @internal */
export const textResourceContentsSchema = z.object({
_meta: z.record(z.unknown()).optional(),
mimeType: z.string().optional().nullable(),
text: z.string(),
uri: z.string(),
});
/** @internal */
export const blobResourceContentsSchema = z.object({
_meta: z.record(z.unknown()).optional(),
blob: z.string(),
mimeType: z.string().optional().nullable(),
uri: z.string(),
});
/** @internal */
export const toolKindSchema = z.union([
z.literal("read"),
z.literal("edit"),
z.literal("delete"),
z.literal("move"),
z.literal("search"),
z.literal("execute"),
z.literal("think"),
z.literal("fetch"),
z.literal("switch_mode"),
z.literal("other"),
]);
/** @internal */
export const toolCallStatusSchema = z.union([
z.literal("pending"),
z.literal("in_progress"),
z.literal("completed"),
z.literal("failed"),
]);
/** @internal */
export const errorSchema = z.object({
code: z.number(),
data: z.record(z.unknown()).optional(),
message: z.string(),
});
/** @internal */
export const authenticateResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
});
/** @internal */
export const setSessionModeResponseSchema = z.object({
_meta: z.unknown().optional(),
});
/** @internal */
export const promptResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
stopReason: z.union([
z.literal("end_turn"),
z.literal("max_tokens"),
z.literal("max_turn_requests"),
z.literal("refusal"),
z.literal("cancelled"),
]),
});
/** @internal */
export const setSessionModelResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
});
/** @internal */
export const extMethodResponseSchema = z.record(z.unknown());
/** @internal */
export const sessionModeIdSchema = z.string();
/** @internal */
export const extNotificationSchema = z.record(z.unknown());
/** @internal */
export const unstructuredCommandInputSchema = z.object({
hint: z.string(),
});
/** @internal */
export const null1Schema = z.null();
/** @internal */
export const number1Schema = z.number();
/** @internal */
export const string1Schema = z.string();
/** @internal */
export const authenticateRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
methodId: z.string(),
});
/** @internal */
export const setSessionModeRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
modeId: z.string(),
sessionId: z.string(),
});
/** @internal */
export const setSessionModelRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
modelId: z.string(),
sessionId: z.string(),
});
/** @internal */
export const extMethodRequest1Schema = z.record(z.unknown());
/** @internal */
export const httpHeaderSchema = z.object({
_meta: z.record(z.unknown()).optional(),
name: z.string(),
value: z.string(),
});
/** @internal */
export const annotationsSchema = z.object({
_meta: z.record(z.unknown()).optional(),
audience: z.array(roleSchema).optional().nullable(),
lastModified: z.string().optional().nullable(),
priority: z.number().optional().nullable(),
});
/** @internal */
export const embeddedResourceResourceSchema = z.union([
textResourceContentsSchema,
blobResourceContentsSchema,
]);
/** @internal */
export const writeTextFileResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
});
/** @internal */
export const readTextFileResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
content: z.string(),
});
/** @internal */
export const requestPermissionResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
outcome: z.union([
z.object({
outcome: z.literal("cancelled"),
}),
z.object({
optionId: z.string(),
outcome: z.literal("selected"),
}),
]),
});
/** @internal */
export const createTerminalResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
terminalId: z.string(),
});
/** @internal */
export const releaseTerminalResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
});
/** @internal */
export const waitForTerminalExitResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
exitCode: z.number().optional().nullable(),
signal: z.string().optional().nullable(),
});
/** @internal */
export const killTerminalResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
});
/** @internal */
export const extMethodResponse1Schema = z.record(z.unknown());
/** @internal */
export const cancelNotificationSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
});
/** @internal */
export const extNotification1Schema = z.record(z.unknown());
/** @internal */
export const permissionOptionSchema = z.object({
_meta: z.record(z.unknown()).optional(),
kind: z.union([
z.literal("allow_once"),
z.literal("allow_always"),
z.literal("reject_once"),
z.literal("reject_always"),
]),
name: z.string(),
optionId: z.string(),
});
/** @internal */
export const toolCallContentSchema = z.union([
z.object({
content: z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
text: z.string(),
type: z.literal("text"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("image"),
uri: z.string().optional().nullable(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("audio"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
description: z.string().optional().nullable(),
mimeType: z.string().optional().nullable(),
name: z.string(),
size: z.number().optional().nullable(),
title: z.string().optional().nullable(),
type: z.literal("resource_link"),
uri: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
resource: embeddedResourceResourceSchema,
type: z.literal("resource"),
}),
]),
type: z.literal("content"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
newText: z.string(),
oldText: z.string().optional().nullable(),
path: z.string(),
type: z.literal("diff"),
}),
z.object({
terminalId: z.string(),
type: z.literal("terminal"),
}),
]);
/** @internal */
export const toolCallLocationSchema = z.object({
_meta: z.record(z.unknown()).optional(),
line: z.number().optional().nullable(),
path: z.string(),
});
/** @internal */
export const envVariableSchema = z.object({
_meta: z.record(z.unknown()).optional(),
name: z.string(),
value: z.string(),
});
/** @internal */
export const implementationSchema = z.object({
name: z.string(),
title: z.string().optional().nullable(),
version: z.string(),
});
/** @internal */
export const authMethodSchema = z.object({
_meta: z.record(z.unknown()).optional(),
description: z.string().optional().nullable(),
id: z.string(),
name: z.string(),
});
/** @internal */
export const mcpCapabilitiesSchema = z.object({
_meta: z.record(z.unknown()).optional(),
http: z.boolean().optional(),
sse: z.boolean().optional(),
});
/** @internal */
export const promptCapabilitiesSchema = z.object({
_meta: z.record(z.unknown()).optional(),
audio: z.boolean().optional(),
embeddedContext: z.boolean().optional(),
image: z.boolean().optional(),
});
/** @internal */
export const modelInfoSchema = z.object({
_meta: z.record(z.unknown()).optional(),
description: z.string().optional().nullable(),
modelId: z.string(),
name: z.string(),
});
/** @internal */
export const sessionModeSchema = z.object({
_meta: z.record(z.unknown()).optional(),
description: z.string().optional().nullable(),
id: sessionModeIdSchema,
name: z.string(),
});
/** @internal */
export const sessionModelStateSchema = z.object({
_meta: z.record(z.unknown()).optional(),
availableModels: z.array(modelInfoSchema),
currentModelId: z.string(),
});
/** @internal */
export const sessionModeStateSchema = z.object({
_meta: z.record(z.unknown()).optional(),
availableModes: z.array(sessionModeSchema),
currentModeId: z.string(),
});
/** @internal */
export const planEntrySchema = z.object({
_meta: z.record(z.unknown()).optional(),
content: z.string(),
priority: z.union([z.literal("high"), z.literal("medium"), z.literal("low")]),
status: z.union([
z.literal("pending"),
z.literal("in_progress"),
z.literal("completed"),
]),
});
/** @internal */
export const availableCommandInputSchema = unstructuredCommandInputSchema;
/** @internal */
export const fileSystemCapabilitySchema = z.object({
_meta: z.record(z.unknown()).optional(),
readTextFile: z.boolean().optional(),
writeTextFile: z.boolean().optional(),
});
/** @internal */
export const stdioSchema = z.object({
args: z.array(z.string()),
command: z.string(),
env: z.array(envVariableSchema),
name: z.string(),
});
/** @internal */
export const mcpServerSchema = z.union([
z.object({
headers: z.array(httpHeaderSchema),
name: z.string(),
type: z.literal("http"),
url: z.string(),
}),
z.object({
headers: z.array(httpHeaderSchema),
name: z.string(),
type: z.literal("sse"),
url: z.string(),
}),
stdioSchema,
]);
/** @internal */
export const contentBlockSchema = z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
text: z.string(),
type: z.literal("text"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("image"),
uri: z.string().optional().nullable(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("audio"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
description: z.string().optional().nullable(),
mimeType: z.string().optional().nullable(),
name: z.string(),
size: z.number().optional().nullable(),
title: z.string().optional().nullable(),
type: z.literal("resource_link"),
uri: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
resource: embeddedResourceResourceSchema,
type: z.literal("resource"),
}),
]);
/** @internal */
export const terminalExitStatusSchema = z.object({
_meta: z.record(z.unknown()).optional(),
exitCode: z.number().optional().nullable(),
signal: z.string().optional().nullable(),
});
/** @internal */
export const clientNotificationSchema = z.union([
cancelNotificationSchema,
extNotification1Schema,
]);
/** @internal */
export const requestPermissionRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
options: z.array(permissionOptionSchema),
sessionId: z.string(),
toolCall: z.object({
_meta: z.record(z.unknown()).optional(),
content: z.array(toolCallContentSchema).optional().nullable(),
kind: toolKindSchema.optional().nullable(),
locations: z.array(toolCallLocationSchema).optional().nullable(),
rawInput: z.record(z.unknown()).optional(),
rawOutput: z.record(z.unknown()).optional(),
status: toolCallStatusSchema.optional().nullable(),
title: z.string().optional().nullable(),
toolCallId: z.string(),
}),
});
/** @internal */
export const createTerminalRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
args: z.array(z.string()).optional(),
command: z.string(),
cwd: z.string().optional().nullable(),
env: z.array(envVariableSchema).optional(),
outputByteLimit: z.number().optional().nullable(),
sessionId: z.string(),
});
/** @internal */
export const newSessionResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
models: sessionModelStateSchema.optional().nullable(),
modes: sessionModeStateSchema.optional().nullable(),
sessionId: z.string(),
});
/** @internal */
export const loadSessionResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
models: sessionModelStateSchema.optional().nullable(),
modes: sessionModeStateSchema.optional().nullable(),
});
/** @internal */
export const notification1Schema = z.object({
method: z.string(),
params: clientNotificationSchema.optional().nullable(),
});
/** @internal */
export const newSessionRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
cwd: z.string(),
mcpServers: z.array(mcpServerSchema),
});
/** @internal */
export const loadSessionRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
cwd: z.string(),
mcpServers: z.array(mcpServerSchema),
sessionId: z.string(),
});
/** @internal */
export const promptRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
prompt: z.array(contentBlockSchema),
sessionId: z.string(),
});
/** @internal */
export const terminalOutputResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
exitStatus: terminalExitStatusSchema.optional().nullable(),
output: z.string(),
truncated: z.boolean(),
});
/** @internal */
export const agentRequestSchema = z.union([
writeTextFileRequestSchema,
readTextFileRequestSchema,
requestPermissionRequestSchema,
createTerminalRequestSchema,
terminalOutputRequestSchema,
releaseTerminalRequestSchema,
waitForTerminalExitRequestSchema,
killTerminalCommandRequestSchema,
extMethodRequestSchema,
]);
/** @internal */
export const agentCapabilitiesSchema = z.object({
_meta: z.record(z.unknown()).optional(),
loadSession: z.boolean().optional(),
mcpCapabilities: mcpCapabilitiesSchema.optional(),
promptCapabilities: promptCapabilitiesSchema.optional(),
});
/** @internal */
export const availableCommandSchema = z.object({
_meta: z.record(z.unknown()).optional(),
description: z.string(),
input: availableCommandInputSchema.optional().nullable(),
name: z.string(),
});
/** @internal */
export const clientCapabilitiesSchema = z.object({
_meta: z.record(z.unknown()).optional(),
fs: fileSystemCapabilitySchema.optional(),
terminal: z.boolean().optional(),
});
/** @internal */
export const requestSchema = z.object({
id: z.union([nullSchema, numberSchema, stringSchema]),
method: z.string(),
params: agentRequestSchema.optional().nullable(),
});
/** @internal */
export const initializeResponseSchema = z.object({
_meta: z.record(z.unknown()).optional(),
agentCapabilities: agentCapabilitiesSchema.optional(),
agentInfo: implementationSchema.optional().nullable(),
authMethods: z.array(authMethodSchema).optional(),
protocolVersion: z.number(),
});
/** @internal */
export const sessionNotificationSchema = z.object({
_meta: z.record(z.unknown()).optional(),
sessionId: z.string(),
update: z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
content: z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
text: z.string(),
type: z.literal("text"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("image"),
uri: z.string().optional().nullable(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("audio"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
description: z.string().optional().nullable(),
mimeType: z.string().optional().nullable(),
name: z.string(),
size: z.number().optional().nullable(),
title: z.string().optional().nullable(),
type: z.literal("resource_link"),
uri: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
resource: embeddedResourceResourceSchema,
type: z.literal("resource"),
}),
]),
sessionUpdate: z.literal("user_message_chunk"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
content: z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
text: z.string(),
type: z.literal("text"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("image"),
uri: z.string().optional().nullable(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("audio"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
description: z.string().optional().nullable(),
mimeType: z.string().optional().nullable(),
name: z.string(),
size: z.number().optional().nullable(),
title: z.string().optional().nullable(),
type: z.literal("resource_link"),
uri: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
resource: embeddedResourceResourceSchema,
type: z.literal("resource"),
}),
]),
sessionUpdate: z.literal("agent_message_chunk"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
content: z.union([
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
text: z.string(),
type: z.literal("text"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("image"),
uri: z.string().optional().nullable(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
data: z.string(),
mimeType: z.string(),
type: z.literal("audio"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
description: z.string().optional().nullable(),
mimeType: z.string().optional().nullable(),
name: z.string(),
size: z.number().optional().nullable(),
title: z.string().optional().nullable(),
type: z.literal("resource_link"),
uri: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
annotations: annotationsSchema.optional().nullable(),
resource: embeddedResourceResourceSchema,
type: z.literal("resource"),
}),
]),
sessionUpdate: z.literal("agent_thought_chunk"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
content: z.array(toolCallContentSchema).optional(),
kind: z
.union([
z.literal("read"),
z.literal("edit"),
z.literal("delete"),
z.literal("move"),
z.literal("search"),
z.literal("execute"),
z.literal("think"),
z.literal("fetch"),
z.literal("switch_mode"),
z.literal("other"),
])
.optional(),
locations: z.array(toolCallLocationSchema).optional(),
rawInput: z.record(z.unknown()).optional(),
rawOutput: z.record(z.unknown()).optional(),
sessionUpdate: z.literal("tool_call"),
status: z
.union([
z.literal("pending"),
z.literal("in_progress"),
z.literal("completed"),
z.literal("failed"),
])
.optional(),
title: z.string(),
toolCallId: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
content: z.array(toolCallContentSchema).optional().nullable(),
kind: toolKindSchema.optional().nullable(),
locations: z.array(toolCallLocationSchema).optional().nullable(),
rawInput: z.record(z.unknown()).optional(),
rawOutput: z.record(z.unknown()).optional(),
sessionUpdate: z.literal("tool_call_update"),
status: toolCallStatusSchema.optional().nullable(),
title: z.string().optional().nullable(),
toolCallId: z.string(),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
entries: z.array(planEntrySchema),
sessionUpdate: z.literal("plan"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
availableCommands: z.array(availableCommandSchema),
sessionUpdate: z.literal("available_commands_update"),
}),
z.object({
_meta: z.record(z.unknown()).optional(),
currentModeId: z.string(),
sessionUpdate: z.literal("current_mode_update"),
}),
]),
});
/** @internal */
export const initializeRequestSchema = z.object({
_meta: z.record(z.unknown()).optional(),
clientCapabilities: clientCapabilitiesSchema.optional(),
clientInfo: implementationSchema.optional().nullable(),
protocolVersion: z.number(),
});
/** @internal */
export const clientResponseSchema = z.union([
writeTextFileResponseSchema,
readTextFileResponseSchema,
requestPermissionResponseSchema,
createTerminalResponseSchema,
terminalOutputResponseSchema,
releaseTerminalResponseSchema,
waitForTerminalExitResponseSchema,
killTerminalResponseSchema,
extMethodResponse1Schema,
]);
/** @internal */
export const agentNotificationSchema = z.union([
sessionNotificationSchema,
extNotificationSchema,
]);
/** @internal */
export const clientRequestSchema = z.union([
initializeRequestSchema,
authenticateRequestSchema,
newSessionRequestSchema,
loadSessionRequestSchema,
setSessionModeRequestSchema,
promptRequestSchema,
setSessionModelRequestSchema,
extMethodRequest1Schema,
]);
/** @internal */
export const notificationSchema = z.object({
method: z.string(),
params: agentNotificationSchema.optional().nullable(),
});
/** @internal */
export const agentResponseSchema = z.union([
initializeResponseSchema,
authenticateResponseSchema,
newSessionResponseSchema,
loadSessionResponseSchema,
setSessionModeResponseSchema,
promptResponseSchema,
setSessionModelResponseSchema,
extMethodResponseSchema,
]);
/** @internal */
export const request1Schema = z.object({
id: z.union([null1Schema, number1Schema, string1Schema]),
method: z.string(),
params: clientRequestSchema.optional().nullable(),
});
/** @internal */
export const response1Schema = z.union([
z.object({
result: clientResponseSchema,
}),
z.object({
error: errorSchema,
}),
]);
/** @internal */
export const clientOutgoingMessageSchema = z.union([
request1Schema,
response1Schema,
notification1Schema,
]);
/** @internal */
export const responseSchema = z.union([
z.object({
result: agentResponseSchema,
}),
z.object({
error: errorSchema,
}),
]);
/** @internal */
export const agentOutgoingMessageSchema = z.union([
requestSchema,
responseSchema,
notificationSchema,
]);
/** @internal */
export const agentClientProtocolSchema = z.union([
agentOutgoingMessageSchema,
clientOutgoingMessageSchema,
]);
//# sourceMappingURL=schema.js.map
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;CAC9B,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,oBAAoB;IACxC,0BAA0B,EAAE,4BAA4B;IACxD,cAAc,EAAE,gBAAgB;IAChC,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,wBAAwB;CACxC,CAAC;AAEX,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwoExB,gBAAgB;AAChB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAEnC,gBAAgB;AAChB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAEvC,gBAAgB;AAChB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAEvC,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE5D,gBAAgB;AAChB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAE/E,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC;IACpC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACxB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACnB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC1C,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACxB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IACtB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;CACpB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC;QAClB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QACrB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACvB,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC9B,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QACpB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;KACvB,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE7D,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAE9C,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE3D,gBAAgB;AAChB,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAEpC,gBAAgB;AAChB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAExC,gBAAgB;AAChB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAExC,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE7D,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC;IACpD,0BAA0B;IAC1B,0BAA0B;CAC3B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;QACf,CAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;SAChC,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;SAC/B,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE9D,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE5D,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;QACZ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QACvB,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACzB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACxB,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;KAC3B,CAAC;IACF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3C,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;YACf,CAAC,CAAC,MAAM,CAAC;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;aACxB,CAAC;YACF,CAAC,CAAC,MAAM,CAAC;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;gBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aACtC,CAAC;YACF,CAAC,CAAC,MAAM,CAAC;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;gBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aACzB,CAAC;YACF,CAAC,CAAC,MAAM,CAAC;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACvC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;gBAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;aAChB,CAAC;YACF,CAAC,CAAC,MAAM,CAAC;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;gBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACpD,QAAQ,EAAE,8BAA8B;gBACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;aAC5B,CAAC;SACH,CAAC;QACF,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;KAC3B,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KACxB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;KAC5B,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5B,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACvC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,EAAE,EAAE,mBAAmB;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IACzC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;CAC3B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;CAC1B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC;QACd,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QACpB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACxB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;KACvB,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAA8B,CAAC;AAE1E,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC;IACrC,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;IACF,WAAW;CACZ,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC;IACxC,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KACxB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;KACtC,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;KACzB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACvC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;QAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACpD,QAAQ,EAAE,8BAA8B;QACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;KAC5B,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9C,wBAAwB;IACxB,sBAAsB;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC7D,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAC1C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAChE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC3C,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAClD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC1C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,KAAK,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,KAAK,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;CACrC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,wBAAwB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC;IACxC,0BAA0B;IAC1B,yBAAyB;IACzB,8BAA8B;IAC9B,2BAA2B;IAC3B,2BAA2B;IAC3B,4BAA4B;IAC5B,gCAAgC;IAChC,gCAAgC;IAChC,sBAAsB;CACvB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACjD,kBAAkB,EAAE,wBAAwB,CAAC,QAAQ,EAAE;CACxD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,KAAK,EAAE,2BAA2B,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,EAAE,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IACrD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,iBAAiB,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACrD,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IACjD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;CAC5B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC;QACd,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;gBACf,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;iBACxB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;iBACtC,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;iBACzB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACvC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;oBAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;iBAChB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;iBAC5B,CAAC;aACH,CAAC;YACF,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;SAC/C,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;gBACf,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;iBACxB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;iBACtC,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;iBACzB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACvC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;oBAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;iBAChB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;iBAC5B,CAAC;aACH,CAAC;YACF,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;SAChD,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;gBACf,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;iBACxB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;iBACtC,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;iBACzB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACvC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;oBAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;iBAChB,CAAC;gBACF,CAAC,CAAC,MAAM,CAAC;oBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACvC,WAAW,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;oBACpD,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;iBAC5B,CAAC;aACH,CAAC;YACF,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;SAChD,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE;YAClD,IAAI,EAAE,CAAC;iBACJ,KAAK,CAAC;gBACL,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACnB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACnB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;gBACpB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBAClB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;gBACxB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aACnB,CAAC;iBACD,QAAQ,EAAE;YACb,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE;YACrD,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC3C,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;YACrC,MAAM,EAAE,CAAC;iBACN,KAAK,CAAC;gBACL,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;gBACpB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;gBACxB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;gBACtB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;aACpB,CAAC;iBACD,QAAQ,EAAE;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;SACvB,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC7D,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC1C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAChE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YAC3C,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;YAC5C,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAClD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;SACvB,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;YACjC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;SACjC,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;YAClD,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;SACtD,CAAC;QACF,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;YACzB,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;SAChD,CAAC;KACH,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,kBAAkB,EAAE,wBAAwB,CAAC,QAAQ,EAAE;IACvD,UAAU,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;CAC5B,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC1C,2BAA2B;IAC3B,0BAA0B;IAC1B,+BAA+B;IAC/B,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,iCAAiC;IACjC,0BAA0B;IAC1B,wBAAwB;CACzB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC7C,yBAAyB;IACzB,qBAAqB;CACtB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;IACzC,uBAAuB;IACvB,yBAAyB;IACzB,uBAAuB;IACvB,wBAAwB;IACxB,2BAA2B;IAC3B,mBAAmB;IACnB,4BAA4B;IAC5B,uBAAuB;CACxB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;IACzC,wBAAwB;IACxB,0BAA0B;IAC1B,wBAAwB;IACxB,yBAAyB;IACzB,4BAA4B;IAC5B,oBAAoB;IACpB,6BAA6B;IAC7B,uBAAuB;CACxB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;IACxD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC;IACrC,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,oBAAoB;KAC7B,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,WAAW;KACnB,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC;IACjD,cAAc;IACd,eAAe;IACf,mBAAmB;CACpB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC;IACpC,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,mBAAmB;KAC5B,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,WAAW;KACnB,CAAC;CACH,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC;IAChD,aAAa;IACb,cAAc;IACd,kBAAkB;CACnB,CAAC,CAAC;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC/C,0BAA0B;IAC1B,2BAA2B;CAC5B,CAAC,CAAC"}

Sorry, the diff of this file is too big to display