@codingame/monaco-vscode-chat-service-override 27.0.0 → 28.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.js +5 -2
- package/package.json +5 -5
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.d.ts +54 -4
- package/vscode/src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.js +179 -11
- package/vscode/src/vs/sessions/contrib/chat/browser/newSession.js +5 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.d.ts +6 -1
- package/vscode/src/vs/sessions/contrib/chat/browser/sessionsConfigurationService.js +25 -10
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +67 -0
- package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +263 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.d.ts +6 -0
- package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsManagementService.js +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +59 -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 +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +5 -5
- 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 +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +49 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +537 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.js +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/media/agentPluginEditor.css +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +17 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +89 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +4 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +146 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +56 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- 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 +5 -5
- 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 +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +25 -25
- 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/aiCustomization/aiCustomizationIcons.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +13 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +7 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +189 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +42 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.js +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +20 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +210 -59
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +14 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +122 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +87 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +62 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +702 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +279 -214
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +21 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.js +12 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +63 -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 +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +62 -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.js +28 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugTypes.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +32 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +4 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +49 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +14 -14
- 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 +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +103 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +61 -61
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.d.ts +66 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +245 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.d.ts +78 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipEligibilityTracker.js +234 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +31 -126
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +229 -524
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipStorageKeys.js +22 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +54 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +112 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +99 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +489 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +348 -285
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.d.ts +18 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +107 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- 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/tools/languageModelToolsConfirmationService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +55 -38
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +148 -60
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- 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 +29 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +72 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +5 -3
- 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 +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.js +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +72 -23
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +19 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +37 -8
- package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +36 -3
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +71 -25
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +217 -91
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +85 -3
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +257 -63
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +3 -16
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +7 -50
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +32 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +26 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +287 -88
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +10 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +75 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +121 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +1422 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +81 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.d.ts +14 -2
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +54 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +6 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +38 -22
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +8 -8
- 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 +10 -10
- 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.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
- 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.js +3 -3
- 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 +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +36 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +27 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +1 -1
- 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/common/terminalSandboxService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +8 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -67
|
@@ -63,43 +63,43 @@ const gaugeForeground = registerColor("gauge.foreground", {
|
|
|
63
63
|
light: inputValidationInfoBorder,
|
|
64
64
|
hcDark: contrastBorder,
|
|
65
65
|
hcLight: contrastBorder
|
|
66
|
-
}, ( localize(
|
|
66
|
+
}, ( localize(6145, "Gauge foreground color.")));
|
|
67
67
|
registerColor("gauge.background", {
|
|
68
68
|
dark: ( transparent(gaugeForeground, 0.3)),
|
|
69
69
|
light: ( transparent(gaugeForeground, 0.3)),
|
|
70
70
|
hcDark: Color.white,
|
|
71
71
|
hcLight: Color.white
|
|
72
|
-
}, ( localize(
|
|
72
|
+
}, ( localize(6146, "Gauge background color.")));
|
|
73
73
|
registerColor("gauge.border", {
|
|
74
74
|
dark: null,
|
|
75
75
|
light: null,
|
|
76
76
|
hcDark: contrastBorder,
|
|
77
77
|
hcLight: contrastBorder
|
|
78
|
-
}, ( localize(
|
|
78
|
+
}, ( localize(6147, "Gauge border color.")));
|
|
79
79
|
const gaugeWarningForeground = registerColor("gauge.warningForeground", {
|
|
80
80
|
dark: inputValidationWarningBorder,
|
|
81
81
|
light: inputValidationWarningBorder,
|
|
82
82
|
hcDark: contrastBorder,
|
|
83
83
|
hcLight: contrastBorder
|
|
84
|
-
}, ( localize(
|
|
84
|
+
}, ( localize(6148, "Gauge warning foreground color.")));
|
|
85
85
|
registerColor("gauge.warningBackground", {
|
|
86
86
|
dark: ( transparent(gaugeWarningForeground, 0.3)),
|
|
87
87
|
light: ( transparent(gaugeWarningForeground, 0.3)),
|
|
88
88
|
hcDark: Color.white,
|
|
89
89
|
hcLight: Color.white
|
|
90
|
-
}, ( localize(
|
|
90
|
+
}, ( localize(6149, "Gauge warning background color.")));
|
|
91
91
|
const gaugeErrorForeground = registerColor("gauge.errorForeground", {
|
|
92
92
|
dark: inputValidationErrorBorder,
|
|
93
93
|
light: inputValidationErrorBorder,
|
|
94
94
|
hcDark: contrastBorder,
|
|
95
95
|
hcLight: contrastBorder
|
|
96
|
-
}, ( localize(
|
|
96
|
+
}, ( localize(6150, "Gauge error foreground color.")));
|
|
97
97
|
registerColor("gauge.errorBackground", {
|
|
98
98
|
dark: ( transparent(gaugeErrorForeground, 0.3)),
|
|
99
99
|
light: ( transparent(gaugeErrorForeground, 0.3)),
|
|
100
100
|
hcDark: Color.white,
|
|
101
101
|
hcLight: Color.white
|
|
102
|
-
}, ( localize(
|
|
102
|
+
}, ( localize(6151, "Gauge error background color.")));
|
|
103
103
|
let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
104
104
|
constructor(
|
|
105
105
|
chatEntitlementService,
|
|
@@ -182,18 +182,18 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
182
182
|
const usageTitle = this.getUsageTitle();
|
|
183
183
|
addSeparator(usageTitle, toAction({
|
|
184
184
|
id: "workbench.action.manageCopilot",
|
|
185
|
-
label: ( localize(
|
|
186
|
-
tooltip: ( localize(
|
|
185
|
+
label: ( localize(6152, "Manage Chat")),
|
|
186
|
+
tooltip: ( localize(6153, "Manage Chat")),
|
|
187
187
|
class: ThemeIcon.asClassName(Codicon.settings),
|
|
188
188
|
run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(defaultChat.manageSettingsUrl))))
|
|
189
189
|
}));
|
|
190
|
-
const completionsQuotaIndicator = completionsQuota && (completionsQuota.total > 0 || completionsQuota.unlimited) ? this.createQuotaIndicator(this.element, this._store, completionsQuota, ( localize(
|
|
191
|
-
const chatQuotaIndicator = chatQuota && (chatQuota.total > 0 || chatQuota.unlimited) ? this.createQuotaIndicator(this.element, this._store, chatQuota, ( localize(
|
|
192
|
-
const premiumChatLabel = premiumChatQuota?.overageEnabled && !premiumChatQuota?.unlimited ? ( localize(
|
|
190
|
+
const completionsQuotaIndicator = completionsQuota && (completionsQuota.total > 0 || completionsQuota.unlimited) ? this.createQuotaIndicator(this.element, this._store, completionsQuota, ( localize(6154, "Inline Suggestions")), false) : undefined;
|
|
191
|
+
const chatQuotaIndicator = chatQuota && (chatQuota.total > 0 || chatQuota.unlimited) ? this.createQuotaIndicator(this.element, this._store, chatQuota, ( localize(6155, "Chat messages")), false) : undefined;
|
|
192
|
+
const premiumChatLabel = premiumChatQuota?.overageEnabled && !premiumChatQuota?.unlimited ? ( localize(6156, "Included premium requests")) : ( localize(6157, "Premium requests"));
|
|
193
193
|
const premiumChatQuotaIndicator = premiumChatQuota && (premiumChatQuota.total > 0 || premiumChatQuota.unlimited) ? this.createQuotaIndicator(this.element, this._store, premiumChatQuota, premiumChatLabel, true) : undefined;
|
|
194
194
|
if (resetDate) {
|
|
195
195
|
this.element.appendChild($("div.description", undefined, ( localize(
|
|
196
|
-
|
|
196
|
+
6158,
|
|
197
197
|
"Allowance resets {0}.",
|
|
198
198
|
resetDateHasTime ? this.dateTimeFormatter.value.format(( new Date(resetDate))) : this.dateFormatter.value.format(( new Date(resetDate)))
|
|
199
199
|
))));
|
|
@@ -204,7 +204,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
204
204
|
hoverDelegate: nativeHoverDelegate,
|
|
205
205
|
secondary: this.canUseChat()
|
|
206
206
|
})));
|
|
207
|
-
upgradeProButton.label = ( localize(
|
|
207
|
+
upgradeProButton.label = ( localize(6159, "Upgrade to GitHub Copilot Pro"));
|
|
208
208
|
this._store.add(
|
|
209
209
|
upgradeProButton.onDidClick(() => this.runCommandAndClose("workbench.action.chat.upgradePlan"))
|
|
210
210
|
);
|
|
@@ -231,17 +231,17 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
231
231
|
})();
|
|
232
232
|
}
|
|
233
233
|
else if (this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.installed) {
|
|
234
|
-
addSeparator(( localize(
|
|
235
|
-
this.createQuotaIndicator(this.element, this._store, ( localize(
|
|
236
|
-
this.createQuotaIndicator(this.element, this._store, ( localize(
|
|
234
|
+
addSeparator(( localize(6160, "Copilot Usage")));
|
|
235
|
+
this.createQuotaIndicator(this.element, this._store, ( localize(6161, "Limited")), ( localize(6154, "Inline Suggestions")), false);
|
|
236
|
+
this.createQuotaIndicator(this.element, this._store, ( localize(6161, "Limited")), ( localize(6155, "Chat messages")), false);
|
|
237
237
|
}
|
|
238
238
|
{
|
|
239
239
|
const inProgress = this.chatSessionsService.getInProgress();
|
|
240
240
|
if (( inProgress.some(item => item.count > 0))) {
|
|
241
|
-
addSeparator(( localize(
|
|
241
|
+
addSeparator(( localize(6162, "Agent Sessions")), toAction({
|
|
242
242
|
id: "workbench.view.chat.status.sessions",
|
|
243
|
-
label: ( localize(
|
|
244
|
-
tooltip: ( localize(
|
|
243
|
+
label: ( localize(6163, "View Agent Sessions")),
|
|
244
|
+
tooltip: ( localize(6164, "View Agent Sessions")),
|
|
245
245
|
class: ThemeIcon.asClassName(Codicon.eye),
|
|
246
246
|
run: () => {
|
|
247
247
|
this.viewService.openView(ChatViewId, true);
|
|
@@ -253,7 +253,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
253
253
|
count
|
|
254
254
|
} of inProgress) {
|
|
255
255
|
if (count > 0) {
|
|
256
|
-
const text = ( localize(
|
|
256
|
+
const text = ( localize(6165, "$(loading~spin) {0} in progress", displayName));
|
|
257
257
|
const chatSessionsElement = this.element.appendChild($("div.description"));
|
|
258
258
|
const parts = renderLabelWithIcons(text);
|
|
259
259
|
chatSessionsElement.append(...parts);
|
|
@@ -280,10 +280,10 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
280
280
|
}
|
|
281
281
|
{
|
|
282
282
|
const chatSentiment = this.chatEntitlementService.sentiment;
|
|
283
|
-
addSeparator(( localize(
|
|
283
|
+
addSeparator(( localize(6166, "Inline Suggestions")), chatSentiment.installed && !chatSentiment.disabled && !chatSentiment.untrusted ? toAction({
|
|
284
284
|
id: "workbench.action.openChatSettings",
|
|
285
|
-
label: ( localize(
|
|
286
|
-
tooltip: ( localize(
|
|
285
|
+
label: ( localize(6167, "Settings")),
|
|
286
|
+
tooltip: ( localize(6168, "Open Settings")),
|
|
287
287
|
class: ThemeIcon.asClassName(Codicon.settingsGear),
|
|
288
288
|
run: () => this.runCommandAndClose(
|
|
289
289
|
() => this.commandService.executeCommand("workbench.action.openSettings", {
|
|
@@ -301,7 +301,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
301
301
|
const currentModel = modelInfo.models.find(m => m.id === modelInfo.currentModelId);
|
|
302
302
|
if (currentModel) {
|
|
303
303
|
const modelContainer = this.element.appendChild($("div.model-selection"));
|
|
304
|
-
modelContainer.appendChild($("span.model-text", undefined, ( localize(
|
|
304
|
+
modelContainer.appendChild($("span.model-text", undefined, ( localize(6169, "Model"))));
|
|
305
305
|
const actionBar = modelContainer.appendChild($("div.model-action-bar"));
|
|
306
306
|
const toolbar = this._store.add(( new ActionBar(actionBar, {
|
|
307
307
|
hoverDelegate: nativeHoverDelegate
|
|
@@ -309,7 +309,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
309
309
|
toolbar.push([toAction({
|
|
310
310
|
id: "workbench.action.selectInlineCompletionsModel",
|
|
311
311
|
label: currentModel.name,
|
|
312
|
-
tooltip: ( localize(
|
|
312
|
+
tooltip: ( localize(6170, "Select Model")),
|
|
313
313
|
class: ThemeIcon.asClassName(Codicon.gear),
|
|
314
314
|
run: async () => {
|
|
315
315
|
await this.showModelPicker(provider);
|
|
@@ -337,7 +337,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
337
337
|
toolbar.push([toAction({
|
|
338
338
|
id: `workbench.action.selectProviderOption.${option.id}`,
|
|
339
339
|
label: currentValue.label,
|
|
340
|
-
tooltip: ( localize(
|
|
340
|
+
tooltip: ( localize(6171, "Select {0}", option.label)),
|
|
341
341
|
run: async () => {
|
|
342
342
|
await this.showProviderOptionPicker(provider, option);
|
|
343
343
|
}
|
|
@@ -352,7 +352,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
352
352
|
}
|
|
353
353
|
if (this.canUseChat()) {
|
|
354
354
|
const snooze = append(this.element, $("div.snooze-completions"));
|
|
355
|
-
this.createCompletionsSnooze(snooze, ( localize(
|
|
355
|
+
this.createCompletionsSnooze(snooze, ( localize(6172, "Snooze")), this._store);
|
|
356
356
|
}
|
|
357
357
|
{
|
|
358
358
|
const newUser = isNewUser(this.chatEntitlementService);
|
|
@@ -365,7 +365,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
365
365
|
let descriptionClass = ".description";
|
|
366
366
|
if (newUser && anonymousUser) {
|
|
367
367
|
descriptionText = ( new MarkdownString(( localize(
|
|
368
|
-
|
|
368
|
+
6173,
|
|
369
369
|
"By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
|
|
370
370
|
defaultChat.provider.default.name,
|
|
371
371
|
defaultChat.provider.default.name,
|
|
@@ -376,23 +376,23 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
376
376
|
}));
|
|
377
377
|
descriptionClass = `${descriptionClass}.terms`;
|
|
378
378
|
} else if (newUser) {
|
|
379
|
-
descriptionText = ( localize(
|
|
379
|
+
descriptionText = ( localize(6174, "Set up Copilot to use AI features."));
|
|
380
380
|
} else if (anonymousUser) {
|
|
381
|
-
descriptionText = ( localize(
|
|
381
|
+
descriptionText = ( localize(6175, "Sign in to enable more Copilot AI features."));
|
|
382
382
|
} else if (disabled) {
|
|
383
|
-
descriptionText = ( localize(
|
|
383
|
+
descriptionText = ( localize(6176, "Enable Copilot to use AI features."));
|
|
384
384
|
} else {
|
|
385
|
-
descriptionText = ( localize(
|
|
385
|
+
descriptionText = ( localize(6177, "Sign in to use Copilot AI features."));
|
|
386
386
|
}
|
|
387
387
|
let buttonLabel;
|
|
388
388
|
if (newUser) {
|
|
389
|
-
buttonLabel = ( localize(
|
|
389
|
+
buttonLabel = ( localize(6178, "Use AI Features"));
|
|
390
390
|
} else if (anonymousUser) {
|
|
391
|
-
buttonLabel = ( localize(
|
|
391
|
+
buttonLabel = ( localize(6179, "Enable more AI Features"));
|
|
392
392
|
} else if (disabled) {
|
|
393
|
-
buttonLabel = ( localize(
|
|
393
|
+
buttonLabel = ( localize(6180, "Enable AI Features"));
|
|
394
394
|
} else {
|
|
395
|
-
buttonLabel = ( localize(
|
|
395
|
+
buttonLabel = ( localize(6181, "Sign in to use AI Features"));
|
|
396
396
|
}
|
|
397
397
|
let commandId;
|
|
398
398
|
if (newUser && anonymousUser) {
|
|
@@ -432,7 +432,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
432
432
|
}
|
|
433
433
|
getUsageTitle() {
|
|
434
434
|
const planName = getChatPlanName(this.chatEntitlementService.entitlement);
|
|
435
|
-
return localize(
|
|
435
|
+
return localize(6182, "{0} Usage", planName);
|
|
436
436
|
}
|
|
437
437
|
renderHeader(container, disposables, label, action) {
|
|
438
438
|
const header = container.appendChild($("div.header", undefined, label ?? ""));
|
|
@@ -453,8 +453,8 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
453
453
|
const headerLink = typeof item.label === "string" ? undefined : item.label.link;
|
|
454
454
|
this.renderHeader(itemElement, disposables, headerLabel, headerLink ? toAction({
|
|
455
455
|
id: "workbench.action.openChatStatusItemLink",
|
|
456
|
-
label: ( localize(
|
|
457
|
-
tooltip: ( localize(
|
|
456
|
+
label: ( localize(6183, "Learn More")),
|
|
457
|
+
tooltip: ( localize(6183, "Learn More")),
|
|
458
458
|
class: ThemeIcon.asClassName(Codicon.linkExternal),
|
|
459
459
|
run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(headerLink))))
|
|
460
460
|
}) : undefined);
|
|
@@ -509,7 +509,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
509
509
|
secondary: true,
|
|
510
510
|
hoverDelegate: nativeHoverDelegate
|
|
511
511
|
})));
|
|
512
|
-
manageOverageButton.label = ( localize(
|
|
512
|
+
manageOverageButton.label = ( localize(6184, "Manage paid premium requests"));
|
|
513
513
|
disposables.add(
|
|
514
514
|
manageOverageButton.onDidClick(() => this.runCommandAndClose(() => this.openerService.open(( URI.parse(defaultChat.manageOverageUrl)))))
|
|
515
515
|
);
|
|
@@ -526,15 +526,15 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
526
526
|
if (typeof quota === "string") {
|
|
527
527
|
quotaValue.textContent = quota;
|
|
528
528
|
} else if (quota.unlimited) {
|
|
529
|
-
quotaValue.textContent = ( localize(
|
|
529
|
+
quotaValue.textContent = ( localize(6185, "Included"));
|
|
530
530
|
} else if (quota.overageCount) {
|
|
531
531
|
quotaValue.textContent = ( localize(
|
|
532
|
-
|
|
532
|
+
6186,
|
|
533
533
|
"+{0} requests",
|
|
534
534
|
this.quotaOverageFormatter.value.format(quota.overageCount)
|
|
535
535
|
));
|
|
536
536
|
} else {
|
|
537
|
-
quotaValue.textContent = ( localize(
|
|
537
|
+
quotaValue.textContent = ( localize(6187, "{0}%", this.quotaPercentageFormatter.value.format(usedPercentage)));
|
|
538
538
|
}
|
|
539
539
|
quotaBit.style.width = `${usedPercentage}%`;
|
|
540
540
|
const overageEnabled = supportsOverage && typeof quota !== "string" && quota?.overageEnabled;
|
|
@@ -547,12 +547,12 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
547
547
|
if (typeof quota !== "string" && quota.unlimited) {
|
|
548
548
|
overageLabel.textContent = "";
|
|
549
549
|
} else if (typeof quota !== "string" && quota?.overageEnabled) {
|
|
550
|
-
overageLabel.replaceChildren(( localize(
|
|
551
|
-
|
|
550
|
+
overageLabel.replaceChildren(( localize(6188, "Additional premium requests approved.")), $("br"), ( localize(
|
|
551
|
+
6189,
|
|
552
552
|
"You can continue after the included premium requests limit reaches 100%."
|
|
553
553
|
)));
|
|
554
554
|
} else {
|
|
555
|
-
overageLabel.textContent = ( localize(
|
|
555
|
+
overageLabel.textContent = ( localize(6190, "Additional paid premium requests disabled."));
|
|
556
556
|
}
|
|
557
557
|
} else {
|
|
558
558
|
overageLabel.textContent = "";
|
|
@@ -566,15 +566,15 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
566
566
|
const settings = container.appendChild($("div.settings"));
|
|
567
567
|
{
|
|
568
568
|
const globalSetting = append(settings, $("div.setting"));
|
|
569
|
-
this.createInlineSuggestionsSetting(globalSetting, ( localize(
|
|
569
|
+
this.createInlineSuggestionsSetting(globalSetting, ( localize(6191, "All files")), "*", disposables);
|
|
570
570
|
if (modeId) {
|
|
571
571
|
const languageSetting = append(settings, $("div.setting"));
|
|
572
|
-
this.createInlineSuggestionsSetting(languageSetting, ( localize(
|
|
572
|
+
this.createInlineSuggestionsSetting(languageSetting, ( localize(6192, "{0}", this.languageService.getLanguageName(modeId) ?? modeId)), modeId, disposables);
|
|
573
573
|
}
|
|
574
574
|
}
|
|
575
575
|
{
|
|
576
576
|
const setting = append(settings, $("div.setting"));
|
|
577
|
-
this.createNextEditSuggestionsSetting(setting, ( localize(
|
|
577
|
+
this.createNextEditSuggestionsSetting(setting, ( localize(6193, "Next edit suggestions")), this.getCompletionsSettingAccessor(modeId), disposables);
|
|
578
578
|
}
|
|
579
579
|
return settings;
|
|
580
580
|
}
|
|
@@ -691,7 +691,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
691
691
|
})));
|
|
692
692
|
const cancelAction = toAction({
|
|
693
693
|
id: "workbench.action.cancelSnoozeStatusBarLink",
|
|
694
|
-
label: ( localize(
|
|
694
|
+
label: ( localize(6194, "Cancel Snooze")),
|
|
695
695
|
run: () => this.inlineCompletionsService.cancelSnooze(),
|
|
696
696
|
class: ThemeIcon.asClassName(Codicon.stopCircle)
|
|
697
697
|
});
|
|
@@ -700,19 +700,19 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
700
700
|
toolbar.clear();
|
|
701
701
|
const timeLeftMs = this.inlineCompletionsService.snoozeTimeLeft;
|
|
702
702
|
if (!isEnabled || timeLeftMs <= 0) {
|
|
703
|
-
timerDisplay.textContent = ( localize(
|
|
703
|
+
timerDisplay.textContent = ( localize(6195, "Hide suggestions for 5 min"));
|
|
704
704
|
timerDisplay.title = "";
|
|
705
705
|
button.label = label;
|
|
706
|
-
button.setTitle(( localize(
|
|
706
|
+
button.setTitle(( localize(6196, "Hide inline suggestions for 5 min")));
|
|
707
707
|
return true;
|
|
708
708
|
}
|
|
709
709
|
const timeLeftSeconds = Math.ceil(timeLeftMs / 1000);
|
|
710
710
|
const minutes = Math.floor(timeLeftSeconds / 60);
|
|
711
711
|
const seconds = timeLeftSeconds % 60;
|
|
712
|
-
timerDisplay.textContent = `${minutes}:${seconds < 10 ? "0" : ""}${seconds} ${( localize(
|
|
713
|
-
timerDisplay.title = ( localize(
|
|
714
|
-
button.label = ( localize(
|
|
715
|
-
button.setTitle(( localize(
|
|
712
|
+
timerDisplay.textContent = `${minutes}:${seconds < 10 ? "0" : ""}${seconds} ${( localize(6197, "remaining"))}`;
|
|
713
|
+
timerDisplay.title = ( localize(6198, "Inline suggestions are hidden for the remaining duration"));
|
|
714
|
+
button.label = ( localize(6199, "+5 min"));
|
|
715
|
+
button.setTitle(( localize(6200, "Snooze additional 5 min")));
|
|
716
716
|
toolbar.push([cancelAction], {
|
|
717
717
|
icon: true,
|
|
718
718
|
label: false
|
|
@@ -753,12 +753,12 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
753
753
|
const items = ( modelInfo.models.map(model => ({
|
|
754
754
|
id: model.id,
|
|
755
755
|
label: model.name,
|
|
756
|
-
description: model.id === modelInfo.currentModelId ? ( localize(
|
|
756
|
+
description: model.id === modelInfo.currentModelId ? ( localize(6201, "Currently selected")) : undefined,
|
|
757
757
|
picked: model.id === modelInfo.currentModelId
|
|
758
758
|
})));
|
|
759
759
|
const selected = await this.quickInputService.pick(items, {
|
|
760
760
|
placeHolder: ( localize(
|
|
761
|
-
|
|
761
|
+
6202,
|
|
762
762
|
"Select a model for {0}",
|
|
763
763
|
provider.displayName || "inline completions"
|
|
764
764
|
)),
|
|
@@ -776,11 +776,11 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
|
|
|
776
776
|
const items = ( option.values.map(value => ({
|
|
777
777
|
id: value.id,
|
|
778
778
|
label: value.label,
|
|
779
|
-
description: value.id === option.currentValueId ? ( localize(
|
|
779
|
+
description: value.id === option.currentValueId ? ( localize(6203, "Currently selected")) : undefined,
|
|
780
780
|
picked: value.id === option.currentValueId
|
|
781
781
|
})));
|
|
782
782
|
const selected = await this.quickInputService.pick(items, {
|
|
783
|
-
placeHolder: ( localize(
|
|
783
|
+
placeHolder: ( localize(6204, "Select {0}", option.label)),
|
|
784
784
|
canPickMany: false
|
|
785
785
|
});
|
|
786
786
|
if (selected && selected.id && selected.id !== option.currentValueId) {
|
|
@@ -102,13 +102,13 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
102
102
|
}
|
|
103
103
|
getEntryProps() {
|
|
104
104
|
let text = "$(copilot)";
|
|
105
|
-
let ariaLabel = ( localize(
|
|
105
|
+
let ariaLabel = ( localize(6205, "Copilot status"));
|
|
106
106
|
let kind;
|
|
107
107
|
if (isNewUser(this.chatEntitlementService)) {
|
|
108
108
|
const entitlement = this.chatEntitlementService.entitlement;
|
|
109
109
|
if (
|
|
110
110
|
this.chatEntitlementService.sentiment.later || entitlement === ChatEntitlement.Available || isProUser(entitlement) || entitlement === ChatEntitlement.Free) {
|
|
111
|
-
const finishSetup = ( localize(
|
|
111
|
+
const finishSetup = ( localize(6206, "Finish Setup"));
|
|
112
112
|
text = `$(copilot) ${finishSetup}`;
|
|
113
113
|
ariaLabel = finishSetup;
|
|
114
114
|
kind = "prominent";
|
|
@@ -118,18 +118,18 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
118
118
|
const completionsQuotaExceeded = this.chatEntitlementService.quotas.completions?.percentRemaining === 0;
|
|
119
119
|
if (this.chatEntitlementService.sentiment.disabled || this.chatEntitlementService.sentiment.untrusted) {
|
|
120
120
|
text = "$(copilot-unavailable)";
|
|
121
|
-
ariaLabel = ( localize(
|
|
121
|
+
ariaLabel = ( localize(6207, "Copilot disabled"));
|
|
122
122
|
}
|
|
123
123
|
else if (this.runningSessionsCount > 0) {
|
|
124
124
|
text = "$(copilot-in-progress)";
|
|
125
125
|
if (this.runningSessionsCount > 1) {
|
|
126
|
-
ariaLabel = ( localize(
|
|
126
|
+
ariaLabel = ( localize(6208, "{0} agent sessions in progress", this.runningSessionsCount));
|
|
127
127
|
} else {
|
|
128
|
-
ariaLabel = ( localize(
|
|
128
|
+
ariaLabel = ( localize(6209, "1 agent session in progress"));
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Unknown) {
|
|
132
|
-
const signedOutWarning = ( localize(
|
|
132
|
+
const signedOutWarning = ( localize(6210, "Signed out"));
|
|
133
133
|
text = `${this.chatEntitlementService.anonymous ? "$(copilot)" : "$(copilot-not-connected)"} ${signedOutWarning}`;
|
|
134
134
|
ariaLabel = signedOutWarning;
|
|
135
135
|
kind = "prominent";
|
|
@@ -137,11 +137,11 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
137
137
|
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Free && (chatQuotaExceeded || completionsQuotaExceeded)) {
|
|
138
138
|
let quotaWarning;
|
|
139
139
|
if (chatQuotaExceeded && !completionsQuotaExceeded) {
|
|
140
|
-
quotaWarning = ( localize(
|
|
140
|
+
quotaWarning = ( localize(6211, "Chat quota reached"));
|
|
141
141
|
} else if (completionsQuotaExceeded && !chatQuotaExceeded) {
|
|
142
|
-
quotaWarning = ( localize(
|
|
142
|
+
quotaWarning = ( localize(6212, "Inline suggestions quota reached"));
|
|
143
143
|
} else {
|
|
144
|
-
quotaWarning = ( localize(
|
|
144
|
+
quotaWarning = ( localize(6213, "Quota reached"));
|
|
145
145
|
}
|
|
146
146
|
text = `$(copilot-warning) ${quotaWarning}`;
|
|
147
147
|
ariaLabel = quotaWarning;
|
|
@@ -149,15 +149,15 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
149
149
|
}
|
|
150
150
|
else if (this.editorService.activeTextEditorLanguageId && !isCompletionsEnabled(this.configurationService, this.editorService.activeTextEditorLanguageId)) {
|
|
151
151
|
text = "$(copilot-unavailable)";
|
|
152
|
-
ariaLabel = ( localize(
|
|
152
|
+
ariaLabel = ( localize(6214, "Inline suggestions disabled"));
|
|
153
153
|
}
|
|
154
154
|
else if (this.completionsService.isSnoozing()) {
|
|
155
155
|
text = "$(copilot-snooze)";
|
|
156
|
-
ariaLabel = ( localize(
|
|
156
|
+
ariaLabel = ( localize(6215, "Inline suggestions snoozed"));
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
const baseResult = {
|
|
160
|
-
name: ( localize(
|
|
160
|
+
name: ( localize(6216, "Copilot Status")),
|
|
161
161
|
text,
|
|
162
162
|
ariaLabel,
|
|
163
163
|
command: ShowTooltipCommand,
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { MarkdownString } from "@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent";
|
|
2
|
+
import { ContextKeyExpression } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey";
|
|
3
|
+
import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
|
|
4
|
+
import { ITipExclusionConfig } from "./chatTipEligibilityTracker.js";
|
|
5
|
+
export declare enum ChatTipTier {
|
|
6
|
+
Foundational = "foundational",
|
|
7
|
+
Qol = "qol"
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Context provided to tip builders for dynamic message construction.
|
|
11
|
+
*/
|
|
12
|
+
export interface ITipBuildContext {
|
|
13
|
+
/**
|
|
14
|
+
* Keybinding service for looking up keyboard shortcuts.
|
|
15
|
+
*/
|
|
16
|
+
readonly keybindingService: IKeybindingService;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Gets the display label for a command, looking it up from MenuRegistry.
|
|
20
|
+
* Falls back to extracting a readable name from the command ID.
|
|
21
|
+
*/
|
|
22
|
+
export declare function getCommandLabel(commandId: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Extracts command IDs from command: links in a markdown string.
|
|
25
|
+
* Used to automatically populate enabledCommands for trusted markdown.
|
|
26
|
+
*/
|
|
27
|
+
export declare function extractCommandIds(markdown: string): string[];
|
|
28
|
+
/**
|
|
29
|
+
* Interface for tip definitions in the catalog.
|
|
30
|
+
*/
|
|
31
|
+
export interface ITipDefinition extends ITipExclusionConfig {
|
|
32
|
+
readonly id: string;
|
|
33
|
+
readonly tier: ChatTipTier;
|
|
34
|
+
/**
|
|
35
|
+
* Optional priority for ordering tips within the same tier.
|
|
36
|
+
* Lower values are shown first.
|
|
37
|
+
*/
|
|
38
|
+
readonly priority?: number;
|
|
39
|
+
/**
|
|
40
|
+
* Builds the tip message dynamically at runtime.
|
|
41
|
+
* This enables keybindings and command labels to be looked up fresh.
|
|
42
|
+
* The returned MarkdownString should NOT include the "Tip:" prefix.
|
|
43
|
+
*/
|
|
44
|
+
buildMessage(ctx: ITipBuildContext): MarkdownString;
|
|
45
|
+
/**
|
|
46
|
+
* When clause expression that determines if this tip is eligible to be shown.
|
|
47
|
+
*/
|
|
48
|
+
readonly when?: ContextKeyExpression;
|
|
49
|
+
/**
|
|
50
|
+
* Chat model IDs for which this tip is eligible (lowercase).
|
|
51
|
+
*/
|
|
52
|
+
readonly onlyWhenModelIds?: readonly string[];
|
|
53
|
+
/**
|
|
54
|
+
* Setting keys that, if changed from default, make this tip ineligible.
|
|
55
|
+
*/
|
|
56
|
+
readonly excludeWhenSettingsChanged?: readonly string[];
|
|
57
|
+
/**
|
|
58
|
+
* Command IDs that dismiss this tip when clicked from the tip markdown.
|
|
59
|
+
*/
|
|
60
|
+
readonly dismissWhenCommandsClicked?: readonly string[];
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Static catalog of tips. Tips are built dynamically at runtime to enable
|
|
64
|
+
* keybindings and command labels to be resolved fresh.
|
|
65
|
+
*/
|
|
66
|
+
export declare const TIP_CATALOG: readonly ITipDefinition[];
|