MCPcopy Index your code
hub / github.com/github/copilot-sdk / create_session

Method create_session

python/copilot/client.py:1656–2300  ·  view source on GitHub ↗

Create a new conversation session with the Copilot CLI. Sessions maintain conversation state, handle events, and manage tool execution. If the client is not yet connected, this will automatically start the connection. Args: on_permission_request

(
        self,
        *,
        on_permission_request: _PermissionHandlerFn | None = None,
        model: str | None = None,
        session_id: str | None = None,
        client_name: str | None = None,
        reasoning_effort: ReasoningEffort | None = None,
        reasoning_summary: ReasoningSummary | None = None,
        context_tier: ContextTier | None = None,
        tools: list[Tool] | None = None,
        system_message: SystemMessageConfig | None = None,
        available_tools: list[str] | ToolSet | None = None,
        excluded_tools: list[str] | ToolSet | None = None,
        on_user_input_request: UserInputHandler | None = None,
        hooks: SessionHooks | None = None,
        working_directory: str | None = None,
        provider: ProviderConfig | None = None,
        capi: CapiSessionOptions | None = None,
        providers: list[NamedProviderConfig] | None = None,
        models: list[ProviderModelConfig] | None = None,
        enable_session_telemetry: bool | None = None,
        enable_citations: bool | None = None,
        excluded_builtin_agents: list[str] | None = None,
        session_limits: SessionLimitsConfig | None = None,
        skip_custom_instructions: bool | None = None,
        custom_agents_local_only: bool | None = None,
        coauthor_enabled: bool | None = None,
        manage_schedule_enabled: bool | None = None,
        model_capabilities: ModelCapabilitiesOverride | None = None,
        streaming: bool | None = None,
        include_sub_agent_streaming_events: bool | None = None,
        mcp_servers: dict[str, MCPServerConfig] | None = None,
        mcp_oauth_token_storage: Literal["persistent", "in-memory"] | None = None,
        embedding_cache_storage: Literal["persistent", "in-memory"] | None = None,
        custom_agents: list[CustomAgentConfig] | None = None,
        default_agent: DefaultAgentConfig | dict[str, Any] | None = None,
        agent: str | None = None,
        config_directory: str | None = None,
        enable_config_discovery: bool | None = None,
        skip_embedding_retrieval: bool | None = None,
        organization_custom_instructions: str | None = None,
        enable_on_demand_instruction_discovery: bool | None = None,
        enable_file_hooks: bool | None = None,
        enable_host_git_operations: bool | None = None,
        enable_session_store: bool | None = None,
        enable_skills: bool | None = None,
        skill_directories: list[str] | None = None,
        plugin_directories: list[str] | None = None,
        instruction_directories: list[str] | None = None,
        disabled_skills: list[str] | None = None,
        infinite_sessions: InfiniteSessionConfig | None = None,
        large_output: LargeToolOutputConfig | None = None,
        memory: MemoryConfiguration | None = None,
        on_event: Callable[[SessionEvent], None] | None = None,
        commands: list[CommandDefinition] | None = None,
        on_elicitation_request: ElicitationHandler | None = None,
        on_mcp_auth_request: McpAuthHandler | None = None,
        enable_mcp_apps: bool = False,
        on_exit_plan_mode_request: ExitPlanModeHandler | None = None,
        on_auto_mode_switch_request: AutoModeSwitchHandler | None = None,
        create_session_fs_handler: CreateSessionFsHandler | None = None,
        github_token: str | None = None,
        remote_session: RemoteSessionMode | None = None,
        cloud: CloudSessionOptions | None = None,
        canvases: list[CanvasDeclaration] | None = None,
        request_canvas_renderer: bool | None = None,
        request_extensions: bool | None = None,
        extension_sdk_path: str | None = None,
        extension_info: ExtensionInfo | None = None,
        canvas_handler: CanvasHandler | None = None,
        exp_assignments: dict[str, Any] | None = None,
    )

Source from the content-addressed store, hash-verified

1654 self._runtime_port = None
1655
1656 async def create_session(
1657 self,
1658 *,
1659 on_permission_request: _PermissionHandlerFn | None = None,
1660 model: str | None = None,
1661 session_id: str | None = None,
1662 client_name: str | None = None,
1663 reasoning_effort: ReasoningEffort | None = None,
1664 reasoning_summary: ReasoningSummary | None = None,
1665 context_tier: ContextTier | None = None,
1666 tools: list[Tool] | None = None,
1667 system_message: SystemMessageConfig | None = None,
1668 available_tools: list[str] | ToolSet | None = None,
1669 excluded_tools: list[str] | ToolSet | None = None,
1670 on_user_input_request: UserInputHandler | None = None,
1671 hooks: SessionHooks | None = None,
1672 working_directory: str | None = None,
1673 provider: ProviderConfig | None = None,
1674 capi: CapiSessionOptions | None = None,
1675 providers: list[NamedProviderConfig] | None = None,
1676 models: list[ProviderModelConfig] | None = None,
1677 enable_session_telemetry: bool | None = None,
1678 enable_citations: bool | None = None,
1679 excluded_builtin_agents: list[str] | None = None,
1680 session_limits: SessionLimitsConfig | None = None,
1681 skip_custom_instructions: bool | None = None,
1682 custom_agents_local_only: bool | None = None,
1683 coauthor_enabled: bool | None = None,
1684 manage_schedule_enabled: bool | None = None,
1685 model_capabilities: ModelCapabilitiesOverride | None = None,
1686 streaming: bool | None = None,
1687 include_sub_agent_streaming_events: bool | None = None,
1688 mcp_servers: dict[str, MCPServerConfig] | None = None,
1689 mcp_oauth_token_storage: Literal["persistent", "in-memory"] | None = None,
1690 embedding_cache_storage: Literal["persistent", "in-memory"] | None = None,
1691 custom_agents: list[CustomAgentConfig] | None = None,
1692 default_agent: DefaultAgentConfig | dict[str, Any] | None = None,
1693 agent: str | None = None,
1694 config_directory: str | None = None,
1695 enable_config_discovery: bool | None = None,
1696 skip_embedding_retrieval: bool | None = None,
1697 organization_custom_instructions: str | None = None,
1698 enable_on_demand_instruction_discovery: bool | None = None,
1699 enable_file_hooks: bool | None = None,
1700 enable_host_git_operations: bool | None = None,
1701 enable_session_store: bool | None = None,
1702 enable_skills: bool | None = None,
1703 skill_directories: list[str] | None = None,
1704 plugin_directories: list[str] | None = None,
1705 instruction_directories: list[str] | None = None,
1706 disabled_skills: list[str] | None = None,
1707 infinite_sessions: InfiniteSessionConfig | None = None,
1708 large_output: LargeToolOutputConfig | None = None,
1709 memory: MemoryConfiguration | None = None,
1710 on_event: Callable[[SessionEvent], None] | None = None,
1711 commands: list[CommandDefinition] | None = None,
1712 on_elicitation_request: ElicitationHandler | None = None,
1713 on_mcp_auth_request: McpAuthHandler | None = None,