@codingame/monaco-vscode-chat-service-override 34.1.3 → 35.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.
Files changed (427) hide show
  1. package/index.js +38 -0
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/browser/agentHost.config.contribution.d.ts +1 -0
  4. package/vscode/src/vs/platform/agentHost/browser/agentHost.config.contribution.js +40 -0
  5. package/vscode/src/vs/platform/agentHost/browser/agentHostConnectionsService.d.ts +27 -0
  6. package/vscode/src/vs/platform/agentHost/browser/agentHostConnectionsService.js +91 -0
  7. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.d.ts +20 -4
  8. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostProtocolClient.js +148 -15
  9. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.d.ts +1 -0
  10. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostServiceImpl.js +9 -1
  11. package/vscode/src/vs/platform/agentHost/common/agentHost.config.contribution.js +57 -3
  12. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.d.ts +10 -14
  13. package/vscode/src/vs/platform/agentHost/common/agentHostFileSystemProvider.js +29 -8
  14. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.d.ts +109 -2
  15. package/vscode/src/vs/platform/agentHost/common/agentHostSchema.js +207 -21
  16. package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +362 -37
  17. package/vscode/src/vs/platform/agentHost/common/agentService.d.ts +698 -91
  18. package/vscode/src/vs/platform/agentHost/common/agentService.js +46 -3
  19. package/vscode/src/vs/platform/agentHost/common/customAgents.js +1 -0
  20. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.d.ts +1 -0
  21. package/vscode/src/vs/platform/agentHost/common/resourceReadLogging.js +26 -0
  22. package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.d.ts +5 -5
  23. package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +17 -17
  24. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.d.ts +96 -12
  25. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +226 -19
  26. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.d.ts +18 -0
  27. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-annotations/reducer.js +89 -0
  28. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-changeset/reducer.js +10 -0
  29. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.d.ts +6 -0
  30. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-chat/reducer.js +400 -0
  31. package/vscode/src/vs/platform/agentHost/common/state/protocol/channels-session/reducer.js +129 -446
  32. package/vscode/src/vs/platform/agentHost/common/state/protocol/common/reducer-helpers.d.ts +2 -2
  33. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.d.ts +1 -1
  34. package/vscode/src/vs/platform/agentHost/common/state/protocol/version/registry.js +1 -1
  35. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.d.ts +35 -25
  36. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +7 -1
  37. package/vscode/src/vs/{workbench/contrib → platform}/browserView/common/browserChatToolReferenceNames.d.ts +4 -0
  38. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +1 -1
  39. package/vscode/src/vs/platform/sandbox/browser/sandboxHelperService.js +1 -0
  40. package/vscode/src/vs/platform/sandbox/common/terminalSandboxCommandRules.d.ts +0 -6
  41. package/vscode/src/vs/platform/sandbox/common/terminalSandboxCommandRules.js +5 -18
  42. package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.d.ts +52 -3
  43. package/vscode/src/vs/platform/sandbox/common/terminalSandboxEngine.js +212 -34
  44. package/vscode/src/vs/platform/sandbox/common/terminalSandboxReadAllowList.js +3 -4
  45. package/vscode/src/vs/platform/sandbox/common/terminalSandboxRuntimeConfigurationPerOperation.js +11 -10
  46. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +13 -6
  47. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +6 -1
  48. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.d.ts +2 -0
  49. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.js +399 -0
  50. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.d.ts +20 -0
  51. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.js +85 -0
  52. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.d.ts +177 -0
  53. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.js +898 -0
  54. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.d.ts +24 -0
  55. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.js +204 -0
  56. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService.d.ts +61 -0
  57. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService.js +338 -0
  58. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.d.ts +10 -0
  59. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.js +57 -0
  60. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.d.ts +33 -0
  61. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.js +98 -0
  62. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.d.ts +30 -0
  63. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.js +149 -0
  64. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.d.ts +12 -0
  65. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.js +116 -0
  66. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.d.ts +32 -0
  67. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.js +226 -0
  68. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.d.ts +18 -0
  69. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.js +138 -0
  70. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/tokens.d.ts +26 -0
  71. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/tokens.js +25 -0
  72. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/transcriptComponent.d.ts +13 -0
  73. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/transcriptComponent.js +108 -0
  74. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.d.ts +13 -0
  75. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.js +63 -0
  76. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.d.ts +1 -0
  77. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.js +178 -0
  78. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.d.ts +47 -0
  79. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.js +322 -0
  80. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.d.ts +15 -0
  81. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoice.js +15 -0
  82. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoiceColors.d.ts +2 -0
  83. package/vscode/src/vs/workbench/contrib/agentsVoice/common/agentsVoiceColors.js +26 -0
  84. package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.d.ts +132 -0
  85. package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.js +237 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +2 -2
  87. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +2 -2
  88. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +32 -16
  89. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  90. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.d.ts +1 -1
  91. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +71 -60
  92. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  93. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClear.js +6 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +15 -15
  95. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
  96. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +7 -7
  97. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +19 -24
  98. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  99. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.d.ts +9 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatForkActions.js +14 -5
  101. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  102. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  103. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  104. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +14 -14
  105. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -13
  106. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +66 -52
  107. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  108. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +15 -36
  109. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  110. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -19
  111. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +20 -20
  112. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.d.ts +1 -1
  113. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +128 -13
  114. package/vscode/src/vs/workbench/contrib/chat/browser/actions/openCopilotCliStateFileAction.js +6 -6
  115. package/vscode/src/vs/workbench/contrib/chat/browser/actions/reviewEdits.js +1 -1
  116. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.js +10 -10
  117. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +2 -2
  118. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  119. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +1 -0
  120. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +58 -9
  121. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +13 -13
  122. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +15 -3
  123. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.js +64 -17
  124. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.d.ts +45 -1
  125. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.js +15 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +25 -5
  127. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.js +143 -20
  128. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostModeSynchronizer.js +7 -31
  129. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.d.ts +23 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.js +52 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +5 -5
  132. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.d.ts +47 -0
  133. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.js +163 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.d.ts +26 -3
  135. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.js +106 -8
  136. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.d.ts +16 -3
  137. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/syncedCustomizationBundler.js +44 -14
  138. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
  139. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +70 -59
  140. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
  141. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
  142. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  143. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
  144. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
  145. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
  146. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +22 -22
  147. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  148. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  149. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentDisabledInputTipContribution.d.ts +27 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentDisabledInputTipContribution.js +152 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +11 -5
  152. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.d.ts +1 -1
  153. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationDebugPanel.js +9 -36
  154. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.d.ts +8 -0
  155. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +17 -15
  156. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +143 -0
  157. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +30 -0
  158. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.d.ts +6 -3
  159. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +3 -1
  160. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.d.ts +1 -3
  161. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +107 -126
  162. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +46 -46
  163. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.d.ts +19 -22
  164. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +244 -190
  165. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.d.ts +2 -0
  166. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +13 -1
  167. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.d.ts +3 -1
  168. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePage.js +7 -2
  169. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.d.ts +5 -1
  170. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +47 -28
  171. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.d.ts +2 -5
  172. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.js +4 -8
  173. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/automationsListWidget.d.ts +87 -0
  174. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/automationsListWidget.js +772 -0
  175. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.d.ts +24 -8
  176. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +3 -8
  177. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +1 -7
  178. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +2 -2
  179. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.d.ts +42 -0
  180. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +130 -0
  181. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +3 -3
  182. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.d.ts +46 -0
  183. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +94 -0
  184. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.d.ts +9 -1
  185. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +421 -201
  186. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationManagement.css +1426 -97
  187. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/media/aiCustomizationWelcomePromptLaunchers.css +1 -1
  188. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -0
  189. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +107 -127
  190. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +29 -0
  191. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +331 -0
  192. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.d.ts +120 -0
  193. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +898 -0
  194. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
  195. package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +581 -336
  196. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.d.ts +123 -0
  197. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.js +567 -0
  198. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
  199. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheDiff.js +168 -84
  200. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +183 -2
  201. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +897 -251
  202. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.d.ts +213 -0
  203. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.js +720 -0
  204. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  205. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  206. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
  207. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
  208. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
  209. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  210. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +22 -22
  211. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
  212. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
  213. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +24 -24
  214. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  215. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  216. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +33 -33
  217. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  218. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/media/chatDebug.css +354 -1
  219. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +9 -2
  220. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  221. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +1 -1
  222. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
  223. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
  224. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  225. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
  226. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +11 -4
  227. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  228. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  229. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +4 -4
  230. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +3 -3
  231. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +1 -1
  232. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  233. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.d.ts +9 -3
  234. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +55 -8
  235. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
  236. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
  237. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +18 -1
  238. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +192 -87
  239. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +37 -3
  240. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
  241. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  242. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.d.ts +40 -1
  243. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +230 -41
  244. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  245. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.d.ts +30 -0
  246. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseFileChangesService.js +29 -0
  247. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +23 -25
  248. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
  249. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  250. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +35 -32
  251. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +26 -2
  252. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +56 -32
  253. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
  254. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +0 -1
  255. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +109 -68
  256. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.d.ts +38 -5
  257. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +175 -50
  258. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/media/chatStatus.css +4 -0
  259. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
  260. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  261. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
  262. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  263. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +5 -5
  264. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +5 -5
  265. package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
  266. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  267. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  268. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +4 -4
  269. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +5 -5
  270. package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.d.ts +4 -5
  271. package/vscode/src/vs/workbench/contrib/chat/browser/pluginAutoUpdate.js +1 -1
  272. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +3 -3
  273. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +32 -3
  274. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +183 -84
  275. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
  276. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.d.ts +3 -1
  277. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +20 -9
  278. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
  279. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +27 -27
  280. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
  281. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  282. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.d.ts +1 -0
  283. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.js +109 -0
  284. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  285. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  286. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  287. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  288. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  289. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
  290. package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.d.ts +17 -0
  291. package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.js +117 -0
  292. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
  293. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +40 -4
  294. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +169 -34
  295. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +7 -7
  296. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.d.ts +5 -1
  297. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +2 -2
  298. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +8 -8
  299. package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +2 -2
  300. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  301. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.d.ts +125 -0
  302. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.js +399 -0
  303. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.d.ts +34 -0
  304. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.js +198 -0
  305. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.d.ts +85 -0
  306. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceClientService.js +504 -0
  307. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.d.ts +321 -0
  308. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.js +2117 -0
  309. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.d.ts +57 -0
  310. package/vscode/src/vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.js +367 -0
  311. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +16 -12
  312. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.d.ts +2 -0
  313. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +68 -18
  314. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +11 -10
  315. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +2 -2
  316. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
  317. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  318. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.d.ts +7 -0
  319. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +13 -2
  320. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +23 -5
  321. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +320 -40
  322. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  323. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +80 -4
  324. package/vscode/src/vs/workbench/contrib/chat/common/automations/automation.d.ts +78 -0
  325. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.d.ts +13 -0
  326. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.d.ts +11 -0
  327. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationDialogService.service.js +6 -0
  328. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.d.ts +16 -0
  329. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationRunner.service.js +6 -0
  330. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.d.ts +46 -0
  331. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.d.ts +36 -0
  332. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationService.service.js +6 -0
  333. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.d.ts +12 -0
  334. package/vscode/src/vs/workbench/contrib/chat/common/automations/automationsEnabled.js +6 -0
  335. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +9 -0
  336. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +6 -0
  337. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +2 -0
  338. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +7 -1
  339. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +28 -0
  340. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +226 -88
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.d.ts +6 -0
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +8 -3
  343. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +13 -2
  344. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +12 -8
  345. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +5 -0
  346. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +5 -2
  347. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +15 -0
  348. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +177 -0
  349. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +2 -18
  350. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +78 -136
  351. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +1 -16
  352. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +1 -17
  353. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +2 -0
  354. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +16 -5
  355. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +31 -0
  356. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +122 -0
  357. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +24 -18
  358. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +3 -0
  359. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +113 -10
  360. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  361. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  362. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +10 -0
  363. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +227 -152
  364. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  365. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.d.ts +26 -0
  366. package/vscode/src/vs/workbench/contrib/chat/common/voicePlaybackService.js +98 -0
  367. package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.d.ts +5 -0
  368. package/vscode/src/vs/workbench/contrib/chat/common/workingDirectory.js +7 -6
  369. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +11 -12
  370. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
  371. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.d.ts +2 -0
  372. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +7 -0
  373. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
  374. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  375. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
  376. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  380. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  381. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  382. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  383. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +32 -20
  384. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  385. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.d.ts +23 -5
  386. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/agentHostSandboxForwarder.js +37 -30
  387. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +7 -0
  388. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +7 -0
  389. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +7 -0
  390. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/largeOutputFileWriter.d.ts +33 -0
  391. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/largeOutputFileWriter.js +71 -0
  392. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +19 -0
  393. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +29 -9
  394. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +7 -20
  395. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +4 -4
  396. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +2 -1
  397. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  398. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  399. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +10 -8
  400. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  401. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +4 -4
  402. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  403. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  404. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +3 -3
  405. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +26 -2
  406. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +32 -3
  407. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +416 -252
  408. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +1 -1
  409. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +3 -2
  410. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +10 -10
  411. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  412. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  413. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  414. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  415. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.d.ts +2 -3
  416. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/sandboxSettingsReader.js +5 -5
  417. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +6 -2
  418. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +25 -8
  419. package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.d.ts +8 -3
  420. package/vscode/src/vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient.js +15 -0
  421. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +0 -20
  422. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +0 -77
  423. package/vscode/src/vs/workbench/contrib/chat/browser/copilotCliEventsUri.d.ts +0 -52
  424. package/vscode/src/vs/workbench/contrib/chat/browser/copilotCliEventsUri.js +0 -82
  425. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.d.ts +0 -38
  426. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.js +0 -47
  427. /package/vscode/src/vs/{workbench/contrib → platform}/browserView/common/browserChatToolReferenceNames.js +0 -0
@@ -56,9 +56,6 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
56
56
  static {
57
57
  this.QUICK_SETTINGS_COLLAPSED_KEY = "chatStatusDashboard.quickSettingsCollapsed";
58
58
  }
59
- static {
60
- this.HIDDEN_ENTRY_IDS = ( new Set(["copilot.otelStatus"]));
61
- }
62
59
  constructor(
63
60
  options,
64
61
  chatEntitlementService,
@@ -127,7 +124,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
127
124
  const isPooledQuotaDepleted = premiumChat?.unlimited && premiumChat.hasQuota === false;
128
125
  const hasUsageSection = hasQuotas || isAnonymousWithSentiment;
129
126
  const hasVisibleUsageContent = chat?.unlimited === false || premiumChat?.unlimited === false || (!this.options?.compactQuotaLayout && completions?.unlimited === false) || isAnonymousWithSentiment || isPooledQuotaDepleted;
130
- const contributedEntries = [...this.chatStatusItemService.getEntries()].filter(entry => !( ChatStatusDashboard_1.HIDDEN_ENTRY_IDS.has(entry.id)));
127
+ const contributedEntries = [...this.chatStatusItemService.getEntries()];
131
128
  const hasQuickSettingsContent = !this.options?.disableInlineSuggestionsSettings || !this.options?.disableModelSelection || !this.options?.disableProviderOptions || !this.options?.disableCompletionsSnooze;
132
129
  let headerAdditionalSpendButton;
133
130
  let headerUpgradeButton;
@@ -136,8 +133,8 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
136
133
  const headerHost = this.options?.titleHeaderContainer ?? this.element;
137
134
  const header = this.renderHeader(headerHost, this._store, planName, toAction({
138
135
  id: "workbench.action.manageCopilot",
139
- label: ( localize(6804, "Manage Copilot Settings")),
140
- tooltip: ( localize(6805, "Manage Copilot Settings")),
136
+ label: ( localize(7309, "Manage Copilot Settings")),
137
+ tooltip: ( localize(7310, "Manage Copilot Settings")),
141
138
  class: ThemeIcon.asClassName(Codicon.settings),
142
139
  run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(this.defaultAccountService.resolveGitHubUrl(GitHubPaths.copilotSettings)))))
143
140
  }));
@@ -151,7 +148,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
151
148
  secondary: true
152
149
  })));
153
150
  headerAdditionalSpendButton.element.classList.add("header-cta-button");
154
- headerAdditionalSpendButton.label = ( localize(6806, "Manage Budget"));
151
+ headerAdditionalSpendButton.label = ( localize(7311, "Manage Budget"));
155
152
  this._store.add(headerAdditionalSpendButton.onDidClick(() => {
156
153
  this.telemetryService.publicLog2("workbenchActionExecuted", {
157
154
  id: "workbench.action.chat.manageAdditionalSpend",
@@ -169,7 +166,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
169
166
  hoverDelegate: nativeHoverDelegate
170
167
  })));
171
168
  headerUpgradeButton.element.classList.add("header-cta-button");
172
- headerUpgradeButton.label = ( localize(6807, "Upgrade"));
169
+ headerUpgradeButton.label = ( localize(7312, "Upgrade"));
173
170
  this._store.add(
174
171
  headerUpgradeButton.onDidClick(() => this.runCommandAndClose("workbench.action.chat.upgradePlan"))
175
172
  );
@@ -188,7 +185,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
188
185
  hoverDelegate: nativeHoverDelegate,
189
186
  secondary: true
190
187
  })));
191
- headerAdditionalSpendButton.label = ( localize(6806, "Manage Budget"));
188
+ headerAdditionalSpendButton.label = ( localize(7311, "Manage Budget"));
192
189
  this._store.add(headerAdditionalSpendButton.onDidClick(() => {
193
190
  this.telemetryService.publicLog2("workbenchActionExecuted", {
194
191
  id: "workbench.action.chat.manageAdditionalSpend",
@@ -202,7 +199,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
202
199
  ...defaultButtonStyles,
203
200
  hoverDelegate: nativeHoverDelegate
204
201
  })));
205
- headerUpgradeButton.label = ( localize(6807, "Upgrade"));
202
+ headerUpgradeButton.label = ( localize(7312, "Upgrade"));
206
203
  this._store.add(
207
204
  headerUpgradeButton.onDidClick(() => this.runCommandAndClose("workbench.action.chat.upgradePlan"))
208
205
  );
@@ -223,16 +220,16 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
223
220
  }
224
221
  const hasPremiumUnlimited = !!premiumChat?.unlimited;
225
222
  if (hasPremiumUnlimited) {
226
- const includedTitle = this.chatEntitlementService.quotas.usageBasedBilling ? ( localize(6808, "Credits")) : ( localize(6809, "Premium Requests"));
223
+ const includedTitle = this.chatEntitlementService.quotas.usageBasedBilling ? ( localize(7313, "Credits")) : ( localize(7314, "Premium Requests"));
227
224
  const includedContainer = this.element.appendChild($("div.quota-indicator.included"));
228
225
  if (this.options?.compactQuotaLayout) {
229
226
  const planName = getChatPlanName(this.chatEntitlementService.entitlement);
230
227
  includedContainer.classList.add("compact");
231
228
  includedContainer.appendChild($("div.quota-title", undefined, planName));
232
- includedContainer.appendChild($("div.description", undefined, isPooledQuotaDepleted ? ( localize(6810, "{0} limit reached.", includedTitle)) : ( localize(6811, "{0} included with your organization's plan.", includedTitle))));
229
+ includedContainer.appendChild($("div.description", undefined, isPooledQuotaDepleted ? ( localize(7315, "{0} limit reached.", includedTitle)) : ( localize(7316, "{0} included with your organization's plan.", includedTitle))));
233
230
  } else {
234
231
  includedContainer.appendChild($("div.quota-title", undefined, includedTitle));
235
- includedContainer.appendChild($("div.description", undefined, isPooledQuotaDepleted ? ( localize(6812, "Organization limit reached.")) : ( localize(6813, "Included with your organization's plan."))));
232
+ includedContainer.appendChild($("div.description", undefined, isPooledQuotaDepleted ? ( localize(7317, "Organization limit reached.")) : ( localize(7318, "Included with your organization's plan."))));
236
233
  }
237
234
  }
238
235
  if (hasQuickSettingsContent) {
@@ -262,12 +259,12 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
262
259
  const planName = compact ? getChatPlanName(this.chatEntitlementService.entitlement) : undefined;
263
260
  if (chatQuota || premiumChatQuota || completionsQuota) {
264
261
  const resetLabel = resetDate ? (resetDateHasTime ? ( localize(
265
- 6814,
262
+ 7319,
266
263
  "Resets {0} at {1}",
267
264
  this.dateFormatter.value.format(( new Date(resetDate))),
268
265
  this.timeFormatter.value.format(( new Date(resetDate)))
269
266
  )) : ( localize(
270
- 6815,
267
+ 7320,
271
268
  "Resets {0}",
272
269
  this.dateFormatter.value.format(( new Date(resetDate)))
273
270
  ))) : undefined;
@@ -283,7 +280,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
283
280
  }
284
281
  let chatQuotaIndicator;
285
282
  if (chatQuota && !chatQuota.unlimited && (!this.chatEntitlementService.quotas.usageBasedBilling || this.chatEntitlementService.entitlement === ChatEntitlement.Free)) {
286
- const chatLabel = this.chatEntitlementService.quotas.usageBasedBilling && this.chatEntitlementService.entitlement === ChatEntitlement.Free ? ( localize(6816, "Credits")) : ( localize(6817, "Chat messages"));
283
+ const chatLabel = this.chatEntitlementService.quotas.usageBasedBilling && this.chatEntitlementService.entitlement === ChatEntitlement.Free ? ( localize(7321, "Credits")) : ( localize(7322, "Chat messages"));
287
284
  chatQuotaIndicator = this.createQuotaIndicator(
288
285
  container,
289
286
  chatQuota,
@@ -295,7 +292,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
295
292
  let premiumChatQuotaIndicator;
296
293
  if (premiumChatQuota && !premiumChatQuota.unlimited && premiumChatQuota.percentRemaining >= 0) {
297
294
  const isUBB = this.chatEntitlementService.quotas.usageBasedBilling;
298
- const premiumChatLabel = isUBB ? ( localize(6816, "Credits")) : this.chatEntitlementService.quotas.additionalUsageEnabled ? ( localize(6818, "Included premium requests")) : ( localize(6819, "Premium requests"));
295
+ const premiumChatLabel = isUBB ? ( localize(7321, "Credits")) : this.chatEntitlementService.quotas.additionalUsageEnabled ? ( localize(7323, "Included premium requests")) : ( localize(7324, "Premium requests"));
299
296
  const premiumChatResetLabel = isUBB ? this.formatResetAtLabel(premiumChatQuota.resetAt) ?? resetLabel : resetLabel;
300
297
  premiumChatQuotaIndicator = this.createQuotaIndicator(
301
298
  container,
@@ -305,10 +302,39 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
305
302
  compact ? planName : undefined
306
303
  );
307
304
  }
305
+ let additionalBudgetIndicator;
306
+ let additionalBudgetElement;
307
+ const initialOverageEntitlement = this.chatEntitlementService.quotas.additionalUsageEntitlement ?? 0;
308
+ if (initialOverageEntitlement > 0) {
309
+ const overageCount = this.chatEntitlementService.quotas.additionalUsageCount ?? 0;
310
+ const overagePercentRemaining = Math.max(0, Math.min(
311
+ 100,
312
+ ((initialOverageEntitlement - overageCount) / initialOverageEntitlement) * 100
313
+ ));
314
+ const overageSnapshot = {
315
+ percentRemaining: overagePercentRemaining,
316
+ unlimited: false,
317
+ entitlement: initialOverageEntitlement,
318
+ quotaRemaining: Math.max(0, initialOverageEntitlement - overageCount)
319
+ };
320
+ const additionalBudgetLabel = ( localize(7325, "Additional Budget"));
321
+ additionalBudgetIndicator = this.createQuotaIndicator(
322
+ container,
323
+ overageSnapshot,
324
+ additionalBudgetLabel,
325
+ resetLabel,
326
+ compact ? additionalBudgetLabel : undefined
327
+ );
328
+ additionalBudgetElement = container.lastElementChild;
329
+ const isPremiumExhausted = premiumChatQuota && premiumChatQuota.percentRemaining <= 0;
330
+ if (!isPremiumExhausted) {
331
+ additionalBudgetElement.classList.add("muted");
332
+ }
333
+ }
308
334
  let completionsQuotaIndicator;
309
335
  const showCompletions = !compact && completionsQuota && !completionsQuota.unlimited && completionsQuota.percentRemaining >= 0 && (!this.chatEntitlementService.quotas.usageBasedBilling || this.chatEntitlementService.entitlement === ChatEntitlement.Free);
310
336
  if (showCompletions) {
311
- completionsQuotaIndicator = this.createQuotaIndicator(container, completionsQuota, ( localize(6820, "Inline Suggestions")), resetLabel, compact ? planName : undefined);
337
+ completionsQuotaIndicator = this.createQuotaIndicator(container, completionsQuota, ( localize(7326, "Inline Suggestions")), resetLabel, compact ? planName : undefined);
312
338
  }
313
339
  const updateIndicators = () => {
314
340
  const {
@@ -325,12 +351,30 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
325
351
  if (completionsQuota) {
326
352
  completionsQuotaIndicator?.(completionsQuota);
327
353
  }
354
+ if (additionalBudgetIndicator && additionalBudgetElement) {
355
+ const overageEntitlement = this.chatEntitlementService.quotas.additionalUsageEntitlement ?? 0;
356
+ const overageCount = this.chatEntitlementService.quotas.additionalUsageCount ?? 0;
357
+ if (overageEntitlement > 0) {
358
+ const overagePercentRemaining = Math.max(
359
+ 0,
360
+ Math.min(100, ((overageEntitlement - overageCount) / overageEntitlement) * 100)
361
+ );
362
+ additionalBudgetIndicator({
363
+ percentRemaining: overagePercentRemaining,
364
+ unlimited: false,
365
+ entitlement: overageEntitlement,
366
+ quotaRemaining: Math.max(0, overageEntitlement - overageCount)
367
+ });
368
+ }
369
+ const premiumExhausted = premiumChatQuota && premiumChatQuota.percentRemaining <= 0;
370
+ additionalBudgetElement.classList.toggle("muted", !premiumExhausted);
371
+ }
328
372
  const {
329
373
  calloutVisible
330
374
  } = globalCalloutUpdater();
331
375
  if (headerAdditionalSpendButton) {
332
376
  headerAdditionalSpendButton.element.style.display = calloutVisible ? "" : "none";
333
- headerAdditionalSpendButton.label = ( localize(6806, "Manage Budget"));
377
+ headerAdditionalSpendButton.label = ( localize(7311, "Manage Budget"));
334
378
  }
335
379
  if (headerUpgradeButton) {
336
380
  headerUpgradeButton.element.style.display = (headerAdditionalSpendButton && calloutVisible) ? "none" : "";
@@ -351,7 +395,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
351
395
  );
352
396
  }
353
397
  else if (this.chatEntitlementService.anonymous && this.chatEntitlementService.sentiment.completed) {
354
- this.createQuotaIndicator(container, ( localize(6821, "Limited")), ( localize(6817, "Chat messages")));
398
+ this.createQuotaIndicator(container, ( localize(7327, "Limited")), ( localize(7322, "Chat messages")));
355
399
  }
356
400
  }
357
401
  renderInlineSuggestionsSection(hasContentAbove) {
@@ -364,10 +408,10 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
364
408
  const activeLanguageId = this.editorService.activeTextEditorLanguageId;
365
409
  const getStatusText = () => {
366
410
  if (!this.canUseChat()) {
367
- return localize(6822, "Disabled");
411
+ return localize(7328, "Disabled");
368
412
  }
369
413
  const enabled = activeLanguageId ? isCompletionsEnabled(this.configurationService, activeLanguageId) : isCompletionsEnabled(this.configurationService);
370
- return enabled ? ( localize(6823, "Enabled")) : ( localize(6822, "Disabled"));
414
+ return enabled ? ( localize(7329, "Enabled")) : ( localize(7328, "Disabled"));
371
415
  };
372
416
  let disclosureHeader;
373
417
  let chevron;
@@ -378,7 +422,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
378
422
  disclosureHeader.classList.add("no-border");
379
423
  }
380
424
  disclosureHeader.setAttribute("aria-expanded", String(!collapsed));
381
- disclosureHeader.appendChild($("span.collapsible-label", undefined, ( localize(6824, "Inline Suggestions"))));
425
+ disclosureHeader.appendChild($("span.collapsible-label", undefined, ( localize(7330, "Inline Suggestions"))));
382
426
  chevron = disclosureHeader.appendChild($("span.collapsible-chevron"));
383
427
  chevron.classList.add(
384
428
  ...ThemeIcon.asClassNameArray(collapsed ? Codicon.chevronRight : Codicon.chevronDown)
@@ -440,7 +484,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
440
484
  if (linkDescription) {
441
485
  hoverContent.appendText(" ");
442
486
  }
443
- hoverContent.appendMarkdown(`[${( localize(6825, "Learn More"))}](${headerLink})`);
487
+ hoverContent.appendMarkdown(`[${( localize(7331, "Learn More"))}](${headerLink})`);
444
488
  }
445
489
  return {
446
490
  content: hoverContent
@@ -512,7 +556,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
512
556
  let descriptionClass = ".description";
513
557
  if (newUser && anonymousUser) {
514
558
  descriptionText = ( new MarkdownString(( localize(
515
- 6826,
559
+ 7332,
516
560
  "By continuing with {0} Copilot, you agree to {1}'s [Terms]({2}) and [Privacy Statement]({3})",
517
561
  defaultChat.provider.default.name,
518
562
  defaultChat.provider.default.name,
@@ -523,23 +567,23 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
523
567
  }));
524
568
  descriptionClass = `${descriptionClass}.terms`;
525
569
  } else if (newUser) {
526
- descriptionText = ( localize(6827, "Set up Copilot to use AI features."));
570
+ descriptionText = ( localize(7333, "Set up Copilot to use AI features."));
527
571
  } else if (anonymousUser) {
528
- descriptionText = ( localize(6828, "Sign in to enable more Copilot AI features."));
572
+ descriptionText = ( localize(7334, "Sign in to enable more Copilot AI features."));
529
573
  } else if (disabled) {
530
- descriptionText = ( localize(6829, "Enable Copilot to use AI features."));
574
+ descriptionText = ( localize(7335, "Enable Copilot to use AI features."));
531
575
  } else {
532
- descriptionText = ( localize(6830, "Sign in to use GitHub Copilot AI features."));
576
+ descriptionText = ( localize(7336, "Sign in to use GitHub Copilot AI features."));
533
577
  }
534
578
  let buttonLabel;
535
579
  if (newUser) {
536
- buttonLabel = ( localize(6831, "Use AI Features"));
580
+ buttonLabel = ( localize(7337, "Use AI Features"));
537
581
  } else if (anonymousUser) {
538
- buttonLabel = ( localize(6832, "Enable more AI Features"));
582
+ buttonLabel = ( localize(7338, "Enable more AI Features"));
539
583
  } else if (disabled) {
540
- buttonLabel = ( localize(6833, "Enable AI Features"));
584
+ buttonLabel = ( localize(7339, "Enable AI Features"));
541
585
  } else {
542
- buttonLabel = ( localize(6834, "Sign in to use GitHub Copilot"));
586
+ buttonLabel = ( localize(7340, "Sign in to use GitHub Copilot"));
543
587
  }
544
588
  let commandId;
545
589
  if (newUser && anonymousUser) {
@@ -575,7 +619,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
575
619
  const currentModel = modelInfo.models.find(m => m.id === modelInfo.currentModelId);
576
620
  if (currentModel) {
577
621
  const modelContainer = container.appendChild($("div.model-selection"));
578
- modelContainer.appendChild($("span.model-text", undefined, ( localize(6835, "Model"))));
622
+ modelContainer.appendChild($("span.model-text", undefined, ( localize(7341, "Model"))));
579
623
  const selectOptions = ( modelInfo.models.map(m => ({
580
624
  text: m.name
581
625
  })));
@@ -586,7 +630,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
586
630
  this.contextViewService,
587
631
  defaultSelectBoxStyles,
588
632
  {
589
- ariaLabel: ( localize(6836, "Select Model")),
633
+ ariaLabel: ( localize(7342, "Select Model")),
590
634
  optionsAsChildren: true
591
635
  }
592
636
  )));
@@ -619,7 +663,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
619
663
  this.contextViewService,
620
664
  defaultSelectBoxStyles,
621
665
  {
622
- ariaLabel: ( localize(6837, "Select {0}", option.label)),
666
+ ariaLabel: ( localize(7343, "Select {0}", option.label)),
623
667
  optionsAsChildren: true
624
668
  }
625
669
  )));
@@ -638,7 +682,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
638
682
  }
639
683
  if (!this.options?.disableCompletionsSnooze && this.canUseChat()) {
640
684
  const snooze = append(container, $("div.snooze-completions"));
641
- this.createCompletionsSnooze(snooze, ( localize(6838, "Snooze")));
685
+ this.createCompletionsSnooze(snooze, ( localize(7344, "Snooze")));
642
686
  }
643
687
  }
644
688
  canUseChat() {
@@ -695,7 +739,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
695
739
  }
696
740
  const resetDate = ( new Date(resetAt * 1000));
697
741
  return localize(
698
- 6814,
742
+ 7319,
699
743
  "Resets {0} at {1}",
700
744
  this.dateFormatter.value.format(resetDate),
701
745
  this.timeFormatter.value.format(resetDate)
@@ -737,11 +781,11 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
737
781
  } else {
738
782
  const usedPercentage = Math.max(0, 100 - currentQuota.percentRemaining);
739
783
  quotaValueText.textContent = ( localize(
740
- 6839,
784
+ 7345,
741
785
  "{0}%",
742
786
  this.quotaPercentageFormatter.value.format(Math.floor(usedPercentage))
743
787
  ));
744
- quotaValueSuffix.textContent = isCompact ? ( localize(6840, "{0} used", label)) : ` ${( localize(6841, "used"))}`;
788
+ quotaValueSuffix.textContent = isCompact ? ( localize(7346, "{0} used", label)) : ` ${( localize(7347, "used"))}`;
745
789
  }
746
790
  };
747
791
  const showCredits = () => {
@@ -750,8 +794,8 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
750
794
  const used = currentQuota.quotaRemaining !== undefined ? total - currentQuota.quotaRemaining : total * (100 - currentQuota.percentRemaining) / 100;
751
795
  const usedFormatted = this.quotaCreditsFormatter.value.format(used);
752
796
  const totalFormatted = this.quotaCreditsFormatter.value.format(total);
753
- quotaValueText.textContent = ( localize(6842, "{0} / {1}", usedFormatted, totalFormatted));
754
- quotaValueSuffix.textContent = isCompact ? ( localize(6840, "{0} used", label)) : ` ${( localize(6841, "used"))}`;
797
+ quotaValueText.textContent = ( localize(7348, "{0} / {1}", usedFormatted, totalFormatted));
798
+ quotaValueSuffix.textContent = isCompact ? ( localize(7346, "{0} used", label)) : ` ${( localize(7347, "used"))}`;
755
799
  }
756
800
  };
757
801
  const hoverTarget = isCompact ? quotaValueText : quotaPercentage;
@@ -806,9 +850,6 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
806
850
  if (quotas.premiumChat && !quotas.premiumChat.unlimited) {
807
851
  allQuotas.push(quotas.premiumChat);
808
852
  }
809
- if (quotas.completions && !quotas.completions.unlimited) {
810
- allQuotas.push(quotas.completions);
811
- }
812
853
  const maxUsedPercentage = allQuotas.length > 0 ? Math.max(...( allQuotas.map(q => Math.max(0, 100 - q.percentRemaining)))) : 0;
813
854
  const isPooledQuotaExhausted = quotas.premiumChat?.unlimited && quotas.premiumChat.hasQuota === false;
814
855
  if (isEnterpriseUser && isPooledQuotaExhausted) {
@@ -816,7 +857,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
816
857
  quotaCallout.className = "quota-callout info";
817
858
  calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
818
859
  calloutText.textContent = ( localize(
819
- 6843,
860
+ 7349,
820
861
  "Your organization or enterprise has exceeded its Copilot budget. Contact your admin to resume usage."
821
862
  ));
822
863
  } else if (maxUsedPercentage >= 100 && additionalUsageEnabled) {
@@ -824,13 +865,13 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
824
865
  quotaCallout.className = "quota-callout info";
825
866
  calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
826
867
  calloutText.textContent = isEnterpriseUser ? ( localize(
827
- 6844,
828
- "You've used your included credits. Your organization covers additional usage, so you can keep working."
868
+ 7350,
869
+ "Copilot has paused because your limits are reached. Please contact your admin to increase your limits."
829
870
  )) : isUsageBasedBilling ? ( localize(
830
- 6845,
871
+ 7351,
831
872
  "Additional budget is configured. Usage will continue until limits reset."
832
873
  )) : ( localize(
833
- 6846,
874
+ 7352,
834
875
  "Premium request budget is configured. Usage will continue until limits reset."
835
876
  ));
836
877
  } else if (maxUsedPercentage >= 75 && maxUsedPercentage < 100 && additionalUsageEnabled) {
@@ -838,25 +879,25 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
838
879
  quotaCallout.className = "quota-callout info";
839
880
  calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
840
881
  calloutText.textContent = isEnterpriseUser ? ( localize(
841
- 6847,
842
- "You're approaching your included credits. Your organization covers additional usage, so there's no interruption."
843
- )) : isUsageBasedBilling ? ( localize(6848, "Once the limit is reached, additional budget will be used.")) : ( localize(6849, "Once the limit is reached, premium request budget will be used."));
882
+ 7353,
883
+ "Copilot will pause when your limits are reached. Please contact your admin to increase your limits."
884
+ )) : isUsageBasedBilling ? ( localize(7354, "Once the limit is reached, additional budget will be used.")) : ( localize(7355, "Once the limit is reached, premium request budget will be used."));
844
885
  } else if ((maxUsedPercentage >= 100 || isPooledQuotaExhausted) && !additionalUsageEnabled) {
845
886
  quotaCallout.style.display = "";
846
887
  quotaCallout.className = "quota-callout info";
847
888
  calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
848
889
  calloutText.textContent = isEnterpriseUser ? ( localize(
849
- 6850,
890
+ 7356,
850
891
  "Copilot is paused until the limit resets. Contact your administrator for more information."
851
- )) : ( localize(6851, "Copilot is paused until the limit resets."));
892
+ )) : ( localize(7357, "Copilot is paused until the limit resets."));
852
893
  } else if (maxUsedPercentage >= 75 && !additionalUsageEnabled) {
853
894
  quotaCallout.style.display = "";
854
895
  quotaCallout.className = "quota-callout info";
855
896
  calloutIcon.className = `callout-icon ${ThemeIcon.asClassName(Codicon.info)}`;
856
897
  calloutText.textContent = isEnterpriseUser ? ( localize(
857
- 6852,
898
+ 7358,
858
899
  "Copilot will pause when the limit is reached. Contact your administrator for more information."
859
- )) : ( localize(6853, "Copilot will pause when the limit is reached."));
900
+ )) : ( localize(7359, "Copilot will pause when the limit is reached."));
860
901
  } else {
861
902
  quotaCallout.style.display = "none";
862
903
  }
@@ -873,23 +914,23 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
873
914
  const settings = container.appendChild($("div.settings"));
874
915
  {
875
916
  const globalSetting = append(settings, $("div.setting"));
876
- this.createInlineSuggestionsSetting(globalSetting, ( localize(6854, "Ghost text suggestions")), "*");
917
+ this.createInlineSuggestionsSetting(globalSetting, ( localize(7360, "Ghost text suggestions")), "*");
877
918
  const overriddenHint = globalSetting.appendChild($("span.setting-overridden"));
878
919
  const updateOverriddenHint = () => {
879
920
  const obj = this.configurationService.getValue(defaultChat.completionsEnablementSetting);
880
921
  const hasOverride = modeId && isObject(obj) && typeof obj[modeId] !== "undefined" && Boolean(obj[modeId]) !== Boolean(obj["*"]);
881
- overriddenHint.textContent = hasOverride ? ( localize(6855, "(overridden)")) : "";
922
+ overriddenHint.textContent = hasOverride ? ( localize(7361, "(overridden)")) : "";
882
923
  };
883
924
  updateOverriddenHint();
884
925
  if (modeId) {
885
926
  const languageSetting = append(settings, $("div.setting"));
886
927
  const languageName = this.languageService.getLanguageName(modeId) ?? modeId;
887
- this.createTriStateLanguageSetting(languageSetting, ( localize(6856, "Ghost text suggestions for {0}", languageName)), modeId, updateOverriddenHint);
928
+ this.createTriStateLanguageSetting(languageSetting, ( localize(7362, "Ghost text suggestions for {0}", languageName)), modeId, updateOverriddenHint);
888
929
  }
889
930
  }
890
931
  {
891
932
  const setting = append(settings, $("div.setting"));
892
- this.createNextEditSuggestionsSetting(setting, ( localize(6857, "Next edit suggestions")), this.getCompletionsSettingAccessor(modeId));
933
+ this.createNextEditSuggestionsSetting(setting, ( localize(7363, "Next edit suggestions")), this.getCompletionsSettingAccessor(modeId));
893
934
  }
894
935
  }
895
936
  createSetting(container, settingIdsToReEvaluate, label, accessor) {
@@ -1091,7 +1132,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
1091
1132
  })));
1092
1133
  const cancelAction = toAction({
1093
1134
  id: "workbench.action.cancelSnoozeStatusBarLink",
1094
- label: ( localize(6858, "Cancel Snooze")),
1135
+ label: ( localize(7364, "Cancel Snooze")),
1095
1136
  run: () => this.inlineCompletionsService.cancelSnooze(),
1096
1137
  class: ThemeIcon.asClassName(Codicon.stopCircle)
1097
1138
  });
@@ -1100,19 +1141,19 @@ let ChatStatusDashboard = class ChatStatusDashboard extends DomWidget {
1100
1141
  toolbar.clear();
1101
1142
  const timeLeftMs = this.inlineCompletionsService.snoozeTimeLeft;
1102
1143
  if (!isEnabled || timeLeftMs <= 0) {
1103
- timerDisplay.textContent = ( localize(6859, "Hide suggestions for 5 min"));
1144
+ timerDisplay.textContent = ( localize(7365, "Hide suggestions for 5 min"));
1104
1145
  timerDisplay.title = "";
1105
1146
  button.label = label;
1106
- button.setTitle(( localize(6860, "Hide inline suggestions for 5 min")));
1147
+ button.setTitle(( localize(7366, "Hide inline suggestions for 5 min")));
1107
1148
  return true;
1108
1149
  }
1109
1150
  const timeLeftSeconds = Math.ceil(timeLeftMs / 1000);
1110
1151
  const minutes = Math.floor(timeLeftSeconds / 60);
1111
1152
  const seconds = timeLeftSeconds % 60;
1112
- timerDisplay.textContent = `${minutes}:${seconds < 10 ? "0" : ""}${seconds} ${( localize(6861, "remaining"))}`;
1113
- timerDisplay.title = ( localize(6862, "Inline suggestions are hidden for the remaining duration"));
1114
- button.label = ( localize(6863, "+5 min"));
1115
- button.setTitle(( localize(6864, "Snooze additional 5 min")));
1153
+ timerDisplay.textContent = `${minutes}:${seconds < 10 ? "0" : ""}${seconds} ${( localize(7367, "remaining"))}`;
1154
+ timerDisplay.title = ( localize(7368, "Inline suggestions are hidden for the remaining duration"));
1155
+ button.label = ( localize(7369, "+5 min"));
1156
+ button.setTitle(( localize(7370, "Snooze additional 5 min")));
1116
1157
  toolbar.push([cancelAction], {
1117
1158
  icon: true,
1118
1159
  label: false
@@ -1,13 +1,31 @@
1
1
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
2
  import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
3
3
  import { IStatusbarService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar.service";
4
- import { ChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService";
4
+ import { ChatEntitlement, ChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService";
5
+ import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
6
+ import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
5
7
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
6
8
  import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
7
9
  import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
8
10
  import { IInlineCompletionsService } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/inlineCompletionsService.service";
9
- import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
10
11
  import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
12
+ /**
13
+ * Tracks whether Copilot is currently blocked by a reached quota limit, has
14
+ * resumed after a limit reset, or neither. Persisted across sessions so a reset
15
+ * that happens while VS Code is closed can still be surfaced on next launch.
16
+ */
17
+ export type ChatQuotaResumeState = "none" | "blocked" | "resumed";
18
+ type ChatQuotas = IChatEntitlementService["quotas"];
19
+ /**
20
+ * Pure state transition for the Copilot quota "resumed" indicator:
21
+ * - Enters `blocked` while a limit is reached and the user is not on additional spend.
22
+ * - Moves `blocked` -> `resumed` only on a genuine limit reset (fresh quota, no additional spend).
23
+ * - Moves `blocked` -> `none` when unblocked via additional spend (not a reset).
24
+ * - Keeps `blocked` while fresh quota has not been resolved yet (e.g. offline) to avoid false positives.
25
+ * - Otherwise preserves the previous state, so `resumed` persists until dismissed.
26
+ * - Resets to `none` for entitlements this entry doesn't track, so the state can't get stuck (e.g. upgrading from Free while `blocked`).
27
+ */
28
+ export declare function computeQuotaResumeState(previous: ChatQuotaResumeState, entitlement: ChatEntitlement, quotas: ChatQuotas): ChatQuotaResumeState;
11
29
  export declare class ChatStatusBarEntry extends Disposable implements IWorkbenchContribution {
12
30
  private readonly chatEntitlementService;
13
31
  private readonly instantiationService;
@@ -15,21 +33,36 @@ export declare class ChatStatusBarEntry extends Disposable implements IWorkbench
15
33
  private readonly editorService;
16
34
  private readonly configurationService;
17
35
  private readonly completionsService;
18
- private readonly chatSessionsService;
19
36
  private readonly contextKeyService;
37
+ private readonly storageService;
20
38
  static readonly ID = "workbench.contrib.chatStatusBarEntry";
21
39
  private static readonly TITLE_BAR_CONTEXT_KEYS;
40
+ private static readonly QUOTA_RESUME_STATE_KEY;
41
+ private static readonly QUOTA_RESET_RETRY_DELAY;
22
42
  private entry;
23
43
  private readonly activeCodeEditorListener;
24
44
  private readonly entryAnchor;
25
45
  private readonly dashboardTooltip;
26
- private runningSessionsCount;
27
- constructor(chatEntitlementService: ChatEntitlementService, instantiationService: IInstantiationService, statusbarService: IStatusbarService, editorService: IEditorService, configurationService: IConfigurationService, completionsService: IInlineCompletionsService, chatSessionsService: IChatSessionsService, contextKeyService: IContextKeyService);
46
+ private quotaResumeState;
47
+ private readonly quotaResetTimer;
48
+ private readonly quotaRefresh;
49
+ private readonly clearResumedScheduler;
50
+ constructor(chatEntitlementService: ChatEntitlementService, instantiationService: IInstantiationService, statusbarService: IStatusbarService, editorService: IEditorService, configurationService: IConfigurationService, completionsService: IInlineCompletionsService, contextKeyService: IContextKeyService, storageService: IStorageService);
28
51
  private update;
29
52
  private registerListeners;
30
53
  private onDidActiveEditorChange;
54
+ private onQuotaChanged;
55
+ private evaluateQuotaResumeState;
56
+ private getQuotaResetTime;
57
+ private scheduleQuotaResetRefresh;
58
+ private refreshQuotaAndEvaluate;
59
+ private initializeQuotaResumeState;
60
+ private readPersistedQuotaResumeState;
61
+ private setQuotaResumeState;
62
+ private onDashboardOpened;
31
63
  private getEntryProps;
32
64
  private getSetupEntryProps;
33
65
  private isSignInTitleBarAffordanceVisible;
34
66
  dispose(): void;
35
67
  }
68
+ export {};