@codingame/monaco-vscode-chat-service-override 37.0.0 → 37.2.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 (459) hide show
  1. package/index.js +26 -5
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/agentHost/browser/agentHostEnablementService.js +1 -1
  4. package/vscode/src/vs/platform/agentHost/browser/agentHostProtocolClient.js +1 -1
  5. package/vscode/src/vs/platform/agentHost/common/agentHostCustomizationConfig.d.ts +74 -0
  6. package/vscode/src/vs/platform/agentHost/common/agentHostCustomizationConfig.js +90 -0
  7. package/vscode/src/vs/platform/agentHost/common/agentHostSlashCommand.d.ts +8 -0
  8. package/vscode/src/vs/platform/agentHost/common/agentHostSlashCommand.js +16 -0
  9. package/vscode/src/vs/platform/agentHost/common/agentHostStarter.config.contribution.js +53 -53
  10. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.d.ts +16 -0
  11. package/vscode/src/vs/platform/agentHost/common/agentHostWorkingDirectories.js +14 -0
  12. package/vscode/src/vs/platform/agentHost/common/agentMerge.js +7 -7
  13. package/vscode/src/vs/platform/agentHost/common/agentModelByokMeta.d.ts +24 -0
  14. package/vscode/src/vs/platform/agentHost/common/agentModelByokMeta.js +13 -0
  15. package/vscode/src/vs/platform/agentHost/common/agentModelNotices.d.ts +22 -0
  16. package/vscode/src/vs/platform/agentHost/common/agentModelNotices.js +21 -0
  17. package/vscode/src/vs/platform/agentHost/common/agentModelPricing.d.ts +114 -0
  18. package/vscode/src/vs/platform/agentHost/common/agentModelPricing.js +56 -0
  19. package/vscode/src/vs/platform/agentHost/common/changesetUri.js +15 -1
  20. package/vscode/src/vs/platform/agentHost/common/copilotConfigSlashCommands.d.ts +73 -0
  21. package/vscode/src/vs/platform/agentHost/common/copilotConfigSlashCommands.js +141 -0
  22. package/vscode/src/vs/platform/agentHost/common/meta/agentCompletionAttachmentMeta.js +42 -1
  23. package/vscode/src/vs/platform/agentHost/common/meta/agentCustomizationMeta.d.ts +27 -0
  24. package/vscode/src/vs/platform/agentHost/common/meta/agentCustomizationMeta.js +14 -0
  25. package/vscode/src/vs/platform/agentHost/common/meta/agentEphemeralSessionMeta.d.ts +14 -0
  26. package/vscode/src/vs/platform/agentHost/common/meta/agentEphemeralSessionMeta.js +11 -0
  27. package/vscode/src/vs/platform/agentHost/common/sandboxConfigSchema.js +13 -13
  28. package/vscode/src/vs/platform/agentHost/common/state/agentSubscription.js +1 -1
  29. package/vscode/src/vs/platform/agentHost/common/state/sessionActions.js +4 -1
  30. package/vscode/src/vs/platform/agentHost/common/toolSearchConstants.d.ts +4 -0
  31. package/vscode/src/vs/platform/agentHost/common/toolSearchConstants.js +6 -0
  32. package/vscode/src/vs/platform/networkFilter/common/networkFilterService.js +1 -1
  33. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.d.ts +104 -0
  34. package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +827 -0
  35. package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.d.ts +15 -0
  36. package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.js +71 -0
  37. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.d.ts +16 -0
  38. package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +95 -0
  39. package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.d.ts +22 -0
  40. package/vscode/src/vs/workbench/api/browser/mainThreadChatDebug.js +286 -0
  41. package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.d.ts +10 -0
  42. package/vscode/src/vs/workbench/api/browser/mainThreadChatInputNotification.js +38 -0
  43. package/vscode/src/vs/workbench/api/browser/mainThreadChatQuota.d.ts +9 -0
  44. package/vscode/src/vs/workbench/api/browser/mainThreadChatQuota.js +22 -0
  45. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +130 -0
  46. package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +907 -0
  47. package/vscode/src/vs/workbench/api/browser/mainThreadChatStatus.d.ts +10 -0
  48. package/vscode/src/vs/workbench/api/browser/mainThreadChatStatus.js +28 -0
  49. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.d.ts +27 -0
  50. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +167 -0
  51. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.d.ts +46 -0
  52. package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +356 -0
  53. package/vscode/src/vs/workbench/browser/chatChangesPill.js +2 -2
  54. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution.js +28 -28
  55. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceSessionsPicker.js +2 -2
  56. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidget.js +18 -18
  57. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/agentsVoiceWidgetBinding.js +4 -4
  58. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/confirmationComponent.js +3 -3
  59. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.js +6 -6
  60. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.js +11 -11
  61. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.js +11 -11
  62. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/sessionListComponent.js +9 -9
  63. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/statusRowsComponent.js +5 -5
  64. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/components/voiceBarComponent.js +2 -2
  65. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscripts.contribution.js +13 -13
  66. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/transcriptsView/voiceTranscriptsView.js +7 -7
  67. package/vscode/src/vs/workbench/contrib/agentsVoice/browser/voiceModeOnboarding.js +28 -28
  68. package/vscode/src/vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.js +1 -1
  69. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +18 -18
  70. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +8 -8
  71. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +93 -93
  72. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +12 -12
  74. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +8 -8
  75. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +7 -7
  76. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +7 -7
  77. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  78. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFindActions.js +7 -7
  79. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  80. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  81. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  82. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +12 -12
  83. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatOpenAgentDebugPanelAction.js +13 -13
  84. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPluginActions.js +16 -16
  85. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +2 -2
  86. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQueueActions.js +15 -15
  87. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  88. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +18 -18
  89. package/vscode/src/vs/workbench/contrib/chat/browser/actions/createPluginAction.js +32 -32
  90. package/vscode/src/vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.js +10 -10
  91. package/vscode/src/vs/workbench/contrib/chat/browser/actions/openAgentHostStateFileAction.js +5 -5
  92. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginCommands.js +7 -7
  93. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditor.js +3 -3
  94. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginEditorInput.js +2 -2
  95. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginEditor/agentPluginItems.d.ts +2 -2
  96. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.d.ts +1 -1
  97. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.js +14 -14
  98. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +16 -16
  99. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.d.ts +34 -0
  100. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationContentExpander.js +229 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.d.ts +57 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationItemProvider.js +460 -0
  103. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentCustomizationSyncProvider.d.ts +1 -1
  104. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHost.contribution.d.ts +1 -0
  105. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHost.contribution.js +92 -0
  106. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.d.ts +1 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAllowSignedOutWhenUsableContribution.d.ts +23 -0
  108. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAllowSignedOutWhenUsableContribution.js +46 -0
  109. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAuth.d.ts +142 -0
  110. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostAuth.js +746 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.d.ts +77 -0
  112. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.js +474 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostConfigEditor.d.ts +169 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostConfigEditor.js +261 -0
  115. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCopilotCliSettingsContribution.d.ts +20 -0
  116. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCopilotCliSettingsContribution.js +90 -0
  117. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.d.ts +35 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostDownloadProgress.js +73 -0
  119. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostExistingSessionHarnessPickerEnablement.d.ts +20 -0
  120. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostExistingSessionHarnessPickerEnablement.js +61 -0
  121. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLanguageModelProvider.d.ts +112 -0
  122. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLanguageModelProvider.js +192 -0
  123. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostLocalCustomizations.d.ts +1 -1
  124. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +6 -6
  125. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.d.ts +21 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPromptCacheNotification.js +137 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostResponseFileChanges.js +301 -12
  128. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostRootConfigForwarder.d.ts +84 -0
  129. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostRootConfigForwarder.js +96 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.d.ts +884 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.js +5870 -0
  132. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionInputPills.js +19 -19
  133. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListContribution.d.ts +27 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListContribution.js +129 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.d.ts +42 -0
  136. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListController.js +221 -0
  137. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.d.ts +125 -0
  138. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionListStore.js +345 -0
  139. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectorySynchronizer.js +1 -1
  140. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettings.contribution.d.ts +1 -0
  141. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettings.contribution.js +68 -0
  142. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettingsFileSystemProvider.d.ts +62 -0
  143. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSettingsFileSystemProvider.js +163 -0
  144. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSignedOutModelsNotification.d.ts +54 -0
  145. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSignedOutModelsNotification.js +219 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSubagentProgress.d.ts +10 -0
  147. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSubagentProgress.js +50 -0
  148. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostTerminalContribution.d.ts +42 -0
  149. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostTerminalContribution.js +132 -0
  150. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettings.contribution.d.ts +1 -0
  151. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettings.contribution.js +85 -0
  152. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.d.ts +79 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentSessionSettingsFileSystemProvider.js +161 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSubmitConfig.d.ts +18 -0
  155. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/applyAgentHostSubmitConfig.js +13 -0
  156. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/copilotConfigSlashSubmitHandler.d.ts +28 -0
  157. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/copilotConfigSlashSubmitHandler.js +71 -0
  158. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/openSessionLinkOpener.contribution.d.ts +35 -0
  159. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/openSessionLinkOpener.contribution.js +205 -0
  160. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +1 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +1 -1
  162. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +51 -51
  163. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.d.ts +1 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +4 -4
  165. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +1 -1
  166. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +1 -1
  167. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
  168. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +1 -1
  169. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +5 -5
  170. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +1 -1
  171. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +2 -2
  172. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +5 -5
  173. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +23 -23
  174. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
  175. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
  176. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/externalSessionsFilterMenu.js +6 -6
  177. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsController.js +2 -2
  178. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/sessionSummaryHover.js +7 -7
  179. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessionsConfiguration.js +3 -3
  180. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +15 -15
  181. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.d.ts +1 -1
  182. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource.js +1 -1
  183. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.js +3 -3
  184. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +126 -126
  185. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +44 -44
  186. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +138 -138
  187. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +3 -3
  188. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.d.ts +1 -1
  189. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationPresentation.js +6 -6
  190. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +37 -37
  191. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCardList.js +1 -1
  192. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationCreatorService.js +1 -1
  193. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.d.ts +1 -1
  194. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.js +1 -1
  195. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigration.d.ts +1 -1
  196. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationAccessibility.js +6 -6
  197. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationCategories.js +146 -146
  198. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationDashboard.js +29 -29
  199. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationMigrationServiceImpl.js +9 -9
  200. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.d.ts +1 -1
  201. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +40 -40
  202. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedExtensionToolsDetail.js +7 -7
  203. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +8 -8
  204. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/galleryItemRenderer.js +5 -5
  205. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +76 -76
  206. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.d.ts +1 -1
  207. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +116 -116
  208. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.d.ts +1 -1
  209. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.js +4 -4
  210. package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.js +50 -50
  211. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +2 -2
  212. package/vscode/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.js +356 -356
  213. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.d.ts +1 -1
  214. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostChatDebugProvider.js +38 -38
  215. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/agentHostLogSources.js +5 -5
  216. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.d.ts +1 -1
  217. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
  218. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.d.ts +1 -1
  219. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +124 -124
  220. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheInsights.js +72 -72
  221. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.d.ts +1 -1
  222. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
  223. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
  224. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEnablement.js +3 -3
  225. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.d.ts +1 -1
  226. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
  227. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.d.ts +1 -1
  228. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +8 -8
  229. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
  230. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
  231. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.d.ts +1 -1
  232. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +22 -22
  233. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +12 -12
  234. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.d.ts +1 -1
  235. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +18 -18
  236. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.d.ts +1 -1
  237. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +24 -24
  238. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.d.ts +1 -1
  239. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
  240. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.d.ts +1 -1
  241. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
  242. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +36 -36
  243. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.d.ts +1 -1
  244. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
  245. package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugWireLogView.js +40 -40
  246. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
  247. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
  248. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
  249. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
  250. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
  251. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
  252. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
  253. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -1
  254. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
  256. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
  257. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
  258. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +1 -1
  259. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
  260. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +3 -3
  261. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPills.js +3 -3
  262. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -8
  263. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
  264. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +63 -63
  265. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
  266. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
  267. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievements.contribution.js +12 -12
  268. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditor.js +1 -1
  269. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsEditorInput.js +1 -1
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatPetAchievementsWidget.js +35 -35
  271. package/vscode/src/vs/workbench/contrib/chat/browser/chatPromoNotification.js +2 -2
  272. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuotaNotification.js +27 -27
  273. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
  274. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.d.ts +2 -0
  275. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +57 -0
  276. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +21 -21
  277. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +1 -1
  278. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +11 -11
  279. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.d.ts +1 -1
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +27 -27
  282. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +17 -17
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +20 -20
  285. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +62 -62
  286. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +10 -10
  287. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
  288. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +2 -2
  289. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +7 -7
  290. package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
  291. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.js +5 -5
  292. package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +5 -5
  293. package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
  294. package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.d.ts +1 -1
  295. package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationConfig.js +1 -1
  296. package/vscode/src/vs/workbench/contrib/chat/browser/expNotification/chatExpNotificationContribution.js +1 -1
  297. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
  298. package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorOverlay.js +6 -6
  299. package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +6 -6
  300. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.d.ts +1 -1
  301. package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +29 -29
  302. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.d.ts +1 -1
  303. package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +16 -16
  304. package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +7 -7
  305. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +2 -2
  306. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +30 -30
  307. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +4 -4
  308. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  309. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolSetsCodeLensProvider.js +2 -2
  310. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  311. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  312. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  313. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
  314. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
  315. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimeline.contribution.js +5 -5
  316. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineCard.js +4 -4
  317. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineGutterRail.js +4 -4
  318. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineModel.js +3 -3
  319. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineRulerRail.js +1 -1
  320. package/vscode/src/vs/workbench/contrib/chat/browser/promptTimeline/promptTimelineStickyHeader.js +3 -3
  321. package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +21 -21
  322. package/vscode/src/vs/workbench/contrib/chat/browser/sessionChatPillOptions.js +18 -18
  323. package/vscode/src/vs/workbench/contrib/chat/browser/sessionPullRequestPill.js +2 -2
  324. package/vscode/src/vs/workbench/contrib/chat/browser/tools/clientToolSetsContribution.js +10 -10
  325. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
  326. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +26 -26
  327. package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +9 -9
  328. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolHelpers.js +1 -1
  329. package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +8 -8
  330. package/vscode/src/vs/workbench/contrib/chat/browser/utilityModelContribution.js +2 -2
  331. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  332. package/vscode/src/vs/workbench/contrib/chat/browser/voiceInputMode/voiceInputMode.js +1 -1
  333. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentOpenChat.js +17 -17
  334. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatFind/chatFindAccessibilityHelp.js +15 -15
  335. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +11 -11
  336. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/agentHostInputCompletions.js +2 -2
  337. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCommandArgumentHint.js +1 -1
  338. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +12 -12
  339. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +2 -2
  340. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +13 -5
  341. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputReferenceDecorations.js +1 -1
  342. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
  343. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
  344. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +1 -1
  345. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +11 -11
  346. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
  347. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugEvents.d.ts +1 -1
  348. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +253 -0
  349. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +20 -0
  350. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.d.ts +1 -1
  351. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugServiceImpl.js +1 -1
  352. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +10 -10
  353. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +300 -0
  354. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +272 -0
  355. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -6
  356. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +25 -0
  357. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +178 -0
  358. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +78 -0
  359. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +51 -0
  360. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.d.ts +2 -2
  361. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +14 -14
  362. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +67 -0
  363. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +195 -0
  364. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +67 -0
  365. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +294 -0
  366. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +212 -0
  367. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +955 -0
  368. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +31 -0
  369. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +122 -0
  370. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.d.ts +1 -1
  371. package/vscode/src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.js +1 -1
  372. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
  373. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +65 -0
  374. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +698 -0
  375. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +50 -0
  376. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +78 -0
  377. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +77 -0
  378. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +120 -0
  379. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +10 -0
  380. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +23 -0
  381. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +12 -12
  382. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
  383. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
  384. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +154 -154
  385. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +92 -0
  386. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +335 -0
  387. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +235 -0
  388. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +1673 -0
  389. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +202 -0
  390. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +872 -0
  391. package/vscode/src/vs/workbench/contrib/chat/common/sessionChatPills.js +9 -9
  392. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.d.ts +36 -0
  393. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +239 -0
  394. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.d.ts +21 -0
  395. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +143 -0
  396. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +24 -0
  397. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +298 -0
  398. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +25 -0
  399. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +177 -0
  400. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +73 -0
  401. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +577 -0
  402. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +11 -0
  403. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +90 -0
  404. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +16 -0
  405. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +130 -0
  406. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.d.ts +12 -0
  407. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.js +53 -0
  408. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.d.ts +5 -0
  409. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.js +12 -0
  410. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +10 -0
  411. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +91 -0
  412. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +38 -0
  413. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +518 -0
  414. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +6 -0
  415. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +231 -0
  416. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  417. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution.js +10 -10
  418. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditor.js +10 -10
  419. package/vscode/src/vs/workbench/contrib/imageCarousel/browser/imageCarouselEditorInput.js +1 -1
  420. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
  421. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
  422. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditReviewSession.js +1 -1
  423. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
  424. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
  425. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  426. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +11 -11
  427. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +9 -9
  428. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  430. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +10 -10
  431. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  432. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  433. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  434. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  435. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
  436. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  437. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  438. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  439. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
  440. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +4 -4
  441. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -4
  442. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +4 -4
  443. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +3 -3
  444. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +5 -5
  445. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +74 -74
  446. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +11 -11
  447. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +15 -15
  448. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +8 -8
  449. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +15 -15
  450. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  451. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.d.ts +1 -1
  452. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCache.js +1 -1
  453. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalOutputCompressor.js +1 -1
  454. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +4 -4
  455. package/vscode/src/vs/workbench/services/agentEditorComments/browser/agentEditorCommentsOverlayWidget.js +3 -3
  456. package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.d.ts +0 -30
  457. package/vscode/src/vs/platform/agentHost/common/state/legacyProtocolCompatibility.js +0 -87
  458. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +0 -205
  459. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +0 -1580
@@ -0,0 +1,272 @@
1
+
2
+ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
3
+ import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
4
+ import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
5
+ import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
6
+ import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
7
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
8
+ import { AICustomizationManagementSection, BUILTIN_STORAGE } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService';
9
+ import { PromptsType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
10
+ import { AGENT_MD_FILENAME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
11
+ import { matchesSessionType, PromptsStorage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
12
+ import { SessionType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService';
13
+ import { CustomAgent } from './promptSyntax/service/promptsServiceImpl.js';
14
+ import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
15
+ import { getCanonicalPluginCommandId } from './plugins/agentPluginService.js';
16
+ import { getChatSessionType, LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatUri';
17
+ import { isAgentBuiltinCustomizationUri } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/agentHostCustomizationUri';
18
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-root/state';
19
+ import { CustomizationEnablementKind } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-session/state';
20
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-chat/state';
21
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-terminal/state';
22
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-changeset/state';
23
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state';
24
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-automation/state';
25
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-automation-run/state';
26
+ import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
27
+ import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
28
+
29
+ function isPluginCustomizationItem(item) {
30
+ return item.type === "plugin" || item.type === AICustomizationManagementSection.Plugins;
31
+ }
32
+ function getCustomizationDisabledLabel(reason) {
33
+ if (reason?.source === "plugin") {
34
+ return localize(10443, "Disabled (Plugin)");
35
+ }
36
+ switch (reason?.scope) {
37
+ case CustomizationEnablementKind.Workspace:
38
+ return localize(10444, "Disabled (Workspace)");
39
+ case CustomizationEnablementKind.Session:
40
+ return localize(10445, "Disabled (Session)");
41
+ case CustomizationEnablementKind.Global:
42
+ case undefined:
43
+ return localize(10446, "Disabled");
44
+ }
45
+ }
46
+ const EMPTY_DESCRIPTOR = {
47
+ id: "",
48
+ label: "",
49
+ icon: Codicon.sparkle
50
+ };
51
+ function createVSCodeHarnessDescriptor() {
52
+ return {
53
+ id: SessionType.Local,
54
+ label: ( localize(10447, "Local")),
55
+ icon: ThemeIcon.fromId(Codicon.vm.id),
56
+ supportsTroubleshoot: true,
57
+ hiddenSections: [AICustomizationManagementSection.Tools],
58
+ sectionOverrides: ( new Map([[AICustomizationManagementSection.Instructions, {
59
+ rootFileShortcuts: [AGENT_MD_FILENAME]
60
+ }]]))
61
+ };
62
+ }
63
+ class CustomizationHarnessServiceBase {
64
+ constructor(staticHarnesses, defaultHarness, promptsService) {
65
+ this.promptsService = promptsService;
66
+ this._onDidChangeSlashCommands = ( new Emitter());
67
+ this.onDidChangeSlashCommands = this._onDidChangeSlashCommands.event;
68
+ this._onDidChangeCustomAgents = ( new Emitter());
69
+ this.onDidChangeCustomAgents = this._onDidChangeCustomAgents.event;
70
+ this._providerListeners = [];
71
+ this._isDisposed = false;
72
+ this._externalHarnesses = [];
73
+ this._staticHarnesses = staticHarnesses;
74
+ this.promptsService = promptsService;
75
+ this._activeSessionResource = observableValue(this, this.getSessionResourceForHarness(defaultHarness));
76
+ this.activeSessionResource = this._activeSessionResource;
77
+ this._activeHarness = derived(
78
+ this,
79
+ reader => getChatSessionType(this._activeSessionResource.read(reader))
80
+ );
81
+ this.activeHarness = this._activeHarness;
82
+ this._availableHarnesses = observableValue(this, [...this._staticHarnesses]);
83
+ this.availableHarnesses = this._availableHarnesses;
84
+ this._rebindProviderListeners();
85
+ }
86
+ _getAllHarnesses() {
87
+ const externalIds = ( new Set(( this._externalHarnesses.map(h => h.id))));
88
+ return [...this._staticHarnesses.filter(h => !( externalIds.has(h.id))), ...this._externalHarnesses];
89
+ }
90
+ _refreshAvailableHarnesses() {
91
+ if (this._isDisposed) {
92
+ return;
93
+ }
94
+ this._availableHarnesses.set(this._getAllHarnesses(), undefined);
95
+ this._rebindProviderListeners();
96
+ }
97
+ _rebindProviderListeners() {
98
+ for (const listener of this._providerListeners) {
99
+ listener.dispose();
100
+ }
101
+ this._providerListeners.length = 0;
102
+ for (const harness of this._getAllHarnesses()) {
103
+ const provider = harness.itemProvider;
104
+ if (!provider) {
105
+ this._providerListeners.push(
106
+ this.promptsService.onDidChangeSlashCommands(() => this._onDidChangeSlashCommands.fire({
107
+ sessionType: harness.id
108
+ }))
109
+ );
110
+ this._providerListeners.push(
111
+ this.promptsService.onDidChangeCustomAgents(() => this._onDidChangeCustomAgents.fire({
112
+ sessionType: harness.id
113
+ }))
114
+ );
115
+ } else {
116
+ this._providerListeners.push(provider.onDidChange(() => this._onDidChangeSlashCommands.fire({
117
+ sessionType: harness.id
118
+ })));
119
+ this._providerListeners.push(provider.onDidChange(() => this._onDidChangeCustomAgents.fire({
120
+ sessionType: harness.id
121
+ })));
122
+ }
123
+ }
124
+ }
125
+ dispose() {
126
+ this._isDisposed = true;
127
+ for (const listener of this._providerListeners) {
128
+ listener.dispose();
129
+ }
130
+ this._providerListeners.length = 0;
131
+ this._onDidChangeSlashCommands.dispose();
132
+ this._onDidChangeCustomAgents.dispose();
133
+ }
134
+ registerExternalHarness(descriptor) {
135
+ this._externalHarnesses.push(descriptor);
136
+ this._refreshAvailableHarnesses();
137
+ return {
138
+ dispose: () => {
139
+ if (this._isDisposed) {
140
+ return;
141
+ }
142
+ const idx = this._externalHarnesses.indexOf(descriptor);
143
+ if (idx >= 0) {
144
+ this._externalHarnesses.splice(idx, 1);
145
+ this._refreshAvailableHarnesses();
146
+ }
147
+ }
148
+ };
149
+ }
150
+ findHarnessById(id) {
151
+ return this._getAllHarnesses().find(h => h.id === id);
152
+ }
153
+ setActiveSession(sessionResource) {
154
+ this._activeSessionResource.set(sessionResource, undefined);
155
+ }
156
+ getActiveDescriptor() {
157
+ const activeId = this._activeHarness.get();
158
+ const descriptor = this.findHarnessById(activeId);
159
+ return descriptor ?? EMPTY_DESCRIPTOR;
160
+ }
161
+ async getSlashCommands(sessionResource, token) {
162
+ const sessionType = getChatSessionType(sessionResource);
163
+ const harness = this.findHarnessById(sessionType);
164
+ if (!harness || !harness.itemProvider) {
165
+ const commands = await this.promptsService.getPromptSlashCommands(token);
166
+ return commands.filter(command => matchesSessionType(command.sessionTypes, sessionType));
167
+ }
168
+ const items = await harness.itemProvider.provideChatSessionCustomizations(sessionResource, token);
169
+ if (!items) {
170
+ return [];
171
+ }
172
+ const result = [];
173
+ for (const item of items) {
174
+ if ((item.enabled !== false) && (item.type === PromptsType.prompt || item.type === PromptsType.skill)) {
175
+ const storage = item.source;
176
+ const narrowStorage = storage !== undefined && storage !== BUILTIN_STORAGE ? storage : PromptsStorage.local;
177
+ result.push({
178
+ uri: item.uri,
179
+ type: item.type,
180
+ name: item.pluginUri ? getCanonicalPluginCommandId({
181
+ uri: item.pluginUri,
182
+ label: item.pluginLabel
183
+ }, item.name) : item.name,
184
+ description: item.description,
185
+ userInvocable: item.userInvocable ?? true,
186
+ storage: narrowStorage,
187
+ sessionTypes: [sessionType]
188
+ });
189
+ }
190
+ }
191
+ return result;
192
+ }
193
+ async getCustomAgents(sessionResource, token) {
194
+ const sessionType = getChatSessionType(sessionResource);
195
+ const harness = this.findHarnessById(sessionType);
196
+ if (!harness || !harness.itemProvider) {
197
+ const allAgents = await this.promptsService.getCustomAgents(token);
198
+ return allAgents.filter(agent => matchesSessionType(agent.sessionTypes, sessionType));
199
+ }
200
+ if (harness.itemProvider.provideCustomAgents) {
201
+ return harness.itemProvider.provideCustomAgents(sessionResource, token);
202
+ }
203
+ const items = await harness.itemProvider.provideChatSessionCustomizations(sessionResource, token);
204
+ if (!items || token.isCancellationRequested) {
205
+ return [];
206
+ }
207
+ const getSource = item => {
208
+ if (item.source === PromptsStorage.extension && item.extensionId) {
209
+ return {
210
+ storage: PromptsStorage.extension,
211
+ extensionId: ( new ExtensionIdentifier(item.extensionId))
212
+ };
213
+ } else if (item.source === PromptsStorage.plugin && item.pluginUri) {
214
+ return {
215
+ storage: PromptsStorage.plugin,
216
+ pluginUri: item.pluginUri
217
+ };
218
+ } else if (item.source === PromptsStorage.user) {
219
+ return {
220
+ storage: PromptsStorage.user
221
+ };
222
+ }
223
+ return {
224
+ storage: PromptsStorage.local
225
+ };
226
+ };
227
+ const result = [];
228
+ for (const item of items) {
229
+ if (item.type === PromptsType.agent) {
230
+ const promptFile = await this.promptsService.parseNew(item.uri, token);
231
+ const extra = {
232
+ name: item.name,
233
+ description: item.description,
234
+ sessionTypes: [sessionType],
235
+ hooks: undefined,
236
+ source: getSource(item),
237
+ type: PromptsType.agent,
238
+ enabled: item.enabled !== false
239
+ };
240
+ result.push(CustomAgent.fromParsedPromptFile(promptFile, extra));
241
+ }
242
+ }
243
+ return result;
244
+ }
245
+ async resolvePromptSlashCommand(name, sessionResource, token) {
246
+ const commands = await this.getSlashCommands(sessionResource, token);
247
+ const command = commands.find(cmd => cmd.name === name);
248
+ if (command) {
249
+ if (isAgentBuiltinCustomizationUri(command.uri)) {
250
+ return command;
251
+ }
252
+ const parsedPromptFile = await this.promptsService.parseNew(command.uri, token);
253
+ return {
254
+ ...command,
255
+ userInvocable: parsedPromptFile.header?.userInvocable ?? command.userInvocable,
256
+ parsedPromptFile
257
+ };
258
+ }
259
+ return undefined;
260
+ }
261
+ getSessionResourceForHarness(sessionType) {
262
+ if (sessionType === SessionType.Local) {
263
+ return LocalChatSessionUri.getNewSessionUri();
264
+ }
265
+ return ( URI.from({
266
+ scheme: sessionType,
267
+ path: "/untitled-2"
268
+ }));
269
+ }
270
+ }
271
+
272
+ export { CustomizationHarnessServiceBase, createVSCodeHarnessDescriptor, getCustomizationDisabledLabel, isPluginCustomizationItem };
@@ -99,7 +99,7 @@ let ChatSessionStore = class ChatSessionStore extends Disposable {
99
99
  }
100
100
  e.join(this.storeTask, {
101
101
  id: "join.chatSessionStore",
102
- label: ( localize(10299, "Saving chat history"))
102
+ label: ( localize(10494, "Saving chat history"))
103
103
  });
104
104
  }));
105
105
  }
@@ -357,14 +357,14 @@ let ChatSessionStore = class ChatSessionStore extends Disposable {
357
357
  this._didReportIssue = true;
358
358
  this.dialogService.prompt({
359
359
  custom: true,
360
- title: ( localize(10300, "Error saving chat session")),
360
+ title: ( localize(10495, "Error saving chat session")),
361
361
  message: ( localize(
362
- 10301,
362
+ 10496,
363
363
  "Error serializing chat session for storage. The session will be lost if the window is closed. Please report this issue to the VS Code team:\n\n{0}",
364
364
  e.stack || toErrorMessage(e)
365
365
  )),
366
366
  buttons: [{
367
- label: ( localize(10302, "Report Issue")),
367
+ label: ( localize(10497, "Report Issue")),
368
368
  run: () => this.openerService.open("https://github.com/microsoft/vscode/issues/new?template=bug_report.md")
369
369
  }]
370
370
  });
@@ -757,7 +757,7 @@ function getSessionMetadataSync(session) {
757
757
  } : undefined;
758
758
  return {
759
759
  sessionId: session.sessionId,
760
- title: title || ( localize(10303, "New Chat")),
760
+ title: title || ( localize(10498, "New Chat")),
761
761
  lastMessageDate: session.lastMessageDate,
762
762
  timing: session.timing,
763
763
  initialLocation: session.initialLocation,
@@ -779,7 +779,7 @@ async function getSessionMetadata(session) {
779
779
  const lastMessageDate = session.requests.at(-1)?.timestamp ?? session.creationDate;
780
780
  return {
781
781
  sessionId: session.sessionId,
782
- title: session.customTitle || ( localize(10303, "New Chat")),
782
+ title: session.customTitle || ( localize(10498, "New Chat")),
783
783
  lastMessageDate,
784
784
  timing: {
785
785
  created: session.creationDate,
@@ -0,0 +1,25 @@
1
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
2
+ import { AgentPluginDiscoveryPriority, IAgentPlugin } from "./agentPluginService.js";
3
+ import { CollisionEnablementModel, IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
4
+ export interface IDiscoveredAgentPlugins {
5
+ readonly plugins: readonly IAgentPlugin[];
6
+ readonly priority: AgentPluginDiscoveryPriority;
7
+ readonly order: number;
8
+ }
9
+ export declare class AgentPluginCollisionEnablementModel extends CollisionEnablementModel {
10
+ constructor(base: IEnablementModel, collisionGroups: IObservable<ReadonlyMap<string, readonly string[]>>);
11
+ }
12
+ export declare function getSortedAgentPlugins(discoveries: readonly IDiscoveredAgentPlugins[]): readonly IAgentPlugin[];
13
+ export declare function getCanonicalAgentPluginCollisionGroups(discoveries: readonly IDiscoveredAgentPlugins[], isBlocked?: (plugin: IAgentPlugin) => boolean): ReadonlyMap<string, readonly string[]>;
14
+ /**
15
+ * Whether the `ChatEnabledPlugins` enterprise policy explicitly blocks this plugin.
16
+ *
17
+ * The policy is a **deny list**, not an allowlist: enterprise-managed `enabledPlugins` entries
18
+ * add to (never replace) the plugins a user has installed. A plugin is blocked only when its
19
+ * policy id is mapped to `false`; entries mapped to `true` enable the plugin, and a plugin the
20
+ * policy never mentions is left to the user's own enablement. This keeps a customer's existing
21
+ * plugins working when their enterprise deploys `enabledPlugins` for a different plugin.
22
+ */
23
+ export declare function isAgentPluginBlockedByPolicy(plugin: IAgentPlugin, enabledPluginsPolicy: Record<string, boolean> | undefined): boolean;
24
+ export declare function isAgentPluginForceEnabledByPolicy(plugin: IAgentPlugin, enabledPluginsPolicy: Record<string, boolean> | undefined): boolean;
25
+ export declare function getAgentPluginPolicyId(plugin: IAgentPlugin): string | undefined;
@@ -0,0 +1,178 @@
1
+
2
+ import { PluginSourceKind } from './pluginMarketplaceService.js';
3
+ import { CollisionEnablementModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement';
4
+
5
+ const COPILOT_CLI_INSTALL_PATH_FRAGMENT = "/.copilot/installed-plugins/";
6
+ class AgentPluginCollisionEnablementModel extends CollisionEnablementModel {
7
+ constructor(base, collisionGroups) {
8
+ super(base, collisionGroups);
9
+ }
10
+ }
11
+ function getSortedAgentPlugins(discoveries) {
12
+ return ( getUniqueAgentPluginCandidates(discoveries).map(candidate => candidate.plugin)).sort((a, b) => ( a.uri.toString()).localeCompare(( b.uri.toString())));
13
+ }
14
+ function getCanonicalAgentPluginCollisionGroups(discoveries, isBlocked) {
15
+ const candidates = getUniqueAgentPluginCandidates(discoveries);
16
+ const byCanonicalKey = ( new Map());
17
+ for (const candidate of candidates) {
18
+ if (isBlocked?.(candidate.plugin)) {
19
+ continue;
20
+ }
21
+ let group = byCanonicalKey.get(candidate.canonicalKey);
22
+ if (!group) {
23
+ group = [];
24
+ byCanonicalKey.set(candidate.canonicalKey, group);
25
+ }
26
+ group.push(( candidate.plugin.uri.toString()));
27
+ }
28
+ const groups = ( new Map());
29
+ for (const group of ( byCanonicalKey.values())) {
30
+ if (group.length < 2) {
31
+ continue;
32
+ }
33
+ for (const key of group) {
34
+ groups.set(key, group);
35
+ }
36
+ }
37
+ return groups;
38
+ }
39
+ function isAgentPluginBlockedByPolicy(plugin, enabledPluginsPolicy) {
40
+ const pluginId = getAgentPluginPolicyId(plugin);
41
+ return pluginId !== undefined && enabledPluginsPolicy?.[pluginId] === false;
42
+ }
43
+ function isAgentPluginForceEnabledByPolicy(plugin, enabledPluginsPolicy) {
44
+ const pluginId = getAgentPluginPolicyId(plugin);
45
+ return pluginId !== undefined && enabledPluginsPolicy?.[pluginId] === true;
46
+ }
47
+ function getAgentPluginPolicyId(plugin) {
48
+ const identity = getPolicyIdentity(plugin);
49
+ return identity ? `${identity.name}@${identity.marketplace}` : undefined;
50
+ }
51
+ function getAgentPluginCandidates(discoveries) {
52
+ const candidates = [];
53
+ for (const discovery of discoveries) {
54
+ for (let pluginOrder = 0; pluginOrder < discovery.plugins.length; pluginOrder++) {
55
+ const plugin = discovery.plugins[pluginOrder];
56
+ candidates.push({
57
+ plugin,
58
+ priority: discovery.priority,
59
+ order: discovery.order,
60
+ pluginOrder,
61
+ canonicalKey: getCanonicalPluginIdentity(plugin)
62
+ });
63
+ }
64
+ }
65
+ return candidates.sort(
66
+ (a, b) => a.priority - b.priority || a.order - b.order || a.pluginOrder - b.pluginOrder || ( a.plugin.uri.toString()).localeCompare(( b.plugin.uri.toString()))
67
+ );
68
+ }
69
+ function getUniqueAgentPluginCandidates(discoveries) {
70
+ const unique = [];
71
+ const seen = ( new Set());
72
+ for (const candidate of getAgentPluginCandidates(discoveries)) {
73
+ const key = ( candidate.plugin.uri.toString());
74
+ if (( seen.has(key))) {
75
+ continue;
76
+ }
77
+ seen.add(key);
78
+ unique.push(candidate);
79
+ }
80
+ return unique;
81
+ }
82
+ function getCanonicalPluginIdentity(plugin) {
83
+ return getMarketplaceCanonicalIdentity(plugin.fromMarketplace) ?? getCopilotCliInstallCanonicalIdentity(plugin) ?? `uri:${( plugin.uri.toString())}`;
84
+ }
85
+ function getMarketplaceCanonicalIdentity(plugin) {
86
+ if (!plugin) {
87
+ return undefined;
88
+ }
89
+ const normalizedName = normalizePluginIdentitySegment(plugin.name);
90
+ const source = plugin.sourceDescriptor;
91
+ switch (source.kind) {
92
+ case PluginSourceKind.RelativePath:
93
+ {
94
+ if (plugin.marketplaceReference.githubRepo) {
95
+ return `github:${plugin.marketplaceReference.githubRepo.toLowerCase()}|${normalizedName}`;
96
+ }
97
+ return `marketplace:${plugin.marketplaceReference.canonicalId}|${normalizedName}`;
98
+ }
99
+ case PluginSourceKind.GitHub:
100
+ {
101
+ const github = source;
102
+ return `github:${github.repo.toLowerCase()}|${normalizedName}`;
103
+ }
104
+ case PluginSourceKind.GitUrl:
105
+ {
106
+ const git = source;
107
+ return `git:${git.url.toLowerCase()}|${normalizedName}`;
108
+ }
109
+ case PluginSourceKind.Npm:
110
+ {
111
+ const npm = source;
112
+ return `npm:${npm.package.toLowerCase()}|${normalizedName}`;
113
+ }
114
+ case PluginSourceKind.Pip:
115
+ {
116
+ const pip = source;
117
+ return `pip:${pip.package.toLowerCase()}|${normalizedName}`;
118
+ }
119
+ }
120
+ }
121
+ function getCopilotCliInstallCanonicalIdentity(plugin) {
122
+ if (plugin.uri.scheme !== "file") {
123
+ return undefined;
124
+ }
125
+ const idx = plugin.uri.path.indexOf(COPILOT_CLI_INSTALL_PATH_FRAGMENT);
126
+ if (idx === -1) {
127
+ return undefined;
128
+ }
129
+ const segments = plugin.uri.path.slice(idx + COPILOT_CLI_INSTALL_PATH_FRAGMENT.length).split("/").filter(s => s.length > 0);
130
+ if (segments.length !== 2) {
131
+ return undefined;
132
+ }
133
+ const [bucket, installName] = segments;
134
+ const normalizedName = normalizePluginIdentitySegment(plugin.label || installName);
135
+ if (bucket !== "_direct") {
136
+ return `copilot-cli-marketplace:${normalizePluginIdentitySegment(bucket)}|${normalizedName}`;
137
+ }
138
+ const match = /^(?<owner>.+)--(?<repo>.+)--(?<plugin>.+)$/.exec(installName);
139
+ const groups = match?.groups;
140
+ if (!groups) {
141
+ return undefined;
142
+ }
143
+ return `github:${groups.owner.toLowerCase()}/${groups.repo.toLowerCase()}|${normalizePluginIdentitySegment(groups.plugin)}`;
144
+ }
145
+ function normalizePluginIdentitySegment(value) {
146
+ return value.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9_.:-]/g, "-").replace(/-+/g, "-").replace(/^[-:.]+|[-:.]+$/g, "");
147
+ }
148
+ function getPolicyIdentity(plugin) {
149
+ const m = plugin.fromMarketplace;
150
+ if (m) {
151
+ return {
152
+ name: m.name,
153
+ marketplace: m.marketplace,
154
+ marketplaceReference: m.marketplaceReference
155
+ };
156
+ }
157
+ if (plugin.uri.scheme !== "file") {
158
+ return undefined;
159
+ }
160
+ const idx = plugin.uri.path.indexOf(COPILOT_CLI_INSTALL_PATH_FRAGMENT);
161
+ if (idx === -1) {
162
+ return undefined;
163
+ }
164
+ const segments = plugin.uri.path.slice(idx + COPILOT_CLI_INSTALL_PATH_FRAGMENT.length).split("/").filter(s => s.length > 0);
165
+ if (segments.length !== 2) {
166
+ return undefined;
167
+ }
168
+ const [marketplace, name] = segments;
169
+ if (marketplace === "_direct") {
170
+ return undefined;
171
+ }
172
+ return {
173
+ name,
174
+ marketplace
175
+ };
176
+ }
177
+
178
+ export { AgentPluginCollisionEnablementModel, getAgentPluginPolicyId, getCanonicalAgentPluginCollisionGroups, getSortedAgentPlugins, isAgentPluginBlockedByPolicy, isAgentPluginForceEnabledByPolicy };
@@ -0,0 +1,78 @@
1
+ import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
+ import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
4
+ import { SyncDescriptor0 } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/descriptors";
5
+ import { type INamedPluginResource, type IMcpServerDefinition, type IParsedHookCommand, type PluginFormat } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentPlugins/common/pluginParsers";
6
+ import { ContributionEnablementState, IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
7
+ import { IAutomationBlueprint } from "../automations/automationBlueprint.js";
8
+ import { HookType } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/hookTypes";
9
+ import { IMarketplacePlugin } from "./pluginMarketplaceService.js";
10
+ export interface IAgentPluginHook {
11
+ readonly type: HookType;
12
+ readonly hooks: readonly IParsedHookCommand[];
13
+ /** URI where this hook is defined -- not unique, multiple hooks may be in a manifest */
14
+ readonly uri: URI;
15
+ readonly originalId: string;
16
+ }
17
+ export type IAgentPluginCommand = INamedPluginResource;
18
+ export type IAgentPluginSkill = INamedPluginResource;
19
+ export type IAgentPluginAgent = INamedPluginResource;
20
+ export type IAgentPluginInstruction = INamedPluginResource;
21
+ export type IAgentPluginMcpServerDefinition = IMcpServerDefinition;
22
+ export interface IAgentPluginAutomation {
23
+ readonly uri: URI;
24
+ readonly blueprint: IAutomationBlueprint;
25
+ }
26
+ export interface IAgentPlugin {
27
+ readonly uri: URI;
28
+ readonly format: PluginFormat;
29
+ /** Human-readable display name for the plugin. */
30
+ readonly label: string;
31
+ /** Version declared by the plugin manifest, falling back to marketplace metadata. */
32
+ readonly version?: IObservable<string | undefined>;
33
+ readonly enablement: IObservable<ContributionEnablementState>;
34
+ /**
35
+ * When `true`, the plugin is blocked by enterprise policy. It remains
36
+ * visible (shown as disabled) but its contributions are inactive and the
37
+ * user cannot re-enable it. Folded into {@link enablement} so all gating
38
+ * consumers honor it automatically.
39
+ */
40
+ readonly policyBlocked?: IObservable<boolean>;
41
+ /** Removes this plugin from its discovery source (config or installed storage). Undefined for policy-managed plugins that cannot be removed by the user. */
42
+ remove?(): Promise<boolean>;
43
+ readonly hooks: IObservable<readonly IAgentPluginHook[]>;
44
+ readonly commands: IObservable<readonly IAgentPluginCommand[]>;
45
+ readonly skills: IObservable<readonly IAgentPluginSkill[]>;
46
+ readonly agents: IObservable<readonly IAgentPluginAgent[]>;
47
+ readonly instructions: IObservable<readonly IAgentPluginInstruction[]>;
48
+ readonly mcpServerDefinitions: IObservable<readonly IAgentPluginMcpServerDefinition[]>;
49
+ readonly automations: IObservable<readonly IAgentPluginAutomation[]>;
50
+ /** Set when the plugin was installed from a marketplace repository. */
51
+ readonly fromMarketplace?: IMarketplacePlugin;
52
+ }
53
+ export interface IAgentPluginDiscovery extends IDisposable {
54
+ readonly plugins: IObservable<readonly IAgentPlugin[] | undefined>;
55
+ start(enablementModel: IEnablementModel): void;
56
+ }
57
+ export declare enum AgentPluginDiscoveryPriority {
58
+ Configured = 10,
59
+ Marketplace = 20,
60
+ Extension = 30,
61
+ CopilotCli = 40
62
+ }
63
+ export declare function getCanonicalPluginCommandId(plugin: {
64
+ readonly uri: URI;
65
+ readonly label?: string;
66
+ }, commandName: string): string;
67
+ declare class AgentPluginDiscoveryRegistry {
68
+ private readonly _discovery;
69
+ private _order;
70
+ register(descriptor: SyncDescriptor0<IAgentPluginDiscovery>, priority: AgentPluginDiscoveryPriority): IDisposable;
71
+ getAll(): readonly {
72
+ readonly descriptor: SyncDescriptor0<IAgentPluginDiscovery>;
73
+ readonly priority: AgentPluginDiscoveryPriority;
74
+ readonly order: number;
75
+ }[];
76
+ }
77
+ export declare const agentPluginDiscoveryRegistry: AgentPluginDiscoveryRegistry;
78
+ export {};
@@ -0,0 +1,51 @@
1
+
2
+ import { toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
3
+ import { basename } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
4
+
5
+ var AgentPluginDiscoveryPriority;
6
+ (function(AgentPluginDiscoveryPriority) {
7
+ AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Configured"] = 10] = "Configured";
8
+ AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Marketplace"] = 20] = "Marketplace";
9
+ AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["Extension"] = 30] = "Extension";
10
+ AgentPluginDiscoveryPriority[AgentPluginDiscoveryPriority["CopilotCli"] = 40] = "CopilotCli";
11
+ })(AgentPluginDiscoveryPriority || (AgentPluginDiscoveryPriority = {}));
12
+ function getCanonicalPluginCommandId(plugin, commandName) {
13
+ const prefix = (plugin.label ? normalizePluginToken(plugin.label) : "") || normalizePluginToken(basename(plugin.uri));
14
+ const normalizedCommand = normalizePluginToken(commandName);
15
+ if (normalizedCommand.startsWith(`${prefix}:`)) {
16
+ return normalizedCommand;
17
+ }
18
+ if (prefix === normalizedCommand) {
19
+ return prefix;
20
+ }
21
+ return `${prefix}:${normalizedCommand}`;
22
+ }
23
+ function normalizePluginToken(value) {
24
+ return value.trim().toLowerCase().replace(/\s+/g, "-").replace(/[^a-z0-9_.:-]/g, "-").replace(/-+/g, "-").replace(/^[-:.]+|[-:.]+$/g, "");
25
+ }
26
+ class AgentPluginDiscoveryRegistry {
27
+ constructor() {
28
+ this._discovery = [];
29
+ this._order = 0;
30
+ }
31
+ register(descriptor, priority) {
32
+ const registration = {
33
+ descriptor,
34
+ priority,
35
+ order: this._order++
36
+ };
37
+ this._discovery.push(registration);
38
+ return toDisposable(() => {
39
+ const index = this._discovery.indexOf(registration);
40
+ if (index >= 0) {
41
+ this._discovery.splice(index, 1);
42
+ }
43
+ });
44
+ }
45
+ getAll() {
46
+ return [...this._discovery].sort((a, b) => a.priority - b.priority || a.order - b.order);
47
+ }
48
+ }
49
+ const agentPluginDiscoveryRegistry = ( new AgentPluginDiscoveryRegistry());
50
+
51
+ export { AgentPluginDiscoveryPriority, agentPluginDiscoveryRegistry, getCanonicalPluginCommandId };
@@ -13,9 +13,9 @@ import { IDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/
13
13
  import { IPathService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/path/common/pathService.service";
14
14
  import { IEnablementModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement";
15
15
  import { IAgentPluginRepositoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service";
16
- import { IAgentPlugin, IAgentPluginDiscovery } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService";
16
+ import { IAgentPlugin, IAgentPluginDiscovery } from "./agentPluginService.js";
17
17
  import { IAgentPluginService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/agentPluginService.service";
18
- import { IMarketplacePlugin } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService";
18
+ import { IMarketplacePlugin } from "./pluginMarketplaceService.js";
19
19
  import { IPluginMarketplaceService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service";
20
20
  export { shellQuotePluginRootInCommand, resolveMcpServersMap, convertBareEnvVarsToVsCodeSyntax } from "@codingame/monaco-vscode-api/vscode/vs/platform/agentPlugins/common/pluginParsers";
21
21
  export declare class AgentPluginService extends Disposable implements IAgentPluginService {