diff --git a/src/entrypoints/sdk/controlTypes.ts b/src/entrypoints/sdk/controlTypes.ts index 24206c3..42f2ac7 100644 --- a/src/entrypoints/sdk/controlTypes.ts +++ b/src/entrypoints/sdk/controlTypes.ts @@ -30,9 +30,123 @@ export type SDKControlPermissionRequest = { description?: string } +export type SDKControlInitializeRequest = { + subtype: 'initialize' + hooks?: Record>> + sdkMcpServers?: string[] + jsonSchema?: Record + systemPrompt?: string + appendSystemPrompt?: string + agents?: Record + promptSuggestions?: boolean + agentProgressSummaries?: boolean +} + +export type SDKControlSetPermissionModeRequest = { + subtype: 'set_permission_mode' + mode: string + ultraplan?: boolean +} + +export type SDKControlSetModelRequest = { + subtype: 'set_model' + model?: string +} + +export type SDKControlSetMaxThinkingTokensRequest = { + subtype: 'set_max_thinking_tokens' + max_thinking_tokens: number | null +} + +export type SDKControlMcpStatusRequest = { + subtype: 'mcp_status' +} + +export type SDKControlGetContextUsageRequest = { + subtype: 'get_context_usage' +} + +export type SDKControlRewindFilesRequest = { + subtype: 'rewind_files' + paths?: string[] +} + +export type SDKControlCancelAsyncMessageRequest = { + subtype: 'cancel_async_message' + request_id?: string +} + +export type SDKControlSeedReadStateRequest = { + subtype: 'seed_read_state' + entries?: Array> +} + +export type SDKControlMcpMessageRequest = { + subtype: 'mcp_message' + message?: Record +} + +export type SDKControlMcpSetServersRequest = { + subtype: 'mcp_set_servers' + servers?: Array> +} + +export type SDKControlReloadPluginsRequest = { + subtype: 'reload_plugins' +} + +export type SDKControlMcpReconnectRequest = { + subtype: 'mcp_reconnect' + server_name?: string +} + +export type SDKControlMcpToggleRequest = { + subtype: 'mcp_toggle' + server_name?: string + enabled?: boolean +} + +export type SDKControlStopTaskRequest = { + subtype: 'stop_task' + task_id?: string +} + +export type SDKControlApplyFlagSettingsRequest = { + subtype: 'apply_flag_settings' + settings?: Record +} + +export type SDKControlGetSettingsRequest = { + subtype: 'get_settings' +} + +export type SDKControlElicitationRequest = { + subtype: 'elicitation' + prompt?: string + spec?: Record +} + export type SDKControlRequestInner = | SDKControlInterruptRequest | SDKControlPermissionRequest + | SDKControlInitializeRequest + | SDKControlSetPermissionModeRequest + | SDKControlSetModelRequest + | SDKControlSetMaxThinkingTokensRequest + | SDKControlMcpStatusRequest + | SDKControlGetContextUsageRequest + | SDKControlRewindFilesRequest + | SDKControlCancelAsyncMessageRequest + | SDKControlSeedReadStateRequest + | SDKControlMcpMessageRequest + | SDKControlMcpSetServersRequest + | SDKControlReloadPluginsRequest + | SDKControlMcpReconnectRequest + | SDKControlMcpToggleRequest + | SDKControlStopTaskRequest + | SDKControlApplyFlagSettingsRequest + | SDKControlGetSettingsRequest + | SDKControlElicitationRequest | ({ subtype: string } & Record) @@ -55,9 +169,58 @@ export type SDKControlErrorResponse = { error: string } +export type SDKControlInitializeResponse = { + subtype: 'initialize' + request_id: string + commands?: Array> + agents?: Array> + output_style?: string + available_output_styles?: string[] + models?: Array> + account?: Record + pid?: number + fast_mode_state?: Record +} + +export type SDKControlMcpStatusResponse = { + subtype: 'mcp_status' + request_id: string + mcpServers?: Array> +} + +export type SDKControlGetContextUsageResponse = { + subtype: 'get_context_usage' + request_id: string + categories?: Array> + totalTokens?: number + maxTokens?: number + rawMaxTokens?: number + percentage?: number + gridRows?: Array>> + model?: string + memoryFiles?: Array> +} + +export type SDKControlGetSettingsResponse = { + subtype: 'get_settings' + request_id: string + settings?: Record +} + +export type SDKControlElicitationResponse = { + subtype: 'elicitation' + request_id: string + response?: Record +} + export type SDKControlResponseInner = | SDKControlSuccessResponse | SDKControlErrorResponse + | SDKControlInitializeResponse + | SDKControlMcpStatusResponse + | SDKControlGetContextUsageResponse + | SDKControlGetSettingsResponse + | SDKControlElicitationResponse | ({ subtype: string request_id: string