@codingame/monaco-vscode-api 37.1.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 (313) hide show
  1. package/missing-services.js +6 -26
  2. package/package.json +8 -8
  3. package/services.d.ts +1 -1
  4. package/services.js +3 -3
  5. package/tools.d.ts +4 -0
  6. package/tools.js +24 -1
  7. package/vscode/src/vs/platform/product/common/product.js +1 -1
  8. package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.js +2 -2
  9. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.d.ts +63 -0
  10. package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +305 -0
  11. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +2 -2
  12. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +1 -2
  13. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +1 -1
  14. package/vscode/src/vs/workbench/browser/media/code-icon.svg +1 -0
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.d.ts +1 -0
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.js +2 -1
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginActions.d.ts +2 -2
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.service.d.ts +1 -1
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.d.ts +30 -0
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsBanner.js +39 -0
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.d.ts +1 -1
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.d.ts +1 -1
  23. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +1 -1
  24. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service.d.ts +1 -1
  25. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +1 -1
  26. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.d.ts +1 -1
  27. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.service.d.ts +1 -1
  28. package/vscode/src/vs/workbench/contrib/chat/common/chatImageBuffer.d.ts +1 -0
  29. package/vscode/src/vs/workbench/contrib/chat/common/chatImageBuffer.js +29 -0
  30. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +2 -2
  31. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.service.d.ts +1 -1
  32. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.d.ts +1 -1
  33. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginRepositoryService.service.d.ts +2 -2
  34. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.service.d.ts +1 -1
  35. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.d.ts +1 -1
  36. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginInstallService.service.d.ts +1 -1
  37. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.service.d.ts +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginSource.d.ts +1 -1
  39. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.d.ts +1 -1
  40. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolIds.d.ts +3 -0
  41. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolIds.js +7 -0
  42. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.d.ts +3 -3
  43. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +1 -1
  44. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.d.ts +1 -1
  45. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.d.ts +1 -1
  46. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.d.ts +1 -1
  47. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.service.d.ts +1 -1
  48. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service.d.ts +1 -1
  49. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +1 -1
  50. package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.d.ts +1 -1
  51. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.d.ts +1 -1
  52. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModelBase.d.ts +1 -1
  53. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/folderMatch.d.ts +1 -1
  54. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.d.ts +1 -1
  55. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +4 -3
  56. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.d.ts +34 -0
  57. package/vscode/src/vs/workbench/contrib/welcomeAgentSessions/browser/agentSessionsWelcomeInput.js +72 -0
  58. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.d.ts +44 -0
  59. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedInput.js +96 -0
  60. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/media/gettingStarted.css +1148 -0
  61. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.d.ts +81 -0
  62. package/vscode/src/vs/workbench/contrib/welcomeOnboarding/common/onboardingTypes.js +97 -0
  63. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.d.ts +32 -0
  64. package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +45 -0
  65. package/vscode/src/vs/platform/agentHost/common/agentHostEnablementService.d.ts +0 -7
  66. package/vscode/src/vs/platform/agentHost/common/agentHostEnablementService.js +0 -92
  67. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.d.ts +0 -12
  68. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +0 -64
  69. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +0 -262
  70. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +0 -865
  71. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.d.ts +0 -57
  72. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.js +0 -311
  73. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.d.ts +0 -15
  74. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +0 -80
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.d.ts +0 -2
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionDescription.js +0 -57
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -231
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -1850
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +0 -109
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +0 -85
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +0 -140
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.js +0 -186
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatDynamicVariablesConstant.d.ts +0 -1
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatDynamicVariablesConstant.js +0 -5
  85. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.d.ts +0 -46
  86. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.js +0 -17
  87. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.d.ts +0 -253
  88. package/vscode/src/vs/workbench/contrib/chat/common/chatDebugService.js +0 -20
  89. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.d.ts +0 -34
  90. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +0 -194
  91. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.d.ts +0 -87
  92. package/vscode/src/vs/workbench/contrib/chat/common/chatSelectedModel.js +0 -69
  93. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.d.ts +0 -300
  94. package/vscode/src/vs/workbench/contrib/chat/common/customizationHarnessService.js +0 -272
  95. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.d.ts +0 -25
  96. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginEnablement.js +0 -178
  97. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.d.ts +0 -78
  98. package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginService.js +0 -51
  99. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.d.ts +0 -67
  100. package/vscode/src/vs/workbench/contrib/chat/common/plugins/fileBackedInstalledPluginsStore.js +0 -195
  101. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.d.ts +0 -67
  102. package/vscode/src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.js +0 -294
  103. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.d.ts +0 -212
  104. package/vscode/src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.js +0 -955
  105. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.d.ts +0 -31
  106. package/vscode/src/vs/workbench/contrib/chat/common/plugins/strictKnownMarketplaces.js +0 -122
  107. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +0 -65
  108. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +0 -697
  109. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +0 -150
  110. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +0 -142
  111. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.d.ts +0 -50
  112. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookClaudeCompat.js +0 -77
  113. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.d.ts +0 -77
  114. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCompatibility.js +0 -120
  115. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.d.ts +0 -10
  116. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/hookCopilotCliCompat.js +0 -23
  117. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.d.ts +0 -92
  118. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/extensionPromptFileService.js +0 -335
  119. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +0 -235
  120. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +0 -1673
  121. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +0 -202
  122. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +0 -872
  123. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +0 -35
  124. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +0 -289
  125. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.d.ts +0 -72
  126. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/askQuestionsTool.js +0 -600
  127. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.d.ts +0 -36
  128. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +0 -239
  129. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.d.ts +0 -22
  130. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +0 -143
  131. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +0 -24
  132. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +0 -298
  133. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.d.ts +0 -25
  134. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/reviewPlanTool.js +0 -177
  135. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +0 -73
  136. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +0 -577
  137. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.d.ts +0 -11
  138. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactRulesTool.js +0 -90
  139. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.d.ts +0 -16
  140. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/setArtifactsTool.js +0 -130
  141. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.d.ts +0 -12
  142. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/taskCompleteTool.js +0 -53
  143. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.d.ts +0 -5
  144. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.js +0 -12
  145. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +0 -10
  146. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +0 -92
  147. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +0 -38
  148. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +0 -518
  149. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +0 -6
  150. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +0 -231
  151. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.d.ts +0 -20
  152. package/vscode/src/vs/workbench/contrib/chat/common/tools/terminalToolIds.js +0 -17
  153. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.d.ts +0 -6
  154. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +0 -283
  155. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.d.ts +0 -91
  156. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +0 -340
  157. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.d.ts +0 -17
  158. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +0 -272
  159. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css +0 -686
  160. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css +0 -348
  161. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellEditorHint.css +0 -8
  162. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellInsertToolbar.css +0 -92
  163. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellOutput.css +0 -119
  164. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellStatusBar.css +0 -79
  165. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellTitleToolbar.css +0 -61
  166. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookChatEditController.css +0 -55
  167. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookChatEditorOverlay.css +0 -63
  168. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookDnd.css +0 -79
  169. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css +0 -63
  170. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFocusIndicator.css +0 -92
  171. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFolding.css +0 -79
  172. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookKernelActionViewItem.css +0 -24
  173. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookOutline.css +0 -61
  174. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookToolbar.css +0 -102
  175. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.d.ts +0 -27
  176. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +0 -131
  177. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.d.ts +0 -18
  178. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.js +0 -92
  179. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.d.ts +0 -105
  180. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +0 -673
  181. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.d.ts +0 -9
  182. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.js +0 -37
  183. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.d.ts +0 -354
  184. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +0 -2926
  185. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.d.ts +0 -29
  186. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +0 -36
  187. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.d.ts +0 -1
  188. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.js +0 -19
  189. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.d.ts +0 -200
  190. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +0 -591
  191. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookViewEvents.d.ts +0 -56
  192. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookViewEvents.js +0 -30
  193. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.d.ts +0 -99
  194. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +0 -131
  195. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.d.ts +0 -30
  196. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +0 -115
  197. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.d.ts +0 -28
  198. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +0 -158
  199. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.d.ts +0 -40
  200. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +0 -183
  201. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDecorations.d.ts +0 -10
  202. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDecorations.js +0 -66
  203. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.d.ts +0 -52
  204. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +0 -429
  205. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.d.ts +0 -6
  206. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +0 -108
  207. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.d.ts +0 -36
  208. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +0 -221
  209. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.d.ts +0 -17
  210. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.js +0 -142
  211. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocus.d.ts +0 -5
  212. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocus.js +0 -23
  213. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.d.ts +0 -18
  214. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +0 -104
  215. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.d.ts +0 -92
  216. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +0 -762
  217. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.d.ts +0 -15
  218. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.js +0 -58
  219. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.d.ts +0 -36
  220. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +0 -357
  221. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.d.ts +0 -6
  222. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +0 -32
  223. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.d.ts +0 -47
  224. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +0 -260
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.d.ts +0 -9
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.js +0 -10
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.d.ts +0 -10
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.js +0 -24
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.d.ts +0 -182
  230. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +0 -796
  231. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.d.ts +0 -13
  232. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +0 -79
  233. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.d.ts +0 -30
  234. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +0 -126
  235. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellInput.d.ts +0 -6
  236. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellInput.js +0 -32
  237. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.d.ts +0 -8
  238. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +0 -50
  239. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.d.ts +0 -18
  240. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +0 -119
  241. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.d.ts +0 -57
  242. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +0 -443
  243. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellAnchor.d.ts +0 -20
  244. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellAnchor.js +0 -56
  245. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.d.ts +0 -24
  246. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.js +0 -121
  247. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.d.ts +0 -152
  248. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +0 -1288
  249. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.d.ts +0 -59
  250. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +0 -287
  251. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookRenderingCommon.d.ts +0 -117
  252. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookRenderingCommon.js +0 -6
  253. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.d.ts +0 -222
  254. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +0 -1840
  255. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.d.ts +0 -63
  256. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +0 -449
  257. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewMessages.d.ts +0 -432
  258. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.d.ts +0 -18
  259. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +0 -2546
  260. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.d.ts +0 -8
  261. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.js +0 -105
  262. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.d.ts +0 -137
  263. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +0 -646
  264. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.d.ts +0 -21
  265. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.js +0 -101
  266. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.d.ts +0 -13
  267. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.js +0 -111
  268. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.d.ts +0 -30
  269. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.js +0 -65
  270. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.d.ts +0 -13
  271. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.js +0 -49
  272. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.d.ts +0 -89
  273. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +0 -472
  274. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.d.ts +0 -11
  275. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.js +0 -34
  276. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.d.ts +0 -33
  277. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +0 -275
  278. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.d.ts +0 -69
  279. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +0 -269
  280. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.d.ts +0 -125
  281. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +0 -958
  282. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/viewContext.d.ts +0 -9
  283. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/viewContext.js +0 -11
  284. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookCellOverlays.d.ts +0 -20
  285. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookCellOverlays.js +0 -101
  286. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.d.ts +0 -65
  287. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +0 -458
  288. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.d.ts +0 -80
  289. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +0 -708
  290. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.d.ts +0 -37
  291. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.js +0 -193
  292. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookHorizontalTracker.d.ts +0 -7
  293. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookHorizontalTracker.js +0 -62
  294. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.d.ts +0 -108
  295. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +0 -717
  296. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.d.ts +0 -23
  297. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +0 -183
  298. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.d.ts +0 -11
  299. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +0 -134
  300. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.d.ts +0 -20
  301. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +0 -135
  302. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.d.ts +0 -27
  303. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +0 -213
  304. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.d.ts +0 -27
  305. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.js +0 -104
  306. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.d.ts +0 -115
  307. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +0 -480
  308. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.d.ts +0 -87
  309. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +0 -352
  310. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.d.ts +0 -81
  311. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.js +0 -9
  312. package/vscode/src/vs/workbench/contrib/notebook/common/notebookPerformance.d.ts +0 -10
  313. package/vscode/src/vs/workbench/contrib/notebook/common/notebookPerformance.js +0 -19
@@ -1,518 +0,0 @@
1
-
2
- import { __decorate, __param } from '../../../../../../../../external/tslib/tslib.es6.js';
3
- import { isFalsyOrEmpty } from '../../../../../base/common/arrays.js';
4
- import { Codicon } from '../../../../../base/common/codicons.js';
5
- import { MarkdownString } from '../../../../../base/common/htmlContent.js';
6
- import { DisposableMap, DisposableStore, Disposable } from '../../../../../base/common/lifecycle.js';
7
- import '../../../../../base/common/observableInternal/index.js';
8
- import { joinPath } from '../../../../../base/common/resources.js';
9
- import { isFalsyOrWhitespace } from '../../../../../base/common/strings.js';
10
- import { ThemeIcon } from '../../../../../base/common/themables.js';
11
- import { localize } from '../../../../../nls.js';
12
- import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js';
13
- import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js';
14
- import { SyncDescriptor } from '../../../../../platform/instantiation/common/descriptors.js';
15
- import { IProductService } from '../../../../../platform/product/common/productService.service.js';
16
- import { Registry } from '../../../../../platform/registry/common/platform.js';
17
- import { Extensions } from '../../../../services/extensionManagement/common/extensionFeatures.js';
18
- import { isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js';
19
- import { ExtensionsRegistry } from '../../../../services/extensions/common/extensionsRegistry.js';
20
- import { ToolDataSource } from './languageModelToolsService.js';
21
- import { ILanguageModelToolsService } from './languageModelToolsService.service.js';
22
- import { toolsParametersSchemaSchemaId } from './languageModelToolsParametersSchema.js';
23
- import { transaction } from '../../../../../base/common/observableInternal/transaction.js';
24
-
25
- const languageModelToolsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
26
- extensionPoint: "languageModelTools",
27
- activationEventsGenerator: function*(contributions) {
28
- for (const contrib of contributions) {
29
- yield `onLanguageModelTool:${contrib.name}`;
30
- }
31
- },
32
- jsonSchema: {
33
- description: ( localize(
34
- 10903,
35
- "Contributes a tool that can be invoked by a language model in a chat session, or from a standalone command. Registered tools can be used by all extensions."
36
- )),
37
- type: "array",
38
- items: {
39
- additionalProperties: false,
40
- type: "object",
41
- defaultSnippets: [{
42
- body: {
43
- name: "${1}",
44
- modelDescription: "${2}",
45
- inputSchema: {
46
- type: "object",
47
- properties: {
48
- "${3:name}": {
49
- type: "string",
50
- description: "${4:description}"
51
- }
52
- }
53
- }
54
- }
55
- }],
56
- required: ["name", "displayName", "modelDescription"],
57
- properties: {
58
- name: {
59
- description: ( localize(
60
- 10904,
61
- "A unique name for this tool. This name must be a globally unique identifier, and is also used as a name when presenting this tool to a language model."
62
- )),
63
- type: "string",
64
- pattern: "^(?!copilot_|vscode_)[\\w-]+$"
65
- },
66
- toolReferenceName: {
67
- markdownDescription: ( localize(
68
- 10905,
69
- "If {0} is enabled for this tool, the user may use '#' with this name to invoke the tool in a query. Otherwise, the name is not required. Name must not contain whitespace.",
70
- "`canBeReferencedInPrompt`"
71
- )),
72
- type: "string",
73
- pattern: "^[\\w-]+$"
74
- },
75
- displayName: {
76
- description: ( localize(
77
- 10906,
78
- "A human-readable name for this tool that may be used to describe it in the UI."
79
- )),
80
- type: "string"
81
- },
82
- userDescription: {
83
- description: ( localize(10907, "A description of this tool that may be shown to the user.")),
84
- type: "string"
85
- },
86
- modelDescription: {
87
- description: ( localize(
88
- 10908,
89
- "A description of this tool that may be used by a language model to select it."
90
- )),
91
- type: "string"
92
- },
93
- inputSchema: {
94
- description: ( localize(
95
- 10909,
96
- "A JSON schema for the input this tool accepts. The input must be an object at the top level. A particular language model may not support all JSON schema features. See the documentation for the language model family you are using for more information."
97
- )),
98
- $ref: toolsParametersSchemaSchemaId
99
- },
100
- canBeReferencedInPrompt: {
101
- markdownDescription: ( localize(
102
- 10910,
103
- "If true, this tool shows up as an attachment that the user can add manually to their request. Chat participants will receive the tool in {0}.",
104
- "`ChatRequest#toolReferences`"
105
- )),
106
- type: "boolean"
107
- },
108
- icon: {
109
- markdownDescription: ( localize(
110
- 10911,
111
- "An icon that represents this tool. Either a file path, an object with file paths for dark and light themes, or a theme icon reference, like \"\\$(zap)\""
112
- )),
113
- anyOf: [{
114
- type: "string"
115
- }, {
116
- type: "object",
117
- properties: {
118
- light: {
119
- description: ( localize(10912, "Icon path when a light theme is used")),
120
- type: "string"
121
- },
122
- dark: {
123
- description: ( localize(10913, "Icon path when a dark theme is used")),
124
- type: "string"
125
- }
126
- }
127
- }]
128
- },
129
- when: {
130
- markdownDescription: ( localize(
131
- 10914,
132
- "Condition which must be true for this tool to be enabled. Note that a tool may still be invoked by another extension even when its `when` condition is false."
133
- )),
134
- type: "string"
135
- },
136
- tags: {
137
- description: ( localize(
138
- 10915,
139
- "A set of tags that roughly describe the tool's capabilities. A tool user may use these to filter the set of tools to just ones that are relevant for the task at hand, or they may want to pick a tag that can be used to identify just the tools contributed by this extension."
140
- )),
141
- type: "array",
142
- items: {
143
- type: "string",
144
- pattern: "^(?!copilot_|vscode_)"
145
- }
146
- }
147
- }
148
- }
149
- }
150
- });
151
- const languageModelToolSetsExtensionPoint = ExtensionsRegistry.registerExtensionPoint({
152
- extensionPoint: "languageModelToolSets",
153
- deps: [languageModelToolsExtensionPoint],
154
- jsonSchema: {
155
- description: ( localize(
156
- 10916,
157
- "Contributes a set of language model tools that can be used together."
158
- )),
159
- type: "array",
160
- items: {
161
- additionalProperties: false,
162
- type: "object",
163
- defaultSnippets: [{
164
- body: {
165
- name: "${1}",
166
- description: "${2}",
167
- tools: ["${3}"]
168
- }
169
- }],
170
- required: ["name", "description", "tools"],
171
- properties: {
172
- name: {
173
- description: ( localize(
174
- 10917,
175
- "A name for this tool set. Used as reference and should not contain whitespace."
176
- )),
177
- type: "string",
178
- pattern: "^[\\w-]+$"
179
- },
180
- description: {
181
- description: ( localize(10918, "A description of this tool set.")),
182
- type: "string"
183
- },
184
- icon: {
185
- markdownDescription: ( localize(10919, "An icon that represents this tool set, like {0}", "`$(zap)`")),
186
- type: "string"
187
- },
188
- tools: {
189
- markdownDescription: ( localize(
190
- 10920,
191
- "A list of tools or tool sets to include in this tool set. Cannot be empty and must reference tools by their `toolReferenceName`."
192
- )),
193
- type: "array",
194
- minItems: 1,
195
- items: {
196
- type: "string"
197
- }
198
- }
199
- }
200
- }
201
- }
202
- });
203
- function toToolKey(extensionIdentifier, toolName) {
204
- return `${extensionIdentifier.value}/${toolName}`;
205
- }
206
- function toToolSetKey(extensionIdentifier, toolName) {
207
- return `toolset:${extensionIdentifier.value}/${toolName}`;
208
- }
209
- function toSyntheticToolSetKey(extensionIdentifier) {
210
- return `synthetic-toolset:${extensionIdentifier.value}`;
211
- }
212
- let LanguageModelToolsExtensionPointHandler = class LanguageModelToolsExtensionPointHandler {
213
- static {
214
- this.ID = "workbench.contrib.toolsExtensionPointHandler";
215
- }
216
- constructor(productService, languageModelToolsService) {
217
- this._registrationDisposables = ( new DisposableMap());
218
- languageModelToolsExtensionPoint.setHandler((_extensions, delta) => {
219
- for (const extension of delta.added) {
220
- const successfullyRegisteredTools = [];
221
- let extensionSource;
222
- for (const rawTool of extension.value) {
223
- if (!rawTool.name || !rawTool.modelDescription || !rawTool.displayName) {
224
- extension.collector.error(
225
- `Extension '${extension.description.identifier.value}' CANNOT register tool without name, modelDescription, and displayName: ${JSON.stringify(rawTool)}`
226
- );
227
- continue;
228
- }
229
- if (!rawTool.name.match(/^[\w-]+$/)) {
230
- extension.collector.error(
231
- `Extension '${extension.description.identifier.value}' CANNOT register tool with invalid id: ${rawTool.name}. The id must match /^[\\w-]+$/.`
232
- );
233
- continue;
234
- }
235
- if (rawTool.canBeReferencedInPrompt && !rawTool.toolReferenceName) {
236
- extension.collector.error(
237
- `Extension '${extension.description.identifier.value}' CANNOT register tool with 'canBeReferencedInPrompt' set without a 'toolReferenceName': ${JSON.stringify(rawTool)}`
238
- );
239
- continue;
240
- }
241
- if ((rawTool.name.startsWith("copilot_") || rawTool.name.startsWith("vscode_")) && !isProposedApiEnabled(extension.description, "chatParticipantPrivate")) {
242
- extension.collector.error(
243
- `Extension '${extension.description.identifier.value}' CANNOT register tool with name starting with "vscode_" or "copilot_"`
244
- );
245
- continue;
246
- }
247
- if (rawTool.tags?.some(tag => tag.startsWith("copilot_") || tag.startsWith("vscode_")) && !isProposedApiEnabled(extension.description, "chatParticipantPrivate")) {
248
- extension.collector.error(
249
- `Extension '${extension.description.identifier.value}' CANNOT register tool with tags starting with "vscode_" or "copilot_"`
250
- );
251
- }
252
- if (rawTool.legacyToolReferenceFullNames && !isProposedApiEnabled(extension.description, "chatParticipantPrivate")) {
253
- extension.collector.error(
254
- `Extension '${extension.description.identifier.value}' CANNOT use 'legacyToolReferenceFullNames' without the 'chatParticipantPrivate' API proposal enabled`
255
- );
256
- continue;
257
- }
258
- const rawIcon = rawTool.icon;
259
- let icon;
260
- if (typeof rawIcon === "string") {
261
- icon = ThemeIcon.fromString(rawIcon) ?? {
262
- dark: joinPath(extension.description.extensionLocation, rawIcon),
263
- light: joinPath(extension.description.extensionLocation, rawIcon)
264
- };
265
- } else if (rawIcon) {
266
- icon = {
267
- dark: joinPath(extension.description.extensionLocation, rawIcon.dark),
268
- light: joinPath(extension.description.extensionLocation, rawIcon.light)
269
- };
270
- }
271
- const isBuiltinTool = productService.defaultChatAgent?.chatExtensionId ? ExtensionIdentifier.equals(
272
- extension.description.identifier,
273
- productService.defaultChatAgent.chatExtensionId
274
- ) : isProposedApiEnabled(extension.description, "chatParticipantPrivate");
275
- const source = isBuiltinTool ? ToolDataSource.Internal : {
276
- type: "extension",
277
- label: extension.description.displayName ?? extension.description.name,
278
- extensionId: extension.description.identifier
279
- };
280
- const tool = {
281
- ...rawTool,
282
- source,
283
- inputSchema: rawTool.inputSchema,
284
- id: rawTool.name,
285
- icon,
286
- when: rawTool.when ? ContextKeyExpr.deserialize(rawTool.when) : undefined,
287
- alwaysDisplayInputOutput: !isBuiltinTool
288
- };
289
- try {
290
- const disposable = languageModelToolsService.registerToolData(tool);
291
- this._registrationDisposables.set(toToolKey(extension.description.identifier, rawTool.name), disposable);
292
- successfullyRegisteredTools.push(tool);
293
- extensionSource ??= source;
294
- } catch (e) {
295
- extension.collector.error(`Failed to register tool '${rawTool.name}': ${e}`);
296
- }
297
- }
298
- const hasOwnToolSets = !isFalsyOrEmpty(extension.description.contributes?.languageModelToolSets);
299
- if (!hasOwnToolSets && extensionSource?.type === "extension" && successfullyRegisteredTools.length > 0) {
300
- const syntheticKey = toSyntheticToolSetKey(extension.description.identifier);
301
- const toolSet = languageModelToolsService.createToolSet(extensionSource, syntheticKey, extension.description.identifier.value, {
302
- icon: Codicon.extensions,
303
- description: extension.description.displayName ?? extension.description.name,
304
- hiddenInToolsPicker: true
305
- });
306
- const store = ( new DisposableStore());
307
- store.add(toolSet);
308
- transaction(tx => {
309
- for (const t of successfullyRegisteredTools) {
310
- store.add(toolSet.addTool(t, tx));
311
- }
312
- });
313
- this._registrationDisposables.set(syntheticKey, store);
314
- }
315
- }
316
- for (const extension of delta.removed) {
317
- this._registrationDisposables.deleteAndDispose(toSyntheticToolSetKey(extension.description.identifier));
318
- for (const tool of extension.value) {
319
- this._registrationDisposables.deleteAndDispose(toToolKey(extension.description.identifier, tool.name));
320
- }
321
- }
322
- });
323
- languageModelToolSetsExtensionPoint.setHandler((_extensions, delta) => {
324
- for (const extension of delta.added) {
325
- if (!isProposedApiEnabled(extension.description, "contribLanguageModelToolSets")) {
326
- extension.collector.error(
327
- `Extension '${extension.description.identifier.value}' CANNOT register language model tools because the 'contribLanguageModelToolSets' API proposal is not enabled.`
328
- );
329
- continue;
330
- }
331
- const isBuiltinTool = productService.defaultChatAgent?.chatExtensionId ? ExtensionIdentifier.equals(
332
- extension.description.identifier,
333
- productService.defaultChatAgent.chatExtensionId
334
- ) : isProposedApiEnabled(extension.description, "chatParticipantPrivate");
335
- const source = isBuiltinTool ? ToolDataSource.Internal : {
336
- type: "extension",
337
- label: extension.description.displayName ?? extension.description.name,
338
- extensionId: extension.description.identifier
339
- };
340
- for (const toolSet of extension.value) {
341
- if (isFalsyOrWhitespace(toolSet.name)) {
342
- extension.collector.error(`Tool set '${toolSet.name}' CANNOT have an empty name`);
343
- continue;
344
- }
345
- if (toolSet.legacyFullNames && !isProposedApiEnabled(extension.description, "contribLanguageModelToolSets")) {
346
- extension.collector.error(
347
- `Tool set '${toolSet.name}' CANNOT use 'legacyFullNames' without the 'contribLanguageModelToolSets' API proposal enabled`
348
- );
349
- continue;
350
- }
351
- if (isFalsyOrEmpty(toolSet.tools)) {
352
- extension.collector.error(`Tool set '${toolSet.name}' CANNOT have an empty tools array`);
353
- continue;
354
- }
355
- const tools = [];
356
- const toolSets = [];
357
- const missingToolNames = [];
358
- for (const toolName of toolSet.tools) {
359
- const toolObj = languageModelToolsService.getToolByName(toolName);
360
- if (toolObj) {
361
- tools.push(toolObj);
362
- continue;
363
- }
364
- const toolSetObj = languageModelToolsService.getToolSetByName(toolName);
365
- if (toolSetObj) {
366
- toolSets.push(toolSetObj);
367
- continue;
368
- }
369
- missingToolNames.push(toolName);
370
- }
371
- if (toolSets.length === 0 && tools.length === 0) {
372
- extension.collector.error(
373
- `Tool set '${toolSet.name}' CANNOT have an empty tools array (none of the tools were found)`
374
- );
375
- continue;
376
- }
377
- const store = ( new DisposableStore());
378
- const referenceName = toolSet.referenceName ?? toolSet.name;
379
- const existingToolSet = languageModelToolsService.getToolSetByName(referenceName);
380
- const mergeExisting = isBuiltinTool && existingToolSet?.source === ToolDataSource.Internal;
381
- let obj;
382
- if (mergeExisting) {
383
- obj = existingToolSet;
384
- } else {
385
- obj = languageModelToolsService.createToolSet(
386
- source,
387
- toToolSetKey(extension.description.identifier, toolSet.name),
388
- referenceName,
389
- {
390
- icon: toolSet.icon ? ThemeIcon.fromString(toolSet.icon) : undefined,
391
- description: toolSet.description,
392
- legacyFullNames: toolSet.legacyFullNames,
393
- deprecated: source.type !== "extension"
394
- }
395
- );
396
- }
397
- transaction(tx => {
398
- if (!mergeExisting) {
399
- store.add(obj);
400
- }
401
- tools.forEach(tool => store.add(obj.addTool(tool, tx)));
402
- toolSets.forEach(toolSet => store.add(obj.addToolSet(toolSet, tx)));
403
- });
404
- if (missingToolNames.length > 0) {
405
- const pending = ( new Set(missingToolNames));
406
- const listener = store.add(languageModelToolsService.onDidChangeTools(() => {
407
- for (const toolName of pending) {
408
- const toolObj = languageModelToolsService.getToolByName(toolName);
409
- if (toolObj) {
410
- store.add(obj.addTool(toolObj));
411
- pending.delete(toolName);
412
- } else {
413
- const toolSetObj = languageModelToolsService.getToolSetByName(toolName);
414
- if (toolSetObj) {
415
- store.add(obj.addToolSet(toolSetObj));
416
- pending.delete(toolName);
417
- }
418
- }
419
- }
420
- if (pending.size === 0) {
421
- store.delete(listener);
422
- }
423
- }));
424
- }
425
- this._registrationDisposables.set(toToolSetKey(extension.description.identifier, toolSet.name), store);
426
- }
427
- }
428
- for (const extension of delta.removed) {
429
- for (const toolSet of extension.value) {
430
- this._registrationDisposables.deleteAndDispose(toToolSetKey(extension.description.identifier, toolSet.name));
431
- }
432
- }
433
- });
434
- }
435
- };
436
- LanguageModelToolsExtensionPointHandler = ( __decorate([( __param(0, IProductService)), ( __param(1, ILanguageModelToolsService))], LanguageModelToolsExtensionPointHandler));
437
- class LanguageModelToolDataRenderer extends Disposable {
438
- constructor() {
439
- super(...arguments);
440
- this.type = "table";
441
- }
442
- shouldRender(manifest) {
443
- return !!manifest.contributes?.languageModelTools;
444
- }
445
- render(manifest) {
446
- const contribs = manifest.contributes?.languageModelTools ?? [];
447
- if (!contribs.length) {
448
- return {
449
- data: {
450
- headers: [],
451
- rows: []
452
- },
453
- dispose: () => {}
454
- };
455
- }
456
- const headers = [( localize(10921, "Name")), ( localize(10922, "Display Name")), ( localize(10923, "Description"))];
457
- const rows = ( contribs.map(t => {
458
- return [( new MarkdownString(`\`${t.name}\``)), t.displayName, t.userDescription ?? t.modelDescription];
459
- }));
460
- return {
461
- data: {
462
- headers,
463
- rows
464
- },
465
- dispose: () => {}
466
- };
467
- }
468
- }
469
- ( Registry.as(Extensions.ExtensionFeaturesRegistry)).registerExtensionFeature({
470
- id: "languageModelTools",
471
- label: ( localize(10924, "Language Model Tools")),
472
- access: {
473
- canToggle: false
474
- },
475
- renderer: ( new SyncDescriptor(LanguageModelToolDataRenderer))
476
- });
477
- class LanguageModelToolSetDataRenderer extends Disposable {
478
- constructor() {
479
- super(...arguments);
480
- this.type = "table";
481
- }
482
- shouldRender(manifest) {
483
- return !!manifest.contributes?.languageModelToolSets;
484
- }
485
- render(manifest) {
486
- const contribs = manifest.contributes?.languageModelToolSets ?? [];
487
- if (!contribs.length) {
488
- return {
489
- data: {
490
- headers: [],
491
- rows: []
492
- },
493
- dispose: () => {}
494
- };
495
- }
496
- const headers = [( localize(10925, "Name")), ( localize(10926, "Reference Name")), ( localize(10927, "Tools")), ( localize(10928, "Description"))];
497
- const rows = ( contribs.map(t => {
498
- return [( new MarkdownString(`\`${t.name}\``)), t.referenceName ? ( new MarkdownString(`\`#${t.referenceName}\``)) : "none", t.tools.join(", "), t.description];
499
- }));
500
- return {
501
- data: {
502
- headers,
503
- rows
504
- },
505
- dispose: () => {}
506
- };
507
- }
508
- }
509
- ( Registry.as(Extensions.ExtensionFeaturesRegistry)).registerExtensionFeature({
510
- id: "languageModelToolSets",
511
- label: ( localize(10929, "Language Model Tool Sets")),
512
- access: {
513
- canToggle: false
514
- },
515
- renderer: ( new SyncDescriptor(LanguageModelToolSetDataRenderer))
516
- });
517
-
518
- export { LanguageModelToolsExtensionPointHandler, toToolSetKey };
@@ -1,6 +0,0 @@
1
- /**
2
- * A schema for parametersSchema
3
- * This is a subset of https://json-schema.org/draft-07/schema to capture what is actually supported by language models for tools, mainly, that they must be an object at the top level.
4
- * Possibly it can be whittled down some more based on which attributes are supported by language models.
5
- */
6
- export declare const toolsParametersSchemaSchemaId = "vscode://schemas/toolsParameters";