@codingame/monaco-vscode-chat-service-override 31.0.0 → 32.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -1
- package/index.js +21 -5
- package/package.json +5 -5
- package/vscode/src/vs/base/common/defaultAccount.d.ts +69 -0
- package/vscode/src/vs/base/common/defaultAccount.js +12 -0
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +91 -22
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +301 -68
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +24 -5
- package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +89 -16
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.d.ts +17 -5
- package/vscode/src/vs/platform/agentHost/browser/webSocketClientTransport.js +73 -10
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +32 -6
- package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +32 -20
- package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.d.ts +37 -0
- package/vscode/src/vs/platform/agentHost/common/agentHostPermissionService.js +15 -0
- package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +242 -201
- package/vscode/src/vs/platform/agentHost/common/agentService.js +3 -1
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.d.ts +35 -0
- package/vscode/src/vs/platform/agentHost/common/ahpJsonlLogger.js +106 -0
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +38 -30
- package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +2 -1
- package/vscode/src/vs/platform/agentHost/common/state/protocol/errors.d.ts +114 -4
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.d.ts +10 -10
- package/vscode/src/vs/platform/agentHost/common/state/protocol/reducers.js +52 -19
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +42 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +7 -0
- package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +42 -41
- package/vscode/src/vs/platform/agentHost/common/state/sessionTransport.d.ts +6 -6
- package/vscode/src/vs/platform/agentHost/common/transportConstants.d.ts +15 -0
- package/vscode/src/vs/platform/agentHost/common/transportConstants.js +6 -0
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.d.ts +4 -3
- package/vscode/src/vs/platform/agentPlugins/common/pluginParsers.js +4 -3
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.d.ts +4 -2
- package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +15 -7
- package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/browserView/common/browserChatToolReferenceNames.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +64 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +31 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +18 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +30 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +27 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +21 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.js +171 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +12 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.js +11 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +63 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +10 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +8 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +99 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +17 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +35 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +347 -326
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidgetUtils.js +1 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +113 -109
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +37 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +436 -134
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +52 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +7 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +60 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +93 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +73 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +272 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +30 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +430 -185
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +44 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +480 -279
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.d.ts +138 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.js +221 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +84 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +1216 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +32 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +26 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +28 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +25 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +68 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +650 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +46 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +533 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +390 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.d.ts +101 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +509 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +18 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +130 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +276 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +6 -87
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +116 -182
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +12 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +31 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +61 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +16 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +106 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +25 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +629 -425
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +105 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +175 -148
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +20 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +9 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/githubRepoFetcher.js +339 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/media/planReviewFeedback.css +160 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +123 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +572 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.js +167 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.d.ts +49 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +315 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +45 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +44 -40
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileContributions.js +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +111 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +13 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +4 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolResultCompressorService.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.d.ts +3 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +14 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +17 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +23 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +136 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletionsBase.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletionUtils.js +14 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +41 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +30 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +108 -45
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +65 -26
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +38 -11
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +17 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +165 -16
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +62 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +15 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +18 -24
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +203 -180
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.js +35 -0
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +27 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +14 -49
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +0 -16
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +35 -177
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +2 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -11
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +29 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +129 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +3 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +14 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.d.ts +1 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +12 -38
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +77 -70
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +232 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.d.ts +83 -0
- package/vscode/src/vs/workbench/services/agentHost/common/agentHostPermissionService.js +243 -0
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.d.ts +0 -749
- package/vscode/src/vs/platform/agentHost/common/state/protocol/commands.js +0 -14
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.d.ts +0 -17
- package/vscode/src/vs/platform/agentHost/common/state/sessionCapabilities.js +0 -5
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.d.ts +0 -40
- package/vscode/src/vs/platform/agentHost/common/state/sessionProtocol.js +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +0 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +0 -638
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +0 -131
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +0 -363
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +0 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +0 -306
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +0 -97
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatStatusWidget.css +0 -57
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +0 -29
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +0 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +0 -78
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +0 -77
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +0 -120
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +0 -23
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +0 -242
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +0 -1701
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +0 -191
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +0 -728
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatHistoryService.js +0 -69
|
@@ -4,11 +4,11 @@ import type { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/co
|
|
|
4
4
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
5
5
|
import type { ISyncedCustomization } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentPluginManager";
|
|
6
6
|
import type { IAgentSubscription } from "./state/agentSubscription.js";
|
|
7
|
-
import type {
|
|
8
|
-
import {
|
|
9
|
-
import type {
|
|
10
|
-
import type {
|
|
11
|
-
import {
|
|
7
|
+
import type { CompletionsParams, CompletionsResult, CreateTerminalParams, ResolveSessionConfigResult, SessionConfigCompletionsResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/commands";
|
|
8
|
+
import { ProtectedResourceMetadata, type ConfigSchema, type FileEdit, type MessageAttachment, type ModelSelection, type SessionActiveClient, type ToolCallPendingConfirmationState, type ToolDefinition } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/state";
|
|
9
|
+
import type { ActionEnvelope, INotification, IRootConfigChangedAction, SessionAction, TerminalAction } from "./state/sessionActions.js";
|
|
10
|
+
import type { ResourceCopyParams, ResourceCopyResult, ResourceDeleteParams, ResourceDeleteResult, ResourceListResult, ResourceMoveParams, ResourceMoveResult, ResourceReadResult, ResourceWriteParams, ResourceWriteResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/sessionProtocol";
|
|
11
|
+
import { ComponentToState, SessionInputResponseKind, SessionStatus, StateComponents, type CustomizationRef, type PendingMessage, type RootState, type SessionCustomization, type SessionInputAnswer, type SessionMeta, type ToolCallResult, type Turn, type PolicyState } from "@codingame/monaco-vscode-xterm-common/vscode/vs/platform/agentHost/common/state/sessionState";
|
|
12
12
|
export declare enum AgentHostIpcChannels {
|
|
13
13
|
/** Channel for the agent host service on the main-process side */
|
|
14
14
|
AgentHost = "agentHost",
|
|
@@ -21,10 +21,39 @@ export declare enum AgentHostIpcChannels {
|
|
|
21
21
|
export declare const AgentHostEnabledSettingId = "chat.agentHost.enabled";
|
|
22
22
|
/** Configuration key that controls whether per-host IPC traffic output channels are created. */
|
|
23
23
|
export declare const AgentHostIpcLoggingSettingId = "chat.agentHost.ipcLoggingEnabled";
|
|
24
|
+
/** Configuration key that controls whether AHP JSONL logs are written for agent host transports. */
|
|
25
|
+
export declare const AgentHostAhpJsonlLoggingSettingId = "chat.agentHost.ahpJsonlLoggingEnabled";
|
|
26
|
+
/**
|
|
27
|
+
* Configuration key that holds the absolute path to a locally-installed
|
|
28
|
+
* `@anthropic-ai/claude-agent-sdk` package. When non-empty, the Claude agent
|
|
29
|
+
* provider is registered inside the agent host and the SDK module is loaded
|
|
30
|
+
* via dynamic `import()` from this path. When empty (the default), the
|
|
31
|
+
* Claude provider is not registered. The SDK is intentionally not bundled
|
|
32
|
+
* with VS Code; users opting into the Claude agent install the SDK
|
|
33
|
+
* themselves and point this setting at it. The agent host process must be
|
|
34
|
+
* restarted for changes to take effect.
|
|
35
|
+
*/
|
|
36
|
+
export declare const AgentHostClaudeAgentSdkPathSettingId = "chat.agentHost.claudeAgent.path";
|
|
37
|
+
/**
|
|
38
|
+
* Environment variable that holds the absolute path to a locally-installed
|
|
39
|
+
* `@anthropic-ai/claude-agent-sdk` package. When set to a non-empty value,
|
|
40
|
+
* the agent host process registers the Claude agent provider and loads the
|
|
41
|
+
* SDK module from this path. Set by the agent host starters from
|
|
42
|
+
* {@link AgentHostClaudeAgentSdkPathSettingId}, and may also be set directly
|
|
43
|
+
* by developers as an override.
|
|
44
|
+
*/
|
|
45
|
+
export declare const AgentHostClaudeSdkPathEnvVar = "VSCODE_AGENT_HOST_CLAUDE_SDK_PATH";
|
|
24
46
|
/** Result of starting the agent host WebSocket server on-demand. */
|
|
25
47
|
export interface IAgentHostSocketInfo {
|
|
26
48
|
readonly socketPath: string;
|
|
27
49
|
}
|
|
50
|
+
/** Inspector listener information for the agent host process. */
|
|
51
|
+
export interface IAgentHostInspectInfo {
|
|
52
|
+
readonly host: string;
|
|
53
|
+
readonly port: number;
|
|
54
|
+
/** A `devtools://` URL that can be opened with `INativeHostService.openDevToolsWindow`. */
|
|
55
|
+
readonly devtoolsUrl: string;
|
|
56
|
+
}
|
|
28
57
|
/**
|
|
29
58
|
* IPC service exposed on the {@link AgentHostIpcChannels.ConnectionTracker}
|
|
30
59
|
* channel. Used by the server process for lifetime management and by the
|
|
@@ -38,6 +67,13 @@ export interface IConnectionTrackerService {
|
|
|
38
67
|
* If a server is already running, returns the existing info.
|
|
39
68
|
*/
|
|
40
69
|
startWebSocketServer(): Promise<IAgentHostSocketInfo>;
|
|
70
|
+
/**
|
|
71
|
+
* Get inspector listener info for the agent host process. If the inspector
|
|
72
|
+
* is not currently active and `tryEnable` is true, opens the inspector on
|
|
73
|
+
* a random local port. Returns `undefined` if the inspector cannot be
|
|
74
|
+
* enabled (e.g. running in an environment without `node:inspector`).
|
|
75
|
+
*/
|
|
76
|
+
getInspectInfo(tryEnable: boolean): Promise<IAgentHostInspectInfo | undefined>;
|
|
41
77
|
}
|
|
42
78
|
export interface IAgentSessionMetadata {
|
|
43
79
|
readonly session: URI;
|
|
@@ -46,11 +82,22 @@ export interface IAgentSessionMetadata {
|
|
|
46
82
|
readonly project?: IAgentSessionProjectInfo;
|
|
47
83
|
readonly summary?: string;
|
|
48
84
|
readonly status?: SessionStatus;
|
|
49
|
-
|
|
85
|
+
/** Human-readable description of what the session is currently doing. */
|
|
86
|
+
readonly activity?: string;
|
|
87
|
+
readonly model?: ModelSelection;
|
|
50
88
|
readonly workingDirectory?: URI;
|
|
89
|
+
readonly customizationDirectory?: URI;
|
|
51
90
|
readonly isRead?: boolean;
|
|
52
|
-
readonly
|
|
53
|
-
readonly diffs?: readonly
|
|
91
|
+
readonly isArchived?: boolean;
|
|
92
|
+
readonly diffs?: readonly FileEdit[];
|
|
93
|
+
/**
|
|
94
|
+
* Side-channel metadata mirroring {@link SessionState._meta}, propagated
|
|
95
|
+
* to clients via per-session state subscriptions.
|
|
96
|
+
* Producers SHOULD use namespaced keys; consumers MUST ignore unknown
|
|
97
|
+
* keys. Use the typed accessors in `sessionState.ts` (e.g.
|
|
98
|
+
* `readSessionGitState`) for well-known slots.
|
|
99
|
+
*/
|
|
100
|
+
readonly _meta?: SessionMeta;
|
|
54
101
|
}
|
|
55
102
|
export interface IAgentSessionProjectInfo {
|
|
56
103
|
readonly uri: URI;
|
|
@@ -61,6 +108,26 @@ export interface IAgentCreateSessionResult {
|
|
|
61
108
|
readonly project?: IAgentSessionProjectInfo;
|
|
62
109
|
/** The resolved working directory, which may differ from the requested one (e.g. worktree). */
|
|
63
110
|
readonly workingDirectory?: URI;
|
|
111
|
+
/**
|
|
112
|
+
* `true` when the agent only allocated an in-memory placeholder for this
|
|
113
|
+
* session (no SDK session, no worktree, no on-disk state). Materialization
|
|
114
|
+
* happens lazily on the first {@link IAgent.sendMessage}, at which point
|
|
115
|
+
* the agent fires {@link IAgent.onDidMaterializeSession}. The
|
|
116
|
+
* {@link IAgentService} uses this flag to defer the `sessionAdded` protocol
|
|
117
|
+
* notification so observers don't see the session in their list until it
|
|
118
|
+
* has been persisted.
|
|
119
|
+
*/
|
|
120
|
+
readonly provisional?: boolean;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Payload of {@link IAgent.onDidMaterializeSession}. Fired once per session
|
|
124
|
+
* when a previously {@link IAgentCreateSessionResult.provisional} session has
|
|
125
|
+
* its SDK session, worktree (if any), and on-disk metadata in place.
|
|
126
|
+
*/
|
|
127
|
+
export interface IAgentMaterializeSessionEvent {
|
|
128
|
+
readonly session: URI;
|
|
129
|
+
readonly workingDirectory: URI | undefined;
|
|
130
|
+
readonly project: IAgentSessionProjectInfo | undefined;
|
|
64
131
|
}
|
|
65
132
|
export type AgentProvider = string;
|
|
66
133
|
/** Metadata describing an agent backend, discovered over IPC. */
|
|
@@ -73,7 +140,7 @@ export interface IAgentDescriptor {
|
|
|
73
140
|
* Parameters for the `authenticate` command.
|
|
74
141
|
* Analogous to sending `Authorization: Bearer <token>` (RFC 6750 section 2.1).
|
|
75
142
|
*/
|
|
76
|
-
export interface
|
|
143
|
+
export interface AuthenticateParams {
|
|
77
144
|
/**
|
|
78
145
|
* The `resource` identifier from the server's
|
|
79
146
|
* {@link IAuthorizationProtectedResourceMetadata} that this token targets.
|
|
@@ -85,16 +152,33 @@ export interface IAuthenticateParams {
|
|
|
85
152
|
/**
|
|
86
153
|
* Result of the `authenticate` command.
|
|
87
154
|
*/
|
|
88
|
-
export interface
|
|
155
|
+
export interface AuthenticateResult {
|
|
89
156
|
/** Whether the token was accepted. */
|
|
90
157
|
readonly authenticated: boolean;
|
|
91
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* Canonical {@link ProtectedResourceMetadata} for the GitHub Copilot
|
|
161
|
+
* resource. Shared between every agent provider that consumes a GitHub
|
|
162
|
+
* Copilot bearer token (e.g. Copilot CLI, Claude) so they advertise an
|
|
163
|
+
* identical resource identifier to the auth flow — clients dispatch by
|
|
164
|
+
* `resource`, and divergent metadata would silently route the same
|
|
165
|
+
* token down separate code paths.
|
|
166
|
+
*/
|
|
167
|
+
export declare const GITHUB_COPILOT_PROTECTED_RESOURCE: ProtectedResourceMetadata;
|
|
92
168
|
export interface IAgentCreateSessionConfig {
|
|
93
169
|
readonly provider?: AgentProvider;
|
|
94
|
-
readonly model?:
|
|
170
|
+
readonly model?: ModelSelection;
|
|
95
171
|
readonly session?: URI;
|
|
96
172
|
readonly workingDirectory?: URI;
|
|
97
|
-
readonly config?: Record<string,
|
|
173
|
+
readonly config?: Record<string, unknown>;
|
|
174
|
+
/**
|
|
175
|
+
* Eagerly claim the active client role for the new session. When provided,
|
|
176
|
+
* the server initializes the session with this client as the active
|
|
177
|
+
* client, equivalent to dispatching a `session/activeClientChanged`
|
|
178
|
+
* action immediately after creation. The `clientId` MUST match the
|
|
179
|
+
* connection's own `clientId`.
|
|
180
|
+
*/
|
|
181
|
+
readonly activeClient?: SessionActiveClient;
|
|
98
182
|
/** Fork from an existing session at a specific turn. */
|
|
99
183
|
readonly fork?: {
|
|
100
184
|
readonly session: URI;
|
|
@@ -109,199 +193,107 @@ export interface IAgentCreateSessionConfig {
|
|
|
109
193
|
readonly turnIdMapping?: ReadonlyMap<string, string>;
|
|
110
194
|
};
|
|
111
195
|
}
|
|
112
|
-
export declare const AgentHostSessionConfigBranchNameHintKey = "branchNameHint";
|
|
113
196
|
export interface IAgentResolveSessionConfigParams {
|
|
114
197
|
readonly provider?: AgentProvider;
|
|
115
198
|
readonly workingDirectory?: URI;
|
|
116
|
-
readonly config?: Record<string,
|
|
199
|
+
readonly config?: Record<string, unknown>;
|
|
117
200
|
}
|
|
118
201
|
export interface IAgentSessionConfigCompletionsParams extends IAgentResolveSessionConfigParams {
|
|
119
202
|
readonly property: string;
|
|
120
203
|
readonly query?: string;
|
|
121
204
|
}
|
|
122
|
-
/** Serializable attachment passed alongside a message to the agent host. */
|
|
123
|
-
export interface IAgentAttachment {
|
|
124
|
-
readonly type: AttachmentType;
|
|
125
|
-
readonly path: string;
|
|
126
|
-
readonly displayName?: string;
|
|
127
|
-
/** For selections: the selected text. */
|
|
128
|
-
readonly text?: string;
|
|
129
|
-
/** For selections: line/character range. */
|
|
130
|
-
readonly selection?: {
|
|
131
|
-
readonly start: {
|
|
132
|
-
readonly line: number;
|
|
133
|
-
readonly character: number;
|
|
134
|
-
};
|
|
135
|
-
readonly end: {
|
|
136
|
-
readonly line: number;
|
|
137
|
-
readonly character: number;
|
|
138
|
-
};
|
|
139
|
-
};
|
|
140
|
-
}
|
|
141
205
|
/** Serializable model information from the agent host. */
|
|
142
206
|
export interface IAgentModelInfo {
|
|
143
207
|
readonly provider: AgentProvider;
|
|
144
208
|
readonly id: string;
|
|
145
209
|
readonly name: string;
|
|
146
|
-
readonly maxContextWindow
|
|
210
|
+
readonly maxContextWindow?: number;
|
|
147
211
|
readonly supportsVision: boolean;
|
|
148
|
-
readonly configSchema?:
|
|
212
|
+
readonly configSchema?: ConfigSchema;
|
|
149
213
|
readonly policyState?: PolicyState;
|
|
214
|
+
readonly _meta?: Record<string, unknown>;
|
|
150
215
|
}
|
|
151
|
-
|
|
216
|
+
/**
|
|
217
|
+
* A signal emitted by an agent during session execution.
|
|
218
|
+
*
|
|
219
|
+
* Most signals carry a protocol {@link SessionAction} directly via the
|
|
220
|
+
* `kind: 'action'` shape, eliminating a parallel event ontology. A small
|
|
221
|
+
* number of cases that have no clean protocol action (permission
|
|
222
|
+
* auto-approval, subagent session creation, steering message
|
|
223
|
+
* acknowledgment) remain as discriminated non-action signals so the host
|
|
224
|
+
* can perform side effects before — or instead of — dispatching an action.
|
|
225
|
+
*/
|
|
226
|
+
export type AgentSignal = IAgentActionSignal | IAgentToolPendingConfirmationSignal | IAgentSubagentStartedSignal | IAgentSteeringConsumedSignal;
|
|
227
|
+
/**
|
|
228
|
+
* Carries a protocol {@link SessionAction} produced by an agent. The host
|
|
229
|
+
* dispatches the action through the state manager after routing via
|
|
230
|
+
* {@link IAgentActionSignal.parentToolCallId} (if set).
|
|
231
|
+
*
|
|
232
|
+
* Agents are responsible for populating `session` and any `turnId` /
|
|
233
|
+
* `partId` fields on the action.
|
|
234
|
+
*/
|
|
235
|
+
export interface IAgentActionSignal {
|
|
236
|
+
readonly kind: "action";
|
|
237
|
+
/** Top-level session URI. For inner subagent events this is the parent session — see {@link parentToolCallId}. */
|
|
152
238
|
readonly session: URI;
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
readonly type: "delta";
|
|
157
|
-
readonly messageId: string;
|
|
158
|
-
readonly content: string;
|
|
159
|
-
readonly parentToolCallId?: string;
|
|
160
|
-
}
|
|
161
|
-
/** A complete assistant message (`assistant.message`), used for history reconstruction. */
|
|
162
|
-
export interface IAgentMessageEvent extends IAgentProgressEventBase {
|
|
163
|
-
readonly type: "message";
|
|
164
|
-
readonly role: "user" | "assistant";
|
|
165
|
-
readonly messageId: string;
|
|
166
|
-
readonly content: string;
|
|
167
|
-
readonly toolRequests?: readonly {
|
|
168
|
-
readonly toolCallId: string;
|
|
169
|
-
readonly name: string;
|
|
170
|
-
/** Serialized JSON of arguments, if available. */
|
|
171
|
-
readonly arguments?: string;
|
|
172
|
-
readonly type?: "function" | "custom";
|
|
173
|
-
}[];
|
|
174
|
-
readonly reasoningOpaque?: string;
|
|
175
|
-
readonly reasoningText?: string;
|
|
176
|
-
readonly encryptedContent?: string;
|
|
239
|
+
/** Protocol action to dispatch. */
|
|
240
|
+
readonly action: SessionAction;
|
|
241
|
+
/** If set, route the action to the subagent session belonging to this tool call. */
|
|
177
242
|
readonly parentToolCallId?: string;
|
|
178
243
|
}
|
|
179
|
-
/**
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
readonly
|
|
196
|
-
/**
|
|
197
|
-
readonly
|
|
198
|
-
/**
|
|
199
|
-
readonly
|
|
200
|
-
/**
|
|
201
|
-
|
|
202
|
-
* spawned (e.g. 'explore'). Adapters are responsible for extracting this
|
|
203
|
-
* from their SDK-specific tool argument shape.
|
|
204
|
-
*/
|
|
205
|
-
readonly subagentAgentName?: string;
|
|
206
|
-
/**
|
|
207
|
-
* For `toolKind === 'subagent'`, a human-readable description of the
|
|
208
|
-
* subagent's task. Adapters are responsible for extracting this from
|
|
209
|
-
* their SDK-specific tool argument shape.
|
|
210
|
-
*/
|
|
211
|
-
readonly subagentDescription?: string;
|
|
212
|
-
readonly mcpServerName?: string;
|
|
213
|
-
readonly mcpToolName?: string;
|
|
214
|
-
readonly parentToolCallId?: string;
|
|
244
|
+
/**
|
|
245
|
+
* A tool has finished collecting parameters and needs the host to decide
|
|
246
|
+
* whether it should run (or, mid-execution, re-confirm). The host applies
|
|
247
|
+
* auto-approval logic over {@link permissionKind} / {@link permissionPath}
|
|
248
|
+
* (see `SessionPermissionManager.getAutoApproval`) and then dispatches the
|
|
249
|
+
* appropriate `SessionToolCallReady` action — with confirmation options
|
|
250
|
+
* baked in when the user must approve, or with `confirmed: NotNeeded` when
|
|
251
|
+
* the host auto-approved.
|
|
252
|
+
*
|
|
253
|
+
* Kept as a non-action signal because the host owns this approval policy;
|
|
254
|
+
* the agent only describes the tool call and the kind of permission being
|
|
255
|
+
* requested. The {@link state} field carries the protocol-shaped tool-call
|
|
256
|
+
* state and is dispatched verbatim into the action.
|
|
257
|
+
*/
|
|
258
|
+
export interface IAgentToolPendingConfirmationSignal {
|
|
259
|
+
readonly kind: "pending_confirmation";
|
|
260
|
+
readonly session: URI;
|
|
261
|
+
/** Protocol-shaped pending-confirmation state, dispatched verbatim into `SessionToolCallReady`. */
|
|
262
|
+
readonly state: ToolCallPendingConfirmationState;
|
|
263
|
+
/** Host-only auto-approval kind (not part of the dispatched action). */
|
|
264
|
+
readonly permissionKind?: "shell" | "write" | "mcp" | "read" | "url" | "custom-tool" | "hook" | "memory";
|
|
265
|
+
/** Host-only auto-approval path target (not part of the dispatched action). */
|
|
266
|
+
readonly permissionPath?: string;
|
|
215
267
|
/**
|
|
216
|
-
* If set,
|
|
217
|
-
*
|
|
218
|
-
*
|
|
268
|
+
* If set, the tool call belongs to the subagent rooted at this
|
|
269
|
+
* parent tool call. Used by the host to route the resulting
|
|
270
|
+
* `SessionToolCallReady` to the subagent session — otherwise the
|
|
271
|
+
* action would land on the parent session, where there is no
|
|
272
|
+
* matching `SessionToolCallStart`.
|
|
219
273
|
*/
|
|
220
|
-
readonly toolClientId?: string;
|
|
221
|
-
}
|
|
222
|
-
/** A tool has finished executing (`tool.execution_complete`). */
|
|
223
|
-
export interface IAgentToolCompleteEvent extends IAgentProgressEventBase {
|
|
224
|
-
readonly type: "tool_complete";
|
|
225
|
-
readonly toolCallId: string;
|
|
226
|
-
/** Tool execution result, matching the protocol {@link IToolCallResult} shape. */
|
|
227
|
-
readonly result: IToolCallResult;
|
|
228
|
-
readonly isUserRequested?: boolean;
|
|
229
|
-
/** Serialized JSON of tool-specific telemetry data. */
|
|
230
|
-
readonly toolTelemetry?: string;
|
|
231
274
|
readonly parentToolCallId?: string;
|
|
232
275
|
}
|
|
233
|
-
/** The session title has been updated. */
|
|
234
|
-
export interface IAgentTitleChangedEvent extends IAgentProgressEventBase {
|
|
235
|
-
readonly type: "title_changed";
|
|
236
|
-
readonly title: string;
|
|
237
|
-
}
|
|
238
|
-
/** An error occurred during session processing. */
|
|
239
|
-
export interface IAgentErrorEvent extends IAgentProgressEventBase {
|
|
240
|
-
readonly type: "error";
|
|
241
|
-
readonly errorType: string;
|
|
242
|
-
readonly message: string;
|
|
243
|
-
readonly stack?: string;
|
|
244
|
-
}
|
|
245
|
-
/** Token usage information for a request. */
|
|
246
|
-
export interface IAgentUsageEvent extends IAgentProgressEventBase {
|
|
247
|
-
readonly type: "usage";
|
|
248
|
-
readonly inputTokens?: number;
|
|
249
|
-
readonly outputTokens?: number;
|
|
250
|
-
readonly model?: string;
|
|
251
|
-
readonly cacheReadTokens?: number;
|
|
252
|
-
}
|
|
253
276
|
/**
|
|
254
|
-
* A
|
|
255
|
-
*
|
|
277
|
+
* A subagent was spawned by a tool call. The host creates a child session
|
|
278
|
+
* silently and routes subsequent inner-tool events to it.
|
|
279
|
+
*
|
|
280
|
+
* Kept as a non-action signal because subagent session creation has no
|
|
281
|
+
* protocol action — it's a host-side composition primitive.
|
|
256
282
|
*/
|
|
257
|
-
export interface
|
|
258
|
-
readonly
|
|
259
|
-
readonly
|
|
260
|
-
/** Message describing what confirmation is needed. */
|
|
261
|
-
readonly invocationMessage: StringOrMarkdown;
|
|
262
|
-
/** Raw tool input to display. */
|
|
263
|
-
readonly toolInput?: string;
|
|
264
|
-
/** Short title for the confirmation prompt. */
|
|
265
|
-
readonly confirmationTitle?: StringOrMarkdown;
|
|
266
|
-
/** Kind of permission being requested. */
|
|
267
|
-
readonly permissionKind?: "shell" | "write" | "mcp" | "read" | "url" | "custom-tool";
|
|
268
|
-
/** File path associated with the permission request. */
|
|
269
|
-
readonly permissionPath?: string;
|
|
270
|
-
/** File edits this tool call will perform, for preview before confirmation. */
|
|
271
|
-
readonly edits?: {
|
|
272
|
-
items: IFileEdit[];
|
|
273
|
-
};
|
|
274
|
-
}
|
|
275
|
-
/** Streaming reasoning/thinking content from the assistant. */
|
|
276
|
-
export interface IAgentReasoningEvent extends IAgentProgressEventBase {
|
|
277
|
-
readonly type: "reasoning";
|
|
278
|
-
readonly content: string;
|
|
279
|
-
}
|
|
280
|
-
/** A steering message was consumed (sent to the model). */
|
|
281
|
-
export interface IAgentSteeringConsumedEvent extends IAgentProgressEventBase {
|
|
282
|
-
readonly type: "steering_consumed";
|
|
283
|
-
readonly id: string;
|
|
284
|
-
}
|
|
285
|
-
/** The agent's ask_user tool is requesting user input. */
|
|
286
|
-
export interface IAgentUserInputRequestEvent extends IAgentProgressEventBase {
|
|
287
|
-
readonly type: "user_input_request";
|
|
288
|
-
readonly request: ISessionInputRequest;
|
|
289
|
-
}
|
|
290
|
-
/** A subagent has been spawned by a tool call. */
|
|
291
|
-
export interface IAgentSubagentStartedEvent extends IAgentProgressEventBase {
|
|
292
|
-
readonly type: "subagent_started";
|
|
283
|
+
export interface IAgentSubagentStartedSignal {
|
|
284
|
+
readonly kind: "subagent_started";
|
|
285
|
+
readonly session: URI;
|
|
293
286
|
readonly toolCallId: string;
|
|
294
287
|
readonly agentName: string;
|
|
295
288
|
readonly agentDisplayName: string;
|
|
296
289
|
readonly agentDescription?: string;
|
|
297
290
|
}
|
|
298
|
-
/**
|
|
299
|
-
export interface
|
|
300
|
-
readonly
|
|
301
|
-
readonly
|
|
302
|
-
readonly
|
|
291
|
+
/** A steering message was consumed (sent to the model). */
|
|
292
|
+
export interface IAgentSteeringConsumedSignal {
|
|
293
|
+
readonly kind: "steering_consumed";
|
|
294
|
+
readonly session: URI;
|
|
295
|
+
readonly id: string;
|
|
303
296
|
}
|
|
304
|
-
export type IAgentProgressEvent = IAgentDeltaEvent | IAgentMessageEvent | IAgentIdleEvent | IAgentToolStartEvent | IAgentToolReadyEvent | IAgentToolCompleteEvent | IAgentTitleChangedEvent | IAgentErrorEvent | IAgentUsageEvent | IAgentReasoningEvent | IAgentSteeringConsumedEvent | IAgentUserInputRequestEvent | IAgentSubagentStartedEvent | IAgentToolContentChangedEvent;
|
|
305
297
|
export declare namespace AgentSession {
|
|
306
298
|
/**
|
|
307
299
|
* Creates a session URI from a provider name and raw session ID.
|
|
@@ -328,15 +320,24 @@ export interface IAgent {
|
|
|
328
320
|
/** Unique identifier for this provider (e.g. `'copilot'`). */
|
|
329
321
|
readonly id: AgentProvider;
|
|
330
322
|
/** Fires when the provider streams progress for a session. */
|
|
331
|
-
readonly onDidSessionProgress: Event<
|
|
323
|
+
readonly onDidSessionProgress: Event<AgentSignal>;
|
|
324
|
+
/**
|
|
325
|
+
* Fires once when a previously
|
|
326
|
+
* {@link IAgentCreateSessionResult.provisional} session has been
|
|
327
|
+
* materialized — i.e. its SDK session, worktree (if any), and on-disk
|
|
328
|
+
* metadata are all in place. The {@link IAgentService} uses this event
|
|
329
|
+
* to fire the deferred `sessionAdded` notification with the now-final
|
|
330
|
+
* summary.
|
|
331
|
+
*/
|
|
332
|
+
readonly onDidMaterializeSession?: Event<IAgentMaterializeSessionEvent>;
|
|
332
333
|
/** Create a new session. Returns server-owned session metadata. */
|
|
333
334
|
createSession(config?: IAgentCreateSessionConfig): Promise<IAgentCreateSessionResult>;
|
|
334
335
|
/** Resolve the dynamic configuration schema for creating a session. */
|
|
335
|
-
resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<
|
|
336
|
+
resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<ResolveSessionConfigResult>;
|
|
336
337
|
/** Return dynamic completions for a session configuration property. */
|
|
337
|
-
sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<
|
|
338
|
+
sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<SessionConfigCompletionsResult>;
|
|
338
339
|
/** Send a user message into an existing session. */
|
|
339
|
-
sendMessage(session: URI, prompt: string, attachments?:
|
|
340
|
+
sendMessage(session: URI, prompt: string, attachments?: readonly MessageAttachment[], turnId?: string): Promise<void>;
|
|
340
341
|
/**
|
|
341
342
|
* Called when the session's pending (steering) message changes.
|
|
342
343
|
* The agent harness decides how to react — e.g. inject steering
|
|
@@ -345,27 +346,52 @@ export interface IAgent {
|
|
|
345
346
|
* Queued messages are consumed on the server side and are not
|
|
346
347
|
* forwarded to the agent; `queuedMessages` will always be empty.
|
|
347
348
|
*/
|
|
348
|
-
setPendingMessages?(session: URI, steeringMessage:
|
|
349
|
-
/**
|
|
350
|
-
|
|
349
|
+
setPendingMessages?(session: URI, steeringMessage: PendingMessage | undefined, queuedMessages: readonly PendingMessage[]): void;
|
|
350
|
+
/**
|
|
351
|
+
* Retrieve the reconstructed turns for a session, used when restoring
|
|
352
|
+
* sessions from persistent storage. Each agent owns the conversion from
|
|
353
|
+
* its SDK-specific event log to protocol {@link Turn}s, including
|
|
354
|
+
* subagent sessions (callers pass the subagent URI to retrieve the
|
|
355
|
+
* child session's turns).
|
|
356
|
+
*/
|
|
357
|
+
getSessionMessages(session: URI): Promise<readonly Turn[]>;
|
|
351
358
|
/** Dispose a session, freeing resources. */
|
|
352
359
|
disposeSession(session: URI): Promise<void>;
|
|
353
360
|
/** Abort the current turn, stopping any in-flight processing. */
|
|
354
361
|
abortSession(session: URI): Promise<void>;
|
|
355
362
|
/** Change the model for an existing session. */
|
|
356
|
-
changeModel(session: URI, model:
|
|
363
|
+
changeModel(session: URI, model: ModelSelection): Promise<void>;
|
|
357
364
|
/** Respond to a pending permission request from the SDK. */
|
|
358
365
|
respondToPermissionRequest(requestId: string, approved: boolean): void;
|
|
359
366
|
/** Respond to a pending user input request from the SDK's ask_user tool. */
|
|
360
|
-
respondToUserInputRequest(requestId: string, response: SessionInputResponseKind, answers?: Record<string,
|
|
367
|
+
respondToUserInputRequest(requestId: string, response: SessionInputResponseKind, answers?: Record<string, SessionInputAnswer>): void;
|
|
361
368
|
/** Return the descriptor for this agent. */
|
|
362
369
|
getDescriptor(): IAgentDescriptor;
|
|
363
370
|
/** Available models from this provider. */
|
|
364
371
|
readonly models: IObservable<readonly IAgentModelInfo[]>;
|
|
365
372
|
/** List persisted sessions from this provider. */
|
|
366
373
|
listSessions(): Promise<IAgentSessionMetadata[]>;
|
|
374
|
+
/** Retrieve metadata for a single persisted session, without enumerating the provider catalog. */
|
|
375
|
+
getSessionMetadata?(session: URI): Promise<IAgentSessionMetadata | undefined>;
|
|
367
376
|
/** Declare protected resources this agent requires auth for (RFC 9728). */
|
|
368
|
-
getProtectedResources():
|
|
377
|
+
getProtectedResources(): ProtectedResourceMetadata[];
|
|
378
|
+
/**
|
|
379
|
+
* Fires when the agent's host-owned customizations change
|
|
380
|
+
* (loading state, resolution results, etc.), so infrastructure
|
|
381
|
+
* can republish {@link AgentInfo} and session customization state.
|
|
382
|
+
*/
|
|
383
|
+
readonly onDidCustomizationsChange?: Event<void>;
|
|
384
|
+
/**
|
|
385
|
+
* Returns the host-owned customization refs this agent currently exposes.
|
|
386
|
+
*
|
|
387
|
+
* Used to publish baseline customization metadata on {@link AgentInfo}.
|
|
388
|
+
*/
|
|
389
|
+
getCustomizations?(): readonly CustomizationRef[];
|
|
390
|
+
/**
|
|
391
|
+
* Returns the effective customization list for a session, including
|
|
392
|
+
* source, enablement, and loading/error status.
|
|
393
|
+
*/
|
|
394
|
+
getSessionCustomizations?(session: URI): Promise<readonly SessionCustomization[]>;
|
|
369
395
|
/**
|
|
370
396
|
* Authenticate for a specific resource. Returns true if accepted.
|
|
371
397
|
* The `resource` matches {@link IAuthorizationProtectedResourceMetadata.resource}.
|
|
@@ -377,6 +403,13 @@ export interface IAgent {
|
|
|
377
403
|
* Optional — not all providers support truncation.
|
|
378
404
|
*/
|
|
379
405
|
truncateSession?(session: URI, turnId?: string): Promise<void>;
|
|
406
|
+
/**
|
|
407
|
+
* Notifies the provider that a session's archived state has changed.
|
|
408
|
+
* Providers may use this to clean up or restore per-session resources
|
|
409
|
+
* (for example, removing a session-owned worktree on archive and
|
|
410
|
+
* recreating it on unarchive). Optional.
|
|
411
|
+
*/
|
|
412
|
+
onArchivedChanged?(session: URI, isArchived: boolean): Promise<void>;
|
|
380
413
|
/**
|
|
381
414
|
* Receives client-provided customization refs and syncs them (e.g. copies
|
|
382
415
|
* plugin files to local storage). Returns per-customization status with
|
|
@@ -384,7 +417,7 @@ export interface IAgent {
|
|
|
384
417
|
*
|
|
385
418
|
* The agent MAY defer a client restart until all active sessions are idle.
|
|
386
419
|
*/
|
|
387
|
-
setClientCustomizations(clientId: string, customizations:
|
|
420
|
+
setClientCustomizations(clientId: string, customizations: CustomizationRef[], progress?: (results: ISyncedCustomization[]) => void): Promise<ISyncedCustomization[]>;
|
|
388
421
|
/**
|
|
389
422
|
* Receives client-provided tool definitions to make available in a
|
|
390
423
|
* specific session. The agent registers these as custom tools so the
|
|
@@ -397,14 +430,16 @@ export interface IAgent {
|
|
|
397
430
|
* @param clientId The client that owns these tools.
|
|
398
431
|
* @param tools The tool definitions (full replacement).
|
|
399
432
|
*/
|
|
400
|
-
setClientTools(session: URI, clientId: string, tools:
|
|
433
|
+
setClientTools(session: URI, clientId: string, tools: ToolDefinition[]): void;
|
|
401
434
|
/**
|
|
402
435
|
* Called when a client completes a client-provided tool call.
|
|
403
436
|
* Resolves the tool handler's deferred promise so the SDK can continue.
|
|
404
437
|
*
|
|
405
438
|
* @param session The session the tool call belongs to.
|
|
439
|
+
* @param toolCallId The id of the tool call being completed.
|
|
440
|
+
* @param result The result of the tool call.
|
|
406
441
|
*/
|
|
407
|
-
onClientToolCallComplete(session: URI, toolCallId: string, result:
|
|
442
|
+
onClientToolCallComplete(session: URI, toolCallId: string, result: ToolCallResult): void;
|
|
408
443
|
/**
|
|
409
444
|
* Notifies the agent that a customization has been toggled on or off.
|
|
410
445
|
* The agent MAY restart its client before the next message is sent.
|
|
@@ -425,25 +460,31 @@ export interface IAgent {
|
|
|
425
460
|
export interface IAgentConnection {
|
|
426
461
|
readonly _serviceBrand: undefined;
|
|
427
462
|
readonly clientId: string;
|
|
428
|
-
readonly rootState: IAgentSubscription<
|
|
463
|
+
readonly rootState: IAgentSubscription<RootState>;
|
|
429
464
|
getSubscription<T extends StateComponents>(kind: T, resource: URI): IReference<IAgentSubscription<ComponentToState[T]>>;
|
|
430
465
|
getSubscriptionUnmanaged<T extends StateComponents>(kind: T, resource: URI): IAgentSubscription<ComponentToState[T]> | undefined;
|
|
431
|
-
dispatch(action:
|
|
466
|
+
dispatch(action: SessionAction | TerminalAction | IRootConfigChangedAction): void;
|
|
432
467
|
readonly onDidNotification: Event<INotification>;
|
|
433
|
-
readonly onDidAction: Event<
|
|
434
|
-
authenticate(params:
|
|
468
|
+
readonly onDidAction: Event<ActionEnvelope>;
|
|
469
|
+
authenticate(params: AuthenticateParams): Promise<AuthenticateResult>;
|
|
435
470
|
listSessions(): Promise<IAgentSessionMetadata[]>;
|
|
436
471
|
createSession(config?: IAgentCreateSessionConfig): Promise<URI>;
|
|
437
|
-
resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<
|
|
438
|
-
sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<
|
|
472
|
+
resolveSessionConfig(params: IAgentResolveSessionConfigParams): Promise<ResolveSessionConfigResult>;
|
|
473
|
+
sessionConfigCompletions(params: IAgentSessionConfigCompletionsParams): Promise<SessionConfigCompletionsResult>;
|
|
474
|
+
completions(params: CompletionsParams): Promise<CompletionsResult>;
|
|
475
|
+
/**
|
|
476
|
+
* Trigger characters announced by the connected agent host that should
|
|
477
|
+
* cause the client to issue a `completions` request when typed in a
|
|
478
|
+
* user-message input. Resolves once on first request and is cached.
|
|
479
|
+
*/
|
|
480
|
+
getCompletionTriggerCharacters(): Promise<readonly string[]>;
|
|
439
481
|
disposeSession(session: URI): Promise<void>;
|
|
440
|
-
createTerminal(params:
|
|
482
|
+
createTerminal(params: CreateTerminalParams): Promise<void>;
|
|
441
483
|
disposeTerminal(terminal: URI): Promise<void>;
|
|
442
|
-
resourceList(uri: URI): Promise<
|
|
443
|
-
resourceRead(uri: URI): Promise<
|
|
444
|
-
resourceWrite(params:
|
|
445
|
-
resourceCopy(params:
|
|
446
|
-
resourceDelete(params:
|
|
447
|
-
resourceMove(params:
|
|
484
|
+
resourceList(uri: URI): Promise<ResourceListResult>;
|
|
485
|
+
resourceRead(uri: URI): Promise<ResourceReadResult>;
|
|
486
|
+
resourceWrite(params: ResourceWriteParams): Promise<ResourceWriteResult>;
|
|
487
|
+
resourceCopy(params: ResourceCopyParams): Promise<ResourceCopyResult>;
|
|
488
|
+
resourceDelete(params: ResourceDeleteParams): Promise<ResourceDeleteResult>;
|
|
489
|
+
resourceMove(params: ResourceMoveParams): Promise<ResourceMoveResult>;
|
|
448
490
|
}
|
|
449
|
-
export {};
|
|
@@ -9,6 +9,8 @@ var AgentHostIpcChannels;
|
|
|
9
9
|
})(AgentHostIpcChannels || (AgentHostIpcChannels = {}));
|
|
10
10
|
const AgentHostEnabledSettingId = "chat.agentHost.enabled";
|
|
11
11
|
const AgentHostIpcLoggingSettingId = "chat.agentHost.ipcLoggingEnabled";
|
|
12
|
+
const AgentHostAhpJsonlLoggingSettingId = "chat.agentHost.ahpJsonlLoggingEnabled";
|
|
13
|
+
const AgentHostClaudeAgentSdkPathSettingId = "chat.agentHost.claudeAgent.path";
|
|
12
14
|
var AgentSession;
|
|
13
15
|
(function(AgentSession) {
|
|
14
16
|
function uri(provider, rawSessionId) {
|
|
@@ -30,4 +32,4 @@ var AgentSession;
|
|
|
30
32
|
AgentSession.provider = provider;
|
|
31
33
|
})(AgentSession || (AgentSession = {}));
|
|
32
34
|
|
|
33
|
-
export { AgentHostEnabledSettingId, AgentHostIpcChannels, AgentHostIpcLoggingSettingId, AgentSession };
|
|
35
|
+
export { AgentHostAhpJsonlLoggingSettingId, AgentHostClaudeAgentSdkPathSettingId, AgentHostEnabledSettingId, AgentHostIpcChannels, AgentHostIpcLoggingSettingId, AgentSession };
|