From 6561490d4afc797a366524fcad1b9cfe95868316 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Apr 2026 20:31:26 +0000 Subject: [PATCH 1/2] Initial plan From 3ef1b22407b5f6daa3d5107dcd6073d9a3fcfddb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Apr 2026 20:43:47 +0000 Subject: [PATCH 2/2] Add Java code generation from JSON schemas - Add scripts/codegen/java.ts - Java code generator from session-events and api schemas - Add scripts/codegen/package.json with @github/copilot dependency - Add scripts/codegen/package-lock.json - Generate src/generated/java/com/github/copilot/sdk/generated/ - 76 session event files - Generate src/generated/java/com/github/copilot/sdk/generated/rpc/ - 111 RPC type files - Update pom.xml: add build-helper-maven-plugin, exclude generated from Spotless - Update config/checkstyle/checkstyle.xml: exclude generated packages - Update .gitattributes: mark src/generated/java/** as generated - Add .github/workflows/codegen-check.yml - CI check workflow - Add .github/workflows/update-copilot-dependency.yml - update workflow - Update docs/WORKFLOWS.md with new workflow documentation - Update .gitignore to exclude scripts/codegen/node_modules/" Agent-Logs-Url: https://github.com/github/copilot-sdk-java/sessions/aee4deda-40d4-4ecd-a831-2af9cb9461e7 Co-authored-by: edburns <75821+edburns@users.noreply.github.com> --- .gitattributes | 3 +- .github/workflows/codegen-check.yml | 44 + .../workflows/update-copilot-dependency.yml | 92 ++ .gitignore | 1 + config/checkstyle/checkstyle.xml | 4 +- docs/WORKFLOWS.md | 38 + pom.xml | 23 + scripts/codegen/.gitignore | 1 + scripts/codegen/java.ts | 821 ++++++++++++++++++ scripts/codegen/package-lock.json | 645 ++++++++++++++ scripts/codegen/package.json | 14 + .../copilot/sdk/generated/AbortEvent.java | 38 + .../sdk/generated/AssistantIntentEvent.java | 38 + .../generated/AssistantMessageDeltaEvent.java | 52 ++ .../sdk/generated/AssistantMessageEvent.java | 179 ++++ .../AssistantReasoningDeltaEvent.java | 45 + .../generated/AssistantReasoningEvent.java | 45 + .../AssistantStreamingDeltaEvent.java | 38 + .../sdk/generated/AssistantTurnEndEvent.java | 38 + .../generated/AssistantTurnStartEvent.java | 45 + .../sdk/generated/AssistantUsageEvent.java | 270 ++++++ .../generated/CapabilitiesChangedEvent.java | 52 ++ .../sdk/generated/CommandCompletedEvent.java | 38 + .../sdk/generated/CommandExecuteEvent.java | 59 ++ .../sdk/generated/CommandQueuedEvent.java | 45 + .../sdk/generated/CommandsChangedEvent.java | 57 ++ .../generated/ElicitationCompletedEvent.java | 69 ++ .../generated/ElicitationRequestedEvent.java | 123 +++ .../generated/ExitPlanModeCompletedEvent.java | 66 ++ .../generated/ExitPlanModeRequestedEvent.java | 67 ++ .../generated/ExternalToolCompletedEvent.java | 38 + .../generated/ExternalToolRequestedEvent.java | 80 ++ .../copilot/sdk/generated/HookEndEvent.java | 87 ++ .../copilot/sdk/generated/HookStartEvent.java | 52 ++ .../sdk/generated/McpOauthCompletedEvent.java | 38 + .../sdk/generated/McpOauthRequiredEvent.java | 80 ++ .../PendingMessagesModifiedEvent.java | 20 + .../generated/PermissionCompletedEvent.java | 81 ++ .../generated/PermissionRequestedEvent.java | 52 ++ .../sdk/generated/SamplingCompletedEvent.java | 38 + .../sdk/generated/SamplingRequestedEvent.java | 52 ++ .../SessionBackgroundTasksChangedEvent.java | 20 + .../SessionCompactionCompleteEvent.java | 164 ++++ .../SessionCompactionStartEvent.java | 52 ++ .../generated/SessionContextChangedEvent.java | 94 ++ .../SessionCustomAgentsUpdatedEvent.java | 115 +++ .../sdk/generated/SessionErrorEvent.java | 73 ++ .../copilot/sdk/generated/SessionEvent.java | 134 +++ .../SessionExtensionsLoadedEvent.java | 104 +++ .../sdk/generated/SessionHandoffEvent.java | 122 +++ .../sdk/generated/SessionIdleEvent.java | 38 + .../sdk/generated/SessionInfoEvent.java | 52 ++ .../SessionMcpServerStatusChangedEvent.java | 67 ++ .../SessionMcpServersLoadedEvent.java | 95 ++ .../generated/SessionModeChangedEvent.java | 45 + .../generated/SessionModelChangeEvent.java | 59 ++ .../generated/SessionPlanChangedEvent.java | 54 ++ .../SessionRemoteSteerableChangedEvent.java | 38 + .../sdk/generated/SessionResumeEvent.java | 151 ++++ .../sdk/generated/SessionShutdownEvent.java | 239 +++++ .../generated/SessionSkillsLoadedEvent.java | 87 ++ .../generated/SessionSnapshotRewindEvent.java | 45 + .../sdk/generated/SessionStartEvent.java | 172 ++++ .../generated/SessionTaskCompleteEvent.java | 45 + .../generated/SessionTitleChangedEvent.java | 38 + .../generated/SessionToolsUpdatedEvent.java | 37 + .../sdk/generated/SessionTruncationEvent.java | 87 ++ .../sdk/generated/SessionUsageInfoEvent.java | 80 ++ .../sdk/generated/SessionWarningEvent.java | 52 ++ .../SessionWorkspaceFileChangedEvent.java | 59 ++ .../sdk/generated/SkillInvokedEvent.java | 81 ++ .../sdk/generated/SubagentCompletedEvent.java | 80 ++ .../generated/SubagentDeselectedEvent.java | 20 + .../sdk/generated/SubagentFailedEvent.java | 87 ++ .../sdk/generated/SubagentSelectedEvent.java | 53 ++ .../sdk/generated/SubagentStartedEvent.java | 59 ++ .../sdk/generated/SystemMessageEvent.java | 94 ++ .../generated/SystemNotificationEvent.java | 45 + .../generated/ToolExecutionCompleteEvent.java | 144 +++ .../ToolExecutionPartialResultEvent.java | 45 + .../generated/ToolExecutionProgressEvent.java | 45 + .../generated/ToolExecutionStartEvent.java | 73 ++ .../sdk/generated/ToolUserRequestedEvent.java | 52 ++ .../sdk/generated/UnknownSessionEvent.java | 16 + .../generated/UserInputCompletedEvent.java | 52 ++ .../generated/UserInputRequestedEvent.java | 67 ++ .../sdk/generated/UserMessageEvent.java | 92 ++ .../generated/rpc/AccountGetQuotaResult.java | 76 ++ .../sdk/generated/rpc/McpConfigAddParams.java | 34 + .../generated/rpc/McpConfigListResult.java | 28 + .../generated/rpc/McpConfigRemoveParams.java | 27 + .../generated/rpc/McpConfigUpdateParams.java | 34 + .../sdk/generated/rpc/McpDiscoverParams.java | 27 + .../sdk/generated/rpc/McpDiscoverResult.java | 80 ++ .../sdk/generated/rpc/ModelsListResult.java | 220 +++++ .../copilot/sdk/generated/rpc/PingParams.java | 27 + .../copilot/sdk/generated/rpc/PingResult.java | 41 + .../rpc/SessionAgentDeselectParams.java | 27 + .../rpc/SessionAgentDeselectResult.java | 20 + .../rpc/SessionAgentGetCurrentParams.java | 27 + .../rpc/SessionAgentGetCurrentResult.java | 54 ++ .../generated/rpc/SessionAgentListParams.java | 27 + .../generated/rpc/SessionAgentListResult.java | 55 ++ .../rpc/SessionAgentReloadParams.java | 27 + .../rpc/SessionAgentReloadResult.java | 55 ++ .../rpc/SessionAgentSelectParams.java | 34 + .../rpc/SessionAgentSelectResult.java | 55 ++ ...ionCommandsHandlePendingCommandParams.java | 41 + ...ionCommandsHandlePendingCommandResult.java | 27 + .../rpc/SessionExtensionsDisableParams.java | 34 + .../rpc/SessionExtensionsDisableResult.java | 20 + .../rpc/SessionExtensionsEnableParams.java | 34 + .../rpc/SessionExtensionsEnableResult.java | 20 + .../rpc/SessionExtensionsListParams.java | 27 + .../rpc/SessionExtensionsListResult.java | 100 +++ .../rpc/SessionExtensionsReloadParams.java | 27 + .../rpc/SessionExtensionsReloadResult.java | 20 + .../rpc/SessionFleetStartParams.java | 34 + .../rpc/SessionFleetStartResult.java | 27 + .../rpc/SessionFsAppendFileParams.java | 48 + .../generated/rpc/SessionFsExistsParams.java | 34 + .../generated/rpc/SessionFsExistsResult.java | 27 + .../generated/rpc/SessionFsMkdirParams.java | 48 + .../rpc/SessionFsReadFileParams.java | 34 + .../rpc/SessionFsReadFileResult.java | 27 + .../generated/rpc/SessionFsReaddirParams.java | 34 + .../generated/rpc/SessionFsReaddirResult.java | 28 + .../rpc/SessionFsReaddirWithTypesParams.java | 34 + .../rpc/SessionFsReaddirWithTypesResult.java | 62 ++ .../generated/rpc/SessionFsRenameParams.java | 41 + .../sdk/generated/rpc/SessionFsRmParams.java | 48 + .../rpc/SessionFsSetProviderParams.java | 55 ++ .../rpc/SessionFsSetProviderResult.java | 27 + .../generated/rpc/SessionFsStatParams.java | 34 + .../generated/rpc/SessionFsStatResult.java | 55 ++ .../rpc/SessionFsWriteFileParams.java | 48 + .../rpc/SessionHistoryCompactParams.java | 27 + .../rpc/SessionHistoryCompactResult.java | 97 +++ .../rpc/SessionHistoryTruncateParams.java | 34 + .../rpc/SessionHistoryTruncateResult.java | 27 + .../sdk/generated/rpc/SessionLogParams.java | 71 ++ .../sdk/generated/rpc/SessionLogResult.java | 28 + .../rpc/SessionMcpDisableParams.java | 34 + .../rpc/SessionMcpDisableResult.java | 20 + .../generated/rpc/SessionMcpEnableParams.java | 34 + .../generated/rpc/SessionMcpEnableResult.java | 20 + .../generated/rpc/SessionMcpListParams.java | 27 + .../generated/rpc/SessionMcpListResult.java | 84 ++ .../generated/rpc/SessionMcpReloadParams.java | 27 + .../generated/rpc/SessionMcpReloadResult.java | 20 + .../generated/rpc/SessionModeGetParams.java | 27 + .../generated/rpc/SessionModeGetResult.java | 43 + .../generated/rpc/SessionModeSetParams.java | 50 ++ .../generated/rpc/SessionModeSetResult.java | 43 + .../rpc/SessionModelGetCurrentParams.java | 27 + .../rpc/SessionModelGetCurrentResult.java | 27 + .../rpc/SessionModelSwitchToParams.java | 147 ++++ .../rpc/SessionModelSwitchToResult.java | 27 + ...sHandlePendingPermissionRequestParams.java | 40 + ...sHandlePendingPermissionRequestResult.java | 27 + .../rpc/SessionPlanDeleteParams.java | 27 + .../rpc/SessionPlanDeleteResult.java | 20 + .../generated/rpc/SessionPlanReadParams.java | 27 + .../generated/rpc/SessionPlanReadResult.java | 41 + .../rpc/SessionPlanUpdateParams.java | 34 + .../rpc/SessionPlanUpdateResult.java | 20 + .../rpc/SessionPluginsListParams.java | 27 + .../rpc/SessionPluginsListResult.java | 62 ++ .../generated/rpc/SessionShellExecParams.java | 48 + .../generated/rpc/SessionShellExecResult.java | 27 + .../generated/rpc/SessionShellKillParams.java | 57 ++ .../generated/rpc/SessionShellKillResult.java | 27 + .../rpc/SessionSkillsDisableParams.java | 34 + .../rpc/SessionSkillsDisableResult.java | 20 + .../rpc/SessionSkillsEnableParams.java | 34 + .../rpc/SessionSkillsEnableResult.java | 20 + .../rpc/SessionSkillsListParams.java | 27 + .../rpc/SessionSkillsListResult.java | 76 ++ .../rpc/SessionSkillsReloadParams.java | 27 + .../rpc/SessionSkillsReloadResult.java | 20 + ...ssionToolsHandlePendingToolCallParams.java | 48 + ...ssionToolsHandlePendingToolCallResult.java | 27 + .../rpc/SessionUiElicitationParams.java | 71 ++ .../rpc/SessionUiElicitationResult.java | 51 ++ ...ssionUiHandlePendingElicitationParams.java | 79 ++ ...ssionUiHandlePendingElicitationResult.java | 27 + .../rpc/SessionUsageGetMetricsParams.java | 27 + .../rpc/SessionUsageGetMetricsResult.java | 193 ++++ .../rpc/SessionWorkspaceCreateFileParams.java | 41 + .../rpc/SessionWorkspaceCreateFileResult.java | 20 + .../rpc/SessionWorkspaceListFilesParams.java | 27 + .../rpc/SessionWorkspaceListFilesResult.java | 28 + .../rpc/SessionWorkspaceReadFileParams.java | 34 + .../rpc/SessionWorkspaceReadFileResult.java | 27 + .../sdk/generated/rpc/SessionsForkParams.java | 34 + .../sdk/generated/rpc/SessionsForkResult.java | 27 + .../sdk/generated/rpc/ToolsListParams.java | 27 + .../sdk/generated/rpc/ToolsListResult.java | 70 ++ 198 files changed, 11799 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/codegen-check.yml create mode 100644 .github/workflows/update-copilot-dependency.yml create mode 100644 scripts/codegen/.gitignore create mode 100644 scripts/codegen/java.ts create mode 100644 scripts/codegen/package-lock.json create mode 100644 scripts/codegen/package.json create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AbortEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantIntentEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantMessageDeltaEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantMessageEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningDeltaEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantStreamingDeltaEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantTurnEndEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantTurnStartEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/AssistantUsageEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/CapabilitiesChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/CommandCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/CommandExecuteEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/CommandQueuedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/CommandsChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ElicitationCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ElicitationRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ExternalToolCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ExternalToolRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/HookEndEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/HookStartEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/McpOauthCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/McpOauthRequiredEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/PendingMessagesModifiedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/PermissionCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/PermissionRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SamplingCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SamplingRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionBackgroundTasksChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionCompactionCompleteEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionCompactionStartEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionContextChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionCustomAgentsUpdatedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionErrorEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionExtensionsLoadedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionHandoffEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionIdleEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionInfoEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionMcpServerStatusChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionMcpServersLoadedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionModeChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionModelChangeEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionPlanChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionRemoteSteerableChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionResumeEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionShutdownEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionSkillsLoadedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionSnapshotRewindEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionStartEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionTaskCompleteEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionTitleChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionToolsUpdatedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionTruncationEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionUsageInfoEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionWarningEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SessionWorkspaceFileChangedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SkillInvokedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SubagentCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SubagentDeselectedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SubagentFailedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SubagentSelectedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SubagentStartedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SystemMessageEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/SystemNotificationEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ToolExecutionCompleteEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ToolExecutionPartialResultEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ToolExecutionProgressEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ToolExecutionStartEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/ToolUserRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/UnknownSessionEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/UserInputCompletedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/UserInputRequestedEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/UserMessageEvent.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/AccountGetQuotaResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigAddParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigRemoveParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigUpdateParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/ModelsListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/PingParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/PingResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsAppendFileParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsMkdirParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRenameParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRmParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsWriteFileParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkResult.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListParams.java create mode 100644 src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListResult.java diff --git a/.gitattributes b/.gitattributes index c1965c216..adb3de78e 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1,2 @@ -.github/workflows/*.lock.yml linguist-generated=true merge=ours \ No newline at end of file +.github/workflows/*.lock.yml linguist-generated=true merge=ours +src/generated/java/** eol=lf linguist-generated=true diff --git a/.github/workflows/codegen-check.yml b/.github/workflows/codegen-check.yml new file mode 100644 index 000000000..675629c1e --- /dev/null +++ b/.github/workflows/codegen-check.yml @@ -0,0 +1,44 @@ +name: "Codegen Check" + +on: + push: + branches: + - main + pull_request: + paths: + - 'scripts/codegen/**' + - 'src/generated/java/**' + - '.github/workflows/codegen-check.yml' + workflow_dispatch: + +permissions: + contents: read + +jobs: + check: + name: "Verify generated files are up-to-date" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6 + with: + node-version: 22 + + - name: Install codegen dependencies + working-directory: ./scripts/codegen + run: npm ci + + - name: Run codegen + working-directory: ./scripts/codegen + run: npm run generate + + - name: Check for uncommitted changes + run: | + if [ -n "$(git status --porcelain)" ]; then + echo "::error::Generated files are out of date. Run 'cd scripts/codegen && npm run generate' and commit the changes." + git diff --stat + git diff + exit 1 + fi + echo "✅ Generated files are up-to-date" diff --git a/.github/workflows/update-copilot-dependency.yml b/.github/workflows/update-copilot-dependency.yml new file mode 100644 index 000000000..277434ead --- /dev/null +++ b/.github/workflows/update-copilot-dependency.yml @@ -0,0 +1,92 @@ +name: "Update @github/copilot Dependency" + +on: + workflow_dispatch: + inputs: + version: + description: 'Target version of @github/copilot (e.g. 1.0.24)' + required: true + type: string + +permissions: + contents: write + pull-requests: write + +jobs: + update: + name: "Update @github/copilot to ${{ inputs.version }}" + runs-on: ubuntu-latest + steps: + - name: Validate version input + env: + VERSION: ${{ inputs.version }} + run: | + if [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9._-]+)?$ ]]; then + echo "::error::Invalid version format '$VERSION'. Expected semver (e.g. 1.0.24)." + exit 1 + fi + + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6 + with: + node-version: 22 + + - name: Update @github/copilot in scripts/codegen + env: + VERSION: ${{ inputs.version }} + working-directory: ./scripts/codegen + run: npm install "@github/copilot@$VERSION" + + - name: Install codegen dependencies + working-directory: ./scripts/codegen + run: npm ci + + - name: Run codegen + working-directory: ./scripts/codegen + run: npm run generate + + - name: Create pull request + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + VERSION: ${{ inputs.version }} + run: | + BRANCH="update-copilot-$VERSION" + git config user.name "github-actions[bot]" + git config user.email "41898282+github-actions[bot]@users.noreply.github.com" + + if git rev-parse --verify "origin/$BRANCH" >/dev/null 2>&1; then + git checkout "$BRANCH" + git reset --hard HEAD + else + git checkout -b "$BRANCH" + fi + + git add -A + + if git diff --cached --quiet; then + echo "No changes detected; skipping commit and PR creation." + exit 0 + fi + + git commit -m "Update @github/copilot to $VERSION + + - Updated @github/copilot in scripts/codegen + - Re-ran Java code generator" + git push origin "$BRANCH" --force-with-lease + + if gh pr view "$BRANCH" >/dev/null 2>&1; then + echo "Pull request for branch '$BRANCH' already exists; updated branch only." + else + gh pr create \ + --title "Update @github/copilot to $VERSION" \ + --body "Automated update of \`@github/copilot\` to version \`$VERSION\`. + + ### Changes + - Updated \`@github/copilot\` in \`scripts/codegen/package.json\` + - Re-ran Java code generator (\`scripts/codegen\`) + + > Created by the **Update @github/copilot Dependency** workflow." \ + --base main \ + --head "$BRANCH" + fi diff --git a/.gitignore b/.gitignore index ddb2508ba..85e604a7f 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ changebundle.txt* .classpath .project .settings +scripts/codegen/node_modules/ diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index 33c9ac5f2..9a6f3761b 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -11,9 +11,9 @@ - + - + diff --git a/docs/WORKFLOWS.md b/docs/WORKFLOWS.md index 74afbd337..4725ff8f2 100644 --- a/docs/WORKFLOWS.md +++ b/docs/WORKFLOWS.md @@ -5,6 +5,8 @@ | Workflow | Description | Triggers | Schedule | |----------|-------------|----------|----------| | [Build & Test](workflows/build-test.yml) | Builds, lints, and tests the Java SDK | `push` (main), `pull_request`, `merge_group`, `workflow_dispatch` | Sundays at 00:00 UTC | +| [Codegen Check](workflows/codegen-check.yml) | Verifies that generated Java files are up-to-date with the JSON schemas | `push` (main), `pull_request`, `workflow_dispatch` | — | +| [Update @github/copilot Dependency](workflows/update-copilot-dependency.yml) | Updates the `@github/copilot` npm package, re-runs code generation, and opens a PR | `workflow_dispatch` | — | | [Deploy Documentation](workflows/deploy-site.yml) | Generates and deploys versioned docs to GitHub Pages | `workflow_run` (after Build & Test), `release`, `workflow_dispatch` | — | | [Publish to Maven Central](workflows/publish-maven.yml) | Releases the SDK to Maven Central and creates a GitHub Release | `workflow_dispatch` | — | | [Weekly Upstream Sync](workflows/weekly-upstream-sync.yml) | Checks for new upstream commits and creates an issue for Copilot to merge | `workflow_dispatch` | Mondays at 10:00 UTC | @@ -87,6 +89,42 @@ Auto-generated compiled workflow produced by `gh aw compile` from the correspond --- +## Codegen Check + +**File:** [`codegen-check.yml`](workflows/codegen-check.yml) + +Verifies that the generated Java source files in `src/generated/java/` are up-to-date with the JSON schemas distributed in the `@github/copilot` npm package. + +Steps: +1. Installs the codegen dependencies from `scripts/codegen/` +2. Runs the Java code generator (`npm run generate`) +3. Fails with a diff if any generated file differs from what is committed + +Run this locally with: +```bash +cd scripts/codegen && npm ci && npm run generate +``` + +If changes appear, commit the updated generated files. + +--- + +## Update @github/copilot Dependency + +**File:** [`update-copilot-dependency.yml`](workflows/update-copilot-dependency.yml) + +Manual workflow triggered when a new version of the `@github/copilot` npm package is published. Accepts a `version` input (e.g. `1.0.25`). + +Steps: +1. Updates `@github/copilot` in `scripts/codegen/package.json` +2. Re-runs the Java code generator +3. Commits the updated `package.json`, `package-lock.json`, and all regenerated Java files +4. Opens (or updates) a pull request for review + +The resulting PR will be automatically validated by the **Codegen Check** workflow. + +--- + ## Copilot Setup Steps **File:** [`copilot-setup-steps.yml`](workflows/copilot-setup-steps.yml) diff --git a/pom.xml b/pom.xml index b61c36166..95ed2602d 100644 --- a/pom.xml +++ b/pom.xml @@ -255,12 +255,35 @@ + + + org.codehaus.mojo + build-helper-maven-plugin + 3.6.1 + + + add-generated-source + generate-sources + + add-source + + + + ${project.basedir}/src/generated/java + + + + + com.diffplug.spotless spotless-maven-plugin 2.44.5 + + src/generated/java/**/*.java + 4.33 diff --git a/scripts/codegen/.gitignore b/scripts/codegen/.gitignore new file mode 100644 index 000000000..c2658d7d1 --- /dev/null +++ b/scripts/codegen/.gitignore @@ -0,0 +1 @@ +node_modules/ diff --git a/scripts/codegen/java.ts b/scripts/codegen/java.ts new file mode 100644 index 000000000..2a37e92af --- /dev/null +++ b/scripts/codegen/java.ts @@ -0,0 +1,821 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +/** + * Java code generator for session-events and RPC types. + * Generates Java source files under src/generated/java/ from JSON Schema files. + */ + +import fs from "fs/promises"; +import path from "path"; +import { fileURLToPath } from "url"; +import type { JSONSchema7 } from "json-schema"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +/** Root of the copilot-sdk-java repo */ +const REPO_ROOT = path.resolve(__dirname, "../.."); + +/** Event types to exclude from generation (internal/legacy types) */ +const EXCLUDED_EVENT_TYPES = new Set(["session.import_legacy"]); + +const AUTO_GENERATED_HEADER = `// AUTO-GENERATED FILE - DO NOT EDIT`; +const GENERATED_FROM_SESSION_EVENTS = `// Generated from: session-events.schema.json`; +const GENERATED_FROM_API = `// Generated from: api.schema.json`; +const GENERATED_ANNOTATION = `@javax.annotation.processing.Generated("copilot-sdk-codegen")`; +const COPYRIGHT = `/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n *--------------------------------------------------------------------------------------------*/`; + +// ── Naming utilities ───────────────────────────────────────────────────────── + +function toPascalCase(name: string): string { + return name.split(/[-_.]/).map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join(""); +} + +function toJavaClassName(typeName: string): string { + return typeName.split(/[._]/).map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join(""); +} + +function toCamelCase(name: string): string { + const pascal = toPascalCase(name); + return pascal.charAt(0).toLowerCase() + pascal.slice(1); +} + +function toEnumConstant(value: string): string { + return value.toUpperCase().replace(/[-. ]/g, "_"); +} + +// ── Schema path resolution ─────────────────────────────────────────────────── + +async function getSessionEventsSchemaPath(): Promise { + const candidates = [ + path.join(REPO_ROOT, "scripts/codegen/node_modules/@github/copilot/schemas/session-events.schema.json"), + path.join(REPO_ROOT, "nodejs/node_modules/@github/copilot/schemas/session-events.schema.json"), + ]; + for (const p of candidates) { + try { + await fs.access(p); + return p; + } catch { + // try next + } + } + throw new Error("session-events.schema.json not found. Run 'npm ci' in scripts/codegen first."); +} + +async function getApiSchemaPath(): Promise { + const candidates = [ + path.join(REPO_ROOT, "scripts/codegen/node_modules/@github/copilot/schemas/api.schema.json"), + path.join(REPO_ROOT, "nodejs/node_modules/@github/copilot/schemas/api.schema.json"), + ]; + for (const p of candidates) { + try { + await fs.access(p); + return p; + } catch { + // try next + } + } + throw new Error("api.schema.json not found. Run 'npm ci' in scripts/codegen first."); +} + +// ── File writing ───────────────────────────────────────────────────────────── + +async function writeGeneratedFile(relativePath: string, content: string): Promise { + const fullPath = path.join(REPO_ROOT, relativePath); + await fs.mkdir(path.dirname(fullPath), { recursive: true }); + await fs.writeFile(fullPath, content, "utf-8"); + console.log(` ✓ ${relativePath}`); + return fullPath; +} + +// ── Java type mapping ───────────────────────────────────────────────────────── + +interface JavaTypeResult { + javaType: string; + imports: Set; +} + +function schemaTypeToJava( + schema: JSONSchema7, + required: boolean, + context: string, + propName: string, + nestedTypes: Map +): JavaTypeResult { + const imports = new Set(); + + if (schema.anyOf) { + const hasNull = schema.anyOf.some((s) => typeof s === "object" && (s as JSONSchema7).type === "null"); + const nonNull = schema.anyOf.filter((s) => typeof s === "object" && (s as JSONSchema7).type !== "null"); + if (nonNull.length === 1) { + const result = schemaTypeToJava(nonNull[0] as JSONSchema7, required && !hasNull, context, propName, nestedTypes); + return result; + } + return { javaType: "Object", imports }; + } + + if (schema.type === "string") { + if (schema.format === "uuid") { + imports.add("java.util.UUID"); + return { javaType: "UUID", imports }; + } + if (schema.format === "date-time") { + imports.add("java.time.OffsetDateTime"); + return { javaType: "OffsetDateTime", imports }; + } + if (schema.enum && Array.isArray(schema.enum)) { + const enumName = `${context}${toPascalCase(propName)}`; + nestedTypes.set(enumName, { + kind: "enum", + name: enumName, + values: schema.enum as string[], + description: schema.description, + }); + return { javaType: enumName, imports }; + } + return { javaType: "String", imports }; + } + + if (Array.isArray(schema.type)) { + const nonNullTypes = schema.type.filter((t) => t !== "null"); + if (nonNullTypes.length === 1) { + const baseSchema = { ...schema, type: nonNullTypes[0] }; + return schemaTypeToJava(baseSchema as JSONSchema7, required, context, propName, nestedTypes); + } + } + + if (schema.type === "number" || schema.type === "integer") { + return { javaType: "Double", imports }; + } + + if (schema.type === "boolean") { + return { javaType: "Boolean", imports }; + } + + if (schema.type === "array") { + const items = schema.items as JSONSchema7 | undefined; + if (items) { + const itemResult = schemaTypeToJava(items, true, context, propName + "Item", nestedTypes); + imports.add("java.util.List"); + for (const imp of itemResult.imports) imports.add(imp); + return { javaType: `List<${itemResult.javaType}>`, imports }; + } + imports.add("java.util.List"); + return { javaType: "List", imports }; + } + + if (schema.type === "object") { + if (schema.properties && Object.keys(schema.properties).length > 0) { + const nestedName = `${context}${toPascalCase(propName)}`; + if (!nestedTypes.has(nestedName)) { + nestedTypes.set(nestedName, { + kind: "class", + name: nestedName, + schema, + description: schema.description, + }); + } + return { javaType: nestedName, imports }; + } + if (schema.additionalProperties) { + const valueSchema = typeof schema.additionalProperties === "object" + ? schema.additionalProperties as JSONSchema7 + : { type: "object" } as JSONSchema7; + const valueResult = schemaTypeToJava(valueSchema, true, context, propName + "Value", nestedTypes); + imports.add("java.util.Map"); + for (const imp of valueResult.imports) imports.add(imp); + return { javaType: `Map`, imports }; + } + imports.add("java.util.Map"); + return { javaType: "Map", imports }; + } + + if (schema.$ref) { + const refName = schema.$ref.split("/").pop()!; + return { javaType: refName, imports }; + } + + return { javaType: "Object", imports }; +} + +// ── Class definitions ───────────────────────────────────────────────────────── + +interface JavaClassDef { + kind: "class" | "enum"; + name: string; + description?: string; + schema?: JSONSchema7; + values?: string[]; // for enum +} + +// ── Generate a simple data class ────────────────────────────────────────────── + +function generateDataClass( + className: string, + schema: JSONSchema7, + nestedTypes: Map, + packageName: string, + schemaSource: string, + indentLevel: number = 0 +): string { + const indent = " ".repeat(indentLevel); + const lines: string[] = []; + const allImports = new Set(); + + interface PropInfo { + jsonName: string; + javaName: string; + javaType: string; + required: boolean; + description?: string; + } + + const requiredSet = new Set(schema.required || []); + const properties: PropInfo[] = []; + + for (const [propName, propSchema] of Object.entries(schema.properties || {})) { + if (typeof propSchema !== "object") continue; + const prop = propSchema as JSONSchema7; + const isRequired = requiredSet.has(propName); + const result = schemaTypeToJava(prop, isRequired, className, propName, nestedTypes); + for (const imp of result.imports) allImports.add(imp); + properties.push({ + jsonName: propName, + javaName: toCamelCase(propName), + javaType: result.javaType, + required: isRequired, + description: prop.description, + }); + } + + if (schema.description) { + lines.push(`${indent}/** ${schema.description} */`); + } + lines.push(`${indent}@JsonInclude(JsonInclude.Include.NON_NULL)`); + lines.push(`${indent}@JsonIgnoreProperties(ignoreUnknown = true)`); + if (indentLevel === 0) { + lines.push(`${indent}${GENERATED_ANNOTATION}`); + } + lines.push(`${indent}public class ${className} {`); + lines.push(""); + + for (const prop of properties) { + if (prop.description) { + lines.push(`${indent} /** ${prop.description} */`); + } + lines.push(`${indent} @JsonProperty("${prop.jsonName}")`); + lines.push(`${indent} private ${prop.javaType} ${prop.javaName};`); + lines.push(""); + } + + for (const prop of properties) { + const getterName = "get" + prop.javaName.charAt(0).toUpperCase() + prop.javaName.slice(1); + const setterName = "set" + prop.javaName.charAt(0).toUpperCase() + prop.javaName.slice(1); + lines.push(`${indent} public ${prop.javaType} ${getterName}() { return ${prop.javaName}; }`); + lines.push(`${indent} public void ${setterName}(${prop.javaType} ${prop.javaName}) { this.${prop.javaName} = ${prop.javaName}; }`); + lines.push(""); + } + + if (lines[lines.length - 1] === "") lines.pop(); + lines.push(`${indent}}`); + + return { content: lines.join("\n"), imports: allImports } as any; +} + +// ── Session Events codegen ──────────────────────────────────────────────────── + +interface EventVariant { + typeName: string; + className: string; + dataSchema: JSONSchema7 | null; + description?: string; +} + +function extractEventVariants(schema: JSONSchema7): EventVariant[] { + const sessionEvent = (schema.definitions as Record)?.SessionEvent; + if (!sessionEvent?.anyOf) throw new Error("Schema must have SessionEvent definition with anyOf"); + + return (sessionEvent.anyOf as JSONSchema7[]) + .map((variant) => { + const typeSchema = variant.properties?.type as JSONSchema7; + const typeName = typeSchema?.const as string; + if (!typeName) throw new Error("Variant must have type.const"); + const baseName = toJavaClassName(typeName); + const dataSchema = variant.properties?.data as JSONSchema7 | undefined; + return { + typeName, + className: `${baseName}Event`, + dataSchema: dataSchema ?? null, + description: variant.description, + }; + }) + .filter((v) => !EXCLUDED_EVENT_TYPES.has(v.typeName)); +} + +async function generateSessionEvents(schemaPath: string): Promise { + console.log("\n📋 Generating session event classes..."); + const schemaContent = await fs.readFile(schemaPath, "utf-8"); + const schema = JSON.parse(schemaContent) as JSONSchema7; + + const variants = extractEventVariants(schema); + const packageName = "com.github.copilot.sdk.generated"; + const packageDir = `src/generated/java/com/github/copilot/sdk/generated`; + + // Generate base SessionEvent class + await generateSessionEventBaseClass(variants, packageName, packageDir); + + // Generate one class file per event variant + for (const variant of variants) { + await generateEventVariantClass(variant, packageName, packageDir); + } + + console.log(`✅ Generated ${variants.length + 1} session event files`); +} + +async function generateSessionEventBaseClass( + variants: EventVariant[], + packageName: string, + packageDir: string +): Promise { + const lines: string[] = []; + lines.push(COPYRIGHT); + lines.push(""); + lines.push(AUTO_GENERATED_HEADER); + lines.push(GENERATED_FROM_SESSION_EVENTS); + lines.push(""); + lines.push(`package ${packageName};`); + lines.push(""); + lines.push(`import com.fasterxml.jackson.annotation.JsonIgnoreProperties;`); + lines.push(`import com.fasterxml.jackson.annotation.JsonProperty;`); + lines.push(`import com.fasterxml.jackson.annotation.JsonSubTypes;`); + lines.push(`import com.fasterxml.jackson.annotation.JsonTypeInfo;`); + lines.push(`import java.time.OffsetDateTime;`); + lines.push(`import java.util.UUID;`); + lines.push(`import javax.annotation.processing.Generated;`); + lines.push(""); + lines.push(`/** Provides the base class from which all session events derive. */`); + lines.push(`@JsonIgnoreProperties(ignoreUnknown = true)`); + lines.push(`@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type", defaultImpl = UnknownSessionEvent.class)`); + lines.push(`@JsonSubTypes({`); + for (let i = 0; i < variants.length; i++) { + const v = variants[i]; + const comma = i < variants.length - 1 ? "," : ""; + lines.push(` @JsonSubTypes.Type(value = ${v.className}.class, name = "${v.typeName}")${comma}`); + } + lines.push(`})`); + lines.push(GENERATED_ANNOTATION); + lines.push(`public class SessionEvent {`); + lines.push(""); + lines.push(` /** Unique event identifier (UUID v4), generated when the event is emitted. */`); + lines.push(` @JsonProperty("id")`); + lines.push(` private UUID id;`); + lines.push(""); + lines.push(` /** ISO 8601 timestamp when the event was created. */`); + lines.push(` @JsonProperty("timestamp")`); + lines.push(` private OffsetDateTime timestamp;`); + lines.push(""); + lines.push(` /** The event type discriminator. */`); + lines.push(` @JsonProperty("type")`); + lines.push(` private String type;`); + lines.push(""); + lines.push(` /** ID of the chronologically preceding event in the session. Null for the first event. */`); + lines.push(` @JsonProperty("parentId")`); + lines.push(` private UUID parentId;`); + lines.push(""); + lines.push(` /** When true, the event is transient and not persisted to the session event log on disk. */`); + lines.push(` @JsonProperty("ephemeral")`); + lines.push(` private Boolean ephemeral;`); + lines.push(""); + lines.push(` public UUID getId() { return id; }`); + lines.push(` public void setId(UUID id) { this.id = id; }`); + lines.push(""); + lines.push(` public OffsetDateTime getTimestamp() { return timestamp; }`); + lines.push(` public void setTimestamp(OffsetDateTime timestamp) { this.timestamp = timestamp; }`); + lines.push(""); + lines.push(` public String getType() { return type; }`); + lines.push(` public void setType(String type) { this.type = type; }`); + lines.push(""); + lines.push(` public UUID getParentId() { return parentId; }`); + lines.push(` public void setParentId(UUID parentId) { this.parentId = parentId; }`); + lines.push(""); + lines.push(` public Boolean getEphemeral() { return ephemeral; }`); + lines.push(` public void setEphemeral(Boolean ephemeral) { this.ephemeral = ephemeral; }`); + lines.push(`}`); + lines.push(""); + + await writeGeneratedFile(`${packageDir}/SessionEvent.java`, lines.join("\n")); + + // Also generate the UnknownSessionEvent fallback + await generateUnknownEventClass(packageName, packageDir); +} + +async function generateUnknownEventClass(packageName: string, packageDir: string): Promise { + const lines: string[] = []; + lines.push(COPYRIGHT); + lines.push(""); + lines.push(AUTO_GENERATED_HEADER); + lines.push(GENERATED_FROM_SESSION_EVENTS); + lines.push(""); + lines.push(`package ${packageName};`); + lines.push(""); + lines.push(`import com.fasterxml.jackson.annotation.JsonIgnoreProperties;`); + lines.push(`import javax.annotation.processing.Generated;`); + lines.push(""); + lines.push(`/** Fallback for event types not yet known to this SDK version. */`); + lines.push(`@JsonIgnoreProperties(ignoreUnknown = true)`); + lines.push(GENERATED_ANNOTATION); + lines.push(`public final class UnknownSessionEvent extends SessionEvent {}`); + lines.push(""); + + await writeGeneratedFile(`${packageDir}/UnknownSessionEvent.java`, lines.join("\n")); +} + +/** Render a nested type (enum or class) as a static inner class, indented at the given level. */ +function renderNestedType(nested: JavaClassDef, indentLevel: number, nestedTypes: Map, allImports: Set): string[] { + const ind = " ".repeat(indentLevel); + const lines: string[] = []; + + if (nested.kind === "enum") { + lines.push(""); + if (nested.description) { + lines.push(`${ind}/** ${nested.description} */`); + } + lines.push(`${ind}public enum ${nested.name} {`); + for (let i = 0; i < (nested.values || []).length; i++) { + const v = nested.values![i]; + const comma = i < nested.values!.length - 1 ? "," : ";"; + lines.push(`${ind} /** The {@code ${v}} variant. */`); + lines.push(`${ind} ${toEnumConstant(v)}("${v}")${comma}`); + } + lines.push(""); + lines.push(`${ind} private final String value;`); + lines.push(`${ind} ${nested.name}(String value) { this.value = value; }`); + lines.push(`${ind} @com.fasterxml.jackson.annotation.JsonValue`); + lines.push(`${ind} public String getValue() { return value; }`); + lines.push(`${ind}}`); + } else if (nested.kind === "class" && nested.schema?.properties) { + const localNestedTypes = new Map(); + const requiredSet = new Set(nested.schema.required || []); + const fields: { jsonName: string; javaName: string; javaType: string; description?: string }[] = []; + + for (const [propName, propSchema] of Object.entries(nested.schema.properties)) { + if (typeof propSchema !== "object") continue; + const prop = propSchema as JSONSchema7; + const isRequired = requiredSet.has(propName); + const result = schemaTypeToJava(prop, isRequired, nested.name, propName, localNestedTypes); + for (const imp of result.imports) allImports.add(imp); + fields.push({ jsonName: propName, javaName: toCamelCase(propName), javaType: result.javaType, description: prop.description }); + } + + lines.push(""); + if (nested.description) { + lines.push(`${ind}/** ${nested.description} */`); + } + lines.push(`${ind}@JsonIgnoreProperties(ignoreUnknown = true)`); + lines.push(`${ind}@JsonInclude(JsonInclude.Include.NON_NULL)`); + lines.push(`${ind}public static class ${nested.name} {`); + lines.push(""); + for (const f of fields) { + if (f.description) lines.push(`${ind} /** ${f.description} */`); + lines.push(`${ind} @JsonProperty("${f.jsonName}")`); + lines.push(`${ind} private ${f.javaType} ${f.javaName};`); + lines.push(""); + } + for (const f of fields) { + const g = "get" + f.javaName.charAt(0).toUpperCase() + f.javaName.slice(1); + const s = "set" + f.javaName.charAt(0).toUpperCase() + f.javaName.slice(1); + lines.push(`${ind} public ${f.javaType} ${g}() { return ${f.javaName}; }`); + lines.push(`${ind} public void ${s}(${f.javaType} ${f.javaName}) { this.${f.javaName} = ${f.javaName}; }`); + lines.push(""); + } + // Render any further nested types inside this class + for (const [, localNested] of localNestedTypes) { + lines.push(...renderNestedType(localNested, indentLevel + 1, nestedTypes, allImports)); + } + if (lines[lines.length - 1] === "") lines.pop(); + lines.push(`${ind}}`); + } + + return lines; +} + +async function generateEventVariantClass( + variant: EventVariant, + packageName: string, + packageDir: string +): Promise { + const lines: string[] = []; + const allImports = new Set([ + "com.fasterxml.jackson.annotation.JsonIgnoreProperties", + "com.fasterxml.jackson.annotation.JsonProperty", + "com.fasterxml.jackson.annotation.JsonInclude", + "javax.annotation.processing.Generated", + ]); + const nestedTypes = new Map(); + + // Collect data class fields + interface FieldInfo { + jsonName: string; + javaName: string; + javaType: string; + description?: string; + } + + const dataFields: FieldInfo[] = []; + + if (variant.dataSchema?.properties) { + const requiredSet = new Set(variant.dataSchema.required || []); + for (const [propName, propSchema] of Object.entries(variant.dataSchema.properties)) { + if (typeof propSchema !== "object") continue; + const prop = propSchema as JSONSchema7; + const isRequired = requiredSet.has(propName); + const result = schemaTypeToJava(prop, isRequired, `${variant.className}Data`, propName, nestedTypes); + for (const imp of result.imports) allImports.add(imp); + dataFields.push({ + jsonName: propName, + javaName: toCamelCase(propName), + javaType: result.javaType, + description: prop.description, + }); + } + } + + // Build the file + lines.push(COPYRIGHT); + lines.push(""); + lines.push(AUTO_GENERATED_HEADER); + lines.push(GENERATED_FROM_SESSION_EVENTS); + lines.push(""); + lines.push(`package ${packageName};`); + lines.push(""); + + // Placeholder for imports + const importPlaceholderIdx = lines.length; + lines.push("__IMPORTS__"); + lines.push(""); + + if (variant.description) { + lines.push(`/** ${variant.description} */`); + } else { + lines.push(`/** The {@code ${variant.typeName}} session event. */`); + } + lines.push(`@JsonIgnoreProperties(ignoreUnknown = true)`); + lines.push(GENERATED_ANNOTATION); + lines.push(`public final class ${variant.className} extends SessionEvent {`); + lines.push(""); + + if (dataFields.length > 0) { + lines.push(` @JsonProperty("data")`); + lines.push(` private ${variant.className}Data data;`); + lines.push(""); + lines.push(` public ${variant.className}Data getData() { return data; }`); + lines.push(` public void setData(${variant.className}Data data) { this.data = data; }`); + lines.push(""); + // Generate data inner class + lines.push(` /** Data payload for {@link ${variant.className}}. */`); + lines.push(` @JsonIgnoreProperties(ignoreUnknown = true)`); + lines.push(` @JsonInclude(JsonInclude.Include.NON_NULL)`); + lines.push(` public static class ${variant.className}Data {`); + lines.push(""); + for (const field of dataFields) { + if (field.description) { + lines.push(` /** ${field.description} */`); + } + lines.push(` @JsonProperty("${field.jsonName}")`); + lines.push(` private ${field.javaType} ${field.javaName};`); + lines.push(""); + } + for (const field of dataFields) { + const getterName = "get" + field.javaName.charAt(0).toUpperCase() + field.javaName.slice(1); + const setterName = "set" + field.javaName.charAt(0).toUpperCase() + field.javaName.slice(1); + lines.push(` public ${field.javaType} ${getterName}() { return ${field.javaName}; }`); + lines.push(` public void ${setterName}(${field.javaType} ${field.javaName}) { this.${field.javaName} = ${field.javaName}; }`); + lines.push(""); + } + // Render nested types inside Data class + for (const [, nested] of nestedTypes) { + lines.push(...renderNestedType(nested, 2, nestedTypes, allImports)); + } + if (lines[lines.length - 1] === "") lines.pop(); + lines.push(` }`); + } + + lines.push(`}`); + lines.push(""); + + // Replace import placeholder + const sortedImports = [...allImports].sort(); + const importLines = sortedImports.map((i) => `import ${i};`).join("\n"); + lines[importPlaceholderIdx] = importLines; + + await writeGeneratedFile(`${packageDir}/${variant.className}.java`, lines.join("\n")); +} + +// ── RPC types codegen ───────────────────────────────────────────────────────── + +interface RpcMethod { + rpcMethod: string; + params: JSONSchema7 | null; + result: JSONSchema7 | null; + stability?: string; +} + +function isRpcMethod(node: unknown): node is RpcMethod { + return typeof node === "object" && node !== null && "rpcMethod" in node; +} + +function collectRpcMethods(node: Record): [string, RpcMethod][] { + const results: [string, RpcMethod][] = []; + for (const [key, value] of Object.entries(node)) { + if (isRpcMethod(value)) { + results.push([key, value]); + } else if (typeof value === "object" && value !== null) { + results.push(...collectRpcMethods(value as Record)); + } + } + return results; +} + +/** Convert an RPC method name to a Java class name prefix (e.g., "models.list" -> "ModelsList") */ +function rpcMethodToClassName(rpcMethod: string): string { + return rpcMethod.split(/[._-]/).map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join(""); +} + +/** Generate a Java class for a JSON Schema object type. Returns the class content. */ +function generateRpcClass( + className: string, + schema: JSONSchema7, + _nestedTypes: Map, + _packageName: string, + visibility: "public" | "internal" = "public" +): { code: string; imports: Set } { + const imports = new Set(); + const localNestedTypes = new Map(); + const lines: string[] = []; + + if (schema.description) { + lines.push(`/** ${schema.description} */`); + } + lines.push(`@JsonInclude(JsonInclude.Include.NON_NULL)`); + lines.push(`@JsonIgnoreProperties(ignoreUnknown = true)`); + const visModifier = visibility === "public" ? "public" : ""; + lines.push(`${visModifier} class ${className} {`.trimStart()); + lines.push(""); + + const requiredSet = new Set(schema.required || []); + for (const [propName, propSchema] of Object.entries(schema.properties || {})) { + if (typeof propSchema !== "object") continue; + const prop = propSchema as JSONSchema7; + const isRequired = requiredSet.has(propName); + const result = schemaTypeToJava(prop, isRequired, className, propName, localNestedTypes); + for (const imp of result.imports) imports.add(imp); + if (prop.description) { + lines.push(` /** ${prop.description} */`); + } + lines.push(` @JsonProperty("${propName}")`); + lines.push(` private ${result.javaType} ${toCamelCase(propName)};`); + lines.push(""); + } + + for (const [propName] of Object.entries(schema.properties || {})) { + if (typeof schema.properties![propName] !== "object") continue; + const prop = schema.properties![propName] as JSONSchema7; + const isRequired = requiredSet.has(propName); + const result = schemaTypeToJava(prop, isRequired, className, propName, localNestedTypes); + const javaName = toCamelCase(propName); + const getterName = "get" + javaName.charAt(0).toUpperCase() + javaName.slice(1); + const setterName = "set" + javaName.charAt(0).toUpperCase() + javaName.slice(1); + lines.push(` public ${result.javaType} ${getterName}() { return ${javaName}; }`); + lines.push(` public void ${setterName}(${result.javaType} ${javaName}) { this.${javaName} = ${javaName}; }`); + lines.push(""); + } + + // Add nested types as static inner classes + for (const [, nested] of localNestedTypes) { + lines.push(...renderNestedType(nested, 1, new Map(), imports)); + } + + if (lines[lines.length - 1] === "") lines.pop(); + lines.push(`}`); + + return { code: lines.join("\n"), imports }; +} + +async function generateRpcTypes(schemaPath: string): Promise { + console.log("\n🔌 Generating RPC types..."); + const schemaContent = await fs.readFile(schemaPath, "utf-8"); + const schema = JSON.parse(schemaContent) as Record & { + server?: Record; + session?: Record; + clientSession?: Record; + }; + + const packageName = "com.github.copilot.sdk.generated.rpc"; + const packageDir = `src/generated/java/com/github/copilot/sdk/generated/rpc`; + + // Collect all RPC methods from all sections + const sections: [string, Record][] = []; + if (schema.server) sections.push(["server", schema.server]); + if (schema.session) sections.push(["session", schema.session]); + if (schema.clientSession) sections.push(["clientSession", schema.clientSession]); + + const generatedClasses = new Map(); + const allFiles: string[] = []; + + for (const [, sectionNode] of sections) { + const methods = collectRpcMethods(sectionNode); + for (const [, method] of methods) { + const className = rpcMethodToClassName(method.rpcMethod); + + // Generate params class + if (method.params && typeof method.params === "object" && (method.params as JSONSchema7).properties) { + const paramsClassName = `${className}Params`; + if (!generatedClasses.has(paramsClassName)) { + generatedClasses.set(paramsClassName, true); + allFiles.push(await generateRpcDataClass(paramsClassName, method.params as JSONSchema7, packageName, packageDir, method.rpcMethod, "params")); + } + } + + // Generate result class + if (method.result && typeof method.result === "object" && (method.result as JSONSchema7).properties) { + const resultClassName = `${className}Result`; + if (!generatedClasses.has(resultClassName)) { + generatedClasses.set(resultClassName, true); + allFiles.push(await generateRpcDataClass(resultClassName, method.result as JSONSchema7, packageName, packageDir, method.rpcMethod, "result")); + } + } + } + } + + console.log(`✅ Generated ${allFiles.length} RPC type files`); +} + +async function generateRpcDataClass( + className: string, + schema: JSONSchema7, + packageName: string, + packageDir: string, + rpcMethod: string, + kind: "params" | "result" +): Promise { + const nestedTypes = new Map(); + const { code, imports } = generateRpcClass(className, schema, nestedTypes, packageName); + + const lines: string[] = []; + lines.push(COPYRIGHT); + lines.push(""); + lines.push(AUTO_GENERATED_HEADER); + lines.push(GENERATED_FROM_API); + lines.push(""); + lines.push(`package ${packageName};`); + lines.push(""); + + const allImports = new Set([ + "com.fasterxml.jackson.annotation.JsonIgnoreProperties", + "com.fasterxml.jackson.annotation.JsonProperty", + "com.fasterxml.jackson.annotation.JsonInclude", + "javax.annotation.processing.Generated", + ...imports, + ]); + const sortedImports = [...allImports].sort(); + for (const imp of sortedImports) { + lines.push(`import ${imp};`); + } + lines.push(""); + + if (schema.description) { + lines.push(`/** ${schema.description} */`); + } else { + lines.push(`/** ${kind === "params" ? "Request parameters" : "Result"} for the {@code ${rpcMethod}} RPC method. */`); + } + lines.push(GENERATED_ANNOTATION); + lines.push(code); + lines.push(""); + + await writeGeneratedFile(`${packageDir}/${className}.java`, lines.join("\n")); + return className; +} + +// ── Main entry point ────────────────────────────────────────────────────────── + +async function main(): Promise { + console.log("🚀 Java SDK code generator"); + console.log("============================"); + + const sessionEventsSchemaPath = await getSessionEventsSchemaPath(); + console.log(`📄 Session events schema: ${sessionEventsSchemaPath}`); + const apiSchemaPath = await getApiSchemaPath(); + console.log(`📄 API schema: ${apiSchemaPath}`); + + await generateSessionEvents(sessionEventsSchemaPath); + await generateRpcTypes(apiSchemaPath); + + console.log("\n✅ Java code generation complete!"); +} + +main().catch((err) => { + console.error("❌ Code generation failed:", err); + process.exit(1); +}); diff --git a/scripts/codegen/package-lock.json b/scripts/codegen/package-lock.json new file mode 100644 index 000000000..4a3705f36 --- /dev/null +++ b/scripts/codegen/package-lock.json @@ -0,0 +1,645 @@ +{ + "name": "copilot-sdk-java-codegen", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "copilot-sdk-java-codegen", + "dependencies": { + "@github/copilot": "1.0.24", + "json-schema": "^0.4.0", + "tsx": "^4.20.6" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@github/copilot": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-1.0.24.tgz", + "integrity": "sha512-/nZ2GwhaGq0HeI3W+6LE0JGw25/bipC6tYVa+oQ5tIvAafBazuNt10CXkeaor+u9oBWLZtPbdTyAzE2tjy9NpQ==", + "license": "SEE LICENSE IN LICENSE.md", + "bin": { + "copilot": "npm-loader.js" + }, + "optionalDependencies": { + "@github/copilot-darwin-arm64": "1.0.24", + "@github/copilot-darwin-x64": "1.0.24", + "@github/copilot-linux-arm64": "1.0.24", + "@github/copilot-linux-x64": "1.0.24", + "@github/copilot-win32-arm64": "1.0.24", + "@github/copilot-win32-x64": "1.0.24" + } + }, + "node_modules/@github/copilot-darwin-arm64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-darwin-arm64/-/copilot-darwin-arm64-1.0.24.tgz", + "integrity": "sha512-lejn6KV+09rZEICX3nRx9a58DQFQ2kK3NJ3EICfVLngUCWIUmwn1BLezjeTQc9YNasHltA1hulvfsWqX+VjlMw==", + "cpu": [ + "arm64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "darwin" + ], + "bin": { + "copilot-darwin-arm64": "copilot" + } + }, + "node_modules/@github/copilot-darwin-x64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-darwin-x64/-/copilot-darwin-x64-1.0.24.tgz", + "integrity": "sha512-r2F3keTvr4Bunz3V+waRAvsHgqsVQGyIZFBebsNPWxBX1eh3IXgtBqxCR7vXTFyZonQ8VaiJH3YYEfAhyKsk9g==", + "cpu": [ + "x64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "darwin" + ], + "bin": { + "copilot-darwin-x64": "copilot" + } + }, + "node_modules/@github/copilot-linux-arm64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-linux-arm64/-/copilot-linux-arm64-1.0.24.tgz", + "integrity": "sha512-B3oANXKKKLhnKYozXa/W+DxfCQAHJCs0QKR5rBwNrwJbf656twNgALSxWTSJk+1rEP6MrHCswUAcwjwZL7Q+FQ==", + "cpu": [ + "arm64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "linux" + ], + "bin": { + "copilot-linux-arm64": "copilot" + } + }, + "node_modules/@github/copilot-linux-x64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-linux-x64/-/copilot-linux-x64-1.0.24.tgz", + "integrity": "sha512-NGTldizY54B+4Sfhu/GWoEQNMwqqUNgMwbSgBshFv+Hqy1EwuvNWKVov1Y0Vzhp4qAHc6ZxBk/OPIW8Ato9FUg==", + "cpu": [ + "x64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "linux" + ], + "bin": { + "copilot-linux-x64": "copilot" + } + }, + "node_modules/@github/copilot-win32-arm64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-win32-arm64/-/copilot-win32-arm64-1.0.24.tgz", + "integrity": "sha512-/pd/kgef7/HIIg1SQq4q8fext39pDSC44jHB10KkhfgG1WaDFhQbc/aSSMQfxeldkRbQh6VANp8WtGQdwtMCBA==", + "cpu": [ + "arm64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "win32" + ], + "bin": { + "copilot-win32-arm64": "copilot.exe" + } + }, + "node_modules/@github/copilot-win32-x64": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/@github/copilot-win32-x64/-/copilot-win32-x64-1.0.24.tgz", + "integrity": "sha512-RDvOiSvyEJwELqErwANJTrdRuMIHkwPE4QK7Le7WsmaSKxiuS4H1Pa8Yxnd2FWrMsCHEbase23GJlymbnGYLXQ==", + "cpu": [ + "x64" + ], + "license": "SEE LICENSE IN LICENSE.md", + "optional": true, + "os": [ + "win32" + ], + "bin": { + "copilot-win32-x64": "copilot.exe" + } + }, + "node_modules/esbuild": { + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.7.tgz", + "integrity": "sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.27.7", + "@esbuild/android-arm": "0.27.7", + "@esbuild/android-arm64": "0.27.7", + "@esbuild/android-x64": "0.27.7", + "@esbuild/darwin-arm64": "0.27.7", + "@esbuild/darwin-x64": "0.27.7", + "@esbuild/freebsd-arm64": "0.27.7", + "@esbuild/freebsd-x64": "0.27.7", + "@esbuild/linux-arm": "0.27.7", + "@esbuild/linux-arm64": "0.27.7", + "@esbuild/linux-ia32": "0.27.7", + "@esbuild/linux-loong64": "0.27.7", + "@esbuild/linux-mips64el": "0.27.7", + "@esbuild/linux-ppc64": "0.27.7", + "@esbuild/linux-riscv64": "0.27.7", + "@esbuild/linux-s390x": "0.27.7", + "@esbuild/linux-x64": "0.27.7", + "@esbuild/netbsd-arm64": "0.27.7", + "@esbuild/netbsd-x64": "0.27.7", + "@esbuild/openbsd-arm64": "0.27.7", + "@esbuild/openbsd-x64": "0.27.7", + "@esbuild/openharmony-arm64": "0.27.7", + "@esbuild/sunos-x64": "0.27.7", + "@esbuild/win32-arm64": "0.27.7", + "@esbuild/win32-ia32": "0.27.7", + "@esbuild/win32-x64": "0.27.7" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/get-tsconfig": { + "version": "4.13.7", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.7.tgz", + "integrity": "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==", + "license": "MIT", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "license": "(AFL-2.1 OR BSD-3-Clause)" + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "license": "MIT", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/tsx": { + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", + "integrity": "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==", + "license": "MIT", + "dependencies": { + "esbuild": "~0.27.0", + "get-tsconfig": "^4.7.5" + }, + "bin": { + "tsx": "dist/cli.mjs" + }, + "engines": { + "node": ">=18.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + } + } + } +} diff --git a/scripts/codegen/package.json b/scripts/codegen/package.json new file mode 100644 index 000000000..38dd5fc1f --- /dev/null +++ b/scripts/codegen/package.json @@ -0,0 +1,14 @@ +{ + "name": "copilot-sdk-java-codegen", + "private": true, + "type": "module", + "scripts": { + "generate": "tsx java.ts", + "generate:java": "tsx java.ts" + }, + "dependencies": { + "@github/copilot": "1.0.24", + "json-schema": "^0.4.0", + "tsx": "^4.20.6" + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AbortEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AbortEvent.java new file mode 100644 index 000000000..eb01f0948 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AbortEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code abort} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AbortEvent extends SessionEvent { + + @JsonProperty("data") + private AbortEventData data; + + public AbortEventData getData() { return data; } + public void setData(AbortEventData data) { this.data = data; } + + /** Data payload for {@link AbortEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AbortEventData { + + /** Reason the current turn was aborted (e.g., "user initiated") */ + @JsonProperty("reason") + private String reason; + + public String getReason() { return reason; } + public void setReason(String reason) { this.reason = reason; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantIntentEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantIntentEvent.java new file mode 100644 index 000000000..b5e8a5b6b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantIntentEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.intent} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantIntentEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantIntentEventData data; + + public AssistantIntentEventData getData() { return data; } + public void setData(AssistantIntentEventData data) { this.data = data; } + + /** Data payload for {@link AssistantIntentEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantIntentEventData { + + /** Short description of what the agent is currently doing or planning to do */ + @JsonProperty("intent") + private String intent; + + public String getIntent() { return intent; } + public void setIntent(String intent) { this.intent = intent; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageDeltaEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageDeltaEvent.java new file mode 100644 index 000000000..765a65f66 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageDeltaEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.message_delta} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantMessageDeltaEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantMessageDeltaEventData data; + + public AssistantMessageDeltaEventData getData() { return data; } + public void setData(AssistantMessageDeltaEventData data) { this.data = data; } + + /** Data payload for {@link AssistantMessageDeltaEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantMessageDeltaEventData { + + /** Message ID this delta belongs to, matching the corresponding assistant.message event */ + @JsonProperty("messageId") + private String messageId; + + /** Incremental text chunk to append to the message content */ + @JsonProperty("deltaContent") + private String deltaContent; + + /** Tool call ID of the parent tool invocation when this event originates from a sub-agent */ + @JsonProperty("parentToolCallId") + private String parentToolCallId; + + public String getMessageId() { return messageId; } + public void setMessageId(String messageId) { this.messageId = messageId; } + + public String getDeltaContent() { return deltaContent; } + public void setDeltaContent(String deltaContent) { this.deltaContent = deltaContent; } + + public String getParentToolCallId() { return parentToolCallId; } + public void setParentToolCallId(String parentToolCallId) { this.parentToolCallId = parentToolCallId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageEvent.java new file mode 100644 index 000000000..92bdfaa81 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantMessageEvent.java @@ -0,0 +1,179 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code assistant.message} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantMessageEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantMessageEventData data; + + public AssistantMessageEventData getData() { return data; } + public void setData(AssistantMessageEventData data) { this.data = data; } + + /** Data payload for {@link AssistantMessageEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantMessageEventData { + + /** Unique identifier for this assistant message */ + @JsonProperty("messageId") + private String messageId; + + /** The assistant's text response content */ + @JsonProperty("content") + private String content; + + /** Tool invocations requested by the assistant in this message */ + @JsonProperty("toolRequests") + private List toolRequests; + + /** Opaque/encrypted extended thinking data from Anthropic models. Session-bound and stripped on resume. */ + @JsonProperty("reasoningOpaque") + private String reasoningOpaque; + + /** Readable reasoning text from the model's extended thinking */ + @JsonProperty("reasoningText") + private String reasoningText; + + /** Encrypted reasoning content from OpenAI models. Session-bound and stripped on resume. */ + @JsonProperty("encryptedContent") + private String encryptedContent; + + /** Generation phase for phased-output models (e.g., thinking vs. response phases) */ + @JsonProperty("phase") + private String phase; + + /** Actual output token count from the API response (completion_tokens), used for accurate token accounting */ + @JsonProperty("outputTokens") + private Double outputTokens; + + /** CAPI interaction ID for correlating this message with upstream telemetry */ + @JsonProperty("interactionId") + private String interactionId; + + /** GitHub request tracing ID (x-github-request-id header) for correlating with server-side logs */ + @JsonProperty("requestId") + private String requestId; + + /** Tool call ID of the parent tool invocation when this event originates from a sub-agent */ + @JsonProperty("parentToolCallId") + private String parentToolCallId; + + public String getMessageId() { return messageId; } + public void setMessageId(String messageId) { this.messageId = messageId; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public List getToolRequests() { return toolRequests; } + public void setToolRequests(List toolRequests) { this.toolRequests = toolRequests; } + + public String getReasoningOpaque() { return reasoningOpaque; } + public void setReasoningOpaque(String reasoningOpaque) { this.reasoningOpaque = reasoningOpaque; } + + public String getReasoningText() { return reasoningText; } + public void setReasoningText(String reasoningText) { this.reasoningText = reasoningText; } + + public String getEncryptedContent() { return encryptedContent; } + public void setEncryptedContent(String encryptedContent) { this.encryptedContent = encryptedContent; } + + public String getPhase() { return phase; } + public void setPhase(String phase) { this.phase = phase; } + + public Double getOutputTokens() { return outputTokens; } + public void setOutputTokens(Double outputTokens) { this.outputTokens = outputTokens; } + + public String getInteractionId() { return interactionId; } + public void setInteractionId(String interactionId) { this.interactionId = interactionId; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getParentToolCallId() { return parentToolCallId; } + public void setParentToolCallId(String parentToolCallId) { this.parentToolCallId = parentToolCallId; } + + + /** A tool invocation request from the assistant */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantMessageEventDataToolRequestsItem { + + /** Unique identifier for this tool call */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Name of the tool being invoked */ + @JsonProperty("name") + private String name; + + /** Arguments to pass to the tool, format depends on the tool */ + @JsonProperty("arguments") + private Object arguments; + + /** Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls. Defaults to "function" when absent. */ + @JsonProperty("type") + private AssistantMessageEventDataToolRequestsItemType type; + + /** Human-readable display title for the tool */ + @JsonProperty("toolTitle") + private String toolTitle; + + /** Name of the MCP server hosting this tool, when the tool is an MCP tool */ + @JsonProperty("mcpServerName") + private String mcpServerName; + + /** Resolved intention summary describing what this specific call does */ + @JsonProperty("intentionSummary") + private String intentionSummary; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public Object getArguments() { return arguments; } + public void setArguments(Object arguments) { this.arguments = arguments; } + + public AssistantMessageEventDataToolRequestsItemType getType() { return type; } + public void setType(AssistantMessageEventDataToolRequestsItemType type) { this.type = type; } + + public String getToolTitle() { return toolTitle; } + public void setToolTitle(String toolTitle) { this.toolTitle = toolTitle; } + + public String getMcpServerName() { return mcpServerName; } + public void setMcpServerName(String mcpServerName) { this.mcpServerName = mcpServerName; } + + public String getIntentionSummary() { return intentionSummary; } + public void setIntentionSummary(String intentionSummary) { this.intentionSummary = intentionSummary; } + + + /** Tool call type: "function" for standard tool calls, "custom" for grammar-based tool calls. Defaults to "function" when absent. */ + public enum AssistantMessageEventDataToolRequestsItemType { + /** The {@code function} variant. */ + FUNCTION("function"), + /** The {@code custom} variant. */ + CUSTOM("custom"); + + private final String value; + AssistantMessageEventDataToolRequestsItemType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningDeltaEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningDeltaEvent.java new file mode 100644 index 000000000..cec4cad2e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningDeltaEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.reasoning_delta} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantReasoningDeltaEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantReasoningDeltaEventData data; + + public AssistantReasoningDeltaEventData getData() { return data; } + public void setData(AssistantReasoningDeltaEventData data) { this.data = data; } + + /** Data payload for {@link AssistantReasoningDeltaEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantReasoningDeltaEventData { + + /** Reasoning block ID this delta belongs to, matching the corresponding assistant.reasoning event */ + @JsonProperty("reasoningId") + private String reasoningId; + + /** Incremental text chunk to append to the reasoning content */ + @JsonProperty("deltaContent") + private String deltaContent; + + public String getReasoningId() { return reasoningId; } + public void setReasoningId(String reasoningId) { this.reasoningId = reasoningId; } + + public String getDeltaContent() { return deltaContent; } + public void setDeltaContent(String deltaContent) { this.deltaContent = deltaContent; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningEvent.java new file mode 100644 index 000000000..48e4d222d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantReasoningEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.reasoning} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantReasoningEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantReasoningEventData data; + + public AssistantReasoningEventData getData() { return data; } + public void setData(AssistantReasoningEventData data) { this.data = data; } + + /** Data payload for {@link AssistantReasoningEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantReasoningEventData { + + /** Unique identifier for this reasoning block */ + @JsonProperty("reasoningId") + private String reasoningId; + + /** The complete extended thinking text from the model */ + @JsonProperty("content") + private String content; + + public String getReasoningId() { return reasoningId; } + public void setReasoningId(String reasoningId) { this.reasoningId = reasoningId; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantStreamingDeltaEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantStreamingDeltaEvent.java new file mode 100644 index 000000000..b349b7774 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantStreamingDeltaEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.streaming_delta} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantStreamingDeltaEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantStreamingDeltaEventData data; + + public AssistantStreamingDeltaEventData getData() { return data; } + public void setData(AssistantStreamingDeltaEventData data) { this.data = data; } + + /** Data payload for {@link AssistantStreamingDeltaEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantStreamingDeltaEventData { + + /** Cumulative total bytes received from the streaming response so far */ + @JsonProperty("totalResponseSizeBytes") + private Double totalResponseSizeBytes; + + public Double getTotalResponseSizeBytes() { return totalResponseSizeBytes; } + public void setTotalResponseSizeBytes(Double totalResponseSizeBytes) { this.totalResponseSizeBytes = totalResponseSizeBytes; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnEndEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnEndEvent.java new file mode 100644 index 000000000..eeb1e1917 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnEndEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.turn_end} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantTurnEndEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantTurnEndEventData data; + + public AssistantTurnEndEventData getData() { return data; } + public void setData(AssistantTurnEndEventData data) { this.data = data; } + + /** Data payload for {@link AssistantTurnEndEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantTurnEndEventData { + + /** Identifier of the turn that has ended, matching the corresponding assistant.turn_start event */ + @JsonProperty("turnId") + private String turnId; + + public String getTurnId() { return turnId; } + public void setTurnId(String turnId) { this.turnId = turnId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnStartEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnStartEvent.java new file mode 100644 index 000000000..edf1a0751 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantTurnStartEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code assistant.turn_start} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantTurnStartEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantTurnStartEventData data; + + public AssistantTurnStartEventData getData() { return data; } + public void setData(AssistantTurnStartEventData data) { this.data = data; } + + /** Data payload for {@link AssistantTurnStartEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantTurnStartEventData { + + /** Identifier for this turn within the agentic loop, typically a stringified turn number */ + @JsonProperty("turnId") + private String turnId; + + /** CAPI interaction ID for correlating this turn with upstream telemetry */ + @JsonProperty("interactionId") + private String interactionId; + + public String getTurnId() { return turnId; } + public void setTurnId(String turnId) { this.turnId = turnId; } + + public String getInteractionId() { return interactionId; } + public void setInteractionId(String interactionId) { this.interactionId = interactionId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/AssistantUsageEvent.java b/src/generated/java/com/github/copilot/sdk/generated/AssistantUsageEvent.java new file mode 100644 index 000000000..79de22670 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/AssistantUsageEvent.java @@ -0,0 +1,270 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code assistant.usage} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class AssistantUsageEvent extends SessionEvent { + + @JsonProperty("data") + private AssistantUsageEventData data; + + public AssistantUsageEventData getData() { return data; } + public void setData(AssistantUsageEventData data) { this.data = data; } + + /** Data payload for {@link AssistantUsageEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantUsageEventData { + + /** Model identifier used for this API call */ + @JsonProperty("model") + private String model; + + /** Number of input tokens consumed */ + @JsonProperty("inputTokens") + private Double inputTokens; + + /** Number of output tokens produced */ + @JsonProperty("outputTokens") + private Double outputTokens; + + /** Number of tokens read from prompt cache */ + @JsonProperty("cacheReadTokens") + private Double cacheReadTokens; + + /** Number of tokens written to prompt cache */ + @JsonProperty("cacheWriteTokens") + private Double cacheWriteTokens; + + /** Number of output tokens used for reasoning (e.g., chain-of-thought) */ + @JsonProperty("reasoningTokens") + private Double reasoningTokens; + + /** Model multiplier cost for billing purposes */ + @JsonProperty("cost") + private Double cost; + + /** Duration of the API call in milliseconds */ + @JsonProperty("duration") + private Double duration; + + /** Time to first token in milliseconds. Only available for streaming requests */ + @JsonProperty("ttftMs") + private Double ttftMs; + + /** Average inter-token latency in milliseconds. Only available for streaming requests */ + @JsonProperty("interTokenLatencyMs") + private Double interTokenLatencyMs; + + /** What initiated this API call (e.g., "sub-agent", "mcp-sampling"); absent for user-initiated calls */ + @JsonProperty("initiator") + private String initiator; + + /** Completion ID from the model provider (e.g., chatcmpl-abc123) */ + @JsonProperty("apiCallId") + private String apiCallId; + + /** GitHub request tracing ID (x-github-request-id header) for server-side log correlation */ + @JsonProperty("providerCallId") + private String providerCallId; + + /** Parent tool call ID when this usage originates from a sub-agent */ + @JsonProperty("parentToolCallId") + private String parentToolCallId; + + /** Per-quota resource usage snapshots, keyed by quota identifier */ + @JsonProperty("quotaSnapshots") + private Map quotaSnapshots; + + /** Per-request cost and usage data from the CAPI copilot_usage response field */ + @JsonProperty("copilotUsage") + private AssistantUsageEventDataCopilotUsage copilotUsage; + + /** Reasoning effort level used for model calls, if applicable (e.g. "low", "medium", "high", "xhigh") */ + @JsonProperty("reasoningEffort") + private String reasoningEffort; + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + + public Double getInputTokens() { return inputTokens; } + public void setInputTokens(Double inputTokens) { this.inputTokens = inputTokens; } + + public Double getOutputTokens() { return outputTokens; } + public void setOutputTokens(Double outputTokens) { this.outputTokens = outputTokens; } + + public Double getCacheReadTokens() { return cacheReadTokens; } + public void setCacheReadTokens(Double cacheReadTokens) { this.cacheReadTokens = cacheReadTokens; } + + public Double getCacheWriteTokens() { return cacheWriteTokens; } + public void setCacheWriteTokens(Double cacheWriteTokens) { this.cacheWriteTokens = cacheWriteTokens; } + + public Double getReasoningTokens() { return reasoningTokens; } + public void setReasoningTokens(Double reasoningTokens) { this.reasoningTokens = reasoningTokens; } + + public Double getCost() { return cost; } + public void setCost(Double cost) { this.cost = cost; } + + public Double getDuration() { return duration; } + public void setDuration(Double duration) { this.duration = duration; } + + public Double getTtftMs() { return ttftMs; } + public void setTtftMs(Double ttftMs) { this.ttftMs = ttftMs; } + + public Double getInterTokenLatencyMs() { return interTokenLatencyMs; } + public void setInterTokenLatencyMs(Double interTokenLatencyMs) { this.interTokenLatencyMs = interTokenLatencyMs; } + + public String getInitiator() { return initiator; } + public void setInitiator(String initiator) { this.initiator = initiator; } + + public String getApiCallId() { return apiCallId; } + public void setApiCallId(String apiCallId) { this.apiCallId = apiCallId; } + + public String getProviderCallId() { return providerCallId; } + public void setProviderCallId(String providerCallId) { this.providerCallId = providerCallId; } + + public String getParentToolCallId() { return parentToolCallId; } + public void setParentToolCallId(String parentToolCallId) { this.parentToolCallId = parentToolCallId; } + + public Map getQuotaSnapshots() { return quotaSnapshots; } + public void setQuotaSnapshots(Map quotaSnapshots) { this.quotaSnapshots = quotaSnapshots; } + + public AssistantUsageEventDataCopilotUsage getCopilotUsage() { return copilotUsage; } + public void setCopilotUsage(AssistantUsageEventDataCopilotUsage copilotUsage) { this.copilotUsage = copilotUsage; } + + public String getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(String reasoningEffort) { this.reasoningEffort = reasoningEffort; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantUsageEventDataQuotaSnapshotsValue { + + /** Whether the user has an unlimited usage entitlement */ + @JsonProperty("isUnlimitedEntitlement") + private Boolean isUnlimitedEntitlement; + + /** Total requests allowed by the entitlement */ + @JsonProperty("entitlementRequests") + private Double entitlementRequests; + + /** Number of requests already consumed */ + @JsonProperty("usedRequests") + private Double usedRequests; + + /** Whether usage is still permitted after quota exhaustion */ + @JsonProperty("usageAllowedWithExhaustedQuota") + private Boolean usageAllowedWithExhaustedQuota; + + /** Number of requests over the entitlement limit */ + @JsonProperty("overage") + private Double overage; + + /** Whether overage is allowed when quota is exhausted */ + @JsonProperty("overageAllowedWithExhaustedQuota") + private Boolean overageAllowedWithExhaustedQuota; + + /** Percentage of quota remaining (0.0 to 1.0) */ + @JsonProperty("remainingPercentage") + private Double remainingPercentage; + + /** Date when the quota resets */ + @JsonProperty("resetDate") + private OffsetDateTime resetDate; + + public Boolean getIsUnlimitedEntitlement() { return isUnlimitedEntitlement; } + public void setIsUnlimitedEntitlement(Boolean isUnlimitedEntitlement) { this.isUnlimitedEntitlement = isUnlimitedEntitlement; } + + public Double getEntitlementRequests() { return entitlementRequests; } + public void setEntitlementRequests(Double entitlementRequests) { this.entitlementRequests = entitlementRequests; } + + public Double getUsedRequests() { return usedRequests; } + public void setUsedRequests(Double usedRequests) { this.usedRequests = usedRequests; } + + public Boolean getUsageAllowedWithExhaustedQuota() { return usageAllowedWithExhaustedQuota; } + public void setUsageAllowedWithExhaustedQuota(Boolean usageAllowedWithExhaustedQuota) { this.usageAllowedWithExhaustedQuota = usageAllowedWithExhaustedQuota; } + + public Double getOverage() { return overage; } + public void setOverage(Double overage) { this.overage = overage; } + + public Boolean getOverageAllowedWithExhaustedQuota() { return overageAllowedWithExhaustedQuota; } + public void setOverageAllowedWithExhaustedQuota(Boolean overageAllowedWithExhaustedQuota) { this.overageAllowedWithExhaustedQuota = overageAllowedWithExhaustedQuota; } + + public Double getRemainingPercentage() { return remainingPercentage; } + public void setRemainingPercentage(Double remainingPercentage) { this.remainingPercentage = remainingPercentage; } + + public OffsetDateTime getResetDate() { return resetDate; } + public void setResetDate(OffsetDateTime resetDate) { this.resetDate = resetDate; } + } + + /** Per-request cost and usage data from the CAPI copilot_usage response field */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantUsageEventDataCopilotUsage { + + /** Itemized token usage breakdown */ + @JsonProperty("tokenDetails") + private List tokenDetails; + + /** Total cost in nano-AIU (AI Units) for this request */ + @JsonProperty("totalNanoAiu") + private Double totalNanoAiu; + + public List getTokenDetails() { return tokenDetails; } + public void setTokenDetails(List tokenDetails) { this.tokenDetails = tokenDetails; } + + public Double getTotalNanoAiu() { return totalNanoAiu; } + public void setTotalNanoAiu(Double totalNanoAiu) { this.totalNanoAiu = totalNanoAiu; } + + + /** Token usage detail for a single billing category */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AssistantUsageEventDataCopilotUsageTokenDetailsItem { + + /** Number of tokens in this billing batch */ + @JsonProperty("batchSize") + private Double batchSize; + + /** Cost per batch of tokens */ + @JsonProperty("costPerBatch") + private Double costPerBatch; + + /** Total token count for this entry */ + @JsonProperty("tokenCount") + private Double tokenCount; + + /** Token category (e.g., "input", "output") */ + @JsonProperty("tokenType") + private String tokenType; + + public Double getBatchSize() { return batchSize; } + public void setBatchSize(Double batchSize) { this.batchSize = batchSize; } + + public Double getCostPerBatch() { return costPerBatch; } + public void setCostPerBatch(Double costPerBatch) { this.costPerBatch = costPerBatch; } + + public Double getTokenCount() { return tokenCount; } + public void setTokenCount(Double tokenCount) { this.tokenCount = tokenCount; } + + public String getTokenType() { return tokenType; } + public void setTokenType(String tokenType) { this.tokenType = tokenType; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/CapabilitiesChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/CapabilitiesChangedEvent.java new file mode 100644 index 000000000..d2adf9d9f --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/CapabilitiesChangedEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code capabilities.changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class CapabilitiesChangedEvent extends SessionEvent { + + @JsonProperty("data") + private CapabilitiesChangedEventData data; + + public CapabilitiesChangedEventData getData() { return data; } + public void setData(CapabilitiesChangedEventData data) { this.data = data; } + + /** Data payload for {@link CapabilitiesChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CapabilitiesChangedEventData { + + /** UI capability changes */ + @JsonProperty("ui") + private CapabilitiesChangedEventDataUi ui; + + public CapabilitiesChangedEventDataUi getUi() { return ui; } + public void setUi(CapabilitiesChangedEventDataUi ui) { this.ui = ui; } + + + /** UI capability changes */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CapabilitiesChangedEventDataUi { + + /** Whether elicitation is now supported */ + @JsonProperty("elicitation") + private Boolean elicitation; + + public Boolean getElicitation() { return elicitation; } + public void setElicitation(Boolean elicitation) { this.elicitation = elicitation; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/CommandCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/CommandCompletedEvent.java new file mode 100644 index 000000000..047531e9f --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/CommandCompletedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code command.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class CommandCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private CommandCompletedEventData data; + + public CommandCompletedEventData getData() { return data; } + public void setData(CommandCompletedEventData data) { this.data = data; } + + /** Data payload for {@link CommandCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CommandCompletedEventData { + + /** Request ID of the resolved command request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/CommandExecuteEvent.java b/src/generated/java/com/github/copilot/sdk/generated/CommandExecuteEvent.java new file mode 100644 index 000000000..327ea108d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/CommandExecuteEvent.java @@ -0,0 +1,59 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code command.execute} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class CommandExecuteEvent extends SessionEvent { + + @JsonProperty("data") + private CommandExecuteEventData data; + + public CommandExecuteEventData getData() { return data; } + public void setData(CommandExecuteEventData data) { this.data = data; } + + /** Data payload for {@link CommandExecuteEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CommandExecuteEventData { + + /** Unique identifier; used to respond via session.commands.handlePendingCommand() */ + @JsonProperty("requestId") + private String requestId; + + /** The full command text (e.g., /deploy production) */ + @JsonProperty("command") + private String command; + + /** Command name without leading / */ + @JsonProperty("commandName") + private String commandName; + + /** Raw argument string after the command name */ + @JsonProperty("args") + private String args; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getCommand() { return command; } + public void setCommand(String command) { this.command = command; } + + public String getCommandName() { return commandName; } + public void setCommandName(String commandName) { this.commandName = commandName; } + + public String getArgs() { return args; } + public void setArgs(String args) { this.args = args; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/CommandQueuedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/CommandQueuedEvent.java new file mode 100644 index 000000000..28fd6bc29 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/CommandQueuedEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code command.queued} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class CommandQueuedEvent extends SessionEvent { + + @JsonProperty("data") + private CommandQueuedEventData data; + + public CommandQueuedEventData getData() { return data; } + public void setData(CommandQueuedEventData data) { this.data = data; } + + /** Data payload for {@link CommandQueuedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CommandQueuedEventData { + + /** Unique identifier for this request; used to respond via session.respondToQueuedCommand() */ + @JsonProperty("requestId") + private String requestId; + + /** The slash command text to be executed (e.g., /help, /clear) */ + @JsonProperty("command") + private String command; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getCommand() { return command; } + public void setCommand(String command) { this.command = command; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/CommandsChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/CommandsChangedEvent.java new file mode 100644 index 000000000..e746471ad --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/CommandsChangedEvent.java @@ -0,0 +1,57 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code commands.changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class CommandsChangedEvent extends SessionEvent { + + @JsonProperty("data") + private CommandsChangedEventData data; + + public CommandsChangedEventData getData() { return data; } + public void setData(CommandsChangedEventData data) { this.data = data; } + + /** Data payload for {@link CommandsChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CommandsChangedEventData { + + /** Current list of registered SDK commands */ + @JsonProperty("commands") + private List commands; + + public List getCommands() { return commands; } + public void setCommands(List commands) { this.commands = commands; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class CommandsChangedEventDataCommandsItem { + + @JsonProperty("name") + private String name; + + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ElicitationCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ElicitationCompletedEvent.java new file mode 100644 index 000000000..38ea46ab7 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ElicitationCompletedEvent.java @@ -0,0 +1,69 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code elicitation.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ElicitationCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private ElicitationCompletedEventData data; + + public ElicitationCompletedEventData getData() { return data; } + public void setData(ElicitationCompletedEventData data) { this.data = data; } + + /** Data payload for {@link ElicitationCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ElicitationCompletedEventData { + + /** Request ID of the resolved elicitation request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + /** The user action: "accept" (submitted form), "decline" (explicitly refused), or "cancel" (dismissed) */ + @JsonProperty("action") + private ElicitationCompletedEventDataAction action; + + /** The submitted form data when action is 'accept'; keys match the requested schema fields */ + @JsonProperty("content") + private Map content; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public ElicitationCompletedEventDataAction getAction() { return action; } + public void setAction(ElicitationCompletedEventDataAction action) { this.action = action; } + + public Map getContent() { return content; } + public void setContent(Map content) { this.content = content; } + + + /** The user action: "accept" (submitted form), "decline" (explicitly refused), or "cancel" (dismissed) */ + public enum ElicitationCompletedEventDataAction { + /** The {@code accept} variant. */ + ACCEPT("accept"), + /** The {@code decline} variant. */ + DECLINE("decline"), + /** The {@code cancel} variant. */ + CANCEL("cancel"); + + private final String value; + ElicitationCompletedEventDataAction(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ElicitationRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ElicitationRequestedEvent.java new file mode 100644 index 000000000..2a1a7d829 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ElicitationRequestedEvent.java @@ -0,0 +1,123 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code elicitation.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ElicitationRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private ElicitationRequestedEventData data; + + public ElicitationRequestedEventData getData() { return data; } + public void setData(ElicitationRequestedEventData data) { this.data = data; } + + /** Data payload for {@link ElicitationRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ElicitationRequestedEventData { + + /** Unique identifier for this elicitation request; used to respond via session.respondToElicitation() */ + @JsonProperty("requestId") + private String requestId; + + /** Tool call ID from the LLM completion; used to correlate with CompletionChunk.toolCall.id for remote UIs */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** The source that initiated the request (MCP server name, or absent for agent-initiated) */ + @JsonProperty("elicitationSource") + private String elicitationSource; + + /** Message describing what information is needed from the user */ + @JsonProperty("message") + private String message; + + /** Elicitation mode; "form" for structured input, "url" for browser-based. Defaults to "form" when absent. */ + @JsonProperty("mode") + private ElicitationRequestedEventDataMode mode; + + /** JSON Schema describing the form fields to present to the user (form mode only) */ + @JsonProperty("requestedSchema") + private ElicitationRequestedEventDataRequestedSchema requestedSchema; + + /** URL to open in the user's browser (url mode only) */ + @JsonProperty("url") + private String url; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getElicitationSource() { return elicitationSource; } + public void setElicitationSource(String elicitationSource) { this.elicitationSource = elicitationSource; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public ElicitationRequestedEventDataMode getMode() { return mode; } + public void setMode(ElicitationRequestedEventDataMode mode) { this.mode = mode; } + + public ElicitationRequestedEventDataRequestedSchema getRequestedSchema() { return requestedSchema; } + public void setRequestedSchema(ElicitationRequestedEventDataRequestedSchema requestedSchema) { this.requestedSchema = requestedSchema; } + + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + + + /** Elicitation mode; "form" for structured input, "url" for browser-based. Defaults to "form" when absent. */ + public enum ElicitationRequestedEventDataMode { + /** The {@code form} variant. */ + FORM("form"), + /** The {@code url} variant. */ + URL("url"); + + private final String value; + ElicitationRequestedEventDataMode(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** JSON Schema describing the form fields to present to the user (form mode only) */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ElicitationRequestedEventDataRequestedSchema { + + /** Schema type indicator (always 'object') */ + @JsonProperty("type") + private String type; + + /** Form field definitions, keyed by field name */ + @JsonProperty("properties") + private Map properties; + + /** List of required field names */ + @JsonProperty("required") + private List required; + + public String getType() { return type; } + public void setType(String type) { this.type = type; } + + public Map getProperties() { return properties; } + public void setProperties(Map properties) { this.properties = properties; } + + public List getRequired() { return required; } + public void setRequired(List required) { this.required = required; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeCompletedEvent.java new file mode 100644 index 000000000..0bdd53c58 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeCompletedEvent.java @@ -0,0 +1,66 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code exit_plan_mode.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ExitPlanModeCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private ExitPlanModeCompletedEventData data; + + public ExitPlanModeCompletedEventData getData() { return data; } + public void setData(ExitPlanModeCompletedEventData data) { this.data = data; } + + /** Data payload for {@link ExitPlanModeCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ExitPlanModeCompletedEventData { + + /** Request ID of the resolved exit plan mode request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + /** Whether the plan was approved by the user */ + @JsonProperty("approved") + private Boolean approved; + + /** Which action the user selected (e.g. 'autopilot', 'interactive', 'exit_only') */ + @JsonProperty("selectedAction") + private String selectedAction; + + /** Whether edits should be auto-approved without confirmation */ + @JsonProperty("autoApproveEdits") + private Boolean autoApproveEdits; + + /** Free-form feedback from the user if they requested changes to the plan */ + @JsonProperty("feedback") + private String feedback; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public Boolean getApproved() { return approved; } + public void setApproved(Boolean approved) { this.approved = approved; } + + public String getSelectedAction() { return selectedAction; } + public void setSelectedAction(String selectedAction) { this.selectedAction = selectedAction; } + + public Boolean getAutoApproveEdits() { return autoApproveEdits; } + public void setAutoApproveEdits(Boolean autoApproveEdits) { this.autoApproveEdits = autoApproveEdits; } + + public String getFeedback() { return feedback; } + public void setFeedback(String feedback) { this.feedback = feedback; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeRequestedEvent.java new file mode 100644 index 000000000..a6def31f0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ExitPlanModeRequestedEvent.java @@ -0,0 +1,67 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code exit_plan_mode.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ExitPlanModeRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private ExitPlanModeRequestedEventData data; + + public ExitPlanModeRequestedEventData getData() { return data; } + public void setData(ExitPlanModeRequestedEventData data) { this.data = data; } + + /** Data payload for {@link ExitPlanModeRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ExitPlanModeRequestedEventData { + + /** Unique identifier for this request; used to respond via session.respondToExitPlanMode() */ + @JsonProperty("requestId") + private String requestId; + + /** Summary of the plan that was created */ + @JsonProperty("summary") + private String summary; + + /** Full content of the plan file */ + @JsonProperty("planContent") + private String planContent; + + /** Available actions the user can take (e.g., approve, edit, reject) */ + @JsonProperty("actions") + private List actions; + + /** The recommended action for the user to take */ + @JsonProperty("recommendedAction") + private String recommendedAction; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getSummary() { return summary; } + public void setSummary(String summary) { this.summary = summary; } + + public String getPlanContent() { return planContent; } + public void setPlanContent(String planContent) { this.planContent = planContent; } + + public List getActions() { return actions; } + public void setActions(List actions) { this.actions = actions; } + + public String getRecommendedAction() { return recommendedAction; } + public void setRecommendedAction(String recommendedAction) { this.recommendedAction = recommendedAction; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ExternalToolCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ExternalToolCompletedEvent.java new file mode 100644 index 000000000..d1585df71 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ExternalToolCompletedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code external_tool.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ExternalToolCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private ExternalToolCompletedEventData data; + + public ExternalToolCompletedEventData getData() { return data; } + public void setData(ExternalToolCompletedEventData data) { this.data = data; } + + /** Data payload for {@link ExternalToolCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ExternalToolCompletedEventData { + + /** Request ID of the resolved external tool request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ExternalToolRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ExternalToolRequestedEvent.java new file mode 100644 index 000000000..b9e9ec39b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ExternalToolRequestedEvent.java @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code external_tool.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ExternalToolRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private ExternalToolRequestedEventData data; + + public ExternalToolRequestedEventData getData() { return data; } + public void setData(ExternalToolRequestedEventData data) { this.data = data; } + + /** Data payload for {@link ExternalToolRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ExternalToolRequestedEventData { + + /** Unique identifier for this request; used to respond via session.respondToExternalTool() */ + @JsonProperty("requestId") + private String requestId; + + /** Session ID that this external tool request belongs to */ + @JsonProperty("sessionId") + private String sessionId; + + /** Tool call ID assigned to this external tool invocation */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Name of the external tool to invoke */ + @JsonProperty("toolName") + private String toolName; + + /** Arguments to pass to the external tool */ + @JsonProperty("arguments") + private Object arguments; + + /** W3C Trace Context traceparent header for the execute_tool span */ + @JsonProperty("traceparent") + private String traceparent; + + /** W3C Trace Context tracestate header for the execute_tool span */ + @JsonProperty("tracestate") + private String tracestate; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getToolName() { return toolName; } + public void setToolName(String toolName) { this.toolName = toolName; } + + public Object getArguments() { return arguments; } + public void setArguments(Object arguments) { this.arguments = arguments; } + + public String getTraceparent() { return traceparent; } + public void setTraceparent(String traceparent) { this.traceparent = traceparent; } + + public String getTracestate() { return tracestate; } + public void setTracestate(String tracestate) { this.tracestate = tracestate; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/HookEndEvent.java b/src/generated/java/com/github/copilot/sdk/generated/HookEndEvent.java new file mode 100644 index 000000000..82daf19a0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/HookEndEvent.java @@ -0,0 +1,87 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code hook.end} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class HookEndEvent extends SessionEvent { + + @JsonProperty("data") + private HookEndEventData data; + + public HookEndEventData getData() { return data; } + public void setData(HookEndEventData data) { this.data = data; } + + /** Data payload for {@link HookEndEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class HookEndEventData { + + /** Identifier matching the corresponding hook.start event */ + @JsonProperty("hookInvocationId") + private String hookInvocationId; + + /** Type of hook that was invoked (e.g., "preToolUse", "postToolUse", "sessionStart") */ + @JsonProperty("hookType") + private String hookType; + + /** Output data produced by the hook */ + @JsonProperty("output") + private Object output; + + /** Whether the hook completed successfully */ + @JsonProperty("success") + private Boolean success; + + /** Error details when the hook failed */ + @JsonProperty("error") + private HookEndEventDataError error; + + public String getHookInvocationId() { return hookInvocationId; } + public void setHookInvocationId(String hookInvocationId) { this.hookInvocationId = hookInvocationId; } + + public String getHookType() { return hookType; } + public void setHookType(String hookType) { this.hookType = hookType; } + + public Object getOutput() { return output; } + public void setOutput(Object output) { this.output = output; } + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } + + public HookEndEventDataError getError() { return error; } + public void setError(HookEndEventDataError error) { this.error = error; } + + + /** Error details when the hook failed */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class HookEndEventDataError { + + /** Human-readable error message */ + @JsonProperty("message") + private String message; + + /** Error stack trace, when available */ + @JsonProperty("stack") + private String stack; + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public String getStack() { return stack; } + public void setStack(String stack) { this.stack = stack; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/HookStartEvent.java b/src/generated/java/com/github/copilot/sdk/generated/HookStartEvent.java new file mode 100644 index 000000000..edb32c544 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/HookStartEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code hook.start} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class HookStartEvent extends SessionEvent { + + @JsonProperty("data") + private HookStartEventData data; + + public HookStartEventData getData() { return data; } + public void setData(HookStartEventData data) { this.data = data; } + + /** Data payload for {@link HookStartEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class HookStartEventData { + + /** Unique identifier for this hook invocation */ + @JsonProperty("hookInvocationId") + private String hookInvocationId; + + /** Type of hook being invoked (e.g., "preToolUse", "postToolUse", "sessionStart") */ + @JsonProperty("hookType") + private String hookType; + + /** Input data passed to the hook */ + @JsonProperty("input") + private Object input; + + public String getHookInvocationId() { return hookInvocationId; } + public void setHookInvocationId(String hookInvocationId) { this.hookInvocationId = hookInvocationId; } + + public String getHookType() { return hookType; } + public void setHookType(String hookType) { this.hookType = hookType; } + + public Object getInput() { return input; } + public void setInput(Object input) { this.input = input; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/McpOauthCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/McpOauthCompletedEvent.java new file mode 100644 index 000000000..832cc9803 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/McpOauthCompletedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code mcp.oauth_completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class McpOauthCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private McpOauthCompletedEventData data; + + public McpOauthCompletedEventData getData() { return data; } + public void setData(McpOauthCompletedEventData data) { this.data = data; } + + /** Data payload for {@link McpOauthCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class McpOauthCompletedEventData { + + /** Request ID of the resolved OAuth request */ + @JsonProperty("requestId") + private String requestId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/McpOauthRequiredEvent.java b/src/generated/java/com/github/copilot/sdk/generated/McpOauthRequiredEvent.java new file mode 100644 index 000000000..e9ed6df0c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/McpOauthRequiredEvent.java @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code mcp.oauth_required} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class McpOauthRequiredEvent extends SessionEvent { + + @JsonProperty("data") + private McpOauthRequiredEventData data; + + public McpOauthRequiredEventData getData() { return data; } + public void setData(McpOauthRequiredEventData data) { this.data = data; } + + /** Data payload for {@link McpOauthRequiredEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class McpOauthRequiredEventData { + + /** Unique identifier for this OAuth request; used to respond via session.respondToMcpOAuth() */ + @JsonProperty("requestId") + private String requestId; + + /** Display name of the MCP server that requires OAuth */ + @JsonProperty("serverName") + private String serverName; + + /** URL of the MCP server that requires OAuth */ + @JsonProperty("serverUrl") + private String serverUrl; + + /** Static OAuth client configuration, if the server specifies one */ + @JsonProperty("staticClientConfig") + private McpOauthRequiredEventDataStaticClientConfig staticClientConfig; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getServerName() { return serverName; } + public void setServerName(String serverName) { this.serverName = serverName; } + + public String getServerUrl() { return serverUrl; } + public void setServerUrl(String serverUrl) { this.serverUrl = serverUrl; } + + public McpOauthRequiredEventDataStaticClientConfig getStaticClientConfig() { return staticClientConfig; } + public void setStaticClientConfig(McpOauthRequiredEventDataStaticClientConfig staticClientConfig) { this.staticClientConfig = staticClientConfig; } + + + /** Static OAuth client configuration, if the server specifies one */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class McpOauthRequiredEventDataStaticClientConfig { + + /** OAuth client ID for the server */ + @JsonProperty("clientId") + private String clientId; + + /** Whether this is a public OAuth client */ + @JsonProperty("publicClient") + private Boolean publicClient; + + public String getClientId() { return clientId; } + public void setClientId(String clientId) { this.clientId = clientId; } + + public Boolean getPublicClient() { return publicClient; } + public void setPublicClient(Boolean publicClient) { this.publicClient = publicClient; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/PendingMessagesModifiedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/PendingMessagesModifiedEvent.java new file mode 100644 index 000000000..548adfaaf --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/PendingMessagesModifiedEvent.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code pending_messages.modified} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class PendingMessagesModifiedEvent extends SessionEvent { + +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/PermissionCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/PermissionCompletedEvent.java new file mode 100644 index 000000000..707197283 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/PermissionCompletedEvent.java @@ -0,0 +1,81 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code permission.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class PermissionCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private PermissionCompletedEventData data; + + public PermissionCompletedEventData getData() { return data; } + public void setData(PermissionCompletedEventData data) { this.data = data; } + + /** Data payload for {@link PermissionCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class PermissionCompletedEventData { + + /** Request ID of the resolved permission request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + /** The result of the permission request */ + @JsonProperty("result") + private PermissionCompletedEventDataResult result; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public PermissionCompletedEventDataResult getResult() { return result; } + public void setResult(PermissionCompletedEventDataResult result) { this.result = result; } + + + /** The result of the permission request */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class PermissionCompletedEventDataResult { + + /** The outcome of the permission request */ + @JsonProperty("kind") + private PermissionCompletedEventDataResultKind kind; + + public PermissionCompletedEventDataResultKind getKind() { return kind; } + public void setKind(PermissionCompletedEventDataResultKind kind) { this.kind = kind; } + + + /** The outcome of the permission request */ + public enum PermissionCompletedEventDataResultKind { + /** The {@code approved} variant. */ + APPROVED("approved"), + /** The {@code denied-by-rules} variant. */ + DENIED_BY_RULES("denied-by-rules"), + /** The {@code denied-no-approval-rule-and-could-not-request-from-user} variant. */ + DENIED_NO_APPROVAL_RULE_AND_COULD_NOT_REQUEST_FROM_USER("denied-no-approval-rule-and-could-not-request-from-user"), + /** The {@code denied-interactively-by-user} variant. */ + DENIED_INTERACTIVELY_BY_USER("denied-interactively-by-user"), + /** The {@code denied-by-content-exclusion-policy} variant. */ + DENIED_BY_CONTENT_EXCLUSION_POLICY("denied-by-content-exclusion-policy"), + /** The {@code denied-by-permission-request-hook} variant. */ + DENIED_BY_PERMISSION_REQUEST_HOOK("denied-by-permission-request-hook"); + + private final String value; + PermissionCompletedEventDataResultKind(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/PermissionRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/PermissionRequestedEvent.java new file mode 100644 index 000000000..14c3603f8 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/PermissionRequestedEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code permission.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class PermissionRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private PermissionRequestedEventData data; + + public PermissionRequestedEventData getData() { return data; } + public void setData(PermissionRequestedEventData data) { this.data = data; } + + /** Data payload for {@link PermissionRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class PermissionRequestedEventData { + + /** Unique identifier for this permission request; used to respond via session.respondToPermission() */ + @JsonProperty("requestId") + private String requestId; + + /** Details of the permission being requested */ + @JsonProperty("permissionRequest") + private Object permissionRequest; + + /** When true, this permission was already resolved by a permissionRequest hook and requires no client action */ + @JsonProperty("resolvedByHook") + private Boolean resolvedByHook; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public Object getPermissionRequest() { return permissionRequest; } + public void setPermissionRequest(Object permissionRequest) { this.permissionRequest = permissionRequest; } + + public Boolean getResolvedByHook() { return resolvedByHook; } + public void setResolvedByHook(Boolean resolvedByHook) { this.resolvedByHook = resolvedByHook; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SamplingCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SamplingCompletedEvent.java new file mode 100644 index 000000000..cd645b065 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SamplingCompletedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code sampling.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SamplingCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private SamplingCompletedEventData data; + + public SamplingCompletedEventData getData() { return data; } + public void setData(SamplingCompletedEventData data) { this.data = data; } + + /** Data payload for {@link SamplingCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SamplingCompletedEventData { + + /** Request ID of the resolved sampling request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SamplingRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SamplingRequestedEvent.java new file mode 100644 index 000000000..74a57ad66 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SamplingRequestedEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code sampling.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SamplingRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private SamplingRequestedEventData data; + + public SamplingRequestedEventData getData() { return data; } + public void setData(SamplingRequestedEventData data) { this.data = data; } + + /** Data payload for {@link SamplingRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SamplingRequestedEventData { + + /** Unique identifier for this sampling request; used to respond via session.respondToSampling() */ + @JsonProperty("requestId") + private String requestId; + + /** Name of the MCP server that initiated the sampling request */ + @JsonProperty("serverName") + private String serverName; + + /** The JSON-RPC request ID from the MCP protocol */ + @JsonProperty("mcpRequestId") + private Object mcpRequestId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getServerName() { return serverName; } + public void setServerName(String serverName) { this.serverName = serverName; } + + public Object getMcpRequestId() { return mcpRequestId; } + public void setMcpRequestId(Object mcpRequestId) { this.mcpRequestId = mcpRequestId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionBackgroundTasksChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionBackgroundTasksChangedEvent.java new file mode 100644 index 000000000..742299594 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionBackgroundTasksChangedEvent.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.background_tasks_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionBackgroundTasksChangedEvent extends SessionEvent { + +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionCompleteEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionCompleteEvent.java new file mode 100644 index 000000000..6daaf9a20 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionCompleteEvent.java @@ -0,0 +1,164 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.compaction_complete} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionCompactionCompleteEvent extends SessionEvent { + + @JsonProperty("data") + private SessionCompactionCompleteEventData data; + + public SessionCompactionCompleteEventData getData() { return data; } + public void setData(SessionCompactionCompleteEventData data) { this.data = data; } + + /** Data payload for {@link SessionCompactionCompleteEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionCompactionCompleteEventData { + + /** Whether compaction completed successfully */ + @JsonProperty("success") + private Boolean success; + + /** Error message if compaction failed */ + @JsonProperty("error") + private String error; + + /** Total tokens in conversation before compaction */ + @JsonProperty("preCompactionTokens") + private Double preCompactionTokens; + + /** Total tokens in conversation after compaction */ + @JsonProperty("postCompactionTokens") + private Double postCompactionTokens; + + /** Number of messages before compaction */ + @JsonProperty("preCompactionMessagesLength") + private Double preCompactionMessagesLength; + + /** Number of messages removed during compaction */ + @JsonProperty("messagesRemoved") + private Double messagesRemoved; + + /** Number of tokens removed during compaction */ + @JsonProperty("tokensRemoved") + private Double tokensRemoved; + + /** LLM-generated summary of the compacted conversation history */ + @JsonProperty("summaryContent") + private String summaryContent; + + /** Checkpoint snapshot number created for recovery */ + @JsonProperty("checkpointNumber") + private Double checkpointNumber; + + /** File path where the checkpoint was stored */ + @JsonProperty("checkpointPath") + private String checkpointPath; + + /** Token usage breakdown for the compaction LLM call */ + @JsonProperty("compactionTokensUsed") + private SessionCompactionCompleteEventDataCompactionTokensUsed compactionTokensUsed; + + /** GitHub request tracing ID (x-github-request-id header) for the compaction LLM call */ + @JsonProperty("requestId") + private String requestId; + + /** Token count from system message(s) after compaction */ + @JsonProperty("systemTokens") + private Double systemTokens; + + /** Token count from non-system messages (user, assistant, tool) after compaction */ + @JsonProperty("conversationTokens") + private Double conversationTokens; + + /** Token count from tool definitions after compaction */ + @JsonProperty("toolDefinitionsTokens") + private Double toolDefinitionsTokens; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } + + public Double getPreCompactionTokens() { return preCompactionTokens; } + public void setPreCompactionTokens(Double preCompactionTokens) { this.preCompactionTokens = preCompactionTokens; } + + public Double getPostCompactionTokens() { return postCompactionTokens; } + public void setPostCompactionTokens(Double postCompactionTokens) { this.postCompactionTokens = postCompactionTokens; } + + public Double getPreCompactionMessagesLength() { return preCompactionMessagesLength; } + public void setPreCompactionMessagesLength(Double preCompactionMessagesLength) { this.preCompactionMessagesLength = preCompactionMessagesLength; } + + public Double getMessagesRemoved() { return messagesRemoved; } + public void setMessagesRemoved(Double messagesRemoved) { this.messagesRemoved = messagesRemoved; } + + public Double getTokensRemoved() { return tokensRemoved; } + public void setTokensRemoved(Double tokensRemoved) { this.tokensRemoved = tokensRemoved; } + + public String getSummaryContent() { return summaryContent; } + public void setSummaryContent(String summaryContent) { this.summaryContent = summaryContent; } + + public Double getCheckpointNumber() { return checkpointNumber; } + public void setCheckpointNumber(Double checkpointNumber) { this.checkpointNumber = checkpointNumber; } + + public String getCheckpointPath() { return checkpointPath; } + public void setCheckpointPath(String checkpointPath) { this.checkpointPath = checkpointPath; } + + public SessionCompactionCompleteEventDataCompactionTokensUsed getCompactionTokensUsed() { return compactionTokensUsed; } + public void setCompactionTokensUsed(SessionCompactionCompleteEventDataCompactionTokensUsed compactionTokensUsed) { this.compactionTokensUsed = compactionTokensUsed; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public Double getSystemTokens() { return systemTokens; } + public void setSystemTokens(Double systemTokens) { this.systemTokens = systemTokens; } + + public Double getConversationTokens() { return conversationTokens; } + public void setConversationTokens(Double conversationTokens) { this.conversationTokens = conversationTokens; } + + public Double getToolDefinitionsTokens() { return toolDefinitionsTokens; } + public void setToolDefinitionsTokens(Double toolDefinitionsTokens) { this.toolDefinitionsTokens = toolDefinitionsTokens; } + + + /** Token usage breakdown for the compaction LLM call */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionCompactionCompleteEventDataCompactionTokensUsed { + + /** Input tokens consumed by the compaction LLM call */ + @JsonProperty("input") + private Double input; + + /** Output tokens produced by the compaction LLM call */ + @JsonProperty("output") + private Double output; + + /** Cached input tokens reused in the compaction LLM call */ + @JsonProperty("cachedInput") + private Double cachedInput; + + public Double getInput() { return input; } + public void setInput(Double input) { this.input = input; } + + public Double getOutput() { return output; } + public void setOutput(Double output) { this.output = output; } + + public Double getCachedInput() { return cachedInput; } + public void setCachedInput(Double cachedInput) { this.cachedInput = cachedInput; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionStartEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionStartEvent.java new file mode 100644 index 000000000..34498dd58 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionCompactionStartEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.compaction_start} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionCompactionStartEvent extends SessionEvent { + + @JsonProperty("data") + private SessionCompactionStartEventData data; + + public SessionCompactionStartEventData getData() { return data; } + public void setData(SessionCompactionStartEventData data) { this.data = data; } + + /** Data payload for {@link SessionCompactionStartEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionCompactionStartEventData { + + /** Token count from system message(s) at compaction start */ + @JsonProperty("systemTokens") + private Double systemTokens; + + /** Token count from non-system messages (user, assistant, tool) at compaction start */ + @JsonProperty("conversationTokens") + private Double conversationTokens; + + /** Token count from tool definitions at compaction start */ + @JsonProperty("toolDefinitionsTokens") + private Double toolDefinitionsTokens; + + public Double getSystemTokens() { return systemTokens; } + public void setSystemTokens(Double systemTokens) { this.systemTokens = systemTokens; } + + public Double getConversationTokens() { return conversationTokens; } + public void setConversationTokens(Double conversationTokens) { this.conversationTokens = conversationTokens; } + + public Double getToolDefinitionsTokens() { return toolDefinitionsTokens; } + public void setToolDefinitionsTokens(Double toolDefinitionsTokens) { this.toolDefinitionsTokens = toolDefinitionsTokens; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionContextChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionContextChangedEvent.java new file mode 100644 index 000000000..1982a11a5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionContextChangedEvent.java @@ -0,0 +1,94 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.context_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionContextChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionContextChangedEventData data; + + public SessionContextChangedEventData getData() { return data; } + public void setData(SessionContextChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionContextChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionContextChangedEventData { + + /** Current working directory path */ + @JsonProperty("cwd") + private String cwd; + + /** Root directory of the git repository, resolved via git rev-parse */ + @JsonProperty("gitRoot") + private String gitRoot; + + /** Repository identifier derived from the git remote URL ("owner/name" for GitHub, "org/project/repo" for Azure DevOps) */ + @JsonProperty("repository") + private String repository; + + /** Hosting platform type of the repository (github or ado) */ + @JsonProperty("hostType") + private SessionContextChangedEventDataHostType hostType; + + /** Current git branch name */ + @JsonProperty("branch") + private String branch; + + /** Head commit of current git branch at session start time */ + @JsonProperty("headCommit") + private String headCommit; + + /** Base commit of current git branch at session start time */ + @JsonProperty("baseCommit") + private String baseCommit; + + public String getCwd() { return cwd; } + public void setCwd(String cwd) { this.cwd = cwd; } + + public String getGitRoot() { return gitRoot; } + public void setGitRoot(String gitRoot) { this.gitRoot = gitRoot; } + + public String getRepository() { return repository; } + public void setRepository(String repository) { this.repository = repository; } + + public SessionContextChangedEventDataHostType getHostType() { return hostType; } + public void setHostType(SessionContextChangedEventDataHostType hostType) { this.hostType = hostType; } + + public String getBranch() { return branch; } + public void setBranch(String branch) { this.branch = branch; } + + public String getHeadCommit() { return headCommit; } + public void setHeadCommit(String headCommit) { this.headCommit = headCommit; } + + public String getBaseCommit() { return baseCommit; } + public void setBaseCommit(String baseCommit) { this.baseCommit = baseCommit; } + + + /** Hosting platform type of the repository (github or ado) */ + public enum SessionContextChangedEventDataHostType { + /** The {@code github} variant. */ + GITHUB("github"), + /** The {@code ado} variant. */ + ADO("ado"); + + private final String value; + SessionContextChangedEventDataHostType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionCustomAgentsUpdatedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionCustomAgentsUpdatedEvent.java new file mode 100644 index 000000000..470c0829a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionCustomAgentsUpdatedEvent.java @@ -0,0 +1,115 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code session.custom_agents_updated} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionCustomAgentsUpdatedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionCustomAgentsUpdatedEventData data; + + public SessionCustomAgentsUpdatedEventData getData() { return data; } + public void setData(SessionCustomAgentsUpdatedEventData data) { this.data = data; } + + /** Data payload for {@link SessionCustomAgentsUpdatedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionCustomAgentsUpdatedEventData { + + /** Array of loaded custom agent metadata */ + @JsonProperty("agents") + private List agents; + + /** Non-fatal warnings from agent loading */ + @JsonProperty("warnings") + private List warnings; + + /** Fatal errors from agent loading */ + @JsonProperty("errors") + private List errors; + + public List getAgents() { return agents; } + public void setAgents(List agents) { this.agents = agents; } + + public List getWarnings() { return warnings; } + public void setWarnings(List warnings) { this.warnings = warnings; } + + public List getErrors() { return errors; } + public void setErrors(List errors) { this.errors = errors; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionCustomAgentsUpdatedEventDataAgentsItem { + + /** Unique identifier for the agent */ + @JsonProperty("id") + private String id; + + /** Internal name of the agent */ + @JsonProperty("name") + private String name; + + /** Human-readable display name */ + @JsonProperty("displayName") + private String displayName; + + /** Description of what the agent does */ + @JsonProperty("description") + private String description; + + /** Source location: user, project, inherited, remote, or plugin */ + @JsonProperty("source") + private String source; + + /** List of tool names available to this agent */ + @JsonProperty("tools") + private List tools; + + /** Whether the agent can be selected by the user */ + @JsonProperty("userInvocable") + private Boolean userInvocable; + + /** Model override for this agent, if set */ + @JsonProperty("model") + private String model; + + public String getId() { return id; } + public void setId(String id) { this.id = id; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDisplayName() { return displayName; } + public void setDisplayName(String displayName) { this.displayName = displayName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public List getTools() { return tools; } + public void setTools(List tools) { this.tools = tools; } + + public Boolean getUserInvocable() { return userInvocable; } + public void setUserInvocable(Boolean userInvocable) { this.userInvocable = userInvocable; } + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionErrorEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionErrorEvent.java new file mode 100644 index 000000000..facc93926 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionErrorEvent.java @@ -0,0 +1,73 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.error} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionErrorEvent extends SessionEvent { + + @JsonProperty("data") + private SessionErrorEventData data; + + public SessionErrorEventData getData() { return data; } + public void setData(SessionErrorEventData data) { this.data = data; } + + /** Data payload for {@link SessionErrorEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionErrorEventData { + + /** Category of error (e.g., "authentication", "authorization", "quota", "rate_limit", "context_limit", "query") */ + @JsonProperty("errorType") + private String errorType; + + /** Human-readable error message */ + @JsonProperty("message") + private String message; + + /** Error stack trace, when available */ + @JsonProperty("stack") + private String stack; + + /** HTTP status code from the upstream request, if applicable */ + @JsonProperty("statusCode") + private Double statusCode; + + /** GitHub request tracing ID (x-github-request-id header) for correlating with server-side logs */ + @JsonProperty("providerCallId") + private String providerCallId; + + /** Optional URL associated with this error that the user can open in a browser */ + @JsonProperty("url") + private String url; + + public String getErrorType() { return errorType; } + public void setErrorType(String errorType) { this.errorType = errorType; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public String getStack() { return stack; } + public void setStack(String stack) { this.stack = stack; } + + public Double getStatusCode() { return statusCode; } + public void setStatusCode(Double statusCode) { this.statusCode = statusCode; } + + public String getProviderCallId() { return providerCallId; } + public void setProviderCallId(String providerCallId) { this.providerCallId = providerCallId; } + + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionEvent.java new file mode 100644 index 000000000..374152668 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionEvent.java @@ -0,0 +1,134 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import java.time.OffsetDateTime; +import java.util.UUID; +import javax.annotation.processing.Generated; + +/** Provides the base class from which all session events derive. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type", defaultImpl = UnknownSessionEvent.class) +@JsonSubTypes({ + @JsonSubTypes.Type(value = SessionStartEvent.class, name = "session.start"), + @JsonSubTypes.Type(value = SessionResumeEvent.class, name = "session.resume"), + @JsonSubTypes.Type(value = SessionRemoteSteerableChangedEvent.class, name = "session.remote_steerable_changed"), + @JsonSubTypes.Type(value = SessionErrorEvent.class, name = "session.error"), + @JsonSubTypes.Type(value = SessionIdleEvent.class, name = "session.idle"), + @JsonSubTypes.Type(value = SessionTitleChangedEvent.class, name = "session.title_changed"), + @JsonSubTypes.Type(value = SessionInfoEvent.class, name = "session.info"), + @JsonSubTypes.Type(value = SessionWarningEvent.class, name = "session.warning"), + @JsonSubTypes.Type(value = SessionModelChangeEvent.class, name = "session.model_change"), + @JsonSubTypes.Type(value = SessionModeChangedEvent.class, name = "session.mode_changed"), + @JsonSubTypes.Type(value = SessionPlanChangedEvent.class, name = "session.plan_changed"), + @JsonSubTypes.Type(value = SessionWorkspaceFileChangedEvent.class, name = "session.workspace_file_changed"), + @JsonSubTypes.Type(value = SessionHandoffEvent.class, name = "session.handoff"), + @JsonSubTypes.Type(value = SessionTruncationEvent.class, name = "session.truncation"), + @JsonSubTypes.Type(value = SessionSnapshotRewindEvent.class, name = "session.snapshot_rewind"), + @JsonSubTypes.Type(value = SessionShutdownEvent.class, name = "session.shutdown"), + @JsonSubTypes.Type(value = SessionContextChangedEvent.class, name = "session.context_changed"), + @JsonSubTypes.Type(value = SessionUsageInfoEvent.class, name = "session.usage_info"), + @JsonSubTypes.Type(value = SessionCompactionStartEvent.class, name = "session.compaction_start"), + @JsonSubTypes.Type(value = SessionCompactionCompleteEvent.class, name = "session.compaction_complete"), + @JsonSubTypes.Type(value = SessionTaskCompleteEvent.class, name = "session.task_complete"), + @JsonSubTypes.Type(value = UserMessageEvent.class, name = "user.message"), + @JsonSubTypes.Type(value = PendingMessagesModifiedEvent.class, name = "pending_messages.modified"), + @JsonSubTypes.Type(value = AssistantTurnStartEvent.class, name = "assistant.turn_start"), + @JsonSubTypes.Type(value = AssistantIntentEvent.class, name = "assistant.intent"), + @JsonSubTypes.Type(value = AssistantReasoningEvent.class, name = "assistant.reasoning"), + @JsonSubTypes.Type(value = AssistantReasoningDeltaEvent.class, name = "assistant.reasoning_delta"), + @JsonSubTypes.Type(value = AssistantStreamingDeltaEvent.class, name = "assistant.streaming_delta"), + @JsonSubTypes.Type(value = AssistantMessageEvent.class, name = "assistant.message"), + @JsonSubTypes.Type(value = AssistantMessageDeltaEvent.class, name = "assistant.message_delta"), + @JsonSubTypes.Type(value = AssistantTurnEndEvent.class, name = "assistant.turn_end"), + @JsonSubTypes.Type(value = AssistantUsageEvent.class, name = "assistant.usage"), + @JsonSubTypes.Type(value = AbortEvent.class, name = "abort"), + @JsonSubTypes.Type(value = ToolUserRequestedEvent.class, name = "tool.user_requested"), + @JsonSubTypes.Type(value = ToolExecutionStartEvent.class, name = "tool.execution_start"), + @JsonSubTypes.Type(value = ToolExecutionPartialResultEvent.class, name = "tool.execution_partial_result"), + @JsonSubTypes.Type(value = ToolExecutionProgressEvent.class, name = "tool.execution_progress"), + @JsonSubTypes.Type(value = ToolExecutionCompleteEvent.class, name = "tool.execution_complete"), + @JsonSubTypes.Type(value = SkillInvokedEvent.class, name = "skill.invoked"), + @JsonSubTypes.Type(value = SubagentStartedEvent.class, name = "subagent.started"), + @JsonSubTypes.Type(value = SubagentCompletedEvent.class, name = "subagent.completed"), + @JsonSubTypes.Type(value = SubagentFailedEvent.class, name = "subagent.failed"), + @JsonSubTypes.Type(value = SubagentSelectedEvent.class, name = "subagent.selected"), + @JsonSubTypes.Type(value = SubagentDeselectedEvent.class, name = "subagent.deselected"), + @JsonSubTypes.Type(value = HookStartEvent.class, name = "hook.start"), + @JsonSubTypes.Type(value = HookEndEvent.class, name = "hook.end"), + @JsonSubTypes.Type(value = SystemMessageEvent.class, name = "system.message"), + @JsonSubTypes.Type(value = SystemNotificationEvent.class, name = "system.notification"), + @JsonSubTypes.Type(value = PermissionRequestedEvent.class, name = "permission.requested"), + @JsonSubTypes.Type(value = PermissionCompletedEvent.class, name = "permission.completed"), + @JsonSubTypes.Type(value = UserInputRequestedEvent.class, name = "user_input.requested"), + @JsonSubTypes.Type(value = UserInputCompletedEvent.class, name = "user_input.completed"), + @JsonSubTypes.Type(value = ElicitationRequestedEvent.class, name = "elicitation.requested"), + @JsonSubTypes.Type(value = ElicitationCompletedEvent.class, name = "elicitation.completed"), + @JsonSubTypes.Type(value = SamplingRequestedEvent.class, name = "sampling.requested"), + @JsonSubTypes.Type(value = SamplingCompletedEvent.class, name = "sampling.completed"), + @JsonSubTypes.Type(value = McpOauthRequiredEvent.class, name = "mcp.oauth_required"), + @JsonSubTypes.Type(value = McpOauthCompletedEvent.class, name = "mcp.oauth_completed"), + @JsonSubTypes.Type(value = ExternalToolRequestedEvent.class, name = "external_tool.requested"), + @JsonSubTypes.Type(value = ExternalToolCompletedEvent.class, name = "external_tool.completed"), + @JsonSubTypes.Type(value = CommandQueuedEvent.class, name = "command.queued"), + @JsonSubTypes.Type(value = CommandExecuteEvent.class, name = "command.execute"), + @JsonSubTypes.Type(value = CommandCompletedEvent.class, name = "command.completed"), + @JsonSubTypes.Type(value = CommandsChangedEvent.class, name = "commands.changed"), + @JsonSubTypes.Type(value = CapabilitiesChangedEvent.class, name = "capabilities.changed"), + @JsonSubTypes.Type(value = ExitPlanModeRequestedEvent.class, name = "exit_plan_mode.requested"), + @JsonSubTypes.Type(value = ExitPlanModeCompletedEvent.class, name = "exit_plan_mode.completed"), + @JsonSubTypes.Type(value = SessionToolsUpdatedEvent.class, name = "session.tools_updated"), + @JsonSubTypes.Type(value = SessionBackgroundTasksChangedEvent.class, name = "session.background_tasks_changed"), + @JsonSubTypes.Type(value = SessionSkillsLoadedEvent.class, name = "session.skills_loaded"), + @JsonSubTypes.Type(value = SessionCustomAgentsUpdatedEvent.class, name = "session.custom_agents_updated"), + @JsonSubTypes.Type(value = SessionMcpServersLoadedEvent.class, name = "session.mcp_servers_loaded"), + @JsonSubTypes.Type(value = SessionMcpServerStatusChangedEvent.class, name = "session.mcp_server_status_changed"), + @JsonSubTypes.Type(value = SessionExtensionsLoadedEvent.class, name = "session.extensions_loaded") +}) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public class SessionEvent { + + /** Unique event identifier (UUID v4), generated when the event is emitted. */ + @JsonProperty("id") + private UUID id; + + /** ISO 8601 timestamp when the event was created. */ + @JsonProperty("timestamp") + private OffsetDateTime timestamp; + + /** The event type discriminator. */ + @JsonProperty("type") + private String type; + + /** ID of the chronologically preceding event in the session. Null for the first event. */ + @JsonProperty("parentId") + private UUID parentId; + + /** When true, the event is transient and not persisted to the session event log on disk. */ + @JsonProperty("ephemeral") + private Boolean ephemeral; + + public UUID getId() { return id; } + public void setId(UUID id) { this.id = id; } + + public OffsetDateTime getTimestamp() { return timestamp; } + public void setTimestamp(OffsetDateTime timestamp) { this.timestamp = timestamp; } + + public String getType() { return type; } + public void setType(String type) { this.type = type; } + + public UUID getParentId() { return parentId; } + public void setParentId(UUID parentId) { this.parentId = parentId; } + + public Boolean getEphemeral() { return ephemeral; } + public void setEphemeral(Boolean ephemeral) { this.ephemeral = ephemeral; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionExtensionsLoadedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionExtensionsLoadedEvent.java new file mode 100644 index 000000000..9395072fb --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionExtensionsLoadedEvent.java @@ -0,0 +1,104 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code session.extensions_loaded} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionExtensionsLoadedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionExtensionsLoadedEventData data; + + public SessionExtensionsLoadedEventData getData() { return data; } + public void setData(SessionExtensionsLoadedEventData data) { this.data = data; } + + /** Data payload for {@link SessionExtensionsLoadedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionExtensionsLoadedEventData { + + /** Array of discovered extensions and their status */ + @JsonProperty("extensions") + private List extensions; + + public List getExtensions() { return extensions; } + public void setExtensions(List extensions) { this.extensions = extensions; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionExtensionsLoadedEventDataExtensionsItem { + + /** Source-qualified extension ID (e.g., 'project:my-ext', 'user:auth-helper') */ + @JsonProperty("id") + private String id; + + /** Extension name (directory name) */ + @JsonProperty("name") + private String name; + + /** Discovery source */ + @JsonProperty("source") + private SessionExtensionsLoadedEventDataExtensionsItemSource source; + + /** Current status: running, disabled, failed, or starting */ + @JsonProperty("status") + private SessionExtensionsLoadedEventDataExtensionsItemStatus status; + + public String getId() { return id; } + public void setId(String id) { this.id = id; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SessionExtensionsLoadedEventDataExtensionsItemSource getSource() { return source; } + public void setSource(SessionExtensionsLoadedEventDataExtensionsItemSource source) { this.source = source; } + + public SessionExtensionsLoadedEventDataExtensionsItemStatus getStatus() { return status; } + public void setStatus(SessionExtensionsLoadedEventDataExtensionsItemStatus status) { this.status = status; } + + + /** Discovery source */ + public enum SessionExtensionsLoadedEventDataExtensionsItemSource { + /** The {@code project} variant. */ + PROJECT("project"), + /** The {@code user} variant. */ + USER("user"); + + private final String value; + SessionExtensionsLoadedEventDataExtensionsItemSource(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** Current status: running, disabled, failed, or starting */ + public enum SessionExtensionsLoadedEventDataExtensionsItemStatus { + /** The {@code running} variant. */ + RUNNING("running"), + /** The {@code disabled} variant. */ + DISABLED("disabled"), + /** The {@code failed} variant. */ + FAILED("failed"), + /** The {@code starting} variant. */ + STARTING("starting"); + + private final String value; + SessionExtensionsLoadedEventDataExtensionsItemStatus(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionHandoffEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionHandoffEvent.java new file mode 100644 index 000000000..a9d4b69e9 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionHandoffEvent.java @@ -0,0 +1,122 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.time.OffsetDateTime; +import javax.annotation.processing.Generated; + +/** The {@code session.handoff} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionHandoffEvent extends SessionEvent { + + @JsonProperty("data") + private SessionHandoffEventData data; + + public SessionHandoffEventData getData() { return data; } + public void setData(SessionHandoffEventData data) { this.data = data; } + + /** Data payload for {@link SessionHandoffEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionHandoffEventData { + + /** ISO 8601 timestamp when the handoff occurred */ + @JsonProperty("handoffTime") + private OffsetDateTime handoffTime; + + /** Origin type of the session being handed off */ + @JsonProperty("sourceType") + private SessionHandoffEventDataSourceType sourceType; + + /** Repository context for the handed-off session */ + @JsonProperty("repository") + private SessionHandoffEventDataRepository repository; + + /** Additional context information for the handoff */ + @JsonProperty("context") + private String context; + + /** Summary of the work done in the source session */ + @JsonProperty("summary") + private String summary; + + /** Session ID of the remote session being handed off */ + @JsonProperty("remoteSessionId") + private String remoteSessionId; + + /** GitHub host URL for the source session (e.g., https://github.com or https://tenant.ghe.com) */ + @JsonProperty("host") + private String host; + + public OffsetDateTime getHandoffTime() { return handoffTime; } + public void setHandoffTime(OffsetDateTime handoffTime) { this.handoffTime = handoffTime; } + + public SessionHandoffEventDataSourceType getSourceType() { return sourceType; } + public void setSourceType(SessionHandoffEventDataSourceType sourceType) { this.sourceType = sourceType; } + + public SessionHandoffEventDataRepository getRepository() { return repository; } + public void setRepository(SessionHandoffEventDataRepository repository) { this.repository = repository; } + + public String getContext() { return context; } + public void setContext(String context) { this.context = context; } + + public String getSummary() { return summary; } + public void setSummary(String summary) { this.summary = summary; } + + public String getRemoteSessionId() { return remoteSessionId; } + public void setRemoteSessionId(String remoteSessionId) { this.remoteSessionId = remoteSessionId; } + + public String getHost() { return host; } + public void setHost(String host) { this.host = host; } + + + /** Origin type of the session being handed off */ + public enum SessionHandoffEventDataSourceType { + /** The {@code remote} variant. */ + REMOTE("remote"), + /** The {@code local} variant. */ + LOCAL("local"); + + private final String value; + SessionHandoffEventDataSourceType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** Repository context for the handed-off session */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionHandoffEventDataRepository { + + /** Repository owner (user or organization) */ + @JsonProperty("owner") + private String owner; + + /** Repository name */ + @JsonProperty("name") + private String name; + + /** Git branch name, if applicable */ + @JsonProperty("branch") + private String branch; + + public String getOwner() { return owner; } + public void setOwner(String owner) { this.owner = owner; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getBranch() { return branch; } + public void setBranch(String branch) { this.branch = branch; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionIdleEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionIdleEvent.java new file mode 100644 index 000000000..097d5fc2d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionIdleEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.idle} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionIdleEvent extends SessionEvent { + + @JsonProperty("data") + private SessionIdleEventData data; + + public SessionIdleEventData getData() { return data; } + public void setData(SessionIdleEventData data) { this.data = data; } + + /** Data payload for {@link SessionIdleEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionIdleEventData { + + /** True when the preceding agentic loop was cancelled via abort signal */ + @JsonProperty("aborted") + private Boolean aborted; + + public Boolean getAborted() { return aborted; } + public void setAborted(Boolean aborted) { this.aborted = aborted; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionInfoEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionInfoEvent.java new file mode 100644 index 000000000..83348970b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionInfoEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.info} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionInfoEvent extends SessionEvent { + + @JsonProperty("data") + private SessionInfoEventData data; + + public SessionInfoEventData getData() { return data; } + public void setData(SessionInfoEventData data) { this.data = data; } + + /** Data payload for {@link SessionInfoEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionInfoEventData { + + /** Category of informational message (e.g., "notification", "timing", "context_window", "mcp", "snapshot", "configuration", "authentication", "model") */ + @JsonProperty("infoType") + private String infoType; + + /** Human-readable informational message for display in the timeline */ + @JsonProperty("message") + private String message; + + /** Optional URL associated with this message that the user can open in a browser */ + @JsonProperty("url") + private String url; + + public String getInfoType() { return infoType; } + public void setInfoType(String infoType) { this.infoType = infoType; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServerStatusChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServerStatusChangedEvent.java new file mode 100644 index 000000000..3a23125d2 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServerStatusChangedEvent.java @@ -0,0 +1,67 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.mcp_server_status_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionMcpServerStatusChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionMcpServerStatusChangedEventData data; + + public SessionMcpServerStatusChangedEventData getData() { return data; } + public void setData(SessionMcpServerStatusChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionMcpServerStatusChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionMcpServerStatusChangedEventData { + + /** Name of the MCP server whose status changed */ + @JsonProperty("serverName") + private String serverName; + + /** New connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + @JsonProperty("status") + private SessionMcpServerStatusChangedEventDataStatus status; + + public String getServerName() { return serverName; } + public void setServerName(String serverName) { this.serverName = serverName; } + + public SessionMcpServerStatusChangedEventDataStatus getStatus() { return status; } + public void setStatus(SessionMcpServerStatusChangedEventDataStatus status) { this.status = status; } + + + /** New connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + public enum SessionMcpServerStatusChangedEventDataStatus { + /** The {@code connected} variant. */ + CONNECTED("connected"), + /** The {@code failed} variant. */ + FAILED("failed"), + /** The {@code needs-auth} variant. */ + NEEDS_AUTH("needs-auth"), + /** The {@code pending} variant. */ + PENDING("pending"), + /** The {@code disabled} variant. */ + DISABLED("disabled"), + /** The {@code not_configured} variant. */ + NOT_CONFIGURED("not_configured"); + + private final String value; + SessionMcpServerStatusChangedEventDataStatus(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServersLoadedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServersLoadedEvent.java new file mode 100644 index 000000000..43202645d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionMcpServersLoadedEvent.java @@ -0,0 +1,95 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code session.mcp_servers_loaded} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionMcpServersLoadedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionMcpServersLoadedEventData data; + + public SessionMcpServersLoadedEventData getData() { return data; } + public void setData(SessionMcpServersLoadedEventData data) { this.data = data; } + + /** Data payload for {@link SessionMcpServersLoadedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionMcpServersLoadedEventData { + + /** Array of MCP server status summaries */ + @JsonProperty("servers") + private List servers; + + public List getServers() { return servers; } + public void setServers(List servers) { this.servers = servers; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionMcpServersLoadedEventDataServersItem { + + /** Server name (config key) */ + @JsonProperty("name") + private String name; + + /** Connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + @JsonProperty("status") + private SessionMcpServersLoadedEventDataServersItemStatus status; + + /** Configuration source: user, workspace, plugin, or builtin */ + @JsonProperty("source") + private String source; + + /** Error message if the server failed to connect */ + @JsonProperty("error") + private String error; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SessionMcpServersLoadedEventDataServersItemStatus getStatus() { return status; } + public void setStatus(SessionMcpServersLoadedEventDataServersItemStatus status) { this.status = status; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } + + + /** Connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + public enum SessionMcpServersLoadedEventDataServersItemStatus { + /** The {@code connected} variant. */ + CONNECTED("connected"), + /** The {@code failed} variant. */ + FAILED("failed"), + /** The {@code needs-auth} variant. */ + NEEDS_AUTH("needs-auth"), + /** The {@code pending} variant. */ + PENDING("pending"), + /** The {@code disabled} variant. */ + DISABLED("disabled"), + /** The {@code not_configured} variant. */ + NOT_CONFIGURED("not_configured"); + + private final String value; + SessionMcpServersLoadedEventDataServersItemStatus(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionModeChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionModeChangedEvent.java new file mode 100644 index 000000000..cb812c728 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionModeChangedEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.mode_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionModeChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionModeChangedEventData data; + + public SessionModeChangedEventData getData() { return data; } + public void setData(SessionModeChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionModeChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModeChangedEventData { + + /** Agent mode before the change (e.g., "interactive", "plan", "autopilot") */ + @JsonProperty("previousMode") + private String previousMode; + + /** Agent mode after the change (e.g., "interactive", "plan", "autopilot") */ + @JsonProperty("newMode") + private String newMode; + + public String getPreviousMode() { return previousMode; } + public void setPreviousMode(String previousMode) { this.previousMode = previousMode; } + + public String getNewMode() { return newMode; } + public void setNewMode(String newMode) { this.newMode = newMode; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionModelChangeEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionModelChangeEvent.java new file mode 100644 index 000000000..98a471c96 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionModelChangeEvent.java @@ -0,0 +1,59 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.model_change} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionModelChangeEvent extends SessionEvent { + + @JsonProperty("data") + private SessionModelChangeEventData data; + + public SessionModelChangeEventData getData() { return data; } + public void setData(SessionModelChangeEventData data) { this.data = data; } + + /** Data payload for {@link SessionModelChangeEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModelChangeEventData { + + /** Model that was previously selected, if any */ + @JsonProperty("previousModel") + private String previousModel; + + /** Newly selected model identifier */ + @JsonProperty("newModel") + private String newModel; + + /** Reasoning effort level before the model change, if applicable */ + @JsonProperty("previousReasoningEffort") + private String previousReasoningEffort; + + /** Reasoning effort level after the model change, if applicable */ + @JsonProperty("reasoningEffort") + private String reasoningEffort; + + public String getPreviousModel() { return previousModel; } + public void setPreviousModel(String previousModel) { this.previousModel = previousModel; } + + public String getNewModel() { return newModel; } + public void setNewModel(String newModel) { this.newModel = newModel; } + + public String getPreviousReasoningEffort() { return previousReasoningEffort; } + public void setPreviousReasoningEffort(String previousReasoningEffort) { this.previousReasoningEffort = previousReasoningEffort; } + + public String getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(String reasoningEffort) { this.reasoningEffort = reasoningEffort; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionPlanChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionPlanChangedEvent.java new file mode 100644 index 000000000..dc28f5ccd --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionPlanChangedEvent.java @@ -0,0 +1,54 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.plan_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionPlanChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionPlanChangedEventData data; + + public SessionPlanChangedEventData getData() { return data; } + public void setData(SessionPlanChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionPlanChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionPlanChangedEventData { + + /** The type of operation performed on the plan file */ + @JsonProperty("operation") + private SessionPlanChangedEventDataOperation operation; + + public SessionPlanChangedEventDataOperation getOperation() { return operation; } + public void setOperation(SessionPlanChangedEventDataOperation operation) { this.operation = operation; } + + + /** The type of operation performed on the plan file */ + public enum SessionPlanChangedEventDataOperation { + /** The {@code create} variant. */ + CREATE("create"), + /** The {@code update} variant. */ + UPDATE("update"), + /** The {@code delete} variant. */ + DELETE("delete"); + + private final String value; + SessionPlanChangedEventDataOperation(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionRemoteSteerableChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionRemoteSteerableChangedEvent.java new file mode 100644 index 000000000..e04284a05 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionRemoteSteerableChangedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.remote_steerable_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionRemoteSteerableChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionRemoteSteerableChangedEventData data; + + public SessionRemoteSteerableChangedEventData getData() { return data; } + public void setData(SessionRemoteSteerableChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionRemoteSteerableChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionRemoteSteerableChangedEventData { + + /** Whether this session now supports remote steering via Mission Control */ + @JsonProperty("remoteSteerable") + private Boolean remoteSteerable; + + public Boolean getRemoteSteerable() { return remoteSteerable; } + public void setRemoteSteerable(Boolean remoteSteerable) { this.remoteSteerable = remoteSteerable; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionResumeEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionResumeEvent.java new file mode 100644 index 000000000..a5c4a1801 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionResumeEvent.java @@ -0,0 +1,151 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.time.OffsetDateTime; +import javax.annotation.processing.Generated; + +/** The {@code session.resume} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionResumeEvent extends SessionEvent { + + @JsonProperty("data") + private SessionResumeEventData data; + + public SessionResumeEventData getData() { return data; } + public void setData(SessionResumeEventData data) { this.data = data; } + + /** Data payload for {@link SessionResumeEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionResumeEventData { + + /** ISO 8601 timestamp when the session was resumed */ + @JsonProperty("resumeTime") + private OffsetDateTime resumeTime; + + /** Total number of persisted events in the session at the time of resume */ + @JsonProperty("eventCount") + private Double eventCount; + + /** Model currently selected at resume time */ + @JsonProperty("selectedModel") + private String selectedModel; + + /** Reasoning effort level used for model calls, if applicable (e.g. "low", "medium", "high", "xhigh") */ + @JsonProperty("reasoningEffort") + private String reasoningEffort; + + /** Updated working directory and git context at resume time */ + @JsonProperty("context") + private SessionResumeEventDataContext context; + + /** Whether the session was already in use by another client at resume time */ + @JsonProperty("alreadyInUse") + private Boolean alreadyInUse; + + /** Whether this session supports remote steering via Mission Control */ + @JsonProperty("remoteSteerable") + private Boolean remoteSteerable; + + public OffsetDateTime getResumeTime() { return resumeTime; } + public void setResumeTime(OffsetDateTime resumeTime) { this.resumeTime = resumeTime; } + + public Double getEventCount() { return eventCount; } + public void setEventCount(Double eventCount) { this.eventCount = eventCount; } + + public String getSelectedModel() { return selectedModel; } + public void setSelectedModel(String selectedModel) { this.selectedModel = selectedModel; } + + public String getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(String reasoningEffort) { this.reasoningEffort = reasoningEffort; } + + public SessionResumeEventDataContext getContext() { return context; } + public void setContext(SessionResumeEventDataContext context) { this.context = context; } + + public Boolean getAlreadyInUse() { return alreadyInUse; } + public void setAlreadyInUse(Boolean alreadyInUse) { this.alreadyInUse = alreadyInUse; } + + public Boolean getRemoteSteerable() { return remoteSteerable; } + public void setRemoteSteerable(Boolean remoteSteerable) { this.remoteSteerable = remoteSteerable; } + + + /** Updated working directory and git context at resume time */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionResumeEventDataContext { + + /** Current working directory path */ + @JsonProperty("cwd") + private String cwd; + + /** Root directory of the git repository, resolved via git rev-parse */ + @JsonProperty("gitRoot") + private String gitRoot; + + /** Repository identifier derived from the git remote URL ("owner/name" for GitHub, "org/project/repo" for Azure DevOps) */ + @JsonProperty("repository") + private String repository; + + /** Hosting platform type of the repository (github or ado) */ + @JsonProperty("hostType") + private SessionResumeEventDataContextHostType hostType; + + /** Current git branch name */ + @JsonProperty("branch") + private String branch; + + /** Head commit of current git branch at session start time */ + @JsonProperty("headCommit") + private String headCommit; + + /** Base commit of current git branch at session start time */ + @JsonProperty("baseCommit") + private String baseCommit; + + public String getCwd() { return cwd; } + public void setCwd(String cwd) { this.cwd = cwd; } + + public String getGitRoot() { return gitRoot; } + public void setGitRoot(String gitRoot) { this.gitRoot = gitRoot; } + + public String getRepository() { return repository; } + public void setRepository(String repository) { this.repository = repository; } + + public SessionResumeEventDataContextHostType getHostType() { return hostType; } + public void setHostType(SessionResumeEventDataContextHostType hostType) { this.hostType = hostType; } + + public String getBranch() { return branch; } + public void setBranch(String branch) { this.branch = branch; } + + public String getHeadCommit() { return headCommit; } + public void setHeadCommit(String headCommit) { this.headCommit = headCommit; } + + public String getBaseCommit() { return baseCommit; } + public void setBaseCommit(String baseCommit) { this.baseCommit = baseCommit; } + + + /** Hosting platform type of the repository (github or ado) */ + public enum SessionResumeEventDataContextHostType { + /** The {@code github} variant. */ + GITHUB("github"), + /** The {@code ado} variant. */ + ADO("ado"); + + private final String value; + SessionResumeEventDataContextHostType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionShutdownEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionShutdownEvent.java new file mode 100644 index 000000000..2b0e64d88 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionShutdownEvent.java @@ -0,0 +1,239 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code session.shutdown} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionShutdownEvent extends SessionEvent { + + @JsonProperty("data") + private SessionShutdownEventData data; + + public SessionShutdownEventData getData() { return data; } + public void setData(SessionShutdownEventData data) { this.data = data; } + + /** Data payload for {@link SessionShutdownEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionShutdownEventData { + + /** Whether the session ended normally ("routine") or due to a crash/fatal error ("error") */ + @JsonProperty("shutdownType") + private SessionShutdownEventDataShutdownType shutdownType; + + /** Error description when shutdownType is "error" */ + @JsonProperty("errorReason") + private String errorReason; + + /** Total number of premium API requests used during the session */ + @JsonProperty("totalPremiumRequests") + private Double totalPremiumRequests; + + /** Cumulative time spent in API calls during the session, in milliseconds */ + @JsonProperty("totalApiDurationMs") + private Double totalApiDurationMs; + + /** Unix timestamp (milliseconds) when the session started */ + @JsonProperty("sessionStartTime") + private Double sessionStartTime; + + /** Aggregate code change metrics for the session */ + @JsonProperty("codeChanges") + private SessionShutdownEventDataCodeChanges codeChanges; + + /** Per-model usage breakdown, keyed by model identifier */ + @JsonProperty("modelMetrics") + private Map modelMetrics; + + /** Model that was selected at the time of shutdown */ + @JsonProperty("currentModel") + private String currentModel; + + /** Total tokens in context window at shutdown */ + @JsonProperty("currentTokens") + private Double currentTokens; + + /** System message token count at shutdown */ + @JsonProperty("systemTokens") + private Double systemTokens; + + /** Non-system message token count at shutdown */ + @JsonProperty("conversationTokens") + private Double conversationTokens; + + /** Tool definitions token count at shutdown */ + @JsonProperty("toolDefinitionsTokens") + private Double toolDefinitionsTokens; + + public SessionShutdownEventDataShutdownType getShutdownType() { return shutdownType; } + public void setShutdownType(SessionShutdownEventDataShutdownType shutdownType) { this.shutdownType = shutdownType; } + + public String getErrorReason() { return errorReason; } + public void setErrorReason(String errorReason) { this.errorReason = errorReason; } + + public Double getTotalPremiumRequests() { return totalPremiumRequests; } + public void setTotalPremiumRequests(Double totalPremiumRequests) { this.totalPremiumRequests = totalPremiumRequests; } + + public Double getTotalApiDurationMs() { return totalApiDurationMs; } + public void setTotalApiDurationMs(Double totalApiDurationMs) { this.totalApiDurationMs = totalApiDurationMs; } + + public Double getSessionStartTime() { return sessionStartTime; } + public void setSessionStartTime(Double sessionStartTime) { this.sessionStartTime = sessionStartTime; } + + public SessionShutdownEventDataCodeChanges getCodeChanges() { return codeChanges; } + public void setCodeChanges(SessionShutdownEventDataCodeChanges codeChanges) { this.codeChanges = codeChanges; } + + public Map getModelMetrics() { return modelMetrics; } + public void setModelMetrics(Map modelMetrics) { this.modelMetrics = modelMetrics; } + + public String getCurrentModel() { return currentModel; } + public void setCurrentModel(String currentModel) { this.currentModel = currentModel; } + + public Double getCurrentTokens() { return currentTokens; } + public void setCurrentTokens(Double currentTokens) { this.currentTokens = currentTokens; } + + public Double getSystemTokens() { return systemTokens; } + public void setSystemTokens(Double systemTokens) { this.systemTokens = systemTokens; } + + public Double getConversationTokens() { return conversationTokens; } + public void setConversationTokens(Double conversationTokens) { this.conversationTokens = conversationTokens; } + + public Double getToolDefinitionsTokens() { return toolDefinitionsTokens; } + public void setToolDefinitionsTokens(Double toolDefinitionsTokens) { this.toolDefinitionsTokens = toolDefinitionsTokens; } + + + /** Whether the session ended normally ("routine") or due to a crash/fatal error ("error") */ + public enum SessionShutdownEventDataShutdownType { + /** The {@code routine} variant. */ + ROUTINE("routine"), + /** The {@code error} variant. */ + ERROR("error"); + + private final String value; + SessionShutdownEventDataShutdownType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** Aggregate code change metrics for the session */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionShutdownEventDataCodeChanges { + + /** Total number of lines added during the session */ + @JsonProperty("linesAdded") + private Double linesAdded; + + /** Total number of lines removed during the session */ + @JsonProperty("linesRemoved") + private Double linesRemoved; + + /** List of file paths that were modified during the session */ + @JsonProperty("filesModified") + private List filesModified; + + public Double getLinesAdded() { return linesAdded; } + public void setLinesAdded(Double linesAdded) { this.linesAdded = linesAdded; } + + public Double getLinesRemoved() { return linesRemoved; } + public void setLinesRemoved(Double linesRemoved) { this.linesRemoved = linesRemoved; } + + public List getFilesModified() { return filesModified; } + public void setFilesModified(List filesModified) { this.filesModified = filesModified; } + } + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionShutdownEventDataModelMetricsValue { + + /** Request count and cost metrics */ + @JsonProperty("requests") + private SessionShutdownEventDataModelMetricsValueRequests requests; + + /** Token usage breakdown */ + @JsonProperty("usage") + private SessionShutdownEventDataModelMetricsValueUsage usage; + + public SessionShutdownEventDataModelMetricsValueRequests getRequests() { return requests; } + public void setRequests(SessionShutdownEventDataModelMetricsValueRequests requests) { this.requests = requests; } + + public SessionShutdownEventDataModelMetricsValueUsage getUsage() { return usage; } + public void setUsage(SessionShutdownEventDataModelMetricsValueUsage usage) { this.usage = usage; } + + + /** Request count and cost metrics */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionShutdownEventDataModelMetricsValueRequests { + + /** Total number of API requests made to this model */ + @JsonProperty("count") + private Double count; + + /** Cumulative cost multiplier for requests to this model */ + @JsonProperty("cost") + private Double cost; + + public Double getCount() { return count; } + public void setCount(Double count) { this.count = count; } + + public Double getCost() { return cost; } + public void setCost(Double cost) { this.cost = cost; } + } + + /** Token usage breakdown */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionShutdownEventDataModelMetricsValueUsage { + + /** Total input tokens consumed across all requests to this model */ + @JsonProperty("inputTokens") + private Double inputTokens; + + /** Total output tokens produced across all requests to this model */ + @JsonProperty("outputTokens") + private Double outputTokens; + + /** Total tokens read from prompt cache across all requests */ + @JsonProperty("cacheReadTokens") + private Double cacheReadTokens; + + /** Total tokens written to prompt cache across all requests */ + @JsonProperty("cacheWriteTokens") + private Double cacheWriteTokens; + + /** Total reasoning tokens produced across all requests to this model */ + @JsonProperty("reasoningTokens") + private Double reasoningTokens; + + public Double getInputTokens() { return inputTokens; } + public void setInputTokens(Double inputTokens) { this.inputTokens = inputTokens; } + + public Double getOutputTokens() { return outputTokens; } + public void setOutputTokens(Double outputTokens) { this.outputTokens = outputTokens; } + + public Double getCacheReadTokens() { return cacheReadTokens; } + public void setCacheReadTokens(Double cacheReadTokens) { this.cacheReadTokens = cacheReadTokens; } + + public Double getCacheWriteTokens() { return cacheWriteTokens; } + public void setCacheWriteTokens(Double cacheWriteTokens) { this.cacheWriteTokens = cacheWriteTokens; } + + public Double getReasoningTokens() { return reasoningTokens; } + public void setReasoningTokens(Double reasoningTokens) { this.reasoningTokens = reasoningTokens; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionSkillsLoadedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionSkillsLoadedEvent.java new file mode 100644 index 000000000..7de184e2c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionSkillsLoadedEvent.java @@ -0,0 +1,87 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code session.skills_loaded} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionSkillsLoadedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionSkillsLoadedEventData data; + + public SessionSkillsLoadedEventData getData() { return data; } + public void setData(SessionSkillsLoadedEventData data) { this.data = data; } + + /** Data payload for {@link SessionSkillsLoadedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionSkillsLoadedEventData { + + /** Array of resolved skill metadata */ + @JsonProperty("skills") + private List skills; + + public List getSkills() { return skills; } + public void setSkills(List skills) { this.skills = skills; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionSkillsLoadedEventDataSkillsItem { + + /** Unique identifier for the skill */ + @JsonProperty("name") + private String name; + + /** Description of what the skill does */ + @JsonProperty("description") + private String description; + + /** Source location type of the skill (e.g., project, personal, plugin) */ + @JsonProperty("source") + private String source; + + /** Whether the skill can be invoked by the user as a slash command */ + @JsonProperty("userInvocable") + private Boolean userInvocable; + + /** Whether the skill is currently enabled */ + @JsonProperty("enabled") + private Boolean enabled; + + /** Absolute path to the skill file, if available */ + @JsonProperty("path") + private String path; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public Boolean getUserInvocable() { return userInvocable; } + public void setUserInvocable(Boolean userInvocable) { this.userInvocable = userInvocable; } + + public Boolean getEnabled() { return enabled; } + public void setEnabled(Boolean enabled) { this.enabled = enabled; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionSnapshotRewindEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionSnapshotRewindEvent.java new file mode 100644 index 000000000..67ed656cf --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionSnapshotRewindEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.snapshot_rewind} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionSnapshotRewindEvent extends SessionEvent { + + @JsonProperty("data") + private SessionSnapshotRewindEventData data; + + public SessionSnapshotRewindEventData getData() { return data; } + public void setData(SessionSnapshotRewindEventData data) { this.data = data; } + + /** Data payload for {@link SessionSnapshotRewindEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionSnapshotRewindEventData { + + /** Event ID that was rewound to; this event and all after it were removed */ + @JsonProperty("upToEventId") + private String upToEventId; + + /** Number of events that were removed by the rewind */ + @JsonProperty("eventsRemoved") + private Double eventsRemoved; + + public String getUpToEventId() { return upToEventId; } + public void setUpToEventId(String upToEventId) { this.upToEventId = upToEventId; } + + public Double getEventsRemoved() { return eventsRemoved; } + public void setEventsRemoved(Double eventsRemoved) { this.eventsRemoved = eventsRemoved; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionStartEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionStartEvent.java new file mode 100644 index 000000000..fb7466c40 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionStartEvent.java @@ -0,0 +1,172 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.time.OffsetDateTime; +import javax.annotation.processing.Generated; + +/** The {@code session.start} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionStartEvent extends SessionEvent { + + @JsonProperty("data") + private SessionStartEventData data; + + public SessionStartEventData getData() { return data; } + public void setData(SessionStartEventData data) { this.data = data; } + + /** Data payload for {@link SessionStartEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionStartEventData { + + /** Unique identifier for the session */ + @JsonProperty("sessionId") + private String sessionId; + + /** Schema version number for the session event format */ + @JsonProperty("version") + private Double version; + + /** Identifier of the software producing the events (e.g., "copilot-agent") */ + @JsonProperty("producer") + private String producer; + + /** Version string of the Copilot application */ + @JsonProperty("copilotVersion") + private String copilotVersion; + + /** ISO 8601 timestamp when the session was created */ + @JsonProperty("startTime") + private OffsetDateTime startTime; + + /** Model selected at session creation time, if any */ + @JsonProperty("selectedModel") + private String selectedModel; + + /** Reasoning effort level used for model calls, if applicable (e.g. "low", "medium", "high", "xhigh") */ + @JsonProperty("reasoningEffort") + private String reasoningEffort; + + /** Working directory and git context at session start */ + @JsonProperty("context") + private SessionStartEventDataContext context; + + /** Whether the session was already in use by another client at start time */ + @JsonProperty("alreadyInUse") + private Boolean alreadyInUse; + + /** Whether this session supports remote steering via Mission Control */ + @JsonProperty("remoteSteerable") + private Boolean remoteSteerable; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public Double getVersion() { return version; } + public void setVersion(Double version) { this.version = version; } + + public String getProducer() { return producer; } + public void setProducer(String producer) { this.producer = producer; } + + public String getCopilotVersion() { return copilotVersion; } + public void setCopilotVersion(String copilotVersion) { this.copilotVersion = copilotVersion; } + + public OffsetDateTime getStartTime() { return startTime; } + public void setStartTime(OffsetDateTime startTime) { this.startTime = startTime; } + + public String getSelectedModel() { return selectedModel; } + public void setSelectedModel(String selectedModel) { this.selectedModel = selectedModel; } + + public String getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(String reasoningEffort) { this.reasoningEffort = reasoningEffort; } + + public SessionStartEventDataContext getContext() { return context; } + public void setContext(SessionStartEventDataContext context) { this.context = context; } + + public Boolean getAlreadyInUse() { return alreadyInUse; } + public void setAlreadyInUse(Boolean alreadyInUse) { this.alreadyInUse = alreadyInUse; } + + public Boolean getRemoteSteerable() { return remoteSteerable; } + public void setRemoteSteerable(Boolean remoteSteerable) { this.remoteSteerable = remoteSteerable; } + + + /** Working directory and git context at session start */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionStartEventDataContext { + + /** Current working directory path */ + @JsonProperty("cwd") + private String cwd; + + /** Root directory of the git repository, resolved via git rev-parse */ + @JsonProperty("gitRoot") + private String gitRoot; + + /** Repository identifier derived from the git remote URL ("owner/name" for GitHub, "org/project/repo" for Azure DevOps) */ + @JsonProperty("repository") + private String repository; + + /** Hosting platform type of the repository (github or ado) */ + @JsonProperty("hostType") + private SessionStartEventDataContextHostType hostType; + + /** Current git branch name */ + @JsonProperty("branch") + private String branch; + + /** Head commit of current git branch at session start time */ + @JsonProperty("headCommit") + private String headCommit; + + /** Base commit of current git branch at session start time */ + @JsonProperty("baseCommit") + private String baseCommit; + + public String getCwd() { return cwd; } + public void setCwd(String cwd) { this.cwd = cwd; } + + public String getGitRoot() { return gitRoot; } + public void setGitRoot(String gitRoot) { this.gitRoot = gitRoot; } + + public String getRepository() { return repository; } + public void setRepository(String repository) { this.repository = repository; } + + public SessionStartEventDataContextHostType getHostType() { return hostType; } + public void setHostType(SessionStartEventDataContextHostType hostType) { this.hostType = hostType; } + + public String getBranch() { return branch; } + public void setBranch(String branch) { this.branch = branch; } + + public String getHeadCommit() { return headCommit; } + public void setHeadCommit(String headCommit) { this.headCommit = headCommit; } + + public String getBaseCommit() { return baseCommit; } + public void setBaseCommit(String baseCommit) { this.baseCommit = baseCommit; } + + + /** Hosting platform type of the repository (github or ado) */ + public enum SessionStartEventDataContextHostType { + /** The {@code github} variant. */ + GITHUB("github"), + /** The {@code ado} variant. */ + ADO("ado"); + + private final String value; + SessionStartEventDataContextHostType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionTaskCompleteEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionTaskCompleteEvent.java new file mode 100644 index 000000000..22aab3d9d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionTaskCompleteEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.task_complete} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionTaskCompleteEvent extends SessionEvent { + + @JsonProperty("data") + private SessionTaskCompleteEventData data; + + public SessionTaskCompleteEventData getData() { return data; } + public void setData(SessionTaskCompleteEventData data) { this.data = data; } + + /** Data payload for {@link SessionTaskCompleteEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionTaskCompleteEventData { + + /** Summary of the completed task, provided by the agent */ + @JsonProperty("summary") + private String summary; + + /** Whether the tool call succeeded. False when validation failed (e.g., invalid arguments) */ + @JsonProperty("success") + private Boolean success; + + public String getSummary() { return summary; } + public void setSummary(String summary) { this.summary = summary; } + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionTitleChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionTitleChangedEvent.java new file mode 100644 index 000000000..70a71f26c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionTitleChangedEvent.java @@ -0,0 +1,38 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.title_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionTitleChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionTitleChangedEventData data; + + public SessionTitleChangedEventData getData() { return data; } + public void setData(SessionTitleChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionTitleChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionTitleChangedEventData { + + /** The new display title for the session */ + @JsonProperty("title") + private String title; + + public String getTitle() { return title; } + public void setTitle(String title) { this.title = title; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionToolsUpdatedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionToolsUpdatedEvent.java new file mode 100644 index 000000000..7bd850cc6 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionToolsUpdatedEvent.java @@ -0,0 +1,37 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.tools_updated} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionToolsUpdatedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionToolsUpdatedEventData data; + + public SessionToolsUpdatedEventData getData() { return data; } + public void setData(SessionToolsUpdatedEventData data) { this.data = data; } + + /** Data payload for {@link SessionToolsUpdatedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionToolsUpdatedEventData { + + @JsonProperty("model") + private String model; + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionTruncationEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionTruncationEvent.java new file mode 100644 index 000000000..151bf1539 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionTruncationEvent.java @@ -0,0 +1,87 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.truncation} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionTruncationEvent extends SessionEvent { + + @JsonProperty("data") + private SessionTruncationEventData data; + + public SessionTruncationEventData getData() { return data; } + public void setData(SessionTruncationEventData data) { this.data = data; } + + /** Data payload for {@link SessionTruncationEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionTruncationEventData { + + /** Maximum token count for the model's context window */ + @JsonProperty("tokenLimit") + private Double tokenLimit; + + /** Total tokens in conversation messages before truncation */ + @JsonProperty("preTruncationTokensInMessages") + private Double preTruncationTokensInMessages; + + /** Number of conversation messages before truncation */ + @JsonProperty("preTruncationMessagesLength") + private Double preTruncationMessagesLength; + + /** Total tokens in conversation messages after truncation */ + @JsonProperty("postTruncationTokensInMessages") + private Double postTruncationTokensInMessages; + + /** Number of conversation messages after truncation */ + @JsonProperty("postTruncationMessagesLength") + private Double postTruncationMessagesLength; + + /** Number of tokens removed by truncation */ + @JsonProperty("tokensRemovedDuringTruncation") + private Double tokensRemovedDuringTruncation; + + /** Number of messages removed by truncation */ + @JsonProperty("messagesRemovedDuringTruncation") + private Double messagesRemovedDuringTruncation; + + /** Identifier of the component that performed truncation (e.g., "BasicTruncator") */ + @JsonProperty("performedBy") + private String performedBy; + + public Double getTokenLimit() { return tokenLimit; } + public void setTokenLimit(Double tokenLimit) { this.tokenLimit = tokenLimit; } + + public Double getPreTruncationTokensInMessages() { return preTruncationTokensInMessages; } + public void setPreTruncationTokensInMessages(Double preTruncationTokensInMessages) { this.preTruncationTokensInMessages = preTruncationTokensInMessages; } + + public Double getPreTruncationMessagesLength() { return preTruncationMessagesLength; } + public void setPreTruncationMessagesLength(Double preTruncationMessagesLength) { this.preTruncationMessagesLength = preTruncationMessagesLength; } + + public Double getPostTruncationTokensInMessages() { return postTruncationTokensInMessages; } + public void setPostTruncationTokensInMessages(Double postTruncationTokensInMessages) { this.postTruncationTokensInMessages = postTruncationTokensInMessages; } + + public Double getPostTruncationMessagesLength() { return postTruncationMessagesLength; } + public void setPostTruncationMessagesLength(Double postTruncationMessagesLength) { this.postTruncationMessagesLength = postTruncationMessagesLength; } + + public Double getTokensRemovedDuringTruncation() { return tokensRemovedDuringTruncation; } + public void setTokensRemovedDuringTruncation(Double tokensRemovedDuringTruncation) { this.tokensRemovedDuringTruncation = tokensRemovedDuringTruncation; } + + public Double getMessagesRemovedDuringTruncation() { return messagesRemovedDuringTruncation; } + public void setMessagesRemovedDuringTruncation(Double messagesRemovedDuringTruncation) { this.messagesRemovedDuringTruncation = messagesRemovedDuringTruncation; } + + public String getPerformedBy() { return performedBy; } + public void setPerformedBy(String performedBy) { this.performedBy = performedBy; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionUsageInfoEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionUsageInfoEvent.java new file mode 100644 index 000000000..d6039e800 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionUsageInfoEvent.java @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.usage_info} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionUsageInfoEvent extends SessionEvent { + + @JsonProperty("data") + private SessionUsageInfoEventData data; + + public SessionUsageInfoEventData getData() { return data; } + public void setData(SessionUsageInfoEventData data) { this.data = data; } + + /** Data payload for {@link SessionUsageInfoEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUsageInfoEventData { + + /** Maximum token count for the model's context window */ + @JsonProperty("tokenLimit") + private Double tokenLimit; + + /** Current number of tokens in the context window */ + @JsonProperty("currentTokens") + private Double currentTokens; + + /** Current number of messages in the conversation */ + @JsonProperty("messagesLength") + private Double messagesLength; + + /** Token count from system message(s) */ + @JsonProperty("systemTokens") + private Double systemTokens; + + /** Token count from non-system messages (user, assistant, tool) */ + @JsonProperty("conversationTokens") + private Double conversationTokens; + + /** Token count from tool definitions */ + @JsonProperty("toolDefinitionsTokens") + private Double toolDefinitionsTokens; + + /** Whether this is the first usage_info event emitted in this session */ + @JsonProperty("isInitial") + private Boolean isInitial; + + public Double getTokenLimit() { return tokenLimit; } + public void setTokenLimit(Double tokenLimit) { this.tokenLimit = tokenLimit; } + + public Double getCurrentTokens() { return currentTokens; } + public void setCurrentTokens(Double currentTokens) { this.currentTokens = currentTokens; } + + public Double getMessagesLength() { return messagesLength; } + public void setMessagesLength(Double messagesLength) { this.messagesLength = messagesLength; } + + public Double getSystemTokens() { return systemTokens; } + public void setSystemTokens(Double systemTokens) { this.systemTokens = systemTokens; } + + public Double getConversationTokens() { return conversationTokens; } + public void setConversationTokens(Double conversationTokens) { this.conversationTokens = conversationTokens; } + + public Double getToolDefinitionsTokens() { return toolDefinitionsTokens; } + public void setToolDefinitionsTokens(Double toolDefinitionsTokens) { this.toolDefinitionsTokens = toolDefinitionsTokens; } + + public Boolean getIsInitial() { return isInitial; } + public void setIsInitial(Boolean isInitial) { this.isInitial = isInitial; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionWarningEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionWarningEvent.java new file mode 100644 index 000000000..b8b1c063c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionWarningEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.warning} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionWarningEvent extends SessionEvent { + + @JsonProperty("data") + private SessionWarningEventData data; + + public SessionWarningEventData getData() { return data; } + public void setData(SessionWarningEventData data) { this.data = data; } + + /** Data payload for {@link SessionWarningEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionWarningEventData { + + /** Category of warning (e.g., "subscription", "policy", "mcp") */ + @JsonProperty("warningType") + private String warningType; + + /** Human-readable warning message for display in the timeline */ + @JsonProperty("message") + private String message; + + /** Optional URL associated with this warning that the user can open in a browser */ + @JsonProperty("url") + private String url; + + public String getWarningType() { return warningType; } + public void setWarningType(String warningType) { this.warningType = warningType; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SessionWorkspaceFileChangedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SessionWorkspaceFileChangedEvent.java new file mode 100644 index 000000000..0af6b9243 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SessionWorkspaceFileChangedEvent.java @@ -0,0 +1,59 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code session.workspace_file_changed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SessionWorkspaceFileChangedEvent extends SessionEvent { + + @JsonProperty("data") + private SessionWorkspaceFileChangedEventData data; + + public SessionWorkspaceFileChangedEventData getData() { return data; } + public void setData(SessionWorkspaceFileChangedEventData data) { this.data = data; } + + /** Data payload for {@link SessionWorkspaceFileChangedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionWorkspaceFileChangedEventData { + + /** Relative path within the session workspace files directory */ + @JsonProperty("path") + private String path; + + /** Whether the file was newly created or updated */ + @JsonProperty("operation") + private SessionWorkspaceFileChangedEventDataOperation operation; + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public SessionWorkspaceFileChangedEventDataOperation getOperation() { return operation; } + public void setOperation(SessionWorkspaceFileChangedEventDataOperation operation) { this.operation = operation; } + + + /** Whether the file was newly created or updated */ + public enum SessionWorkspaceFileChangedEventDataOperation { + /** The {@code create} variant. */ + CREATE("create"), + /** The {@code update} variant. */ + UPDATE("update"); + + private final String value; + SessionWorkspaceFileChangedEventDataOperation(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SkillInvokedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SkillInvokedEvent.java new file mode 100644 index 000000000..75b27d2d0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SkillInvokedEvent.java @@ -0,0 +1,81 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code skill.invoked} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SkillInvokedEvent extends SessionEvent { + + @JsonProperty("data") + private SkillInvokedEventData data; + + public SkillInvokedEventData getData() { return data; } + public void setData(SkillInvokedEventData data) { this.data = data; } + + /** Data payload for {@link SkillInvokedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SkillInvokedEventData { + + /** Name of the invoked skill */ + @JsonProperty("name") + private String name; + + /** File path to the SKILL.md definition */ + @JsonProperty("path") + private String path; + + /** Full content of the skill file, injected into the conversation for the model */ + @JsonProperty("content") + private String content; + + /** Tool names that should be auto-approved when this skill is active */ + @JsonProperty("allowedTools") + private List allowedTools; + + /** Name of the plugin this skill originated from, when applicable */ + @JsonProperty("pluginName") + private String pluginName; + + /** Version of the plugin this skill originated from, when applicable */ + @JsonProperty("pluginVersion") + private String pluginVersion; + + /** Description of the skill from its SKILL.md frontmatter */ + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public List getAllowedTools() { return allowedTools; } + public void setAllowedTools(List allowedTools) { this.allowedTools = allowedTools; } + + public String getPluginName() { return pluginName; } + public void setPluginName(String pluginName) { this.pluginName = pluginName; } + + public String getPluginVersion() { return pluginVersion; } + public void setPluginVersion(String pluginVersion) { this.pluginVersion = pluginVersion; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SubagentCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SubagentCompletedEvent.java new file mode 100644 index 000000000..244ba4eb5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SubagentCompletedEvent.java @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code subagent.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SubagentCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private SubagentCompletedEventData data; + + public SubagentCompletedEventData getData() { return data; } + public void setData(SubagentCompletedEventData data) { this.data = data; } + + /** Data payload for {@link SubagentCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SubagentCompletedEventData { + + /** Tool call ID of the parent tool invocation that spawned this sub-agent */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Internal name of the sub-agent */ + @JsonProperty("agentName") + private String agentName; + + /** Human-readable display name of the sub-agent */ + @JsonProperty("agentDisplayName") + private String agentDisplayName; + + /** Model used by the sub-agent */ + @JsonProperty("model") + private String model; + + /** Total number of tool calls made by the sub-agent */ + @JsonProperty("totalToolCalls") + private Double totalToolCalls; + + /** Total tokens (input + output) consumed by the sub-agent */ + @JsonProperty("totalTokens") + private Double totalTokens; + + /** Wall-clock duration of the sub-agent execution in milliseconds */ + @JsonProperty("durationMs") + private Double durationMs; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getAgentName() { return agentName; } + public void setAgentName(String agentName) { this.agentName = agentName; } + + public String getAgentDisplayName() { return agentDisplayName; } + public void setAgentDisplayName(String agentDisplayName) { this.agentDisplayName = agentDisplayName; } + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + + public Double getTotalToolCalls() { return totalToolCalls; } + public void setTotalToolCalls(Double totalToolCalls) { this.totalToolCalls = totalToolCalls; } + + public Double getTotalTokens() { return totalTokens; } + public void setTotalTokens(Double totalTokens) { this.totalTokens = totalTokens; } + + public Double getDurationMs() { return durationMs; } + public void setDurationMs(Double durationMs) { this.durationMs = durationMs; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SubagentDeselectedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SubagentDeselectedEvent.java new file mode 100644 index 000000000..a9ed4d7db --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SubagentDeselectedEvent.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code subagent.deselected} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SubagentDeselectedEvent extends SessionEvent { + +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SubagentFailedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SubagentFailedEvent.java new file mode 100644 index 000000000..8b1c356bf --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SubagentFailedEvent.java @@ -0,0 +1,87 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code subagent.failed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SubagentFailedEvent extends SessionEvent { + + @JsonProperty("data") + private SubagentFailedEventData data; + + public SubagentFailedEventData getData() { return data; } + public void setData(SubagentFailedEventData data) { this.data = data; } + + /** Data payload for {@link SubagentFailedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SubagentFailedEventData { + + /** Tool call ID of the parent tool invocation that spawned this sub-agent */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Internal name of the sub-agent */ + @JsonProperty("agentName") + private String agentName; + + /** Human-readable display name of the sub-agent */ + @JsonProperty("agentDisplayName") + private String agentDisplayName; + + /** Error message describing why the sub-agent failed */ + @JsonProperty("error") + private String error; + + /** Model used by the sub-agent (if any model calls succeeded before failure) */ + @JsonProperty("model") + private String model; + + /** Total number of tool calls made before the sub-agent failed */ + @JsonProperty("totalToolCalls") + private Double totalToolCalls; + + /** Total tokens (input + output) consumed before the sub-agent failed */ + @JsonProperty("totalTokens") + private Double totalTokens; + + /** Wall-clock duration of the sub-agent execution in milliseconds */ + @JsonProperty("durationMs") + private Double durationMs; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getAgentName() { return agentName; } + public void setAgentName(String agentName) { this.agentName = agentName; } + + public String getAgentDisplayName() { return agentDisplayName; } + public void setAgentDisplayName(String agentDisplayName) { this.agentDisplayName = agentDisplayName; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + + public Double getTotalToolCalls() { return totalToolCalls; } + public void setTotalToolCalls(Double totalToolCalls) { this.totalToolCalls = totalToolCalls; } + + public Double getTotalTokens() { return totalTokens; } + public void setTotalTokens(Double totalTokens) { this.totalTokens = totalTokens; } + + public Double getDurationMs() { return durationMs; } + public void setDurationMs(Double durationMs) { this.durationMs = durationMs; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SubagentSelectedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SubagentSelectedEvent.java new file mode 100644 index 000000000..0fe98190a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SubagentSelectedEvent.java @@ -0,0 +1,53 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code subagent.selected} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SubagentSelectedEvent extends SessionEvent { + + @JsonProperty("data") + private SubagentSelectedEventData data; + + public SubagentSelectedEventData getData() { return data; } + public void setData(SubagentSelectedEventData data) { this.data = data; } + + /** Data payload for {@link SubagentSelectedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SubagentSelectedEventData { + + /** Internal name of the selected custom agent */ + @JsonProperty("agentName") + private String agentName; + + /** Human-readable display name of the selected custom agent */ + @JsonProperty("agentDisplayName") + private String agentDisplayName; + + /** List of tool names available to this agent, or null for all tools */ + @JsonProperty("tools") + private List tools; + + public String getAgentName() { return agentName; } + public void setAgentName(String agentName) { this.agentName = agentName; } + + public String getAgentDisplayName() { return agentDisplayName; } + public void setAgentDisplayName(String agentDisplayName) { this.agentDisplayName = agentDisplayName; } + + public List getTools() { return tools; } + public void setTools(List tools) { this.tools = tools; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SubagentStartedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SubagentStartedEvent.java new file mode 100644 index 000000000..a3b3dadb8 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SubagentStartedEvent.java @@ -0,0 +1,59 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code subagent.started} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SubagentStartedEvent extends SessionEvent { + + @JsonProperty("data") + private SubagentStartedEventData data; + + public SubagentStartedEventData getData() { return data; } + public void setData(SubagentStartedEventData data) { this.data = data; } + + /** Data payload for {@link SubagentStartedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SubagentStartedEventData { + + /** Tool call ID of the parent tool invocation that spawned this sub-agent */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Internal name of the sub-agent */ + @JsonProperty("agentName") + private String agentName; + + /** Human-readable display name of the sub-agent */ + @JsonProperty("agentDisplayName") + private String agentDisplayName; + + /** Description of what the sub-agent does */ + @JsonProperty("agentDescription") + private String agentDescription; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getAgentName() { return agentName; } + public void setAgentName(String agentName) { this.agentName = agentName; } + + public String getAgentDisplayName() { return agentDisplayName; } + public void setAgentDisplayName(String agentDisplayName) { this.agentDisplayName = agentDisplayName; } + + public String getAgentDescription() { return agentDescription; } + public void setAgentDescription(String agentDescription) { this.agentDescription = agentDescription; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SystemMessageEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SystemMessageEvent.java new file mode 100644 index 000000000..a3e2dfcc2 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SystemMessageEvent.java @@ -0,0 +1,94 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code system.message} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SystemMessageEvent extends SessionEvent { + + @JsonProperty("data") + private SystemMessageEventData data; + + public SystemMessageEventData getData() { return data; } + public void setData(SystemMessageEventData data) { this.data = data; } + + /** Data payload for {@link SystemMessageEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SystemMessageEventData { + + /** The system or developer prompt text */ + @JsonProperty("content") + private String content; + + /** Message role: "system" for system prompts, "developer" for developer-injected instructions */ + @JsonProperty("role") + private SystemMessageEventDataRole role; + + /** Optional name identifier for the message source */ + @JsonProperty("name") + private String name; + + /** Metadata about the prompt template and its construction */ + @JsonProperty("metadata") + private SystemMessageEventDataMetadata metadata; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public SystemMessageEventDataRole getRole() { return role; } + public void setRole(SystemMessageEventDataRole role) { this.role = role; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SystemMessageEventDataMetadata getMetadata() { return metadata; } + public void setMetadata(SystemMessageEventDataMetadata metadata) { this.metadata = metadata; } + + + /** Message role: "system" for system prompts, "developer" for developer-injected instructions */ + public enum SystemMessageEventDataRole { + /** The {@code system} variant. */ + SYSTEM("system"), + /** The {@code developer} variant. */ + DEVELOPER("developer"); + + private final String value; + SystemMessageEventDataRole(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** Metadata about the prompt template and its construction */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SystemMessageEventDataMetadata { + + /** Version identifier of the prompt template used */ + @JsonProperty("promptVersion") + private String promptVersion; + + /** Template variables used when constructing the prompt */ + @JsonProperty("variables") + private Map variables; + + public String getPromptVersion() { return promptVersion; } + public void setPromptVersion(String promptVersion) { this.promptVersion = promptVersion; } + + public Map getVariables() { return variables; } + public void setVariables(Map variables) { this.variables = variables; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/SystemNotificationEvent.java b/src/generated/java/com/github/copilot/sdk/generated/SystemNotificationEvent.java new file mode 100644 index 000000000..7294065b5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/SystemNotificationEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code system.notification} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class SystemNotificationEvent extends SessionEvent { + + @JsonProperty("data") + private SystemNotificationEventData data; + + public SystemNotificationEventData getData() { return data; } + public void setData(SystemNotificationEventData data) { this.data = data; } + + /** Data payload for {@link SystemNotificationEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SystemNotificationEventData { + + /** The notification text, typically wrapped in XML tags */ + @JsonProperty("content") + private String content; + + /** Structured metadata identifying what triggered this notification */ + @JsonProperty("kind") + private Object kind; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public Object getKind() { return kind; } + public void setKind(Object kind) { this.kind = kind; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionCompleteEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionCompleteEvent.java new file mode 100644 index 000000000..ea43fc234 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionCompleteEvent.java @@ -0,0 +1,144 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** The {@code tool.execution_complete} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ToolExecutionCompleteEvent extends SessionEvent { + + @JsonProperty("data") + private ToolExecutionCompleteEventData data; + + public ToolExecutionCompleteEventData getData() { return data; } + public void setData(ToolExecutionCompleteEventData data) { this.data = data; } + + /** Data payload for {@link ToolExecutionCompleteEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionCompleteEventData { + + /** Unique identifier for the completed tool call */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Whether the tool execution completed successfully */ + @JsonProperty("success") + private Boolean success; + + /** Model identifier that generated this tool call */ + @JsonProperty("model") + private String model; + + /** CAPI interaction ID for correlating this tool execution with upstream telemetry */ + @JsonProperty("interactionId") + private String interactionId; + + /** Whether this tool call was explicitly requested by the user rather than the assistant */ + @JsonProperty("isUserRequested") + private Boolean isUserRequested; + + /** Tool execution result on success */ + @JsonProperty("result") + private ToolExecutionCompleteEventDataResult result; + + /** Error details when the tool execution failed */ + @JsonProperty("error") + private ToolExecutionCompleteEventDataError error; + + /** Tool-specific telemetry data (e.g., CodeQL check counts, grep match counts) */ + @JsonProperty("toolTelemetry") + private Map toolTelemetry; + + /** Tool call ID of the parent tool invocation when this event originates from a sub-agent */ + @JsonProperty("parentToolCallId") + private String parentToolCallId; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } + + public String getInteractionId() { return interactionId; } + public void setInteractionId(String interactionId) { this.interactionId = interactionId; } + + public Boolean getIsUserRequested() { return isUserRequested; } + public void setIsUserRequested(Boolean isUserRequested) { this.isUserRequested = isUserRequested; } + + public ToolExecutionCompleteEventDataResult getResult() { return result; } + public void setResult(ToolExecutionCompleteEventDataResult result) { this.result = result; } + + public ToolExecutionCompleteEventDataError getError() { return error; } + public void setError(ToolExecutionCompleteEventDataError error) { this.error = error; } + + public Map getToolTelemetry() { return toolTelemetry; } + public void setToolTelemetry(Map toolTelemetry) { this.toolTelemetry = toolTelemetry; } + + public String getParentToolCallId() { return parentToolCallId; } + public void setParentToolCallId(String parentToolCallId) { this.parentToolCallId = parentToolCallId; } + + + /** Tool execution result on success */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionCompleteEventDataResult { + + /** Concise tool result text sent to the LLM for chat completion, potentially truncated for token efficiency */ + @JsonProperty("content") + private String content; + + /** Full detailed tool result for UI/timeline display, preserving complete content such as diffs. Falls back to content when absent. */ + @JsonProperty("detailedContent") + private String detailedContent; + + /** Structured content blocks (text, images, audio, resources) returned by the tool in their native format */ + @JsonProperty("contents") + private List contents; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public String getDetailedContent() { return detailedContent; } + public void setDetailedContent(String detailedContent) { this.detailedContent = detailedContent; } + + public List getContents() { return contents; } + public void setContents(List contents) { this.contents = contents; } + } + + /** Error details when the tool execution failed */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionCompleteEventDataError { + + /** Human-readable error message */ + @JsonProperty("message") + private String message; + + /** Machine-readable error code */ + @JsonProperty("code") + private String code; + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public String getCode() { return code; } + public void setCode(String code) { this.code = code; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionPartialResultEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionPartialResultEvent.java new file mode 100644 index 000000000..1b056c5b5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionPartialResultEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code tool.execution_partial_result} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ToolExecutionPartialResultEvent extends SessionEvent { + + @JsonProperty("data") + private ToolExecutionPartialResultEventData data; + + public ToolExecutionPartialResultEventData getData() { return data; } + public void setData(ToolExecutionPartialResultEventData data) { this.data = data; } + + /** Data payload for {@link ToolExecutionPartialResultEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionPartialResultEventData { + + /** Tool call ID this partial result belongs to */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Incremental output chunk from the running tool */ + @JsonProperty("partialOutput") + private String partialOutput; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getPartialOutput() { return partialOutput; } + public void setPartialOutput(String partialOutput) { this.partialOutput = partialOutput; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionProgressEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionProgressEvent.java new file mode 100644 index 000000000..8ec830458 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionProgressEvent.java @@ -0,0 +1,45 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code tool.execution_progress} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ToolExecutionProgressEvent extends SessionEvent { + + @JsonProperty("data") + private ToolExecutionProgressEventData data; + + public ToolExecutionProgressEventData getData() { return data; } + public void setData(ToolExecutionProgressEventData data) { this.data = data; } + + /** Data payload for {@link ToolExecutionProgressEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionProgressEventData { + + /** Tool call ID this progress notification belongs to */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Human-readable progress status message (e.g., from an MCP server) */ + @JsonProperty("progressMessage") + private String progressMessage; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getProgressMessage() { return progressMessage; } + public void setProgressMessage(String progressMessage) { this.progressMessage = progressMessage; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionStartEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionStartEvent.java new file mode 100644 index 000000000..065c9d888 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ToolExecutionStartEvent.java @@ -0,0 +1,73 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code tool.execution_start} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ToolExecutionStartEvent extends SessionEvent { + + @JsonProperty("data") + private ToolExecutionStartEventData data; + + public ToolExecutionStartEventData getData() { return data; } + public void setData(ToolExecutionStartEventData data) { this.data = data; } + + /** Data payload for {@link ToolExecutionStartEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolExecutionStartEventData { + + /** Unique identifier for this tool call */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Name of the tool being executed */ + @JsonProperty("toolName") + private String toolName; + + /** Arguments passed to the tool */ + @JsonProperty("arguments") + private Object arguments; + + /** Name of the MCP server hosting this tool, when the tool is an MCP tool */ + @JsonProperty("mcpServerName") + private String mcpServerName; + + /** Original tool name on the MCP server, when the tool is an MCP tool */ + @JsonProperty("mcpToolName") + private String mcpToolName; + + /** Tool call ID of the parent tool invocation when this event originates from a sub-agent */ + @JsonProperty("parentToolCallId") + private String parentToolCallId; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getToolName() { return toolName; } + public void setToolName(String toolName) { this.toolName = toolName; } + + public Object getArguments() { return arguments; } + public void setArguments(Object arguments) { this.arguments = arguments; } + + public String getMcpServerName() { return mcpServerName; } + public void setMcpServerName(String mcpServerName) { this.mcpServerName = mcpServerName; } + + public String getMcpToolName() { return mcpToolName; } + public void setMcpToolName(String mcpToolName) { this.mcpToolName = mcpToolName; } + + public String getParentToolCallId() { return parentToolCallId; } + public void setParentToolCallId(String parentToolCallId) { this.parentToolCallId = parentToolCallId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/ToolUserRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/ToolUserRequestedEvent.java new file mode 100644 index 000000000..9c5d93a15 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/ToolUserRequestedEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code tool.user_requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class ToolUserRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private ToolUserRequestedEventData data; + + public ToolUserRequestedEventData getData() { return data; } + public void setData(ToolUserRequestedEventData data) { this.data = data; } + + /** Data payload for {@link ToolUserRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolUserRequestedEventData { + + /** Unique identifier for this tool call */ + @JsonProperty("toolCallId") + private String toolCallId; + + /** Name of the tool the user wants to invoke */ + @JsonProperty("toolName") + private String toolName; + + /** Arguments for the tool invocation */ + @JsonProperty("arguments") + private Object arguments; + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + + public String getToolName() { return toolName; } + public void setToolName(String toolName) { this.toolName = toolName; } + + public Object getArguments() { return arguments; } + public void setArguments(Object arguments) { this.arguments = arguments; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/UnknownSessionEvent.java b/src/generated/java/com/github/copilot/sdk/generated/UnknownSessionEvent.java new file mode 100644 index 000000000..465c70a50 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/UnknownSessionEvent.java @@ -0,0 +1,16 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import javax.annotation.processing.Generated; + +/** Fallback for event types not yet known to this SDK version. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class UnknownSessionEvent extends SessionEvent {} diff --git a/src/generated/java/com/github/copilot/sdk/generated/UserInputCompletedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/UserInputCompletedEvent.java new file mode 100644 index 000000000..e57e6d0ea --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/UserInputCompletedEvent.java @@ -0,0 +1,52 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** The {@code user_input.completed} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class UserInputCompletedEvent extends SessionEvent { + + @JsonProperty("data") + private UserInputCompletedEventData data; + + public UserInputCompletedEventData getData() { return data; } + public void setData(UserInputCompletedEventData data) { this.data = data; } + + /** Data payload for {@link UserInputCompletedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class UserInputCompletedEventData { + + /** Request ID of the resolved user input request; clients should dismiss any UI for this request */ + @JsonProperty("requestId") + private String requestId; + + /** The user's answer to the input request */ + @JsonProperty("answer") + private String answer; + + /** Whether the answer was typed as free-form text rather than selected from choices */ + @JsonProperty("wasFreeform") + private Boolean wasFreeform; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getAnswer() { return answer; } + public void setAnswer(String answer) { this.answer = answer; } + + public Boolean getWasFreeform() { return wasFreeform; } + public void setWasFreeform(Boolean wasFreeform) { this.wasFreeform = wasFreeform; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/UserInputRequestedEvent.java b/src/generated/java/com/github/copilot/sdk/generated/UserInputRequestedEvent.java new file mode 100644 index 000000000..28610ace5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/UserInputRequestedEvent.java @@ -0,0 +1,67 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code user_input.requested} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class UserInputRequestedEvent extends SessionEvent { + + @JsonProperty("data") + private UserInputRequestedEventData data; + + public UserInputRequestedEventData getData() { return data; } + public void setData(UserInputRequestedEventData data) { this.data = data; } + + /** Data payload for {@link UserInputRequestedEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class UserInputRequestedEventData { + + /** Unique identifier for this input request; used to respond via session.respondToUserInput() */ + @JsonProperty("requestId") + private String requestId; + + /** The question or prompt to present to the user */ + @JsonProperty("question") + private String question; + + /** Predefined choices for the user to select from, if applicable */ + @JsonProperty("choices") + private List choices; + + /** Whether the user can provide a free-form text response in addition to predefined choices */ + @JsonProperty("allowFreeform") + private Boolean allowFreeform; + + /** The LLM-assigned tool call ID that triggered this request; used by remote UIs to correlate responses */ + @JsonProperty("toolCallId") + private String toolCallId; + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getQuestion() { return question; } + public void setQuestion(String question) { this.question = question; } + + public List getChoices() { return choices; } + public void setChoices(List choices) { this.choices = choices; } + + public Boolean getAllowFreeform() { return allowFreeform; } + public void setAllowFreeform(Boolean allowFreeform) { this.allowFreeform = allowFreeform; } + + public String getToolCallId() { return toolCallId; } + public void setToolCallId(String toolCallId) { this.toolCallId = toolCallId; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/UserMessageEvent.java b/src/generated/java/com/github/copilot/sdk/generated/UserMessageEvent.java new file mode 100644 index 000000000..1c263c926 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/UserMessageEvent.java @@ -0,0 +1,92 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: session-events.schema.json + +package com.github.copilot.sdk.generated; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** The {@code user.message} session event. */ +@JsonIgnoreProperties(ignoreUnknown = true) +@javax.annotation.processing.Generated("copilot-sdk-codegen") +public final class UserMessageEvent extends SessionEvent { + + @JsonProperty("data") + private UserMessageEventData data; + + public UserMessageEventData getData() { return data; } + public void setData(UserMessageEventData data) { this.data = data; } + + /** Data payload for {@link UserMessageEvent}. */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class UserMessageEventData { + + /** The user's message text as displayed in the timeline */ + @JsonProperty("content") + private String content; + + /** Transformed version of the message sent to the model, with XML wrapping, timestamps, and other augmentations for prompt caching */ + @JsonProperty("transformedContent") + private String transformedContent; + + /** Files, selections, or GitHub references attached to the message */ + @JsonProperty("attachments") + private List attachments; + + /** Origin of this message, used for timeline filtering (e.g., "skill-pdf" for skill-injected messages that should be hidden from the user) */ + @JsonProperty("source") + private String source; + + /** The agent mode that was active when this message was sent */ + @JsonProperty("agentMode") + private UserMessageEventDataAgentMode agentMode; + + /** CAPI interaction ID for correlating this user message with its turn */ + @JsonProperty("interactionId") + private String interactionId; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public String getTransformedContent() { return transformedContent; } + public void setTransformedContent(String transformedContent) { this.transformedContent = transformedContent; } + + public List getAttachments() { return attachments; } + public void setAttachments(List attachments) { this.attachments = attachments; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public UserMessageEventDataAgentMode getAgentMode() { return agentMode; } + public void setAgentMode(UserMessageEventDataAgentMode agentMode) { this.agentMode = agentMode; } + + public String getInteractionId() { return interactionId; } + public void setInteractionId(String interactionId) { this.interactionId = interactionId; } + + + /** The agent mode that was active when this message was sent */ + public enum UserMessageEventDataAgentMode { + /** The {@code interactive} variant. */ + INTERACTIVE("interactive"), + /** The {@code plan} variant. */ + PLAN("plan"), + /** The {@code autopilot} variant. */ + AUTOPILOT("autopilot"), + /** The {@code shell} variant. */ + SHELL("shell"); + + private final String value; + UserMessageEventDataAgentMode(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/AccountGetQuotaResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/AccountGetQuotaResult.java new file mode 100644 index 000000000..3023759bf --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/AccountGetQuotaResult.java @@ -0,0 +1,76 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Result for the {@code account.getQuota} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class AccountGetQuotaResult { + + /** Quota snapshots keyed by type (e.g., chat, completions, premium_interactions) */ + @JsonProperty("quotaSnapshots") + private Map quotaSnapshots; + + public Map getQuotaSnapshots() { return quotaSnapshots; } + public void setQuotaSnapshots(Map quotaSnapshots) { this.quotaSnapshots = quotaSnapshots; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class AccountGetQuotaResultQuotaSnapshotsValue { + + /** Number of requests included in the entitlement */ + @JsonProperty("entitlementRequests") + private Double entitlementRequests; + + /** Number of requests used so far this period */ + @JsonProperty("usedRequests") + private Double usedRequests; + + /** Percentage of entitlement remaining */ + @JsonProperty("remainingPercentage") + private Double remainingPercentage; + + /** Number of overage requests made this period */ + @JsonProperty("overage") + private Double overage; + + /** Whether pay-per-request usage is allowed when quota is exhausted */ + @JsonProperty("overageAllowedWithExhaustedQuota") + private Boolean overageAllowedWithExhaustedQuota; + + /** Date when the quota resets (ISO 8601) */ + @JsonProperty("resetDate") + private String resetDate; + + public Double getEntitlementRequests() { return entitlementRequests; } + public void setEntitlementRequests(Double entitlementRequests) { this.entitlementRequests = entitlementRequests; } + + public Double getUsedRequests() { return usedRequests; } + public void setUsedRequests(Double usedRequests) { this.usedRequests = usedRequests; } + + public Double getRemainingPercentage() { return remainingPercentage; } + public void setRemainingPercentage(Double remainingPercentage) { this.remainingPercentage = remainingPercentage; } + + public Double getOverage() { return overage; } + public void setOverage(Double overage) { this.overage = overage; } + + public Boolean getOverageAllowedWithExhaustedQuota() { return overageAllowedWithExhaustedQuota; } + public void setOverageAllowedWithExhaustedQuota(Boolean overageAllowedWithExhaustedQuota) { this.overageAllowedWithExhaustedQuota = overageAllowedWithExhaustedQuota; } + + public String getResetDate() { return resetDate; } + public void setResetDate(String resetDate) { this.resetDate = resetDate; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigAddParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigAddParams.java new file mode 100644 index 000000000..3f8600a92 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigAddParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code mcp.config.add} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpConfigAddParams { + + /** Unique name for the MCP server */ + @JsonProperty("name") + private String name; + + /** MCP server configuration (local/stdio or remote/http) */ + @JsonProperty("config") + private Object config; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public Object getConfig() { return config; } + public void setConfig(Object config) { this.config = config; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigListResult.java new file mode 100644 index 000000000..589613864 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigListResult.java @@ -0,0 +1,28 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Result for the {@code mcp.config.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpConfigListResult { + + /** All MCP servers from user config, keyed by name */ + @JsonProperty("servers") + private Map servers; + + public Map getServers() { return servers; } + public void setServers(Map servers) { this.servers = servers; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigRemoveParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigRemoveParams.java new file mode 100644 index 000000000..0e95c58cd --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigRemoveParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code mcp.config.remove} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpConfigRemoveParams { + + /** Name of the MCP server to remove */ + @JsonProperty("name") + private String name; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigUpdateParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigUpdateParams.java new file mode 100644 index 000000000..5522c817a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpConfigUpdateParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code mcp.config.update} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpConfigUpdateParams { + + /** Name of the MCP server to update */ + @JsonProperty("name") + private String name; + + /** MCP server configuration (local/stdio or remote/http) */ + @JsonProperty("config") + private Object config; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public Object getConfig() { return config; } + public void setConfig(Object config) { this.config = config; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverParams.java new file mode 100644 index 000000000..035541552 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code mcp.discover} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpDiscoverParams { + + /** Working directory used as context for discovery (e.g., plugin resolution) */ + @JsonProperty("workingDirectory") + private String workingDirectory; + + public String getWorkingDirectory() { return workingDirectory; } + public void setWorkingDirectory(String workingDirectory) { this.workingDirectory = workingDirectory; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverResult.java new file mode 100644 index 000000000..f54bb572d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/McpDiscoverResult.java @@ -0,0 +1,80 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code mcp.discover} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class McpDiscoverResult { + + /** MCP servers discovered from all sources */ + @JsonProperty("servers") + private List servers; + + public List getServers() { return servers; } + public void setServers(List servers) { this.servers = servers; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class McpDiscoverResultServersItem { + + /** Server name (config key) */ + @JsonProperty("name") + private String name; + + /** Server type: local, stdio, http, or sse */ + @JsonProperty("type") + private String type; + + /** Configuration source */ + @JsonProperty("source") + private McpDiscoverResultServersItemSource source; + + /** Whether the server is enabled (not in the disabled list) */ + @JsonProperty("enabled") + private Boolean enabled; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getType() { return type; } + public void setType(String type) { this.type = type; } + + public McpDiscoverResultServersItemSource getSource() { return source; } + public void setSource(McpDiscoverResultServersItemSource source) { this.source = source; } + + public Boolean getEnabled() { return enabled; } + public void setEnabled(Boolean enabled) { this.enabled = enabled; } + + + /** Configuration source */ + public enum McpDiscoverResultServersItemSource { + /** The {@code user} variant. */ + USER("user"), + /** The {@code workspace} variant. */ + WORKSPACE("workspace"), + /** The {@code plugin} variant. */ + PLUGIN("plugin"), + /** The {@code builtin} variant. */ + BUILTIN("builtin"); + + private final String value; + McpDiscoverResultServersItemSource(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/ModelsListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/ModelsListResult.java new file mode 100644 index 000000000..4a43c3289 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/ModelsListResult.java @@ -0,0 +1,220 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code models.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class ModelsListResult { + + /** List of available models with full metadata */ + @JsonProperty("models") + private List models; + + public List getModels() { return models; } + public void setModels(List models) { this.models = models; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItem { + + /** Model identifier (e.g., "claude-sonnet-4.5") */ + @JsonProperty("id") + private String id; + + /** Display name */ + @JsonProperty("name") + private String name; + + /** Model capabilities and limits */ + @JsonProperty("capabilities") + private ModelsListResultModelsItemCapabilities capabilities; + + /** Policy state (if applicable) */ + @JsonProperty("policy") + private ModelsListResultModelsItemPolicy policy; + + /** Billing information */ + @JsonProperty("billing") + private ModelsListResultModelsItemBilling billing; + + /** Supported reasoning effort levels (only present if model supports reasoning effort) */ + @JsonProperty("supportedReasoningEfforts") + private List supportedReasoningEfforts; + + /** Default reasoning effort level (only present if model supports reasoning effort) */ + @JsonProperty("defaultReasoningEffort") + private String defaultReasoningEffort; + + public String getId() { return id; } + public void setId(String id) { this.id = id; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public ModelsListResultModelsItemCapabilities getCapabilities() { return capabilities; } + public void setCapabilities(ModelsListResultModelsItemCapabilities capabilities) { this.capabilities = capabilities; } + + public ModelsListResultModelsItemPolicy getPolicy() { return policy; } + public void setPolicy(ModelsListResultModelsItemPolicy policy) { this.policy = policy; } + + public ModelsListResultModelsItemBilling getBilling() { return billing; } + public void setBilling(ModelsListResultModelsItemBilling billing) { this.billing = billing; } + + public List getSupportedReasoningEfforts() { return supportedReasoningEfforts; } + public void setSupportedReasoningEfforts(List supportedReasoningEfforts) { this.supportedReasoningEfforts = supportedReasoningEfforts; } + + public String getDefaultReasoningEffort() { return defaultReasoningEffort; } + public void setDefaultReasoningEffort(String defaultReasoningEffort) { this.defaultReasoningEffort = defaultReasoningEffort; } + + + /** Model capabilities and limits */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemCapabilities { + + /** Feature flags indicating what the model supports */ + @JsonProperty("supports") + private ModelsListResultModelsItemCapabilitiesSupports supports; + + /** Token limits for prompts, outputs, and context window */ + @JsonProperty("limits") + private ModelsListResultModelsItemCapabilitiesLimits limits; + + public ModelsListResultModelsItemCapabilitiesSupports getSupports() { return supports; } + public void setSupports(ModelsListResultModelsItemCapabilitiesSupports supports) { this.supports = supports; } + + public ModelsListResultModelsItemCapabilitiesLimits getLimits() { return limits; } + public void setLimits(ModelsListResultModelsItemCapabilitiesLimits limits) { this.limits = limits; } + + + /** Feature flags indicating what the model supports */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemCapabilitiesSupports { + + /** Whether this model supports vision/image input */ + @JsonProperty("vision") + private Boolean vision; + + /** Whether this model supports reasoning effort configuration */ + @JsonProperty("reasoningEffort") + private Boolean reasoningEffort; + + public Boolean getVision() { return vision; } + public void setVision(Boolean vision) { this.vision = vision; } + + public Boolean getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(Boolean reasoningEffort) { this.reasoningEffort = reasoningEffort; } + } + + /** Token limits for prompts, outputs, and context window */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemCapabilitiesLimits { + + /** Maximum number of prompt/input tokens */ + @JsonProperty("max_prompt_tokens") + private Double maxPromptTokens; + + /** Maximum number of output/completion tokens */ + @JsonProperty("max_output_tokens") + private Double maxOutputTokens; + + /** Maximum total context window size in tokens */ + @JsonProperty("max_context_window_tokens") + private Double maxContextWindowTokens; + + /** Vision-specific limits */ + @JsonProperty("vision") + private ModelsListResultModelsItemCapabilitiesLimitsVision vision; + + public Double getMaxPromptTokens() { return maxPromptTokens; } + public void setMaxPromptTokens(Double maxPromptTokens) { this.maxPromptTokens = maxPromptTokens; } + + public Double getMaxOutputTokens() { return maxOutputTokens; } + public void setMaxOutputTokens(Double maxOutputTokens) { this.maxOutputTokens = maxOutputTokens; } + + public Double getMaxContextWindowTokens() { return maxContextWindowTokens; } + public void setMaxContextWindowTokens(Double maxContextWindowTokens) { this.maxContextWindowTokens = maxContextWindowTokens; } + + public ModelsListResultModelsItemCapabilitiesLimitsVision getVision() { return vision; } + public void setVision(ModelsListResultModelsItemCapabilitiesLimitsVision vision) { this.vision = vision; } + + + /** Vision-specific limits */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemCapabilitiesLimitsVision { + + /** MIME types the model accepts */ + @JsonProperty("supported_media_types") + private List supportedMediaTypes; + + /** Maximum number of images per prompt */ + @JsonProperty("max_prompt_images") + private Double maxPromptImages; + + /** Maximum image size in bytes */ + @JsonProperty("max_prompt_image_size") + private Double maxPromptImageSize; + + public List getSupportedMediaTypes() { return supportedMediaTypes; } + public void setSupportedMediaTypes(List supportedMediaTypes) { this.supportedMediaTypes = supportedMediaTypes; } + + public Double getMaxPromptImages() { return maxPromptImages; } + public void setMaxPromptImages(Double maxPromptImages) { this.maxPromptImages = maxPromptImages; } + + public Double getMaxPromptImageSize() { return maxPromptImageSize; } + public void setMaxPromptImageSize(Double maxPromptImageSize) { this.maxPromptImageSize = maxPromptImageSize; } + } + } + } + + /** Policy state (if applicable) */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemPolicy { + + /** Current policy state for this model */ + @JsonProperty("state") + private String state; + + /** Usage terms or conditions for this model */ + @JsonProperty("terms") + private String terms; + + public String getState() { return state; } + public void setState(String state) { this.state = state; } + + public String getTerms() { return terms; } + public void setTerms(String terms) { this.terms = terms; } + } + + /** Billing information */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ModelsListResultModelsItemBilling { + + /** Billing cost multiplier relative to the base rate */ + @JsonProperty("multiplier") + private Double multiplier; + + public Double getMultiplier() { return multiplier; } + public void setMultiplier(Double multiplier) { this.multiplier = multiplier; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/PingParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/PingParams.java new file mode 100644 index 000000000..06f1ad015 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/PingParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code ping} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class PingParams { + + /** Optional message to echo back */ + @JsonProperty("message") + private String message; + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/PingResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/PingResult.java new file mode 100644 index 000000000..56e67b2a7 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/PingResult.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code ping} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class PingResult { + + /** Echoed message (or default greeting) */ + @JsonProperty("message") + private String message; + + /** Server timestamp in milliseconds */ + @JsonProperty("timestamp") + private Double timestamp; + + /** Server protocol version number */ + @JsonProperty("protocolVersion") + private Double protocolVersion; + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public Double getTimestamp() { return timestamp; } + public void setTimestamp(Double timestamp) { this.timestamp = timestamp; } + + public Double getProtocolVersion() { return protocolVersion; } + public void setProtocolVersion(Double protocolVersion) { this.protocolVersion = protocolVersion; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectParams.java new file mode 100644 index 000000000..85505744f --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.agent.deselect} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentDeselectParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectResult.java new file mode 100644 index 000000000..25aaf2e8b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentDeselectResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.agent.deselect} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentDeselectResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentParams.java new file mode 100644 index 000000000..0cbc8499a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.agent.getCurrent} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentGetCurrentParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentResult.java new file mode 100644 index 000000000..8f01f0647 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentGetCurrentResult.java @@ -0,0 +1,54 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.agent.getCurrent} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentGetCurrentResult { + + /** Currently selected custom agent, or null if using the default agent */ + @JsonProperty("agent") + private SessionAgentGetCurrentResultAgent agent; + + public SessionAgentGetCurrentResultAgent getAgent() { return agent; } + public void setAgent(SessionAgentGetCurrentResultAgent agent) { this.agent = agent; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionAgentGetCurrentResultAgent { + + /** Unique identifier of the custom agent */ + @JsonProperty("name") + private String name; + + /** Human-readable display name */ + @JsonProperty("displayName") + private String displayName; + + /** Description of the agent's purpose */ + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDisplayName() { return displayName; } + public void setDisplayName(String displayName) { this.displayName = displayName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListParams.java new file mode 100644 index 000000000..e1d906d6c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.agent.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentListParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListResult.java new file mode 100644 index 000000000..c99499872 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentListResult.java @@ -0,0 +1,55 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.agent.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentListResult { + + /** Available custom agents */ + @JsonProperty("agents") + private List agents; + + public List getAgents() { return agents; } + public void setAgents(List agents) { this.agents = agents; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionAgentListResultAgentsItem { + + /** Unique identifier of the custom agent */ + @JsonProperty("name") + private String name; + + /** Human-readable display name */ + @JsonProperty("displayName") + private String displayName; + + /** Description of the agent's purpose */ + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDisplayName() { return displayName; } + public void setDisplayName(String displayName) { this.displayName = displayName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadParams.java new file mode 100644 index 000000000..927749a42 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.agent.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentReloadParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadResult.java new file mode 100644 index 000000000..ee3cb2ca8 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentReloadResult.java @@ -0,0 +1,55 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.agent.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentReloadResult { + + /** Reloaded custom agents */ + @JsonProperty("agents") + private List agents; + + public List getAgents() { return agents; } + public void setAgents(List agents) { this.agents = agents; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionAgentReloadResultAgentsItem { + + /** Unique identifier of the custom agent */ + @JsonProperty("name") + private String name; + + /** Human-readable display name */ + @JsonProperty("displayName") + private String displayName; + + /** Description of the agent's purpose */ + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDisplayName() { return displayName; } + public void setDisplayName(String displayName) { this.displayName = displayName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectParams.java new file mode 100644 index 000000000..bdffdd715 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.agent.select} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentSelectParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Name of the custom agent to select */ + @JsonProperty("name") + private String name; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectResult.java new file mode 100644 index 000000000..57baa11ce --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionAgentSelectResult.java @@ -0,0 +1,55 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.agent.select} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionAgentSelectResult { + + /** The newly selected custom agent */ + @JsonProperty("agent") + private SessionAgentSelectResultAgent agent; + + public SessionAgentSelectResultAgent getAgent() { return agent; } + public void setAgent(SessionAgentSelectResultAgent agent) { this.agent = agent; } + + + /** The newly selected custom agent */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionAgentSelectResultAgent { + + /** Unique identifier of the custom agent */ + @JsonProperty("name") + private String name; + + /** Human-readable display name */ + @JsonProperty("displayName") + private String displayName; + + /** Description of the agent's purpose */ + @JsonProperty("description") + private String description; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDisplayName() { return displayName; } + public void setDisplayName(String displayName) { this.displayName = displayName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandParams.java new file mode 100644 index 000000000..791a30843 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandParams.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.commands.handlePendingCommand} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionCommandsHandlePendingCommandParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Request ID from the command invocation event */ + @JsonProperty("requestId") + private String requestId; + + /** Error message if the command handler failed */ + @JsonProperty("error") + private String error; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandResult.java new file mode 100644 index 000000000..d72b6d800 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionCommandsHandlePendingCommandResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.commands.handlePendingCommand} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionCommandsHandlePendingCommandResult { + + /** Whether the command was handled successfully */ + @JsonProperty("success") + private Boolean success; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableParams.java new file mode 100644 index 000000000..168b7f805 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.extensions.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsDisableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Source-qualified extension ID to disable */ + @JsonProperty("id") + private String id; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getId() { return id; } + public void setId(String id) { this.id = id; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableResult.java new file mode 100644 index 000000000..37beae2d9 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsDisableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.extensions.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsDisableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableParams.java new file mode 100644 index 000000000..4d8f8f82b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.extensions.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsEnableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Source-qualified extension ID to enable */ + @JsonProperty("id") + private String id; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getId() { return id; } + public void setId(String id) { this.id = id; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableResult.java new file mode 100644 index 000000000..5e655ceab --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsEnableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.extensions.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsEnableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListParams.java new file mode 100644 index 000000000..88abdf55e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.extensions.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsListParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListResult.java new file mode 100644 index 000000000..d6f9f22af --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsListResult.java @@ -0,0 +1,100 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.extensions.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsListResult { + + /** Discovered extensions and their current status */ + @JsonProperty("extensions") + private List extensions; + + public List getExtensions() { return extensions; } + public void setExtensions(List extensions) { this.extensions = extensions; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionExtensionsListResultExtensionsItem { + + /** Source-qualified ID (e.g., 'project:my-ext', 'user:auth-helper') */ + @JsonProperty("id") + private String id; + + /** Extension name (directory name) */ + @JsonProperty("name") + private String name; + + /** Discovery source: project (.github/extensions/) or user (~/.copilot/extensions/) */ + @JsonProperty("source") + private SessionExtensionsListResultExtensionsItemSource source; + + /** Current status: running, disabled, failed, or starting */ + @JsonProperty("status") + private SessionExtensionsListResultExtensionsItemStatus status; + + /** Process ID if the extension is running */ + @JsonProperty("pid") + private Double pid; + + public String getId() { return id; } + public void setId(String id) { this.id = id; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SessionExtensionsListResultExtensionsItemSource getSource() { return source; } + public void setSource(SessionExtensionsListResultExtensionsItemSource source) { this.source = source; } + + public SessionExtensionsListResultExtensionsItemStatus getStatus() { return status; } + public void setStatus(SessionExtensionsListResultExtensionsItemStatus status) { this.status = status; } + + public Double getPid() { return pid; } + public void setPid(Double pid) { this.pid = pid; } + + + /** Discovery source: project (.github/extensions/) or user (~/.copilot/extensions/) */ + public enum SessionExtensionsListResultExtensionsItemSource { + /** The {@code project} variant. */ + PROJECT("project"), + /** The {@code user} variant. */ + USER("user"); + + private final String value; + SessionExtensionsListResultExtensionsItemSource(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + + /** Current status: running, disabled, failed, or starting */ + public enum SessionExtensionsListResultExtensionsItemStatus { + /** The {@code running} variant. */ + RUNNING("running"), + /** The {@code disabled} variant. */ + DISABLED("disabled"), + /** The {@code failed} variant. */ + FAILED("failed"), + /** The {@code starting} variant. */ + STARTING("starting"); + + private final String value; + SessionExtensionsListResultExtensionsItemStatus(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadParams.java new file mode 100644 index 000000000..0a2688445 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.extensions.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsReloadParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadResult.java new file mode 100644 index 000000000..4f3447550 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionExtensionsReloadResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.extensions.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionExtensionsReloadResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartParams.java new file mode 100644 index 000000000..bd82d089a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.fleet.start} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFleetStartParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Optional user prompt to combine with fleet instructions */ + @JsonProperty("prompt") + private String prompt; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPrompt() { return prompt; } + public void setPrompt(String prompt) { this.prompt = prompt; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartResult.java new file mode 100644 index 000000000..74364a495 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFleetStartResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.fleet.start} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFleetStartResult { + + /** Whether fleet mode was successfully activated */ + @JsonProperty("started") + private Boolean started; + + public Boolean getStarted() { return started; } + public void setStarted(Boolean started) { this.started = started; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsAppendFileParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsAppendFileParams.java new file mode 100644 index 000000000..a806d9cf0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsAppendFileParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.appendFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsAppendFileParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + /** Content to append */ + @JsonProperty("content") + private String content; + + /** Optional POSIX-style mode for newly created files */ + @JsonProperty("mode") + private Double mode; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public Double getMode() { return mode; } + public void setMode(Double mode) { this.mode = mode; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsParams.java new file mode 100644 index 000000000..e262fb5b0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.exists} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsExistsParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsResult.java new file mode 100644 index 000000000..f2eec75a8 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsExistsResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.exists} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsExistsResult { + + /** Whether the path exists */ + @JsonProperty("exists") + private Boolean exists; + + public Boolean getExists() { return exists; } + public void setExists(Boolean exists) { this.exists = exists; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsMkdirParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsMkdirParams.java new file mode 100644 index 000000000..fdd5033fb --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsMkdirParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.mkdir} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsMkdirParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + /** Create parent directories as needed */ + @JsonProperty("recursive") + private Boolean recursive; + + /** Optional POSIX-style mode for newly created directories */ + @JsonProperty("mode") + private Double mode; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public Boolean getRecursive() { return recursive; } + public void setRecursive(Boolean recursive) { this.recursive = recursive; } + + public Double getMode() { return mode; } + public void setMode(Double mode) { this.mode = mode; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileParams.java new file mode 100644 index 000000000..855b5d0b5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.readFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReadFileParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileResult.java new file mode 100644 index 000000000..e69fff2d2 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReadFileResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.readFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReadFileResult { + + /** File content as UTF-8 string */ + @JsonProperty("content") + private String content; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirParams.java new file mode 100644 index 000000000..04886021e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.readdir} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReaddirParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirResult.java new file mode 100644 index 000000000..d10917b84 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirResult.java @@ -0,0 +1,28 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.readdir} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReaddirResult { + + /** Entry names in the directory */ + @JsonProperty("entries") + private List entries; + + public List getEntries() { return entries; } + public void setEntries(List entries) { this.entries = entries; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesParams.java new file mode 100644 index 000000000..0567287d9 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.readdirWithTypes} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReaddirWithTypesParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesResult.java new file mode 100644 index 000000000..20734b442 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsReaddirWithTypesResult.java @@ -0,0 +1,62 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.readdirWithTypes} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsReaddirWithTypesResult { + + /** Directory entries with type information */ + @JsonProperty("entries") + private List entries; + + public List getEntries() { return entries; } + public void setEntries(List entries) { this.entries = entries; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionFsReaddirWithTypesResultEntriesItem { + + /** Entry name */ + @JsonProperty("name") + private String name; + + /** Entry type */ + @JsonProperty("type") + private SessionFsReaddirWithTypesResultEntriesItemType type; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SessionFsReaddirWithTypesResultEntriesItemType getType() { return type; } + public void setType(SessionFsReaddirWithTypesResultEntriesItemType type) { this.type = type; } + + + /** Entry type */ + public enum SessionFsReaddirWithTypesResultEntriesItemType { + /** The {@code file} variant. */ + FILE("file"), + /** The {@code directory} variant. */ + DIRECTORY("directory"); + + private final String value; + SessionFsReaddirWithTypesResultEntriesItemType(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRenameParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRenameParams.java new file mode 100644 index 000000000..3acdd4f6b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRenameParams.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.rename} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsRenameParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Source path using SessionFs conventions */ + @JsonProperty("src") + private String src; + + /** Destination path using SessionFs conventions */ + @JsonProperty("dest") + private String dest; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getSrc() { return src; } + public void setSrc(String src) { this.src = src; } + + public String getDest() { return dest; } + public void setDest(String dest) { this.dest = dest; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRmParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRmParams.java new file mode 100644 index 000000000..b5cf19611 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsRmParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.rm} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsRmParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + /** Remove directories and their contents recursively */ + @JsonProperty("recursive") + private Boolean recursive; + + /** Ignore errors if the path does not exist */ + @JsonProperty("force") + private Boolean force; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public Boolean getRecursive() { return recursive; } + public void setRecursive(Boolean recursive) { this.recursive = recursive; } + + public Boolean getForce() { return force; } + public void setForce(Boolean force) { this.force = force; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderParams.java new file mode 100644 index 000000000..b701fe8e7 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderParams.java @@ -0,0 +1,55 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.setProvider} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsSetProviderParams { + + /** Initial working directory for sessions */ + @JsonProperty("initialCwd") + private String initialCwd; + + /** Path within each session's SessionFs where the runtime stores files for that session */ + @JsonProperty("sessionStatePath") + private String sessionStatePath; + + /** Path conventions used by this filesystem */ + @JsonProperty("conventions") + private SessionFsSetProviderParamsConventions conventions; + + public String getInitialCwd() { return initialCwd; } + public void setInitialCwd(String initialCwd) { this.initialCwd = initialCwd; } + + public String getSessionStatePath() { return sessionStatePath; } + public void setSessionStatePath(String sessionStatePath) { this.sessionStatePath = sessionStatePath; } + + public SessionFsSetProviderParamsConventions getConventions() { return conventions; } + public void setConventions(SessionFsSetProviderParamsConventions conventions) { this.conventions = conventions; } + + + /** Path conventions used by this filesystem */ + public enum SessionFsSetProviderParamsConventions { + /** The {@code windows} variant. */ + WINDOWS("windows"), + /** The {@code posix} variant. */ + POSIX("posix"); + + private final String value; + SessionFsSetProviderParamsConventions(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderResult.java new file mode 100644 index 000000000..efe10d101 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsSetProviderResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.setProvider} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsSetProviderResult { + + /** Whether the provider was set successfully */ + @JsonProperty("success") + private Boolean success; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatParams.java new file mode 100644 index 000000000..4602873e0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.stat} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsStatParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatResult.java new file mode 100644 index 000000000..c12e36fb5 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsStatResult.java @@ -0,0 +1,55 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessionFs.stat} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsStatResult { + + /** Whether the path is a file */ + @JsonProperty("isFile") + private Boolean isFile; + + /** Whether the path is a directory */ + @JsonProperty("isDirectory") + private Boolean isDirectory; + + /** File size in bytes */ + @JsonProperty("size") + private Double size; + + /** ISO 8601 timestamp of last modification */ + @JsonProperty("mtime") + private String mtime; + + /** ISO 8601 timestamp of creation */ + @JsonProperty("birthtime") + private String birthtime; + + public Boolean getIsFile() { return isFile; } + public void setIsFile(Boolean isFile) { this.isFile = isFile; } + + public Boolean getIsDirectory() { return isDirectory; } + public void setIsDirectory(Boolean isDirectory) { this.isDirectory = isDirectory; } + + public Double getSize() { return size; } + public void setSize(Double size) { this.size = size; } + + public String getMtime() { return mtime; } + public void setMtime(String mtime) { this.mtime = mtime; } + + public String getBirthtime() { return birthtime; } + public void setBirthtime(String birthtime) { this.birthtime = birthtime; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsWriteFileParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsWriteFileParams.java new file mode 100644 index 000000000..2319fe630 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionFsWriteFileParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessionFs.writeFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionFsWriteFileParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Path using SessionFs conventions */ + @JsonProperty("path") + private String path; + + /** Content to write */ + @JsonProperty("content") + private String content; + + /** Optional POSIX-style mode for newly created files */ + @JsonProperty("mode") + private Double mode; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public Double getMode() { return mode; } + public void setMode(Double mode) { this.mode = mode; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactParams.java new file mode 100644 index 000000000..1e7633753 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.history.compact} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionHistoryCompactParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactResult.java new file mode 100644 index 000000000..39858253b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryCompactResult.java @@ -0,0 +1,97 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.history.compact} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionHistoryCompactResult { + + /** Whether compaction completed successfully */ + @JsonProperty("success") + private Boolean success; + + /** Number of tokens freed by compaction */ + @JsonProperty("tokensRemoved") + private Double tokensRemoved; + + /** Number of messages removed during compaction */ + @JsonProperty("messagesRemoved") + private Double messagesRemoved; + + /** Post-compaction context window usage breakdown */ + @JsonProperty("contextWindow") + private SessionHistoryCompactResultContextWindow contextWindow; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } + + public Double getTokensRemoved() { return tokensRemoved; } + public void setTokensRemoved(Double tokensRemoved) { this.tokensRemoved = tokensRemoved; } + + public Double getMessagesRemoved() { return messagesRemoved; } + public void setMessagesRemoved(Double messagesRemoved) { this.messagesRemoved = messagesRemoved; } + + public SessionHistoryCompactResultContextWindow getContextWindow() { return contextWindow; } + public void setContextWindow(SessionHistoryCompactResultContextWindow contextWindow) { this.contextWindow = contextWindow; } + + + /** Post-compaction context window usage breakdown */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionHistoryCompactResultContextWindow { + + /** Maximum token count for the model's context window */ + @JsonProperty("tokenLimit") + private Double tokenLimit; + + /** Current total tokens in the context window (system + conversation + tool definitions) */ + @JsonProperty("currentTokens") + private Double currentTokens; + + /** Current number of messages in the conversation */ + @JsonProperty("messagesLength") + private Double messagesLength; + + /** Token count from system message(s) */ + @JsonProperty("systemTokens") + private Double systemTokens; + + /** Token count from non-system messages (user, assistant, tool) */ + @JsonProperty("conversationTokens") + private Double conversationTokens; + + /** Token count from tool definitions */ + @JsonProperty("toolDefinitionsTokens") + private Double toolDefinitionsTokens; + + public Double getTokenLimit() { return tokenLimit; } + public void setTokenLimit(Double tokenLimit) { this.tokenLimit = tokenLimit; } + + public Double getCurrentTokens() { return currentTokens; } + public void setCurrentTokens(Double currentTokens) { this.currentTokens = currentTokens; } + + public Double getMessagesLength() { return messagesLength; } + public void setMessagesLength(Double messagesLength) { this.messagesLength = messagesLength; } + + public Double getSystemTokens() { return systemTokens; } + public void setSystemTokens(Double systemTokens) { this.systemTokens = systemTokens; } + + public Double getConversationTokens() { return conversationTokens; } + public void setConversationTokens(Double conversationTokens) { this.conversationTokens = conversationTokens; } + + public Double getToolDefinitionsTokens() { return toolDefinitionsTokens; } + public void setToolDefinitionsTokens(Double toolDefinitionsTokens) { this.toolDefinitionsTokens = toolDefinitionsTokens; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateParams.java new file mode 100644 index 000000000..2ec0bba3e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.history.truncate} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionHistoryTruncateParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Event ID to truncate to. This event and all events after it are removed from the session. */ + @JsonProperty("eventId") + private String eventId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getEventId() { return eventId; } + public void setEventId(String eventId) { this.eventId = eventId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateResult.java new file mode 100644 index 000000000..5511dd724 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionHistoryTruncateResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.history.truncate} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionHistoryTruncateResult { + + /** Number of events that were removed */ + @JsonProperty("eventsRemoved") + private Double eventsRemoved; + + public Double getEventsRemoved() { return eventsRemoved; } + public void setEventsRemoved(Double eventsRemoved) { this.eventsRemoved = eventsRemoved; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogParams.java new file mode 100644 index 000000000..85ff6418d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogParams.java @@ -0,0 +1,71 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.log} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionLogParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Human-readable message */ + @JsonProperty("message") + private String message; + + /** Log severity level. Determines how the message is displayed in the timeline. Defaults to "info". */ + @JsonProperty("level") + private SessionLogParamsLevel level; + + /** When true, the message is transient and not persisted to the session event log on disk */ + @JsonProperty("ephemeral") + private Boolean ephemeral; + + /** Optional URL the user can open in their browser for more details */ + @JsonProperty("url") + private String url; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public SessionLogParamsLevel getLevel() { return level; } + public void setLevel(SessionLogParamsLevel level) { this.level = level; } + + public Boolean getEphemeral() { return ephemeral; } + public void setEphemeral(Boolean ephemeral) { this.ephemeral = ephemeral; } + + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + + + /** Log severity level. Determines how the message is displayed in the timeline. Defaults to "info". */ + public enum SessionLogParamsLevel { + /** The {@code info} variant. */ + INFO("info"), + /** The {@code warning} variant. */ + WARNING("warning"), + /** The {@code error} variant. */ + ERROR("error"); + + private final String value; + SessionLogParamsLevel(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogResult.java new file mode 100644 index 000000000..21a6a1572 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionLogResult.java @@ -0,0 +1,28 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.UUID; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.log} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionLogResult { + + /** The unique identifier of the emitted session event */ + @JsonProperty("eventId") + private UUID eventId; + + public UUID getEventId() { return eventId; } + public void setEventId(UUID eventId) { this.eventId = eventId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableParams.java new file mode 100644 index 000000000..d76c10f16 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mcp.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpDisableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Name of the MCP server to disable */ + @JsonProperty("serverName") + private String serverName; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getServerName() { return serverName; } + public void setServerName(String serverName) { this.serverName = serverName; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableResult.java new file mode 100644 index 000000000..c0ef0110d --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpDisableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mcp.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpDisableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableParams.java new file mode 100644 index 000000000..4b3bf8ba6 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mcp.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpEnableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Name of the MCP server to enable */ + @JsonProperty("serverName") + private String serverName; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getServerName() { return serverName; } + public void setServerName(String serverName) { this.serverName = serverName; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableResult.java new file mode 100644 index 000000000..faec59ca2 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpEnableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mcp.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpEnableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListParams.java new file mode 100644 index 000000000..c7bf71a75 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mcp.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpListParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListResult.java new file mode 100644 index 000000000..08a46b0d1 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpListResult.java @@ -0,0 +1,84 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mcp.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpListResult { + + /** Configured MCP servers */ + @JsonProperty("servers") + private List servers; + + public List getServers() { return servers; } + public void setServers(List servers) { this.servers = servers; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionMcpListResultServersItem { + + /** Server name (config key) */ + @JsonProperty("name") + private String name; + + /** Connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + @JsonProperty("status") + private SessionMcpListResultServersItemStatus status; + + /** Configuration source: user, workspace, plugin, or builtin */ + @JsonProperty("source") + private String source; + + /** Error message if the server failed to connect */ + @JsonProperty("error") + private String error; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public SessionMcpListResultServersItemStatus getStatus() { return status; } + public void setStatus(SessionMcpListResultServersItemStatus status) { this.status = status; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } + + + /** Connection status: connected, failed, needs-auth, pending, disabled, or not_configured */ + public enum SessionMcpListResultServersItemStatus { + /** The {@code connected} variant. */ + CONNECTED("connected"), + /** The {@code failed} variant. */ + FAILED("failed"), + /** The {@code needs-auth} variant. */ + NEEDS_AUTH("needs-auth"), + /** The {@code pending} variant. */ + PENDING("pending"), + /** The {@code disabled} variant. */ + DISABLED("disabled"), + /** The {@code not_configured} variant. */ + NOT_CONFIGURED("not_configured"); + + private final String value; + SessionMcpListResultServersItemStatus(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadParams.java new file mode 100644 index 000000000..9e87be7fc --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mcp.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpReloadParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadResult.java new file mode 100644 index 000000000..bd1293b81 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionMcpReloadResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mcp.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionMcpReloadResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetParams.java new file mode 100644 index 000000000..215238c1a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mode.get} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModeGetParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetResult.java new file mode 100644 index 000000000..fb94b5f55 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeGetResult.java @@ -0,0 +1,43 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mode.get} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModeGetResult { + + /** The current agent mode. */ + @JsonProperty("mode") + private SessionModeGetResultMode mode; + + public SessionModeGetResultMode getMode() { return mode; } + public void setMode(SessionModeGetResultMode mode) { this.mode = mode; } + + + /** The current agent mode. */ + public enum SessionModeGetResultMode { + /** The {@code interactive} variant. */ + INTERACTIVE("interactive"), + /** The {@code plan} variant. */ + PLAN("plan"), + /** The {@code autopilot} variant. */ + AUTOPILOT("autopilot"); + + private final String value; + SessionModeGetResultMode(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetParams.java new file mode 100644 index 000000000..f5c670554 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetParams.java @@ -0,0 +1,50 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.mode.set} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModeSetParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** The mode to switch to. Valid values: "interactive", "plan", "autopilot". */ + @JsonProperty("mode") + private SessionModeSetParamsMode mode; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public SessionModeSetParamsMode getMode() { return mode; } + public void setMode(SessionModeSetParamsMode mode) { this.mode = mode; } + + + /** The mode to switch to. Valid values: "interactive", "plan", "autopilot". */ + public enum SessionModeSetParamsMode { + /** The {@code interactive} variant. */ + INTERACTIVE("interactive"), + /** The {@code plan} variant. */ + PLAN("plan"), + /** The {@code autopilot} variant. */ + AUTOPILOT("autopilot"); + + private final String value; + SessionModeSetParamsMode(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetResult.java new file mode 100644 index 000000000..fe3255c39 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModeSetResult.java @@ -0,0 +1,43 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.mode.set} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModeSetResult { + + /** The agent mode after switching. */ + @JsonProperty("mode") + private SessionModeSetResultMode mode; + + public SessionModeSetResultMode getMode() { return mode; } + public void setMode(SessionModeSetResultMode mode) { this.mode = mode; } + + + /** The agent mode after switching. */ + public enum SessionModeSetResultMode { + /** The {@code interactive} variant. */ + INTERACTIVE("interactive"), + /** The {@code plan} variant. */ + PLAN("plan"), + /** The {@code autopilot} variant. */ + AUTOPILOT("autopilot"); + + private final String value; + SessionModeSetResultMode(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentParams.java new file mode 100644 index 000000000..a9e5de450 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.model.getCurrent} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModelGetCurrentParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentResult.java new file mode 100644 index 000000000..7e6011d2f --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelGetCurrentResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.model.getCurrent} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModelGetCurrentResult { + + /** Currently active model identifier */ + @JsonProperty("modelId") + private String modelId; + + public String getModelId() { return modelId; } + public void setModelId(String modelId) { this.modelId = modelId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToParams.java new file mode 100644 index 000000000..0479642a1 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToParams.java @@ -0,0 +1,147 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.model.switchTo} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModelSwitchToParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Model identifier to switch to */ + @JsonProperty("modelId") + private String modelId; + + /** Reasoning effort level to use for the model */ + @JsonProperty("reasoningEffort") + private String reasoningEffort; + + /** Override individual model capabilities resolved by the runtime */ + @JsonProperty("modelCapabilities") + private SessionModelSwitchToParamsModelCapabilities modelCapabilities; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getModelId() { return modelId; } + public void setModelId(String modelId) { this.modelId = modelId; } + + public String getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(String reasoningEffort) { this.reasoningEffort = reasoningEffort; } + + public SessionModelSwitchToParamsModelCapabilities getModelCapabilities() { return modelCapabilities; } + public void setModelCapabilities(SessionModelSwitchToParamsModelCapabilities modelCapabilities) { this.modelCapabilities = modelCapabilities; } + + + /** Override individual model capabilities resolved by the runtime */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModelSwitchToParamsModelCapabilities { + + /** Feature flags indicating what the model supports */ + @JsonProperty("supports") + private SessionModelSwitchToParamsModelCapabilitiesSupports supports; + + /** Token limits for prompts, outputs, and context window */ + @JsonProperty("limits") + private SessionModelSwitchToParamsModelCapabilitiesLimits limits; + + public SessionModelSwitchToParamsModelCapabilitiesSupports getSupports() { return supports; } + public void setSupports(SessionModelSwitchToParamsModelCapabilitiesSupports supports) { this.supports = supports; } + + public SessionModelSwitchToParamsModelCapabilitiesLimits getLimits() { return limits; } + public void setLimits(SessionModelSwitchToParamsModelCapabilitiesLimits limits) { this.limits = limits; } + + + /** Feature flags indicating what the model supports */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModelSwitchToParamsModelCapabilitiesSupports { + + @JsonProperty("vision") + private Boolean vision; + + @JsonProperty("reasoningEffort") + private Boolean reasoningEffort; + + public Boolean getVision() { return vision; } + public void setVision(Boolean vision) { this.vision = vision; } + + public Boolean getReasoningEffort() { return reasoningEffort; } + public void setReasoningEffort(Boolean reasoningEffort) { this.reasoningEffort = reasoningEffort; } + } + + /** Token limits for prompts, outputs, and context window */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModelSwitchToParamsModelCapabilitiesLimits { + + @JsonProperty("max_prompt_tokens") + private Double maxPromptTokens; + + @JsonProperty("max_output_tokens") + private Double maxOutputTokens; + + /** Maximum total context window size in tokens */ + @JsonProperty("max_context_window_tokens") + private Double maxContextWindowTokens; + + @JsonProperty("vision") + private SessionModelSwitchToParamsModelCapabilitiesLimitsVision vision; + + public Double getMaxPromptTokens() { return maxPromptTokens; } + public void setMaxPromptTokens(Double maxPromptTokens) { this.maxPromptTokens = maxPromptTokens; } + + public Double getMaxOutputTokens() { return maxOutputTokens; } + public void setMaxOutputTokens(Double maxOutputTokens) { this.maxOutputTokens = maxOutputTokens; } + + public Double getMaxContextWindowTokens() { return maxContextWindowTokens; } + public void setMaxContextWindowTokens(Double maxContextWindowTokens) { this.maxContextWindowTokens = maxContextWindowTokens; } + + public SessionModelSwitchToParamsModelCapabilitiesLimitsVision getVision() { return vision; } + public void setVision(SessionModelSwitchToParamsModelCapabilitiesLimitsVision vision) { this.vision = vision; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionModelSwitchToParamsModelCapabilitiesLimitsVision { + + /** MIME types the model accepts */ + @JsonProperty("supported_media_types") + private List supportedMediaTypes; + + /** Maximum number of images per prompt */ + @JsonProperty("max_prompt_images") + private Double maxPromptImages; + + /** Maximum image size in bytes */ + @JsonProperty("max_prompt_image_size") + private Double maxPromptImageSize; + + public List getSupportedMediaTypes() { return supportedMediaTypes; } + public void setSupportedMediaTypes(List supportedMediaTypes) { this.supportedMediaTypes = supportedMediaTypes; } + + public Double getMaxPromptImages() { return maxPromptImages; } + public void setMaxPromptImages(Double maxPromptImages) { this.maxPromptImages = maxPromptImages; } + + public Double getMaxPromptImageSize() { return maxPromptImageSize; } + public void setMaxPromptImageSize(Double maxPromptImageSize) { this.maxPromptImageSize = maxPromptImageSize; } + } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToResult.java new file mode 100644 index 000000000..5f8cc4255 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionModelSwitchToResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.model.switchTo} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionModelSwitchToResult { + + /** Currently active model identifier after the switch */ + @JsonProperty("modelId") + private String modelId; + + public String getModelId() { return modelId; } + public void setModelId(String modelId) { this.modelId = modelId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestParams.java new file mode 100644 index 000000000..c8dc784fa --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestParams.java @@ -0,0 +1,40 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.permissions.handlePendingPermissionRequest} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPermissionsHandlePendingPermissionRequestParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Request ID of the pending permission request */ + @JsonProperty("requestId") + private String requestId; + + @JsonProperty("result") + private Object result; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public Object getResult() { return result; } + public void setResult(Object result) { this.result = result; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestResult.java new file mode 100644 index 000000000..43e13352c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPermissionsHandlePendingPermissionRequestResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.permissions.handlePendingPermissionRequest} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPermissionsHandlePendingPermissionRequestResult { + + /** Whether the permission request was handled successfully */ + @JsonProperty("success") + private Boolean success; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteParams.java new file mode 100644 index 000000000..6527dc523 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.plan.delete} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanDeleteParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteResult.java new file mode 100644 index 000000000..f67d2dc3c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanDeleteResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.plan.delete} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanDeleteResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadParams.java new file mode 100644 index 000000000..f0ca17b19 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.plan.read} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanReadParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadResult.java new file mode 100644 index 000000000..4e8141b2e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanReadResult.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.plan.read} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanReadResult { + + /** Whether the plan file exists in the workspace */ + @JsonProperty("exists") + private Boolean exists; + + /** The content of the plan file, or null if it does not exist */ + @JsonProperty("content") + private String content; + + /** Absolute file path of the plan file, or null if workspace is not enabled */ + @JsonProperty("path") + private String path; + + public Boolean getExists() { return exists; } + public void setExists(Boolean exists) { this.exists = exists; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateParams.java new file mode 100644 index 000000000..5c563862e --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.plan.update} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanUpdateParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** The new content for the plan file */ + @JsonProperty("content") + private String content; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateResult.java new file mode 100644 index 000000000..cdc4fe8d3 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPlanUpdateResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.plan.update} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPlanUpdateResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListParams.java new file mode 100644 index 000000000..c23872814 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.plugins.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPluginsListParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListResult.java new file mode 100644 index 000000000..aa93f320f --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionPluginsListResult.java @@ -0,0 +1,62 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.plugins.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionPluginsListResult { + + /** Installed plugins */ + @JsonProperty("plugins") + private List plugins; + + public List getPlugins() { return plugins; } + public void setPlugins(List plugins) { this.plugins = plugins; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionPluginsListResultPluginsItem { + + /** Plugin name */ + @JsonProperty("name") + private String name; + + /** Marketplace the plugin came from */ + @JsonProperty("marketplace") + private String marketplace; + + /** Installed version */ + @JsonProperty("version") + private String version; + + /** Whether the plugin is currently enabled */ + @JsonProperty("enabled") + private Boolean enabled; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getMarketplace() { return marketplace; } + public void setMarketplace(String marketplace) { this.marketplace = marketplace; } + + public String getVersion() { return version; } + public void setVersion(String version) { this.version = version; } + + public Boolean getEnabled() { return enabled; } + public void setEnabled(Boolean enabled) { this.enabled = enabled; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecParams.java new file mode 100644 index 000000000..043634527 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.shell.exec} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionShellExecParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Shell command to execute */ + @JsonProperty("command") + private String command; + + /** Working directory (defaults to session working directory) */ + @JsonProperty("cwd") + private String cwd; + + /** Timeout in milliseconds (default: 30000) */ + @JsonProperty("timeout") + private Double timeout; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getCommand() { return command; } + public void setCommand(String command) { this.command = command; } + + public String getCwd() { return cwd; } + public void setCwd(String cwd) { this.cwd = cwd; } + + public Double getTimeout() { return timeout; } + public void setTimeout(Double timeout) { this.timeout = timeout; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecResult.java new file mode 100644 index 000000000..db18f482a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellExecResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.shell.exec} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionShellExecResult { + + /** Unique identifier for tracking streamed output */ + @JsonProperty("processId") + private String processId; + + public String getProcessId() { return processId; } + public void setProcessId(String processId) { this.processId = processId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillParams.java new file mode 100644 index 000000000..491a32bd1 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillParams.java @@ -0,0 +1,57 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.shell.kill} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionShellKillParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Process identifier returned by shell.exec */ + @JsonProperty("processId") + private String processId; + + /** Signal to send (default: SIGTERM) */ + @JsonProperty("signal") + private SessionShellKillParamsSignal signal; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getProcessId() { return processId; } + public void setProcessId(String processId) { this.processId = processId; } + + public SessionShellKillParamsSignal getSignal() { return signal; } + public void setSignal(SessionShellKillParamsSignal signal) { this.signal = signal; } + + + /** Signal to send (default: SIGTERM) */ + public enum SessionShellKillParamsSignal { + /** The {@code SIGTERM} variant. */ + SIGTERM("SIGTERM"), + /** The {@code SIGKILL} variant. */ + SIGKILL("SIGKILL"), + /** The {@code SIGINT} variant. */ + SIGINT("SIGINT"); + + private final String value; + SessionShellKillParamsSignal(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillResult.java new file mode 100644 index 000000000..1af4fd82a --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionShellKillResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.shell.kill} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionShellKillResult { + + /** Whether the signal was sent successfully */ + @JsonProperty("killed") + private Boolean killed; + + public Boolean getKilled() { return killed; } + public void setKilled(Boolean killed) { this.killed = killed; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableParams.java new file mode 100644 index 000000000..60956738b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.skills.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsDisableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Name of the skill to disable */ + @JsonProperty("name") + private String name; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableResult.java new file mode 100644 index 000000000..a643e5a52 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsDisableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.skills.disable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsDisableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableParams.java new file mode 100644 index 000000000..93c9cea96 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.skills.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsEnableParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Name of the skill to enable */ + @JsonProperty("name") + private String name; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getName() { return name; } + public void setName(String name) { this.name = name; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableResult.java new file mode 100644 index 000000000..290939969 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsEnableResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.skills.enable} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsEnableResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListParams.java new file mode 100644 index 000000000..5bfe6c386 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.skills.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsListParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListResult.java new file mode 100644 index 000000000..12b7b350c --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsListResult.java @@ -0,0 +1,76 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.skills.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsListResult { + + /** Available skills */ + @JsonProperty("skills") + private List skills; + + public List getSkills() { return skills; } + public void setSkills(List skills) { this.skills = skills; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionSkillsListResultSkillsItem { + + /** Unique identifier for the skill */ + @JsonProperty("name") + private String name; + + /** Description of what the skill does */ + @JsonProperty("description") + private String description; + + /** Source location type (e.g., project, personal, plugin) */ + @JsonProperty("source") + private String source; + + /** Whether the skill can be invoked by the user as a slash command */ + @JsonProperty("userInvocable") + private Boolean userInvocable; + + /** Whether the skill is currently enabled */ + @JsonProperty("enabled") + private Boolean enabled; + + /** Absolute path to the skill file */ + @JsonProperty("path") + private String path; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + + public String getSource() { return source; } + public void setSource(String source) { this.source = source; } + + public Boolean getUserInvocable() { return userInvocable; } + public void setUserInvocable(Boolean userInvocable) { this.userInvocable = userInvocable; } + + public Boolean getEnabled() { return enabled; } + public void setEnabled(Boolean enabled) { this.enabled = enabled; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadParams.java new file mode 100644 index 000000000..643313d40 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.skills.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsReloadParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadResult.java new file mode 100644 index 000000000..a2a35dcba --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionSkillsReloadResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.skills.reload} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionSkillsReloadResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallParams.java new file mode 100644 index 000000000..9130d7ef0 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallParams.java @@ -0,0 +1,48 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.tools.handlePendingToolCall} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionToolsHandlePendingToolCallParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Request ID of the pending tool call */ + @JsonProperty("requestId") + private String requestId; + + /** Tool call result (string or expanded result object) */ + @JsonProperty("result") + private Object result; + + /** Error message if the tool call failed */ + @JsonProperty("error") + private String error; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public Object getResult() { return result; } + public void setResult(Object result) { this.result = result; } + + public String getError() { return error; } + public void setError(String error) { this.error = error; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallResult.java new file mode 100644 index 000000000..0c087b1dc --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionToolsHandlePendingToolCallResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.tools.handlePendingToolCall} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionToolsHandlePendingToolCallResult { + + /** Whether the tool call result was handled successfully */ + @JsonProperty("success") + private Boolean success; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationParams.java new file mode 100644 index 000000000..2639491eb --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationParams.java @@ -0,0 +1,71 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.ui.elicitation} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUiElicitationParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Message describing what information is needed from the user */ + @JsonProperty("message") + private String message; + + /** JSON Schema describing the form fields to present to the user */ + @JsonProperty("requestedSchema") + private SessionUiElicitationParamsRequestedSchema requestedSchema; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getMessage() { return message; } + public void setMessage(String message) { this.message = message; } + + public SessionUiElicitationParamsRequestedSchema getRequestedSchema() { return requestedSchema; } + public void setRequestedSchema(SessionUiElicitationParamsRequestedSchema requestedSchema) { this.requestedSchema = requestedSchema; } + + + /** JSON Schema describing the form fields to present to the user */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUiElicitationParamsRequestedSchema { + + /** Schema type indicator (always 'object') */ + @JsonProperty("type") + private String type; + + /** Form field definitions, keyed by field name */ + @JsonProperty("properties") + private Map properties; + + /** List of required field names */ + @JsonProperty("required") + private List required; + + public String getType() { return type; } + public void setType(String type) { this.type = type; } + + public Map getProperties() { return properties; } + public void setProperties(Map properties) { this.properties = properties; } + + public List getRequired() { return required; } + public void setRequired(List required) { this.required = required; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationResult.java new file mode 100644 index 000000000..9eb30df10 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiElicitationResult.java @@ -0,0 +1,51 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.ui.elicitation} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUiElicitationResult { + + /** The user's response: accept (submitted), decline (rejected), or cancel (dismissed) */ + @JsonProperty("action") + private SessionUiElicitationResultAction action; + + /** The form values submitted by the user (present when action is 'accept') */ + @JsonProperty("content") + private Map content; + + public SessionUiElicitationResultAction getAction() { return action; } + public void setAction(SessionUiElicitationResultAction action) { this.action = action; } + + public Map getContent() { return content; } + public void setContent(Map content) { this.content = content; } + + + /** The user's response: accept (submitted), decline (rejected), or cancel (dismissed) */ + public enum SessionUiElicitationResultAction { + /** The {@code accept} variant. */ + ACCEPT("accept"), + /** The {@code decline} variant. */ + DECLINE("decline"), + /** The {@code cancel} variant. */ + CANCEL("cancel"); + + private final String value; + SessionUiElicitationResultAction(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationParams.java new file mode 100644 index 000000000..ed056a2f3 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationParams.java @@ -0,0 +1,79 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.ui.handlePendingElicitation} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUiHandlePendingElicitationParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** The unique request ID from the elicitation.requested event */ + @JsonProperty("requestId") + private String requestId; + + /** The elicitation response (accept with form values, decline, or cancel) */ + @JsonProperty("result") + private SessionUiHandlePendingElicitationParamsResult result; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getRequestId() { return requestId; } + public void setRequestId(String requestId) { this.requestId = requestId; } + + public SessionUiHandlePendingElicitationParamsResult getResult() { return result; } + public void setResult(SessionUiHandlePendingElicitationParamsResult result) { this.result = result; } + + + /** The elicitation response (accept with form values, decline, or cancel) */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUiHandlePendingElicitationParamsResult { + + /** The user's response: accept (submitted), decline (rejected), or cancel (dismissed) */ + @JsonProperty("action") + private SessionUiHandlePendingElicitationParamsResultAction action; + + /** The form values submitted by the user (present when action is 'accept') */ + @JsonProperty("content") + private Map content; + + public SessionUiHandlePendingElicitationParamsResultAction getAction() { return action; } + public void setAction(SessionUiHandlePendingElicitationParamsResultAction action) { this.action = action; } + + public Map getContent() { return content; } + public void setContent(Map content) { this.content = content; } + + + /** The user's response: accept (submitted), decline (rejected), or cancel (dismissed) */ + public enum SessionUiHandlePendingElicitationParamsResultAction { + /** The {@code accept} variant. */ + ACCEPT("accept"), + /** The {@code decline} variant. */ + DECLINE("decline"), + /** The {@code cancel} variant. */ + CANCEL("cancel"); + + private final String value; + SessionUiHandlePendingElicitationParamsResultAction(String value) { this.value = value; } + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { return value; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationResult.java new file mode 100644 index 000000000..4ad44a973 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUiHandlePendingElicitationResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.ui.handlePendingElicitation} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUiHandlePendingElicitationResult { + + /** Whether the response was accepted. False if the request was already resolved by another client. */ + @JsonProperty("success") + private Boolean success; + + public Boolean getSuccess() { return success; } + public void setSuccess(Boolean success) { this.success = success; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsParams.java new file mode 100644 index 000000000..0806e56b8 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.usage.getMetrics} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUsageGetMetricsParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsResult.java new file mode 100644 index 000000000..65de3adc4 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionUsageGetMetricsResult.java @@ -0,0 +1,193 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.usage.getMetrics} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionUsageGetMetricsResult { + + /** Total user-initiated premium request cost across all models (may be fractional due to multipliers) */ + @JsonProperty("totalPremiumRequestCost") + private Double totalPremiumRequestCost; + + /** Raw count of user-initiated API requests */ + @JsonProperty("totalUserRequests") + private Double totalUserRequests; + + /** Total time spent in model API calls (milliseconds) */ + @JsonProperty("totalApiDurationMs") + private Double totalApiDurationMs; + + /** Session start timestamp (epoch milliseconds) */ + @JsonProperty("sessionStartTime") + private Double sessionStartTime; + + /** Aggregated code change metrics */ + @JsonProperty("codeChanges") + private SessionUsageGetMetricsResultCodeChanges codeChanges; + + /** Per-model token and request metrics, keyed by model identifier */ + @JsonProperty("modelMetrics") + private Map modelMetrics; + + /** Currently active model identifier */ + @JsonProperty("currentModel") + private String currentModel; + + /** Input tokens from the most recent main-agent API call */ + @JsonProperty("lastCallInputTokens") + private Double lastCallInputTokens; + + /** Output tokens from the most recent main-agent API call */ + @JsonProperty("lastCallOutputTokens") + private Double lastCallOutputTokens; + + public Double getTotalPremiumRequestCost() { return totalPremiumRequestCost; } + public void setTotalPremiumRequestCost(Double totalPremiumRequestCost) { this.totalPremiumRequestCost = totalPremiumRequestCost; } + + public Double getTotalUserRequests() { return totalUserRequests; } + public void setTotalUserRequests(Double totalUserRequests) { this.totalUserRequests = totalUserRequests; } + + public Double getTotalApiDurationMs() { return totalApiDurationMs; } + public void setTotalApiDurationMs(Double totalApiDurationMs) { this.totalApiDurationMs = totalApiDurationMs; } + + public Double getSessionStartTime() { return sessionStartTime; } + public void setSessionStartTime(Double sessionStartTime) { this.sessionStartTime = sessionStartTime; } + + public SessionUsageGetMetricsResultCodeChanges getCodeChanges() { return codeChanges; } + public void setCodeChanges(SessionUsageGetMetricsResultCodeChanges codeChanges) { this.codeChanges = codeChanges; } + + public Map getModelMetrics() { return modelMetrics; } + public void setModelMetrics(Map modelMetrics) { this.modelMetrics = modelMetrics; } + + public String getCurrentModel() { return currentModel; } + public void setCurrentModel(String currentModel) { this.currentModel = currentModel; } + + public Double getLastCallInputTokens() { return lastCallInputTokens; } + public void setLastCallInputTokens(Double lastCallInputTokens) { this.lastCallInputTokens = lastCallInputTokens; } + + public Double getLastCallOutputTokens() { return lastCallOutputTokens; } + public void setLastCallOutputTokens(Double lastCallOutputTokens) { this.lastCallOutputTokens = lastCallOutputTokens; } + + + /** Aggregated code change metrics */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUsageGetMetricsResultCodeChanges { + + /** Total lines of code added */ + @JsonProperty("linesAdded") + private Double linesAdded; + + /** Total lines of code removed */ + @JsonProperty("linesRemoved") + private Double linesRemoved; + + /** Number of distinct files modified */ + @JsonProperty("filesModifiedCount") + private Double filesModifiedCount; + + public Double getLinesAdded() { return linesAdded; } + public void setLinesAdded(Double linesAdded) { this.linesAdded = linesAdded; } + + public Double getLinesRemoved() { return linesRemoved; } + public void setLinesRemoved(Double linesRemoved) { this.linesRemoved = linesRemoved; } + + public Double getFilesModifiedCount() { return filesModifiedCount; } + public void setFilesModifiedCount(Double filesModifiedCount) { this.filesModifiedCount = filesModifiedCount; } + } + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUsageGetMetricsResultModelMetricsValue { + + /** Request count and cost metrics for this model */ + @JsonProperty("requests") + private SessionUsageGetMetricsResultModelMetricsValueRequests requests; + + /** Token usage metrics for this model */ + @JsonProperty("usage") + private SessionUsageGetMetricsResultModelMetricsValueUsage usage; + + public SessionUsageGetMetricsResultModelMetricsValueRequests getRequests() { return requests; } + public void setRequests(SessionUsageGetMetricsResultModelMetricsValueRequests requests) { this.requests = requests; } + + public SessionUsageGetMetricsResultModelMetricsValueUsage getUsage() { return usage; } + public void setUsage(SessionUsageGetMetricsResultModelMetricsValueUsage usage) { this.usage = usage; } + + + /** Request count and cost metrics for this model */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUsageGetMetricsResultModelMetricsValueRequests { + + /** Number of API requests made with this model */ + @JsonProperty("count") + private Double count; + + /** User-initiated premium request cost (with multiplier applied) */ + @JsonProperty("cost") + private Double cost; + + public Double getCount() { return count; } + public void setCount(Double count) { this.count = count; } + + public Double getCost() { return cost; } + public void setCost(Double cost) { this.cost = cost; } + } + + /** Token usage metrics for this model */ + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class SessionUsageGetMetricsResultModelMetricsValueUsage { + + /** Total input tokens consumed */ + @JsonProperty("inputTokens") + private Double inputTokens; + + /** Total output tokens produced */ + @JsonProperty("outputTokens") + private Double outputTokens; + + /** Total tokens read from prompt cache */ + @JsonProperty("cacheReadTokens") + private Double cacheReadTokens; + + /** Total tokens written to prompt cache */ + @JsonProperty("cacheWriteTokens") + private Double cacheWriteTokens; + + /** Total output tokens used for reasoning */ + @JsonProperty("reasoningTokens") + private Double reasoningTokens; + + public Double getInputTokens() { return inputTokens; } + public void setInputTokens(Double inputTokens) { this.inputTokens = inputTokens; } + + public Double getOutputTokens() { return outputTokens; } + public void setOutputTokens(Double outputTokens) { this.outputTokens = outputTokens; } + + public Double getCacheReadTokens() { return cacheReadTokens; } + public void setCacheReadTokens(Double cacheReadTokens) { this.cacheReadTokens = cacheReadTokens; } + + public Double getCacheWriteTokens() { return cacheWriteTokens; } + public void setCacheWriteTokens(Double cacheWriteTokens) { this.cacheWriteTokens = cacheWriteTokens; } + + public Double getReasoningTokens() { return reasoningTokens; } + public void setReasoningTokens(Double reasoningTokens) { this.reasoningTokens = reasoningTokens; } + } + } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileParams.java new file mode 100644 index 000000000..4b3972a17 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileParams.java @@ -0,0 +1,41 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.workspace.createFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceCreateFileParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Relative path within the workspace files directory */ + @JsonProperty("path") + private String path; + + /** File content to write as a UTF-8 string */ + @JsonProperty("content") + private String content; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileResult.java new file mode 100644 index 000000000..c5b37cb41 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceCreateFileResult.java @@ -0,0 +1,20 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.workspace.createFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceCreateFileResult { +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesParams.java new file mode 100644 index 000000000..953b3f481 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.workspace.listFiles} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceListFilesParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesResult.java new file mode 100644 index 000000000..c8a6b81d9 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceListFilesResult.java @@ -0,0 +1,28 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.workspace.listFiles} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceListFilesResult { + + /** Relative file paths in the workspace files directory */ + @JsonProperty("files") + private List files; + + public List getFiles() { return files; } + public void setFiles(List files) { this.files = files; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileParams.java new file mode 100644 index 000000000..e98c773ce --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code session.workspace.readFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceReadFileParams { + + /** Target session identifier */ + @JsonProperty("sessionId") + private String sessionId; + + /** Relative path within the workspace files directory */ + @JsonProperty("path") + private String path; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getPath() { return path; } + public void setPath(String path) { this.path = path; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileResult.java new file mode 100644 index 000000000..44eb5c226 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionWorkspaceReadFileResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code session.workspace.readFile} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionWorkspaceReadFileResult { + + /** File content as a UTF-8 string */ + @JsonProperty("content") + private String content; + + public String getContent() { return content; } + public void setContent(String content) { this.content = content; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkParams.java new file mode 100644 index 000000000..f690b27a7 --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkParams.java @@ -0,0 +1,34 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code sessions.fork} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionsForkParams { + + /** Source session ID to fork from */ + @JsonProperty("sessionId") + private String sessionId; + + /** Optional event ID boundary. When provided, the fork includes only events before this ID (exclusive). When omitted, all events are included. */ + @JsonProperty("toEventId") + private String toEventId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } + + public String getToEventId() { return toEventId; } + public void setToEventId(String toEventId) { this.toEventId = toEventId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkResult.java new file mode 100644 index 000000000..11809304b --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/SessionsForkResult.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Result for the {@code sessions.fork} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class SessionsForkResult { + + /** The new forked session's ID */ + @JsonProperty("sessionId") + private String sessionId; + + public String getSessionId() { return sessionId; } + public void setSessionId(String sessionId) { this.sessionId = sessionId; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListParams.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListParams.java new file mode 100644 index 000000000..15957dffd --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListParams.java @@ -0,0 +1,27 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import javax.annotation.processing.Generated; + +/** Request parameters for the {@code tools.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class ToolsListParams { + + /** Optional model ID — when provided, the returned tool list reflects model-specific overrides */ + @JsonProperty("model") + private String model; + + public String getModel() { return model; } + public void setModel(String model) { this.model = model; } +} diff --git a/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListResult.java b/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListResult.java new file mode 100644 index 000000000..0e56aebfb --- /dev/null +++ b/src/generated/java/com/github/copilot/sdk/generated/rpc/ToolsListResult.java @@ -0,0 +1,70 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + *--------------------------------------------------------------------------------------------*/ + +// AUTO-GENERATED FILE - DO NOT EDIT +// Generated from: api.schema.json + +package com.github.copilot.sdk.generated.rpc; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.util.Map; +import javax.annotation.processing.Generated; + +/** Result for the {@code tools.list} RPC method. */ +@javax.annotation.processing.Generated("copilot-sdk-codegen") +@JsonInclude(JsonInclude.Include.NON_NULL) +@JsonIgnoreProperties(ignoreUnknown = true) +public class ToolsListResult { + + /** List of available built-in tools with metadata */ + @JsonProperty("tools") + private List tools; + + public List getTools() { return tools; } + public void setTools(List tools) { this.tools = tools; } + + + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonInclude(JsonInclude.Include.NON_NULL) + public static class ToolsListResultToolsItem { + + /** Tool identifier (e.g., "bash", "grep", "str_replace_editor") */ + @JsonProperty("name") + private String name; + + /** Optional namespaced name for declarative filtering (e.g., "playwright/navigate" for MCP tools) */ + @JsonProperty("namespacedName") + private String namespacedName; + + /** Description of what the tool does */ + @JsonProperty("description") + private String description; + + /** JSON Schema for the tool's input parameters */ + @JsonProperty("parameters") + private Map parameters; + + /** Optional instructions for how to use this tool effectively */ + @JsonProperty("instructions") + private String instructions; + + public String getName() { return name; } + public void setName(String name) { this.name = name; } + + public String getNamespacedName() { return namespacedName; } + public void setNamespacedName(String namespacedName) { this.namespacedName = namespacedName; } + + public String getDescription() { return description; } + public void setDescription(String description) { this.description = description; } + + public Map getParameters() { return parameters; } + public void setParameters(Map parameters) { this.parameters = parameters; } + + public String getInstructions() { return instructions; } + public void setInstructions(String instructions) { this.instructions = instructions; } + } +}