export type ProtocolCaseClassification = "handled" | "typed_rejected" | "controlled_exec_error" | "intentionally_observed"; /** * Wire snapshot currently handled by the proxy. This is a pinned vendored * descriptor inventory, not a stable public API and not a live extract from a * newer installed Cursor agent. Advancing this pin requires a regenerated * descriptor plus an explicit review of every changed surface. * * Source: funny-vibes/agent-vibes agent.v1 (2026-07-16), plus exhaustive * descriptor deltas checked against the pinned cursor-agent 2026.07.20 build * in protocol-surface-parity. */ export declare const CURSOR_PROTOCOL_MANIFEST: { readonly supportedClientVersion: "cli-2026.07.20-8cc9c0b"; readonly descriptorSha256: "416afaa71d8148e41751016d84e908e49d5a4e0f46768f1073fc6048c9a419a1"; readonly source: "vendored proto/agent/v1/agent.proto (agent-vibes 2026-07-16 + pinned cursor-agent 2026.07.20 descriptor catch-up); pin coupled to descriptor"; readonly generator: { readonly name: "protoc-gen-es"; readonly version: "v2.10.2"; readonly parameter: "target=ts"; }; readonly agentClientMessage: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly agentServerMessage: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly agentRunRequest: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly conversationStateStructure: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; /** * Run-path carriers for request context / MCP catalog. Unsupported carriers * stay classified here and must not be advertised as populated capabilities. * Native Write (writeArgs/writeResult) is typed_rejected while C-WRITE is * gate-failed for the current supported build; MCP Write remains visible. */ readonly runRequestContextBearing: readonly [{ carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }, { carrier: string; name: string; number: number; key: string; }]; /** Every oneof case introduced by the pinned July catch-up. Nested cases * are inventoried explicitly because top-level surface parity cannot prove * their runtime disposition. */ readonly julyCatchUpOneofCases: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly interactionUpdate: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; /** Native todos are server-owned ToolCall state. The current descriptor has * no matching ExecServerMessage/ExecClientMessage continuation pair. */ readonly todoToolCall: readonly [{ name: string; number: number; }, { name: string; number: number; }]; /** ReadLints is observable as a ToolCall; production requires the paired * diagnosticsArgs/diagnosticsResult client Exec continuation. */ readonly lspDiagnosticsToolCall: readonly [{ name: string; number: number; }]; readonly interactionQuery: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly interactionResponse: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly execServerMessage: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly execServerControlMessage: readonly [{ name: string; number: number; }]; readonly execClientMessage: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly execClientControlMessage: readonly [{ name: string; number: number; }, { name: string; number: number; }, { name: string; number: number; }]; readonly classifications: { agentClientMessage: { runRequest: "handled"; execClientMessage: "handled"; kvClientMessage: "handled"; conversationAction: "handled"; execClientControlMessage: "handled"; interactionResponse: "handled"; clientHeartbeat: "handled"; prewarmRequest: "handled"; }; agentServerMessage: { interactionUpdate: "handled"; execServerMessage: "handled"; conversationCheckpointUpdate: "handled"; kvServerMessage: "handled"; execServerControlMessage: "handled"; interactionQuery: "handled"; }; conversationStateStructure: { rootPromptMessagesJson: "handled"; todos: "handled"; pendingToolCalls: "handled"; tokenDetails: "handled"; summary: "handled"; plan: "intentionally_observed"; turns: "handled"; previousWorkspaceUris: "intentionally_observed"; mode: "intentionally_observed"; summaryArchive: "intentionally_observed"; fileStates: "intentionally_observed"; summaryArchives: "handled"; turnTimings: "intentionally_observed"; fileStatesV2: "handled"; subagentStates: "typed_rejected"; selfSummaryCount: "intentionally_observed"; readPaths: "intentionally_observed"; activeBranchName: "intentionally_observed"; plans: "intentionally_observed"; trackedGitRepoBranches: "intentionally_observed"; agentType: "intentionally_observed"; communicateUpdateHistory: "intentionally_observed"; subagentThreads: "typed_rejected"; communicateUpdateFinalSummary: "intentionally_observed"; conversationStartedTimestampMs: "intentionally_observed"; conversationStartedTimeZone: "intentionally_observed"; communicateUpdateCompletedSubtitle: "intentionally_observed"; communicateUpdateStatesByParentToolCallId: "intentionally_observed"; subagentRunsByParentToolCallId: "typed_rejected"; subagentStateRefs: "typed_rejected"; }; runRequestContextBearing: { "AgentRunRequest.mcpTools": "handled"; "AgentRunRequest.mcpFileSystemOptions": "handled"; "AgentRunRequest.skillOptions": "typed_rejected"; "AgentRunRequest.customSystemPrompt": "typed_rejected"; "UserMessageAction.requestContext": "handled"; "ResumeAction.requestContext": "handled"; "StartPlanAction.requestContext": "typed_rejected"; "ExecutePlanAction.requestContext": "typed_rejected"; "RequestContextSuccess.requestContext": "handled"; }; julyCatchUpOneofCases: { "ConnectScmArgs.github": "typed_rejected"; "ConnectScmRequestResponse.approved": "typed_rejected"; "ConnectScmRequestResponse.rejected": "typed_rejected"; "ConnectScmRequestResponse.failed": "typed_rejected"; "ConnectScmResult.success": "typed_rejected"; "ConnectScmResult.error": "typed_rejected"; "ConnectScmResult.rejected": "typed_rejected"; "ExecuteHookRequest.beforeSubmitPrompt": "controlled_exec_error"; "ExecuteHookRequest.afterAgentResponse": "controlled_exec_error"; "ExecuteHookRequest.afterAgentThought": "controlled_exec_error"; "ExecuteHookRequest.stop": "controlled_exec_error"; "ExecuteHookResponse.beforeSubmitPrompt": "controlled_exec_error"; "ExecuteHookResponse.afterAgentResponse": "controlled_exec_error"; "ExecuteHookResponse.afterAgentThought": "controlled_exec_error"; "ExecuteHookResponse.stop": "controlled_exec_error"; "InteractionQuery.connectScmRequestQuery": "typed_rejected"; "InteractionResponse.connectScmRequestResponse": "typed_rejected"; "InteractionUpdate.responseComparison": "intentionally_observed"; "PrManagementArgs.postComment": "typed_rejected"; "ResponseComparisonUpdate.started": "intentionally_observed"; "ResponseComparisonUpdate.textDelta": "intentionally_observed"; "ResponseComparisonUpdate.completed": "intentionally_observed"; "ResponseComparisonUpdate.skipped": "intentionally_observed"; "ToolCall.connectScmToolCall": "typed_rejected"; "AgentStoreConflictResult.success": "controlled_exec_error"; "AgentStoreConflictResult.error": "controlled_exec_error"; "ConversationAction.subscriptionNotificationAction": "intentionally_observed"; "ConversationSearchResult.success": "handled"; "ConversationSearchResult.error": "handled"; "CustomModeIntent.enter": "typed_rejected"; "CustomModeIntent.exit": "typed_rejected"; "PrManagementArgs.resolveComment": "typed_rejected"; "PrManagementArgs.getCiStatus": "typed_rejected"; "PrManagementArgs.setPrStatus": "typed_rejected"; "SelectedAgenticGitAction.createBranchParams": "typed_rejected"; "ToolCall.searchConversationsToolCall": "handled"; }; interactionUpdate: { textDelta: "handled"; toolCallStarted: "handled"; toolCallCompleted: "handled"; thinkingDelta: "handled"; thinkingCompleted: "handled"; userMessageAppended: "intentionally_observed"; partialToolCall: "handled"; tokenDelta: "handled"; summary: "intentionally_observed"; summaryStarted: "intentionally_observed"; summaryCompleted: "intentionally_observed"; shellOutputDelta: "intentionally_observed"; heartbeat: "intentionally_observed"; turnEnded: "handled"; toolCallDelta: "handled"; stepStarted: "intentionally_observed"; stepCompleted: "intentionally_observed"; promptSuggestion: "intentionally_observed"; postRequestPrompt: "intentionally_observed"; activeBranchChange: "intentionally_observed"; feedbackRequest: "intentionally_observed"; responseComparison: "intentionally_observed"; }; todoToolCall: { updateTodosToolCall: "intentionally_observed"; readTodosToolCall: "intentionally_observed"; }; lspDiagnosticsToolCall: { readLintsToolCall: "intentionally_observed"; }; interactionQuery: { webSearchRequestQuery: "handled"; askQuestionInteractionQuery: "handled"; switchModeRequestQuery: "typed_rejected"; createPlanRequestQuery: "typed_rejected"; setupVmEnvironmentArgs: "controlled_exec_error"; webFetchRequestQuery: "typed_rejected"; prManagementRequestQuery: "typed_rejected"; mcpAuthRequestQuery: "typed_rejected"; generateImageRequestQuery: "typed_rejected"; replaceEnvArgs: "typed_rejected"; connectScmRequestQuery: "typed_rejected"; }; interactionResponse: { webSearchRequestResponse: "handled"; askQuestionInteractionResponse: "handled"; switchModeRequestResponse: "typed_rejected"; createPlanRequestResponse: "typed_rejected"; setupVmEnvironmentResult: "controlled_exec_error"; webFetchRequestResponse: "typed_rejected"; prManagementResult: "typed_rejected"; mcpAuthRequestResponse: "typed_rejected"; generateImageRequestResponse: "typed_rejected"; replaceEnvResult: "typed_rejected"; connectScmRequestResponse: "typed_rejected"; }; execServerMessage: { shellArgs: "handled"; writeArgs: "typed_rejected"; deleteArgs: "handled"; grepArgs: "handled"; readArgs: "handled"; lsArgs: "handled"; diagnosticsArgs: "typed_rejected"; requestContextArgs: "handled"; mcpArgs: "handled"; shellStreamArgs: "handled"; backgroundShellSpawnArgs: "typed_rejected"; listMcpResourcesExecArgs: "handled"; readMcpResourceExecArgs: "handled"; fetchArgs: "handled"; recordScreenArgs: "controlled_exec_error"; computerUseArgs: "controlled_exec_error"; writeShellStdinArgs: "controlled_exec_error"; executeHookArgs: "controlled_exec_error"; subagentArgs: "handled"; redactedReadArgs: "handled"; forceBackgroundShellArgs: "controlled_exec_error"; forceBackgroundSubagentArgs: "controlled_exec_error"; mcpStateExecArgs: "handled"; subagentAwaitArgs: "handled"; smartModeClassifierArgs: "controlled_exec_error"; canvasDiagnosticsArgs: "controlled_exec_error"; shellAllowlistPrecheckArgs: "handled"; mcpAllowlistPrecheckArgs: "handled"; webFetchAllowlistPrecheckArgs: "handled"; gitDiffRequest: "controlled_exec_error"; piReadArgs: "handled"; piBashArgs: "handled"; piEditArgs: "handled"; piWriteArgs: "handled"; piGrepArgs: "handled"; piFindArgs: "handled"; piLsArgs: "handled"; miniSweAgentBashArgs: "handled"; conversationSearchArgs: "handled"; agentStoreConflictArgs: "controlled_exec_error"; }; execServerControlMessage: { abort: "handled"; }; execClientMessage: { shellResult: "handled"; writeResult: "typed_rejected"; deleteResult: "handled"; grepResult: "handled"; readResult: "handled"; lsResult: "handled"; diagnosticsResult: "typed_rejected"; requestContextResult: "handled"; mcpResult: "handled"; shellStream: "handled"; backgroundShellSpawnResult: "typed_rejected"; listMcpResourcesExecResult: "handled"; readMcpResourceExecResult: "handled"; fetchResult: "handled"; recordScreenResult: "controlled_exec_error"; computerUseResult: "controlled_exec_error"; writeShellStdinResult: "controlled_exec_error"; executeHookResult: "controlled_exec_error"; subagentResult: "handled"; redactedReadResult: "handled"; forceBackgroundShellResult: "controlled_exec_error"; forceBackgroundSubagentResult: "controlled_exec_error"; mcpStateExecResult: "handled"; subagentAwaitResult: "handled"; smartModeClassifierResult: "controlled_exec_error"; canvasDiagnosticsResult: "controlled_exec_error"; shellAllowlistPrecheckResult: "handled"; mcpAllowlistPrecheckResult: "handled"; webFetchAllowlistPrecheckResult: "handled"; gitDiffResponse: "controlled_exec_error"; piReadResult: "handled"; piBashResult: "handled"; piEditResult: "handled"; piWriteResult: "handled"; piGrepResult: "handled"; piFindResult: "handled"; piLsResult: "handled"; conversationSearchResult: "handled"; agentStoreConflictResult: "controlled_exec_error"; miniSweAgentBashResult: "handled"; }; execClientControlMessage: { streamClose: "handled"; throw: "handled"; heartbeat: "handled"; }; }; }; export declare const SUPPORTED_CURSOR_CLIENT_VERSION: "cli-2026.07.20-8cc9c0b";