All Classes and Interfaces

Class
Description
The abort session event.
Data payload for AbortEvent.
Result for the account.getQuota RPC method.
 
Represents a custom agent available for selection in a session.
The assistant.intent session event.
Data payload for AssistantIntentEvent.
The assistant.message_delta session event.
Data payload for AssistantMessageDeltaEvent.
The assistant.message session event.
Data payload for AssistantMessageEvent.
A tool invocation request from the assistant
Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls.
The assistant.reasoning_delta session event.
The assistant.reasoning session event.
Data payload for AssistantReasoningEvent.
The assistant.streaming_delta session event.
The assistant.turn_end session event.
Data payload for AssistantTurnEndEvent.
The assistant.turn_start session event.
Data payload for AssistantTurnStartEvent.
The assistant.usage session event.
Data payload for AssistantUsageEvent.
Per-request cost and usage data from the CAPI copilot_usage response field
Token usage detail for a single billing category
 
Represents a file attachment to include with a message.
Azure OpenAI-specific configuration options.
Represents an inline base64-encoded binary attachment (blob) for messages.
The capabilities.changed session event.
Data payload for CapabilitiesChangedEvent.
UI capability changes
The command.completed session event.
Data payload for CommandCompletedEvent.
Context passed to a CommandHandler when a slash command is executed.
Defines a slash command that users can invoke from the CLI TUI.
The command.execute session event.
Data payload for CommandExecuteEvent.
Functional interface for handling slash-command executions.
The command.queued session event.
Data payload for CommandQueuedEvent.
The commands.changed session event.
Data payload for CommandsChangedEvent.
 
Wire-format representation of a command definition for RPC serialization.
Represents the connection state of a CopilotClient.
Provides a client for interacting with the Copilot CLI server.
Configuration options for creating a CopilotClient.
Represents a single conversation session with the Copilot CLI.
Internal request object for creating a new session.
Internal response object from creating a session.
Configuration for a custom agent in a Copilot session.
Internal response object from deleting a session.
The elicitation.completed session event.
Data payload for ElicitationCompletedEvent.
The user action: "accept" (submitted form), "decline" (explicitly refused), or "cancel" (dismissed)
Context for an elicitation request received from the server or MCP tools.
Functional interface for handling elicitation requests from the server.
Parameters for an elicitation request sent from the SDK to the host.
The elicitation.requested session event.
Data payload for ElicitationRequestedEvent.
Elicitation mode; "form" for structured input, "url" for browser-based.
JSON Schema describing the form fields to present to the user (form mode only)
Result returned from an elicitation dialog.
Action value for an ElicitationResult.
JSON Schema describing the form fields to present for an elicitation dialog.
A handler for errors thrown by event handlers during event dispatch.
Controls how event dispatch behaves when an event handler throws an exception.
The exit_plan_mode.completed session event.
Data payload for ExitPlanModeCompletedEvent.
The exit_plan_mode.requested session event.
Data payload for ExitPlanModeRequestedEvent.
The external_tool.completed session event.
Data payload for ExternalToolCompletedEvent.
The external_tool.requested session event.
Data payload for ExternalToolRequestedEvent.
Response from the auth.getStatus RPC call.
Response from session.getForeground RPC call.
Internal response object from getting the last session ID.
Internal response object from getting session messages.
Response from the models.list RPC call.
Internal response object from getting session metadata by ID.
Response from the status.get RPC call.
The hook.end session event.
Data payload for HookEndEvent.
Error details when the hook failed
Context for a hook invocation.
The hook.start session event.
Data payload for HookStartEvent.
Configuration for infinite sessions with automatic context compaction and workspace persistence.
Options for the SessionUiApi.input(String, InputOptions) convenience method.
JSON-RPC 2.0 error structure.
JSON-RPC 2.0 request structure.
JSON-RPC 2.0 response structure.
Internal response object from listing sessions.
Request parameters for the mcp.config.add RPC method.
Result for the mcp.config.list RPC method.
Request parameters for the mcp.config.remove RPC method.
Request parameters for the mcp.config.update RPC method.
Request parameters for the mcp.discover RPC method.
Result for the mcp.discover RPC method.
 
Configuration source
Configuration for a remote HTTP/SSE MCP (Model Context Protocol) server.
The mcp.oauth_completed session event.
Data payload for McpOauthCompletedEvent.
The mcp.oauth_required session event.
Data payload for McpOauthRequiredEvent.
Static OAuth client configuration, if the server specifies one
Abstract base class for MCP (Model Context Protocol) server configurations.
Configuration for a local/stdio MCP (Model Context Protocol) server.
Marker interface for all attachment types that can be included in a message.
Options for sending a message to a Copilot session.
Model billing information.
Model capabilities and limits.
Per-property overrides for model capabilities, deep-merged over runtime defaults.
Token limit overrides for model capabilities.
Feature flag overrides for model capabilities.
Information about an available model.
Model limits.
Model policy state.
Result for the models.list RPC method.
 
Billing information
Model capabilities and limits
Token limits for prompts, outputs, and context window
Vision-specific limits
Feature flags indicating what the model supports
Policy state (if applicable)
Model support flags.
Model vision-specific limits.
The pending_messages.modified session event.
The permission.completed session event.
Data payload for PermissionCompletedEvent.
The result of the permission request
The outcome of the permission request
Functional interface for handling permission requests from the AI assistant.
Context information for a permission request invocation.
Represents a permission request from the AI assistant.
The permission.requested session event.
Data payload for PermissionRequestedEvent.
Result of a permission request decision.
Describes the outcome kind of a permission request result.
Request parameters for the ping RPC method.
Response from a ping request to the Copilot CLI server.
Result for the ping RPC method.
Handler for post-tool-use hooks.
Input for a post-tool-use hook.
Output for a post-tool-use hook.
Handler for pre-tool-use hooks.
Input for a pre-tool-use hook.
Output for a pre-tool-use hook.
Configuration for a custom API provider (BYOK - Bring Your Own Key).
Configuration for resuming an existing Copilot session.
Internal request object for resuming an existing session.
Internal response object from resuming a session.
Interface for invoking JSON-RPC methods with typed responses.
The sampling.completed session event.
Data payload for SamplingCompletedEvent.
The sampling.requested session event.
Data payload for SamplingRequestedEvent.
Provides the SDK protocol version.
Override operation for a single system prompt section in SystemMessageMode#CUSTOMIZE mode.
Specifies the operation to perform on a system prompt section in SystemMessageMode#CUSTOMIZE mode.
Internal request object for sending a message to a session.
Internal response object from sending a message.
API methods for the account namespace.
API methods for the mcp namespace.
API methods for the mcp.config namespace.
API methods for the models namespace.
Typed client for server-level RPC methods.
API methods for the sessionFs namespace.
API methods for the sessions namespace.
API methods for the tools namespace.
API methods for the agent namespace.
Request parameters for the session.agent.deselect RPC method.
Result for the session.agent.deselect RPC method.
Request parameters for the session.agent.getCurrent RPC method.
Result for the session.agent.getCurrent RPC method.
 
Request parameters for the session.agent.list RPC method.
Result for the session.agent.list RPC method.
 
Request parameters for the session.agent.reload RPC method.
Result for the session.agent.reload RPC method.
 
Request parameters for the session.agent.select RPC method.
Result for the session.agent.select RPC method.
The newly selected custom agent
The session.background_tasks_changed session event.
Represents the capabilities reported by the host for a session.
API methods for the commands namespace.
Request parameters for the session.commands.handlePendingCommand RPC method.
Result for the session.commands.handlePendingCommand RPC method.
The session.compaction_complete session event.
Token usage breakdown for the compaction LLM call
The session.compaction_start session event.
Data payload for SessionCompactionStartEvent.
Configuration for creating a new Copilot session.
Working directory context for a session.
The session.context_changed session event.
Data payload for SessionContextChangedEvent.
Hosting platform type of the repository (github or ado)
The session.custom_agents_updated session event.
 
Handler for session-end hooks.
Input for a session-end hook.
Output for a session-end hook.
The session.error session event.
Data payload for SessionErrorEvent.
Base class for all generated session events.
API methods for the extensions namespace.
Request parameters for the session.extensions.disable RPC method.
Result for the session.extensions.disable RPC method.
Request parameters for the session.extensions.enable RPC method.
Result for the session.extensions.enable RPC method.
Request parameters for the session.extensions.list RPC method.
Result for the session.extensions.list RPC method.
 
Discovery source: project (.github/extensions/) or user (~/.copilot/extensions/)
Current status: running, disabled, failed, or starting
The session.extensions_loaded session event.
 
Discovery source
Current status: running, disabled, failed, or starting
Request parameters for the session.extensions.reload RPC method.
Result for the session.extensions.reload RPC method.
API methods for the fleet namespace.
Request parameters for the session.fleet.start RPC method.
Result for the session.fleet.start RPC method.
Request parameters for the sessionFs.appendFile RPC method.
Request parameters for the sessionFs.exists RPC method.
Result for the sessionFs.exists RPC method.
Request parameters for the sessionFs.mkdir RPC method.
Request parameters for the sessionFs.readdir RPC method.
Result for the sessionFs.readdir RPC method.
Request parameters for the sessionFs.readdirWithTypes RPC method.
Result for the sessionFs.readdirWithTypes RPC method.
 
Entry type
Request parameters for the sessionFs.readFile RPC method.
Result for the sessionFs.readFile RPC method.
Request parameters for the sessionFs.rename RPC method.
Request parameters for the sessionFs.rm RPC method.
Request parameters for the sessionFs.setProvider RPC method.
Path conventions used by this filesystem
Result for the sessionFs.setProvider RPC method.
Request parameters for the sessionFs.stat RPC method.
Result for the sessionFs.stat RPC method.
Request parameters for the sessionFs.writeFile RPC method.
The session.handoff session event.
Data payload for SessionHandoffEvent.
Repository context for the handed-off session
Origin type of the session being handed off
API methods for the history namespace.
Request parameters for the session.history.compact RPC method.
Result for the session.history.compact RPC method.
Post-compaction context window usage breakdown
Request parameters for the session.history.truncate RPC method.
Result for the session.history.truncate RPC method.
Hook handlers configuration for a session.
The session.idle session event.
Data payload for SessionIdleEvent.
The session.info session event.
Data payload for SessionInfoEvent.
Session lifecycle event notification.
Metadata for session lifecycle events.
Types of session lifecycle events.
Handler for session lifecycle events.
Filter options for listing sessions.
Request parameters for the session.log RPC method.
Log severity level.
Result for the session.log RPC method.
API methods for the mcp namespace.
Request parameters for the session.mcp.disable RPC method.
Result for the session.mcp.disable RPC method.
Request parameters for the session.mcp.enable RPC method.
Result for the session.mcp.enable RPC method.
Request parameters for the session.mcp.list RPC method.
Result for the session.mcp.list RPC method.
 
Connection status: connected, failed, needs-auth, pending, disabled, or not_configured
Request parameters for the session.mcp.reload RPC method.
Result for the session.mcp.reload RPC method.
The session.mcp_servers_loaded session event.
 
Connection status: connected, failed, needs-auth, pending, disabled, or not_configured
The session.mcp_server_status_changed session event.
New connection status: connected, failed, needs-auth, pending, disabled, or not_configured
Metadata about an existing Copilot session.
API methods for the mode namespace.
The session.mode_changed session event.
Data payload for SessionModeChangedEvent.
Request parameters for the session.mode.get RPC method.
Result for the session.mode.get RPC method.
The current agent mode.
API methods for the model namespace.
The session.model_change session event.
Data payload for SessionModelChangeEvent.
Request parameters for the session.model.getCurrent RPC method.
Result for the session.model.getCurrent RPC method.
Request parameters for the session.model.switchTo RPC method.
Override individual model capabilities resolved by the runtime
Token limits for prompts, outputs, and context window
 
Feature flags indicating what the model supports
Result for the session.model.switchTo RPC method.
Request parameters for the session.mode.set RPC method.
The mode to switch to.
Result for the session.mode.set RPC method.
The agent mode after switching.
API methods for the permissions namespace.
Request parameters for the session.permissions.handlePendingPermissionRequest RPC method.
Result for the session.permissions.handlePendingPermissionRequest RPC method.
API methods for the plan namespace.
The session.plan_changed session event.
Data payload for SessionPlanChangedEvent.
The type of operation performed on the plan file
Request parameters for the session.plan.delete RPC method.
Result for the session.plan.delete RPC method.
Request parameters for the session.plan.read RPC method.
Result for the session.plan.read RPC method.
Request parameters for the session.plan.update RPC method.
Result for the session.plan.update RPC method.
API methods for the plugins namespace.
Request parameters for the session.plugins.list RPC method.
Result for the session.plugins.list RPC method.
 
The session.remote_steerable_changed session event.
The session.resume session event.
Data payload for SessionResumeEvent.
Updated working directory and git context at resume time
Hosting platform type of the repository (github or ado)
Typed client for session-scoped RPC methods.
Request parameters for the sessions.fork RPC method.
Result for the sessions.fork RPC method.
API methods for the shell namespace.
Request parameters for the session.shell.exec RPC method.
Result for the session.shell.exec RPC method.
Request parameters for the session.shell.kill RPC method.
Signal to send (default: SIGTERM)
Result for the session.shell.kill RPC method.
The session.shutdown session event.
Data payload for SessionShutdownEvent.
Aggregate code change metrics for the session
 
Request count and cost metrics
Token usage breakdown
Whether the session ended normally ("routine") or due to a crash/fatal error ("error")
API methods for the skills namespace.
Request parameters for the session.skills.disable RPC method.
Result for the session.skills.disable RPC method.
Request parameters for the session.skills.enable RPC method.
Result for the session.skills.enable RPC method.
Request parameters for the session.skills.list RPC method.
Result for the session.skills.list RPC method.
 
The session.skills_loaded session event.
Data payload for SessionSkillsLoadedEvent.
 
Request parameters for the session.skills.reload RPC method.
Result for the session.skills.reload RPC method.
The session.snapshot_rewind session event.
Data payload for SessionSnapshotRewindEvent.
The session.start session event.
Data payload for SessionStartEvent.
Working directory and git context at session start
Hosting platform type of the repository (github or ado)
Handler for session-start hooks.
Input for a session-start hook.
Output for a session-start hook.
The session.task_complete session event.
Data payload for SessionTaskCompleteEvent.
The session.title_changed session event.
Data payload for SessionTitleChangedEvent.
API methods for the tools namespace.
Request parameters for the session.tools.handlePendingToolCall RPC method.
Result for the session.tools.handlePendingToolCall RPC method.
The session.tools_updated session event.
Data payload for SessionToolsUpdatedEvent.
The session.truncation session event.
Data payload for SessionTruncationEvent.
API methods for the ui namespace.
Provides UI methods for eliciting information from the user during a session.
UI-specific capability flags for a session.
Request parameters for the session.ui.elicitation RPC method.
JSON Schema describing the form fields to present to the user
Result for the session.ui.elicitation RPC method.
The user's response: accept (submitted), decline (rejected), or cancel (dismissed)
Request parameters for the session.ui.handlePendingElicitation RPC method.
The elicitation response (accept with form values, decline, or cancel)
The user's response: accept (submitted), decline (rejected), or cancel (dismissed)
Result for the session.ui.handlePendingElicitation RPC method.
API methods for the usage namespace.
Request parameters for the session.usage.getMetrics RPC method.
Result for the session.usage.getMetrics RPC method.
Aggregated code change metrics
 
Request count and cost metrics for this model
Token usage metrics for this model
The session.usage_info session event.
Data payload for SessionUsageInfoEvent.
The session.warning session event.
Data payload for SessionWarningEvent.
API methods for the workspace namespace.
Request parameters for the session.workspace.createFile RPC method.
Result for the session.workspace.createFile RPC method.
The session.workspace_file_changed session event.
Whether the file was newly created or updated
Request parameters for the session.workspace.listFiles RPC method.
Result for the session.workspace.listFiles RPC method.
Request parameters for the session.workspace.readFile RPC method.
Result for the session.workspace.readFile RPC method.
Response from session.setForeground RPC call.
The skill.invoked session event.
Data payload for SkillInvokedEvent.
The subagent.completed session event.
Data payload for SubagentCompletedEvent.
The subagent.deselected session event.
Data payload for SubagentDeselectedEvent.
The subagent.failed session event.
Data payload for SubagentFailedEvent.
The subagent.selected session event.
Data payload for SubagentSelectedEvent.
The subagent.started session event.
Data payload for SubagentStartedEvent.
Configuration for customizing the system message.
The system.message session event.
Data payload for SystemMessageEvent.
Metadata about the prompt template and its construction
Message role: "system" for system prompts, "developer" for developer-injected instructions
Specifies how the system message should be applied to a session.
The system.notification session event.
Data payload for SystemNotificationEvent.
Well-known system prompt section identifiers for use with SystemMessageMode#CUSTOMIZE mode.
OpenTelemetry configuration for the Copilot CLI server.
Binary result from a tool execution.
Defines a tool that can be invoked by the AI assistant.
The tool.execution_complete session event.
Data payload for ToolExecutionCompleteEvent.
Error details when the tool execution failed
Tool execution result on success
The tool.execution_partial_result session event.
The tool.execution_progress session event.
Data payload for ToolExecutionProgressEvent.
The tool.execution_start session event.
Data payload for ToolExecutionStartEvent.
Functional interface for handling tool invocations from the AI assistant.
Represents a tool invocation request from the AI assistant.
Result object returned from a tool execution.
Request parameters for the tools.list RPC method.
Result for the tools.list RPC method.
 
The tool.user_requested session event.
Data payload for ToolUserRequestedEvent.
Fallback for event types not yet known to this SDK version.
The user_input.completed session event.
Data payload for UserInputCompletedEvent.
Handler for user input requests from the agent.
Context for a user input request invocation.
Request for user input from the agent.
The user_input.requested session event.
Data payload for UserInputRequestedEvent.
Response to a user input request.
The user.message session event.
Data payload for UserMessageEvent.
The agent mode that was active when this message was sent
Handler for user-prompt-submitted hooks.
Input for a user-prompt-submitted hook.
Output for a user-prompt-submitted hook.