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.Data payload for
AssistantReasoningDeltaEvent.The
assistant.reasoning session event.Data payload for
AssistantReasoningEvent.The
assistant.streaming_delta session event.Data payload for
AssistantStreamingDeltaEvent.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.
ElicitationRequestedEvent.ElicitationRequestedEventData.ElicitationRequestedEventDataRequestedSchema
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
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
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.
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.Data payload for
PendingMessagesModifiedEvent.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.Data payload for
SessionBackgroundTasksChangedEvent.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.Data payload for
SessionCompactionCompleteEvent.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.Data payload for
SessionCustomAgentsUpdatedEvent.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.Data payload for
SessionExtensionsLoadedEvent.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.Data payload for
SessionMcpServersLoadedEvent.Connection status: connected, failed, needs-auth, pending, disabled, or not_configured
The
session.mcp_server_status_changed session event.Data payload for
SessionMcpServerStatusChangedEvent.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.Data payload for
SessionRemoteSteerableChangedEvent.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.Data payload for
SessionWorkspaceFileChangedEvent.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.Data payload for
ToolExecutionPartialResultEvent.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.