Module com.github.copilot.java
Package com.github.copilot.generated.rpc
package com.github.copilot.generated.rpc
-
ClassDescriptionFinite reason code describing why the current turn was abortedQuota usage snapshots for the resolved user, keyed by quota type.Schema for the `AccountQuotaSnapshot` type.Schema for the `AgentInfo` type.Where the agent definition was loaded fromInputs to spawn a managed-server child via the controller's spawn delegate.Permission posture for the new session.Authentication typeCanvas action that the agent or host can invoke.Canvas close parameters sent to the provider.Host context supplied by the runtime.Host capabilitiesRuntime-controlled routing state for an open canvas instance.Canvas action invocation parameters sent to the provider.Canvas open parameters sent to the provider.Canvas open result returned by the provider.Session context supplied by the runtime.Metadata for a connected remote session.Neutral SDK discriminator for the connected remote session kind.Repository associated with the connected remote session.Optional connection token presented by the SDK client during the handshake.Handshake result reporting the server's protocol version and package version on success.Canvas available in the current session.Schema for the `DiscoveredMcpServer` type.Configuration sourceServer transport type: stdio, http, sse (deprecated), or memoryAgent-scope filter: 'primary' returns only main-agent events plus events whose type starts with 'subagent.'Cursor status: 'ok' means the cursor was applied successfully; 'expired' means the cursor referred to an event that no longer exists in history (e.g. truncated or compacted away) and the read started from the beginning of the remaining history.Schema for the `Extension` type.Discovery source: project (.github/extensions/) or user (~/.copilot/extensions/)Current status: running, disabled, failed, or startingPost-compaction context window usage breakdownSchema for the `InstalledPlugin` type.Schema for the `InstructionsSources` type.Where this source lives — used for UI groupingCategory of instruction source — used for merge logicCapability negotiation snapshotWhat the server returned for this sessionCurrent host contextAllowed values for the `McpAppsHostContextDetailsAvailableDisplayMode` enumeration.Current display mode (SEP-1865)Platform type for responsive designUI theme preference per SEP-1865Schema for the `McpAppsResourceContent` type.Host context advertised to MCP App guestsAllowed values for the `McpAppsSetHostContextDetailsAvailableDisplayMode` enumeration.Current display mode (SEP-1865)Platform type for responsive designUI theme preference per SEP-1865MCP server name and configuration to add to user configuration.MCP server names to disable for new sessions.MCP server names to enable for new sessions.User-configured MCP servers, keyed by server name.MCP server name to remove from user configuration.MCP server name and replacement configuration to write to user configuration.Optional working directory used as context for MCP server discovery.MCP servers discovered from user, workspace, plugin, and built-in sources.Raw MCP CreateMessageRequest params, as received in the `sampling.requested` event.MCP CreateMessageResult payload (with optional 'tools' extension), present when action='success'.Outcome of the sampling inference.Schema for the `McpServer` type.Configuration source: user, workspace, plugin, or builtinConnection status: connected, failed, needs-auth, pending, disabled, or not_configuredHow environment-variable values supplied to MCP servers are resolved.The current agent mode for this session (e.g., 'interactive', 'plan', 'autopilot')Remote-session-specific metadata.The repository the remote session targets.Whether the remote task originated from Copilot Coding Agent (cca) or a CLI `--remote` invocation.Schema for the `Model` type.Billing informationToken-level pricing information for this modelLong context tier pricing (available for models with extended context windows)Model capabilities and limitsToken limits for prompts, outputs, and context windowVision-specific limitsOverride individual model capabilities resolved by the runtimeToken limits for prompts, outputs, and context windowVision-specific limitsFeature flags indicating what the model supportsFeature flags indicating what the model supportsModel capability category for grouping in the model pickerRelative cost tier for token-based billing usersPolicy state (if applicable)Current policy state for this modelList of Copilot models available to the resolved user, including capabilities and billing metadata.Open canvas instance snapshot.How env values are passed to MCP servers (`direct` inlines literal values; `indirect` resolves at launch).Controls how availableTools (allowlist) and excludedTools (denylist) combine when both are set.Schema for the `PendingPermissionRequest` type.Whether the location is a git repo or directoryIf specified, replaces the session's path-permission policy.Schema for the `PermissionRule` type.If specified, replaces the session's approved/denied permission rules.Schema for the `PermissionsConfigureAdditionalContentExclusionPolicy` type.Schema for the `PermissionsConfigureAdditionalContentExclusionPolicyRule` type.Schema for the `PermissionsConfigureAdditionalContentExclusionPolicyRuleSource` type.Allowed values for the `PermissionsConfigureAdditionalContentExclusionPolicyScope` enumeration.Whether the change applies to ephemeral session-scoped rules (cleared at session end) or to location-scoped rules persisted via the location-permissions config file.Optional source for allow-all telemetry.If specified, replaces the session's URL-permission policy.Optional message to echo back to the caller.Server liveness response, including the echoed message, current server timestamp, and protocol version.Schema for the `Plugin` type.Schema for the `QueuePendingItems` type.Whether this item is a queued user message or a queued slash command / model changeReasoning summary mode to request for supported model clientsPer-session remote mode.Interface for invoking JSON-RPC methods with typed responses.Schema for the `ScheduleEntry` type.Secret values to add to the redaction filter.Confirmation that the secret values were registered.The UI mode the agent was in when this message was sent.How to deliver the message.API methods for the
accountnamespace.API methods for theagentRegistrynamespace.API methods for themcpnamespace.API methods for themcp.confignamespace.API methods for themodelsnamespace.Typed client for server-level RPC methods.API methods for thesecretsnamespace.API methods for thesessionFsnamespace.API methods for thesessionsnamespace.Schema for the `ServerSkill` type.API methods for theskillsnamespace.API methods for theskills.confignamespace.API methods for thetoolsnamespace.Parameters for aborting the current turnResult of aborting the current turnAPI methods for theagentnamespace.Identifies the target session.Result for thesession.agent.deselectRPC method.Identifies the target session.The currently selected custom agent, or null when using the default agent.Identifies the target session.Custom agents available to the session.Identifies the target session.Custom agents available to the session after reloading definitions from disk.Name of the custom agent to select for subsequent turns.The newly selected custom agent.API methods for theauthnamespace.Identifies the target session.Authentication status and account metadata for the session.New auth credentials to install on the session.Indicates whether the credential update succeeded.API methods for thecanvasnamespace.Canvas close parameters.Canvas action invocation parameters.Canvas action invocation result.Identifies the target session.Live open-canvas snapshot.Identifies the target session.Declared canvases available in this session.Canvas open parameters.Open canvas instance snapshot.API methods for thecommandsnamespace.Slash-prefixed command string to enqueue for FIFO processing.Indicates whether the command was accepted into the local execution queue.Slash command name and argument string to execute synchronously.Error message produced while executing the command, if any.Pending command request ID and an optional error if the client handler failed.Indicates whether the pending client-handled command was completed successfully.Slash command name and optional raw input string to invoke.Optional filters controlling which command sources to include in the listing.Slash commands available in the session, after applying any include/exclude filters.Queued-command request ID and the result indicating whether the host executed it (and whether to stop processing further queued commands).Indicates whether the queued-command response was matched to a pending request.Schema for the `SessionContext` type.Repository host typeAPI methods for theeventLognamespace.Cursor, batch size, and optional long-poll/filter parameters for reading session events.Batch of session events returned by a read, with cursor and continuation metadata.Event type to register consumer interest for, used by runtime gating logic.Opaque handle representing an event-type interest registration.Opaque handle previously returned by `registerInterest` to release.Indicates whether the operation succeeded.Identifies the target session.Snapshot of the current tail cursor without returning any events.API methods for theextensionsnamespace.Source-qualified extension identifier to disable for the session.Result for thesession.extensions.disableRPC method.Source-qualified extension identifier to enable for the session.Result for thesession.extensions.enableRPC method.Identifies the target session.Extensions discovered for the session, with their current status.Identifies the target session.Result for thesession.extensions.reloadRPC method.API methods for thefleetnamespace.Optional user prompt to combine with the fleet orchestration instructions.Indicates whether fleet mode was successfully activated.File path, content to append, and optional mode for the client-provided session filesystem.Describes a filesystem error.Error classificationPath to test for existence in the client-provided session filesystem.Indicates whether the requested path exists in the client-provided session filesystem.Directory path to create in the client-provided session filesystem, with options for recursive creation and POSIX mode.Directory path whose entries should be listed from the client-provided session filesystem.Names of entries in the requested directory, or a filesystem error if the read failed.Schema for the `SessionFsReaddirWithTypesEntry` type.Entry typeDirectory path whose entries (with type information) should be listed from the client-provided session filesystem.Entries in the requested directory paired with file/directory type information, or a filesystem error if the read failed.Path of the file to read from the client-provided session filesystem.File content as a UTF-8 string, or a filesystem error if the read failed.Source and destination paths for renaming or moving an entry in the client-provided session filesystem.Path to remove from the client-provided session filesystem, with options for recursive removal and force.Optional capabilities declared by the providerPath conventions used by this filesystemInitial working directory, session-state path layout, and path conventions used to register the calling SDK client as the session filesystem provider.Indicates whether the calling client was registered as the session filesystem provider.Identifies the target session.Indicates whether the per-session SQLite database already exists.SQL query, query type, and optional bind parameters for executing a SQLite query against the per-session database.Query results including rows, columns, and rows affected, or a filesystem error if execution failed.How to execute the query: 'exec' for DDL/multi-statement (no results), 'query' for SELECT (returns rows), 'run' for INSERT/UPDATE/DELETE (returns rowsAffected)Path whose metadata should be returned from the client-provided session filesystem.Filesystem metadata for the requested path, or a filesystem error if the stat failed.File path, content to write, and optional mode for the client-provided session filesystem.Identifies the target session.Indicates whether an in-progress manual compaction was aborted.API methods for thehistorynamespace.Identifies the target session.Indicates whether an in-progress background compaction was cancelled.Optional compaction parameters.Compaction outcome with the number of tokens and messages removed, summary text, and the resulting context window breakdown.Identifies the target session.Markdown summary of the conversation context (empty when not available).Identifier of the event to truncate to; this event and all later events are removed.Number of events that were removed by the truncation.Schema for the `SessionInstalledPlugin` type.API methods for theinstructionsnamespace.Identifies the target session.Instruction sources loaded for the session, in merge order.Log severity level.Message text, optional severity level, persistence flag, optional follow-up URL, and optional tip.Identifier of the session event that was emitted for the log message.API methods for thelspnamespace.Parameters for (re)loading the merged LSP configuration set.API methods for themcpnamespace.API methods for themcp.appsnamespace.MCP server, tool name, and arguments to invoke from an MCP App view.MCP server to diagnose MCP Apps wiring for.Diagnostic snapshot of MCP Apps wiring for the named server.Identifies the target session.Current host context advertised to MCP App guests.MCP server to list app-callable tools for.App-callable tools from the named MCP server.MCP server and resource URI to fetch.Resource contents returned by the MCP server.Host context to advertise to MCP App guests.The requestId previously passed to executeSampling that should be cancelled.Indicates whether an in-flight sampling execution with the given requestId was found and cancelled.Name of the MCP server to disable for the session.Result for thesession.mcp.disableRPC method.Name of the MCP server to enable for the session.Result for thesession.mcp.enableRPC method.Identifiers and raw MCP CreateMessageRequest params used to run a sampling inference.Outcome of an MCP sampling execution: success result, failure error, or cancellation.Identifies the target session.MCP servers configured for the session, with their connection status.API methods for themcp.oauthnamespace.Remote MCP server name and optional overrides controlling reauthentication, OAuth client display name, and the callback success-page copy.OAuth authorization URL the caller should open, or empty when cached tokens already authenticated the server.Identifies the target session.Result for thesession.mcp.reloadRPC method.Identifies the target session.Indicates whether the auto-managed `github` MCP server was removed (false when nothing to remove).Mode controlling how MCP server env values are resolved (`direct` or `indirect`).Env-value mode recorded on the session after the update.Schema for the `SessionMetadata` type.API methods for themetadatanamespace.Model identifier and token limits used to compute the context-info breakdown.Token breakdown for the session's current context window, or null if uninitialized.Token-usage breakdown for the session's current context windowIdentifies the target session.Indicates whether the local session is currently processing a turn or background continuation.Model identifier to use when re-tokenizing the session's existing messages.Re-tokenize the session's existing messages against `modelId` and return the token totals.Updated working-directory/git context to record on the session.Notify the session that its working directory context has changed.Absolute path to set as the session's new working directory.Update the session's working directory.Identifies the target session.Point-in-time snapshot of slow-changing session identifier and state fieldsPublic-facing projection of workspace metadata for SDK / TUI consumersThe session mode the agent is operating inAPI methods for themodenamespace.Identifies the target session.Result for thesession.mode.getRPC method.The current agent mode.API methods for themodelnamespace.Identifies the target session.The currently selected model and reasoning effort for the session.Reasoning effort level to apply to the currently selected model.Update the session's reasoning effort without changing the selected model.Target model identifier and optional reasoning effort, summary, and capability overrides.The model identifier active on the session after the switch.Agent interaction mode to apply to the session.Result for thesession.mode.setRPC method.The agent mode after switching.API methods for thenamenamespace.Identifies the target session.The session's friendly name, or null when not yet set.Auto-generated session summary to apply as the session's name when no user-set name exists.Indicates whether the auto-generated summary was applied as the session's name.New friendly name to apply to the session.API methods for theoptionsnamespace.Patch of mutable session options to apply to the running session.Indicates whether the session options patch was applied successfully.API methods for thepermissionsnamespace.Patch of permission policy fields to apply (omit a field to leave it unchanged).Indicates whether the operation succeeded.Folder path to add to trusted folders.Indicates whether the operation succeeded.API methods for thepermissions.folderTrustnamespace.Folder path to check for trust.Folder trust check result.No parameters.Current full allow-all permission state.Pending permission request ID and the decision to apply (approve/reject and scope).Indicates whether the permission decision was applied; false when the request was already resolved.Location-scoped tool approval to persist.Indicates whether the operation succeeded.API methods for thepermissions.locationsnamespace.Working directory to load persisted location permissions for.Summary of persisted location permissions applied to the session.Working directory to resolve into a location-permissions key.Resolved location-permissions key and type.Scope and add/remove instructions for modifying session- or location-scoped permission rules.Indicates whether the operation succeeded.Notification payload describing the permission prompt that the client just rendered.Indicates whether the operation succeeded.Directory path to add to the session's allowed directories.Indicates whether the operation succeeded.API methods for thepermissions.pathsnamespace.Path to evaluate against the session's allowed directories.Indicates whether the supplied path is within the session's allowed directories.Path to evaluate against the session's workspace (primary) directory.Indicates whether the supplied path is within the session's workspace directory.No parameters; returns the session's allow-listed directories.Snapshot of the session's allow-listed directories and primary working directory.Directory path to set as the session's new primary working directory.Indicates whether the operation succeeded.No parameters; returns currently-pending permission requests for the session.List of pending permission requests reconstructed from event history.No parameters; clears all session-scoped tool permission approvals.Indicates whether the operation succeeded.Whether to enable full allow-all permissions for the session.Indicates whether the operation succeeded and reports the post-mutation state.Allow-all toggle for tool permission requests, with an optional telemetry source.Indicates whether the operation succeeded.Toggles whether permission prompts should be bridged into session events for this client.Indicates whether the operation succeeded.API methods for thepermissions.urlsnamespace.Whether the URL-permission policy should run in unrestricted mode.Indicates whether the operation succeeded.API methods for theplannamespace.Identifies the target session.Result for thesession.plan.deleteRPC method.Identifies the target session.Existence, contents, and resolved path of the session plan file.Replacement contents to write to the session plan file.Result for thesession.plan.updateRPC method.API methods for thepluginsnamespace.Identifies the target session.Plugins installed for the session, with their enabled state and version metadata.API methods for thequeuenamespace.Identifies the target session.Identifies the target session.Snapshot of the session's pending queued items and immediate-steering messages.Identifies the target session.Indicates whether a user-facing pending item was removed.API methods for theremotenamespace.Identifies the target session.Optional remote session mode ("off", "export", or "on"); defaults to enabling both export and remote steering.GitHub URL for the session and a flag indicating whether remote steering is enabled.New remote-steerability state to persist as a `session.remote_steerable_changed` event.Persist a steerability change as a `session.remote_steerable_changed` event.Typed client for session-scoped RPC methods.Session IDs to close, deactivate, and delete from disk.Map of sessionId -> bytes freed by removing the session's workspace directory.Session IDs to test for live in-use locks.Session IDs from the input set that are currently in use by another process.API methods for theschedulenamespace.Identifies the target session.Snapshot of the currently active recurring prompts for this session.Identifier of the scheduled prompt to remove.Remove a scheduled prompt by id.Session ID to close.Closes a session: emits shutdown, flushes pending events to disk, releases the in-use lock, disposes the active session.Remote session connection parameters.Remote session connection result.Parameters for sending a user message to the sessionResult of sending a user messageSession metadata records to enrich with summary and context information.The enriched metadata records, with summary and context fields backfilled where available.UUID prefix to resolve to a unique session ID.Session ID matching the prefix, omitted when no unique match exists.GitHub task ID to look up.ID of the local session bound to the given GitHub task, or omitted when none.Source session identifier to fork from, optional event-ID boundary, and optional friendly name for the new session.Identifier and optional friendly name assigned to the newly forked session.Session ID whose event-log file path to compute.Absolute path to the session's events.jsonl file on disk.Optional working-directory context used to score session relevance.Most-relevant session ID for the supplied context, or omitted when no sessions exist.Session ID to look up the persisted remote-steerable flag for.The session's persisted remote-steerable flag, or omitted when no value has been persisted.Map of sessionId -> on-disk size in bytes for each session's workspace directory.API methods for theshellnamespace.Shell command to run, with optional working directory and timeout in milliseconds.Identifier of the spawned process, used to correlate streamed output and exit notifications.Identifier of a process previously returned by "shell.exec" and the signal to send.Indicates whether the signal was delivered; false if the process was unknown or already exited.Parameters for shutting down the sessionAPI methods for theskillsnamespace.Name of the skill to disable for the session.Result for thesession.skills.disableRPC method.Name of the skill to enable for the session.Result for thesession.skills.enableRPC method.Identifies the target session.Identifies the target session.Skills invoked during this session, ordered by invocation time (most recent last).Identifies the target session.Skills available to the session, with their enabled state.Identifies the target session.Diagnostics from reloading skill definitions, with warnings and errors as separate lists.Persisted sessions matching the filter, ordered most-recently-modified first.Active session ID whose deferred repo-level hooks should be loaded.Queued repo-level startup prompts and the total hook command count after loading.Age threshold and optional flags controlling which old sessions are pruned (or simulated when dryRun is true).Outcome of the prune operation: deleted IDs, dry-run candidates, skipped IDs, total bytes freed, and the dry-run flag.Session ID whose in-use lock should be released.Release the in-use lock held by this process for the given session.Active session ID and an optional flag for deferring repo-level hooks until folder trust.Reload all hooks (user, plugin, optionally repo) and apply them to the active session.Session ID whose pending events should be flushed to disk.Flush a session's pending events to disk.Manager-wide additional plugins to register; replaces any previously-configured set.Replace the manager-wide additional plugins.Identifies the target session.API methods for thetasksnamespace.Identifier of the background task to cancel.Indicates whether the background task was successfully cancelled.Identifies the target session.The first sync-waiting task that can currently be promoted to background mode.Identifier of the background task to fetch progress for.Progress information for the task, or null when no task with that ID is tracked.Identifies the target session.Background tasks currently tracked by the session.Identifies the target session.The promoted task as it now exists in background mode, omitted if no promotable task was waiting.Identifier of the task to promote to background mode.Indicates whether the task was successfully promoted to background mode.Identifies the target session.Refresh metadata for any detached background shells the runtime knows about.Identifier of the completed or cancelled task to remove from tracking.Indicates whether the task was removed.Identifier of the target agent task, message content, and optional sender agent ID.Indicates whether the message was delivered, with an error message when delivery failed.Agent type, prompt, name, and optional description and model override for the new task.Identifier assigned to the newly started background agent task.Identifies the target session.Wait until all in-flight background tasks (agents + shells) and any follow-up turns scheduled by their completions have settled.API methods for thetelemetrynamespace.Feature override key/value pairs to attach to subsequent telemetry events from this session.API methods for thetoolsnamespace.Pending external tool call request ID, with the tool result or an error describing why it failed.Indicates whether the external tool call result was handled successfully.Identifies the target session.Resolve, build, and validate the runtime tool list for this session.API methods for theuinamespace.Prompt message and JSON schema describing the form fields to elicit from the user.The elicitation response (accept with form values, decline, or cancel)Request ID of a pending `auto_mode_switch.requested` event and the user's response.Indicates whether the pending UI request was resolved by this call.Pending elicitation request ID and the user's response (accept/decline/cancel + form values).Indicates whether the elicitation response was accepted; false if it was already resolved by another client.Request ID of a pending `exit_plan_mode.requested` event and the user's response.Indicates whether the pending UI request was resolved by this call.Request ID of a pending `sampling.requested` event and an optional sampling result payload (omit to reject).Indicates whether the pending UI request was resolved by this call.Request ID of a pending `user_input.requested` event and the user's response.Indicates whether the pending UI request was resolved by this call.Identifies the target session.Register an in-process handler for `auto_mode_switch.requested` events.Opaque handle previously returned by `registerDirectAutoModeSwitchHandler` to release.Indicates whether the handle was active and the registration count was decremented.API methods for theusagenamespace.Identifies the target session.Accumulated session usage metrics, including premium request cost, token counts, model breakdown, and code-change totals.Updated working directory and git context.Hosting platform type of the repositoryAPI methods for theworkspacenamespace.Request parameters for thesession.workspace.createFileRPC method.Result for thesession.workspace.createFileRPC method.Request parameters for thesession.workspace.listFilesRPC method.Result for thesession.workspace.listFilesRPC method.Request parameters for thesession.workspace.readFileRPC method.Result for thesession.workspace.readFileRPC method.API methods for theworkspacesnamespace.Relative path and UTF-8 content for the workspace file to create or overwrite.Parameters for computing a workspace diff.Workspace diff result for the requested mode.Identifies the target session.Current workspace metadata for the session, including its absolute filesystem path when available.Identifies the target session.Workspace checkpoints in chronological order; empty when the workspace is not enabled.Identifies the target session.Relative paths of files stored in the session workspace files directory.Checkpoint number to read.Checkpoint content as a UTF-8 string, or null when the checkpoint or workspace is missing.Relative path of the workspace file to read.Contents of the requested workspace file as a UTF-8 string.Pasted content to save as a UTF-8 file in the session workspace.Descriptor for the saved paste file, or null when the workspace is unavailable.Signal to send (default: SIGTERM)Why the session is being shut down.Schema for the `Skill` type.Skill names to mark as disabled in global configuration, replacing any previous list.Optional project paths and additional skill directories to include in discovery.Skills discovered across global and project sources.Schema for the `SkillsInvokedSkill` type.Source location type (e.g., project, personal-copilot, plugin, builtin)Schema for the `SlashCommandInfo` type.Optional unstructured input hintOptional completion hint for the input (e.g.Coarse command category for grouping and behavior: runtime built-in, skill-backed command, or SDK/client-owned commandSchema for the `Tool` type.Optional model identifier whose tool overrides should be applied to the listing.Built-in tools available for the requested model, with their parameters and instructions.User's choice for auto-mode switching: yes (allow this turn), yes_always (allow + persist as setting), or no (decline).The elicitation response (accept with form values, decline, or cancel)The user's response: accept (submitted), decline (rejected), or cancel (dismissed)JSON Schema describing the form fields to present to the userThe action the user selected.Schema for the `UIExitPlanModeResponse` type.Optional sampling result payload.Schema for the `UIUserInputResponse` type.Aggregated code change metricsSchema for the `UsageMetricsModelMetric` type.Request count and cost metrics for this modelSchema for the `UsageMetricsModelMetricTokenDetail` type.Token usage metrics for this modelSchema for the `UsageMetricsTokenDetail` type.A single changed file and its unified diff.Type of change represented by this file diff.Diff mode requested by the client.Schema for the `WorkspacesCheckpoints` type.Repository host type, if knownAllowed values for the `WorkspacesWorkspaceDetailsHostType` enumeration.