""" Copilot SDK - Python Client for GitHub Copilot CLI JSON-RPC based SDK for programmatic control of GitHub Copilot CLI """ from importlib.metadata import PackageNotFoundError from importlib.metadata import version as _pkg_version from . import rpc as rpc # noqa: F401 -- register the public ``copilot.rpc`` namespace # Register the public ``copilot.session_events`` namespace. from . import session_events as session_events # noqa: F401 from ._mode import ( BUILTIN_TOOLS_ISOLATED, CopilotClientMode, ToolSet, ) from .canvas import ( CanvasAction, CanvasDeclaration, CanvasError, CanvasHandler, CanvasHostContext, CanvasHostContextCapabilities, CanvasJsonSchema, ExtensionInfo, OpenCanvasInstance, ) from .client import ( CapiSessionOptions, ChildProcessRuntimeConnection, CloudSessionOptions, CloudSessionRepository, CopilotClient, GetAuthStatusResponse, GetStatusResponse, LogLevel, ModelBilling, ModelCapabilities, ModelInfo, ModelLimits, ModelPolicy, ModelSupports, ModelVisionLimits, PingResponse, RemoteSessionMode, RuntimeConnection, SessionBackgroundEvent, SessionContext, SessionCreatedEvent, SessionDeletedEvent, SessionForegroundEvent, SessionLifecycleEvent, SessionLifecycleEventBase, SessionLifecycleEventMetadata, SessionLifecycleEventType, SessionLifecycleHandler, SessionListFilter, SessionMetadata, SessionUpdatedEvent, StdioRuntimeConnection, StopError, TcpRuntimeConnection, TelemetryConfig, UriRuntimeConnection, ) from .copilot_request_handler import ( CopilotRequestContext, CopilotRequestHandler, CopilotWebSocketCloseStatus, CopilotWebSocketForwarder, CopilotWebSocketHandler, LlmInferenceHeaders, ) from .generated.rpc import ( ModelBillingTokenPrices, ModelBillingTokenPricesLongContext, ) from .generated.session_events import ( PermissionRequest, SessionEvent, SessionEventType, ) from .session import ( AutoModeSwitchHandler, AutoModeSwitchRequest, AutoModeSwitchResponse, BearerTokenProvider, CommandContext, CommandDefinition, CopilotSession, CreateSessionFsHandler, ElicitationContext, ElicitationHandler, ElicitationParams, ElicitationResult, ErrorOccurredHandler, ErrorOccurredHookInput, ErrorOccurredHookOutput, ExitPlanModeHandler, ExitPlanModeRequest, ExitPlanModeResult, InfiniteSessionConfig, InputOptions, LargeToolOutputConfig, McpAuthContext, McpAuthHandler, McpAuthRequest, McpAuthResult, McpAuthStaticClientConfig, McpAuthToken, McpAuthWwwAuthenticateParams, MCPHTTPServerConfig, MCPServerConfig, MCPStdioServerConfig, ModelCapabilitiesOverride, ModelLimitsOverride, ModelSupportsOverride, ModelVisionLimitsOverride, NamedProviderConfig, PermissionHandler, PermissionNoResult, PermissionRequestResult, PostToolUseFailureHandler, PostToolUseFailureHookInput, PostToolUseFailureHookOutput, PostToolUseHandler, PostToolUseHookInput, PostToolUseHookOutput, PreMcpToolCallHandler, PreMcpToolCallHookInput, PreMcpToolCallHookOutput, PreToolUseHandler, PreToolUseHookInput, PreToolUseHookOutput, ProviderConfig, ProviderModelConfig, ProviderTokenArgs, ReasoningSummary, SessionCapabilities, SessionEndHandler, SessionEndHookInput, SessionEndHookOutput, SessionEventHandler, SessionFsCapabilities, SessionFsConfig, SessionHooks, SessionLimitsConfig, SessionStartHandler, SessionStartHookInput, SessionStartHookOutput, SessionUiApi, SessionUiCapabilities, SystemMessageConfig, UserInputHandler, UserInputRequest, UserInputResponse, UserPromptSubmittedHandler, UserPromptSubmittedHookInput, UserPromptSubmittedHookOutput, ) from .session_fs_provider import ( SessionFsFileInfo, SessionFsProvider, SessionFsSqliteProvider, SessionFsSqliteQueryResult, create_session_fs_adapter, ) from .tools import ( Tool, ToolBinaryResult, ToolInvocation, ToolResult, ToolResultType, convert_mcp_call_tool_result, define_tool, ) try: __version__ = _pkg_version("github-copilot-sdk") except PackageNotFoundError: # No installed package metadata (e.g. running from a source checkout that # was never installed). Use a sentinel that can never masquerade as a real # release rather than a hardcoded version that would silently go stale. __version__ = "0.0.0.dev0" __all__ = [ "AutoModeSwitchHandler", "AutoModeSwitchRequest", "AutoModeSwitchResponse", "BUILTIN_TOOLS_ISOLATED", "CanvasAction", "CanvasDeclaration", "CanvasError", "CanvasHandler", "CanvasHostContext", "CanvasHostContextCapabilities", "CanvasJsonSchema", "CapiSessionOptions", "ChildProcessRuntimeConnection", "CloudSessionOptions", "CloudSessionRepository", "CommandContext", "CommandDefinition", "CopilotClient", "CopilotClientMode", "CopilotSession", "CopilotRequestContext", "CopilotRequestHandler", "CopilotWebSocketCloseStatus", "CopilotWebSocketHandler", "CreateSessionFsHandler", "ElicitationContext", "ElicitationHandler", "ElicitationParams", "ElicitationResult", "ErrorOccurredHandler", "ErrorOccurredHookInput", "ErrorOccurredHookOutput", "ExitPlanModeHandler", "ExitPlanModeRequest", "ExitPlanModeResult", "ExtensionInfo", "CopilotWebSocketForwarder", "GetAuthStatusResponse", "BearerTokenProvider", "GetStatusResponse", "InfiniteSessionConfig", "InputOptions", "LargeToolOutputConfig", "LlmInferenceHeaders", "LogLevel", "MCPHTTPServerConfig", "MCPServerConfig", "MCPStdioServerConfig", "McpAuthContext", "McpAuthHandler", "McpAuthRequest", "McpAuthResult", "McpAuthStaticClientConfig", "McpAuthToken", "McpAuthWwwAuthenticateParams", "ModelBilling", "ModelBillingTokenPrices", "ModelBillingTokenPricesLongContext", "ModelCapabilities", "ModelCapabilitiesOverride", "ModelInfo", "ModelLimits", "ModelLimitsOverride", "ModelPolicy", "ModelSupports", "ModelSupportsOverride", "ModelVisionLimits", "ModelVisionLimitsOverride", "NamedProviderConfig", "OpenCanvasInstance", "PermissionHandler", "PermissionNoResult", "PermissionRequest", "PermissionRequestResult", "PingResponse", "PostToolUseHandler", "PostToolUseFailureHandler", "PostToolUseFailureHookInput", "PostToolUseFailureHookOutput", "PostToolUseHookInput", "PostToolUseHookOutput", "PreMcpToolCallHandler", "PreMcpToolCallHookInput", "PreMcpToolCallHookOutput", "PreToolUseHandler", "PreToolUseHookInput", "PreToolUseHookOutput", "ProviderConfig", "ProviderModelConfig", "ProviderTokenArgs", "ReasoningSummary", "RemoteSessionMode", "RuntimeConnection", "rpc", "session_events", "SessionBackgroundEvent", "SessionCapabilities", "SessionContext", "SessionCreatedEvent", "SessionDeletedEvent", "SessionEndHandler", "SessionEndHookInput", "SessionEndHookOutput", "SessionEvent", "SessionEventHandler", "SessionEventType", "SessionForegroundEvent", "SessionFsCapabilities", "SessionFsConfig", "SessionFsFileInfo", "SessionFsProvider", "SessionFsSqliteProvider", "SessionFsSqliteQueryResult", "SessionHooks", "SessionLimitsConfig", "SessionLifecycleEvent", "SessionLifecycleEventBase", "SessionLifecycleEventMetadata", "SessionLifecycleEventType", "SessionLifecycleHandler", "SessionListFilter", "SessionMetadata", "SessionStartHandler", "SessionStartHookInput", "SessionStartHookOutput", "SessionUiApi", "SessionUiCapabilities", "SessionUpdatedEvent", "StdioRuntimeConnection", "StopError", "SystemMessageConfig", "TcpRuntimeConnection", "TelemetryConfig", "Tool", "ToolBinaryResult", "ToolInvocation", "ToolResult", "ToolResultType", "ToolSet", "UriRuntimeConnection", "UserInputHandler", "UserInputRequest", "UserInputResponse", "UserPromptSubmittedHandler", "UserPromptSubmittedHookInput", "UserPromptSubmittedHookOutput", "convert_mcp_call_tool_result", "create_session_fs_adapter", "define_tool", ]