@codingame/monaco-vscode-chat-service-override 21.6.0 → 22.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/index.js +3 -3
  2. package/package.json +41 -38
  3. package/vscode/src/vs/base/common/yaml.d.ts +74 -0
  4. package/vscode/src/vs/base/common/yaml.js +597 -0
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +5 -5
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.d.ts +1 -1
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +91 -83
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +32 -21
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +13 -10
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +14 -33
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +14 -14
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +2 -2
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +3 -3
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +11 -11
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +12 -7
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.d.ts +1 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +98 -0
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +8 -8
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +13 -14
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +192 -216
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +47 -23
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +1 -1
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +231 -175
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +19 -18
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +200 -127
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +8 -2
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +73 -6
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +2 -2
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +6 -6
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +38 -38
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +10 -10
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +3 -1
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +10 -3
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +2 -1
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +4 -3
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +7 -4
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +1 -1
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +5 -5
  43. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +1 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +17 -24
  45. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +2 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +4 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +2 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +3 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +6 -6
  50. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +20 -20
  51. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +4 -4
  53. package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.d.ts +1 -3
  54. package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.js +2 -13
  55. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +5 -5
  56. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +41 -43
  57. package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +7 -7
  58. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
  59. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +45 -10
  60. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +2 -2
  61. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +4 -4
  62. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +22 -0
  63. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +127 -0
  64. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +37 -0
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +137 -0
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +32 -0
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +212 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +22 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +268 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +93 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +455 -0
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +68 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +409 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +2 -6
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +65 -144
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +10 -2
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +240 -107
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +1 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +131 -85
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +2 -2
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +8 -8
  82. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +2 -2
  83. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +1 -1
  84. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +12 -3
  85. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +145 -26
  86. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +2 -2
  87. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +2 -2
  88. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +0 -2
  89. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css +4 -4
  90. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +262 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +7 -0
  92. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +2 -4
  93. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +16 -22
  94. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +4 -4
  95. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +7 -7
  96. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +9 -9
  97. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +1 -1
  98. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +20 -19
  99. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +3 -3
  100. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +66 -83
  101. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.d.ts +3 -1
  102. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +8 -6
  103. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +17 -24
  104. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  105. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +12 -10
  106. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +1 -1
  107. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  108. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  109. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +3 -3
  110. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +9 -9
  111. package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.d.ts +1 -0
  112. package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +17 -9
  113. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +8 -4
  114. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +74 -200
  115. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +1 -1
  116. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +1 -1
  117. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +9 -0
  118. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +150 -0
  119. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.d.ts +2 -6
  120. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +9 -33
  121. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +2 -5
  122. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +5 -19
  123. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +18 -0
  124. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +83 -0
  125. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.d.ts +15 -0
  126. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +55 -0
  127. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +2 -6
  128. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +25 -68
  129. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/{promptHeaderHovers.d.ts → promptHovers.d.ts} +5 -5
  130. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/{promptHeaderHovers.js → promptHovers.js} +77 -75
  131. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +13 -22
  132. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +48 -0
  133. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +456 -0
  134. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.d.ts +7 -8
  135. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +28 -21
  136. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.d.ts +97 -0
  137. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.js +247 -0
  138. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +118 -0
  139. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +10 -0
  140. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +33 -21
  141. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +217 -83
  142. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +4 -3
  143. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +34 -17
  144. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +29 -29
  145. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  146. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +8 -2
  147. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  148. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +24 -24
  149. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +7 -7
  150. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +33 -33
  151. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  152. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  153. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +13 -13
  154. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +1 -1
  155. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +2 -2
  156. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +2 -2
  157. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +3 -10
  158. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +7 -0
  159. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +1 -1
  160. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +25 -6
  161. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +1 -1
  162. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +25 -6
  163. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +1 -1
  164. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +24 -6
  165. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +1 -0
  166. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +20 -5
  167. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +5 -0
  168. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +3 -0
  169. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +3 -0
  170. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +6 -2
  171. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +5 -5
  172. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +2 -1
  173. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +32 -13
  174. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  175. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  176. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  177. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +14 -3
  178. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +177 -107
  179. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +2 -1
  180. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +4 -0
  181. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +113 -43
  182. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +21 -17
  183. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +11 -8
  184. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +19 -15
  185. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
  186. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +17 -9
  187. package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.d.ts +0 -84
  188. package/vscode/src/vs/base/common/decorators/cancelPreviousCalls.js +0 -42
  189. package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.d.ts +0 -94
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptFileReferenceErrors.js +0 -107
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.d.ts +0 -27
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/asyncDecoder.js +0 -45
  193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.d.ts +0 -137
  194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseDecoder.js +0 -150
  195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.d.ts +0 -57
  196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/baseToken.js +0 -69
  197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.d.ts +0 -24
  198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/compositeToken.js +0 -33
  199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.d.ts +0 -8
  200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/constants.js +0 -29
  201. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.d.ts +0 -28
  202. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/frontMatterDecoder.js +0 -118
  203. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.d.ts +0 -33
  204. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterArray.js +0 -134
  205. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.d.ts +0 -27
  206. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterParserFactory.js +0 -34
  207. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.d.ts +0 -48
  208. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecord.js +0 -134
  209. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.d.ts +0 -25
  210. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordName.js +0 -64
  211. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.d.ts +0 -32
  212. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterRecord/frontMatterRecordNameWithDelimiter.js +0 -75
  213. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.d.ts +0 -42
  214. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterSequence.js +0 -41
  215. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.d.ts +0 -18
  216. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterString.js +0 -63
  217. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.d.ts +0 -61
  218. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/parsers/frontMatterValue.js +0 -127
  219. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.d.ts +0 -20
  220. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterArray.js +0 -25
  221. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.d.ts +0 -34
  222. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterBoolean.js +0 -64
  223. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.d.ts +0 -83
  224. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterRecord.js +0 -37
  225. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.d.ts +0 -27
  226. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterSequence.js +0 -57
  227. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.d.ts +0 -25
  228. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterString.js +0 -18
  229. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.d.ts +0 -21
  230. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/frontMatterToken.js +0 -9
  231. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.d.ts +0 -60
  232. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/linesDecoder.js +0 -100
  233. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.d.ts +0 -28
  234. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/carriageReturn.js +0 -19
  235. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.d.ts +0 -13
  236. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/line.js +0 -20
  237. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.d.ts +0 -28
  238. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/linesCodec/tokens/newLine.js +0 -19
  239. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.d.ts +0 -22
  240. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/markdownDecoder.js +0 -72
  241. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.d.ts +0 -42
  242. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownComment.js +0 -113
  243. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.d.ts +0 -20
  244. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownImage.js +0 -68
  245. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.d.ts +0 -73
  246. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/parsers/markdownLink.js +0 -99
  247. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.d.ts +0 -18
  248. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownComment.js +0 -19
  249. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.d.ts +0 -50
  250. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownImage.js +0 -54
  251. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.d.ts +0 -50
  252. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownLink.js +0 -53
  253. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.d.ts +0 -7
  254. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownCodec/tokens/markdownToken.js +0 -7
  255. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.d.ts +0 -27
  256. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/markdownExtensionsDecoder.js +0 -68
  257. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.d.ts +0 -49
  258. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/parsers/frontMatterHeader.js +0 -199
  259. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.d.ts +0 -34
  260. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterHeader.js +0 -37
  261. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.d.ts +0 -30
  262. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/frontMatterMarker.js +0 -27
  263. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.d.ts +0 -6
  264. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/markdownExtensionsCodec/tokens/markdownExtensionsToken.js +0 -7
  265. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.d.ts +0 -87
  266. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/parserBase.js +0 -30
  267. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.d.ts +0 -30
  268. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/simpleDecoder.js +0 -66
  269. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.d.ts +0 -41
  270. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/angleBrackets.js +0 -23
  271. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.d.ts +0 -19
  272. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/at.js +0 -14
  273. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.d.ts +0 -41
  274. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/brackets.js +0 -23
  275. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.d.ts +0 -19
  276. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/colon.js +0 -14
  277. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.d.ts +0 -19
  278. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/comma.js +0 -14
  279. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.d.ts +0 -41
  280. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/curlyBraces.js +0 -23
  281. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.d.ts +0 -19
  282. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dash.js +0 -14
  283. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.d.ts +0 -19
  284. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/dollarSign.js +0 -14
  285. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.d.ts +0 -25
  286. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/doubleQuote.js +0 -17
  287. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.d.ts +0 -19
  288. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/exclamationMark.js +0 -14
  289. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.d.ts +0 -19
  290. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/formFeed.js +0 -14
  291. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.d.ts +0 -19
  292. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/hash.js +0 -14
  293. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.d.ts +0 -41
  294. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/parentheses.js +0 -23
  295. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.d.ts +0 -25
  296. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/quote.js +0 -17
  297. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.d.ts +0 -36
  298. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/simpleToken.js +0 -19
  299. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.d.ts +0 -19
  300. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/slash.js +0 -14
  301. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.d.ts +0 -19
  302. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/space.js +0 -14
  303. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.d.ts +0 -19
  304. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tab.js +0 -14
  305. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.d.ts +0 -19
  306. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/verticalTab.js +0 -14
  307. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.d.ts +0 -32
  308. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/word.js +0 -29
  309. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.d.ts +0 -9
  310. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/textToken.js +0 -10
  311. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.d.ts +0 -62
  312. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStream.js +0 -126
  313. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.d.ts +0 -8
  314. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/utils/objectStreamFromTextModel.js +0 -25
  315. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.d.ts +0 -42
  316. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptCodec.js +0 -13
  317. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.d.ts +0 -31
  318. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/chatPromptDecoder.js +0 -109
  319. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.d.ts +0 -27
  320. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptAtMentionParser.js +0 -80
  321. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.d.ts +0 -27
  322. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptSlashCommandParser.js +0 -81
  323. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.d.ts +0 -36
  324. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptTemplateVariableParser.js +0 -100
  325. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.d.ts +0 -42
  326. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/parsers/promptVariableParser.js +0 -149
  327. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.d.ts +0 -19
  328. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/fileReference.js +0 -20
  329. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.d.ts +0 -24
  330. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptAtMention.js +0 -25
  331. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.d.ts +0 -24
  332. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptSlashCommand.js +0 -19
  333. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.d.ts +0 -26
  334. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptTemplateVariable.js +0 -25
  335. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.d.ts +0 -6
  336. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptToken.js +0 -7
  337. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.d.ts +0 -51
  338. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/tokens/promptVariable.js +0 -48
  339. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.d.ts +0 -17
  340. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.js +0 -71
  341. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.d.ts +0 -38
  342. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +0 -97
  343. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +0 -102
  344. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +0 -67
  345. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.d.ts +0 -42
  346. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.js +0 -46
  347. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.d.ts +0 -47
  348. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +0 -186
  349. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.d.ts +0 -30
  350. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +0 -54
  351. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceBase.d.ts +0 -24
  352. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceBase.js +0 -26
  353. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.d.ts +0 -37
  354. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.js +0 -87
  355. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.d.ts +0 -216
  356. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +0 -333
  357. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.d.ts +0 -32
  358. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/diagnostics.js +0 -20
  359. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.d.ts +0 -107
  360. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +0 -101
  361. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +0 -26
  362. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.js +0 -17
  363. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.d.ts +0 -20
  364. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +0 -87
  365. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.d.ts +0 -65
  366. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/record.js +0 -37
  367. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.d.ts +0 -24
  368. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +0 -57
  369. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.d.ts +0 -14
  370. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/description.js +0 -43
  371. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.d.ts +0 -14
  372. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.js +0 -40
  373. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.d.ts +0 -11
  374. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/model.js +0 -43
  375. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.d.ts +0 -41
  376. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +0 -98
  377. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +0 -31
  378. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.js +0 -24
  379. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +0 -40
  380. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +0 -47
  381. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.d.ts +0 -22
  382. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptParser.js +0 -36
  383. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.d.ts +0 -17
  384. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.js +0 -25
  385. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.d.ts +0 -12
  386. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +0 -50
  387. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/objectCache.d.ts +0 -96
  388. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/objectCache.js +0 -39
  389. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.d.ts +0 -48
  390. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/observableDisposable.js +0 -41
@@ -22,14 +22,29 @@ import { ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
22
22
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
23
23
  import { ToolsScope } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatSelectedTools';
24
24
  import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
25
- import { AcceptToolConfirmationActionId } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
25
+ import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/chat/browser/actions/chatConstants';
26
26
  import { showToolsPicker } from './chatToolPicker.js';
27
27
 
28
- class AcceptToolConfirmation extends Action2 {
28
+ class ToolConfirmationAction extends Action2 {
29
+ run(accessor, ...args) {
30
+ const chatWidgetService = accessor.get(IChatWidgetService);
31
+ const widget = chatWidgetService.lastFocusedWidget;
32
+ const lastItem = widget?.viewModel?.getItems().at(-1);
33
+ if (!isResponseVM(lastItem)) {
34
+ return;
35
+ }
36
+ const unconfirmedToolInvocation = lastItem.model.response.value.find((item) => item.kind === 'toolInvocation' && item.isConfirmed === undefined);
37
+ if (unconfirmedToolInvocation) {
38
+ unconfirmedToolInvocation.confirmed.complete(this.getReason());
39
+ }
40
+ widget?.focusInput();
41
+ }
42
+ }
43
+ class AcceptToolConfirmation extends ToolConfirmationAction {
29
44
  constructor() {
30
45
  super({
31
46
  id: AcceptToolConfirmationActionId,
32
- title: ( localize2(4707, "Accept")),
47
+ title: ( localize2(4735, "Accept")),
33
48
  f1: false,
34
49
  category: CHAT_CATEGORY,
35
50
  keybinding: {
@@ -39,18 +54,26 @@ class AcceptToolConfirmation extends Action2 {
39
54
  },
40
55
  });
41
56
  }
42
- run(accessor, ...args) {
43
- const chatWidgetService = accessor.get(IChatWidgetService);
44
- const widget = chatWidgetService.lastFocusedWidget;
45
- const lastItem = widget?.viewModel?.getItems().at(-1);
46
- if (!isResponseVM(lastItem)) {
47
- return;
48
- }
49
- const unconfirmedToolInvocation = lastItem.model.response.value.find((item) => item.kind === 'toolInvocation' && item.isConfirmed === undefined);
50
- if (unconfirmedToolInvocation) {
51
- unconfirmedToolInvocation.confirmed.complete({ type: ToolConfirmKind.UserAction });
52
- }
53
- widget?.focusInput();
57
+ getReason() {
58
+ return { type: ToolConfirmKind.UserAction };
59
+ }
60
+ }
61
+ class SkipToolConfirmation extends ToolConfirmationAction {
62
+ constructor() {
63
+ super({
64
+ id: SkipToolConfirmationActionId,
65
+ title: ( localize2(4736, "Skip")),
66
+ f1: false,
67
+ category: CHAT_CATEGORY,
68
+ keybinding: {
69
+ when: ( ContextKeyExpr.and(ChatContextKeys.inChatSession, ChatContextKeys.Editing.hasToolConfirmation)),
70
+ primary: KeyMod.CtrlCmd | KeyCode.Enter | KeyMod.Alt,
71
+ weight: KeybindingWeight.WorkbenchContrib + 1,
72
+ },
73
+ });
74
+ }
75
+ getReason() {
76
+ return { type: ToolConfirmKind.Skipped };
54
77
  }
55
78
  }
56
79
  class ConfigureToolsAction extends Action2 {
@@ -58,7 +81,7 @@ class ConfigureToolsAction extends Action2 {
58
81
  constructor() {
59
82
  super({
60
83
  id: ConfigureToolsAction.ID,
61
- title: ( localize(4708, "Configure Tools...")),
84
+ title: ( localize(4737, "Configure Tools...")),
62
85
  icon: Codicon.tools,
63
86
  f1: false,
64
87
  category: CHAT_CATEGORY,
@@ -93,26 +116,26 @@ class ConfigureToolsAction extends Action2 {
93
116
  const { entriesScope, entriesMap } = widget.input.selectedToolsModel;
94
117
  switch (entriesScope) {
95
118
  case ToolsScope.Session:
96
- placeholder = ( localize(4709, "Select tools for this chat session"));
119
+ placeholder = ( localize(4738, "Select tools for this chat session"));
97
120
  description = ( localize(
98
- 4710,
121
+ 4739,
99
122
  "The selected tools were configured by a prompt command and only apply to this chat session."
100
123
  ));
101
124
  break;
102
125
  case ToolsScope.Mode:
103
- placeholder = ( localize(4711, "Select tools for this chat mode"));
126
+ placeholder = ( localize(4740, "Select tools for this chat mode"));
104
127
  description = ( localize(
105
- 4712,
128
+ 4741,
106
129
  "The selected tools are configured by the '{0}' chat mode. Changes to the tools will be applied to the mode file as well.",
107
130
  widget.input.currentModeObs.get().label
108
131
  ));
109
132
  break;
110
133
  case ToolsScope.Global:
111
- placeholder = ( localize(4713, "Select tools that are available to chat."));
134
+ placeholder = ( localize(4742, "Select tools that are available to chat."));
112
135
  description = undefined;
113
136
  break;
114
137
  }
115
- const result = await instaService.invokeFunction(showToolsPicker, placeholder, description, entriesMap.get());
138
+ const result = await instaService.invokeFunction(showToolsPicker, placeholder, description, () => entriesMap.get());
116
139
  if (result) {
117
140
  widget.input.selectedToolsModel.set(result, false);
118
141
  }
@@ -157,7 +180,7 @@ let ConfigureToolsActionRendering = class ConfigureToolsActionRendering {
157
180
  getTooltip() {
158
181
  if (this.isAboveToolLimit()) {
159
182
  const warningMessage = ( localize(
160
- 4714,
183
+ 4743,
161
184
  'More than {0} tools are enabled, you may experience degraded tool calling.',
162
185
  this._contextKeyService.getContextKeyValue(ChatContextKeys.chatToolGroupingThreshold.key)
163
186
  ));
@@ -185,6 +208,7 @@ ConfigureToolsActionRendering = ( __decorate([
185
208
  ], ConfigureToolsActionRendering));
186
209
  function registerChatToolActions() {
187
210
  registerAction2(AcceptToolConfirmation);
211
+ registerAction2(SkipToolConfirmation);
188
212
  registerAction2(ConfigureToolsAction);
189
213
  registerWorkbenchContribution2(ConfigureToolsActionRendering.ID, ConfigureToolsActionRendering, WorkbenchPhase.BlockRestore);
190
214
  }
@@ -15,4 +15,4 @@ import { IToolData, ToolSet } from "@codingame/monaco-vscode-api/vscode/vs/workb
15
15
  * @param onUpdate - Optional callback fired when the selection changes
16
16
  * @returns Promise resolving to the final selection map, or undefined if cancelled
17
17
  */
18
- export declare function showToolsPicker(accessor: ServicesAccessor, placeHolder: string, description?: string, toolsEntries?: ReadonlyMap<ToolSet | IToolData, boolean>): Promise<ReadonlyMap<ToolSet | IToolData, boolean> | undefined>;
18
+ export declare function showToolsPicker(accessor: ServicesAccessor, placeHolder: string, description?: string, getToolsEntries?: () => ReadonlyMap<ToolSet | IToolData, boolean>): Promise<ReadonlyMap<ToolSet | IToolData, boolean> | undefined>;
@@ -1,28 +1,29 @@
1
1
 
2
2
  import { assertNever } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
3
3
  import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codicons';
4
- import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
4
+ import { Emitter, Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
5
+ import { markdownCommandLink } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
5
6
  import { DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
7
+ import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
6
8
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
7
9
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
8
10
  import { CommandsRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands';
9
11
  import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
12
+ import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
10
13
  import { ExtensionIdentifier } from '@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions';
11
14
  import { IQuickInputService } from '@codingame/monaco-vscode-api/vscode/vs/platform/quickinput/common/quickInput.service';
12
15
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
13
16
  import { ExtensionEditorTab } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions';
14
17
  import { IExtensionsWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/extensions/common/extensions.service';
15
- import { McpCommandIds } from '@codingame/monaco-vscode-dc3fa21d-a483-5b99-a7ab-173235644a34-common/vscode/vs/workbench/contrib/mcp/common/mcpCommandIds';
18
+ import { McpCommandIds } from '@codingame/monaco-vscode-37b3b402-09f5-5f69-89ef-ce30559f63cc-common/vscode/vs/workbench/contrib/mcp/common/mcpCommandIds';
16
19
  import { IMcpRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service';
17
- import { McpServerEditorTab, McpConnectionState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes';
20
+ import { McpServerEditorTab, McpConnectionState, McpServerCacheState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes';
18
21
  import { IMcpService, IMcpWorkbenchService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/mcp/common/mcpTypes.service';
22
+ import { startServerAndWaitForLiveTools } from '@codingame/monaco-vscode-37b3b402-09f5-5f69-89ef-ce30559f63cc-common/vscode/vs/workbench/contrib/mcp/common/mcpTypesUtils';
23
+ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
19
24
  import { ToolDataSource } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
20
25
  import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service';
21
26
  import { ConfigureToolSets } from '../tools/toolSetsContribution.js';
22
- import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
23
- import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
24
- import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
25
- import { markdownCommandLink } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
26
27
 
27
28
  var BucketOrdinal;
28
29
  (function (BucketOrdinal) {
@@ -76,7 +77,7 @@ function createToolSetTreeItem(toolset, checked, editorService) {
76
77
  const resource = toolset.source.file;
77
78
  buttons.push({
78
79
  iconClass: ThemeIcon.asClassName(Codicon.edit),
79
- tooltip: ( localize(4715, "Edit Tool Set")),
80
+ tooltip: ( localize(4744, "Edit Tool Set")),
80
81
  action: () => editorService.openEditor({ resource })
81
82
  });
82
83
  }
@@ -93,7 +94,7 @@ function createToolSetTreeItem(toolset, checked, editorService) {
93
94
  ...iconProps
94
95
  };
95
96
  }
96
- async function showToolsPicker(accessor, placeHolder, description, toolsEntries) {
97
+ async function showToolsPicker(accessor, placeHolder, description, getToolsEntries) {
97
98
  const quickPickService = accessor.get(IQuickInputService);
98
99
  const mcpService = accessor.get(IMcpService);
99
100
  const mcpRegistry = accessor.get(IMcpRegistry);
@@ -109,171 +110,225 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
109
110
  mcpServerByTool.set(tool.id, server);
110
111
  }
111
112
  }
112
- if (!toolsEntries) {
113
- const defaultEntries = ( new Map());
114
- for (const tool of toolsService.getTools()) {
115
- if (tool.canBeReferencedInPrompt) {
116
- defaultEntries.set(tool, false);
113
+ function computeItems(previousToolsEntries) {
114
+ let toolsEntries = getToolsEntries ? ( new Map(getToolsEntries())) : undefined;
115
+ if (!toolsEntries) {
116
+ const defaultEntries = ( new Map());
117
+ for (const tool of toolsService.getTools()) {
118
+ if (tool.canBeReferencedInPrompt) {
119
+ defaultEntries.set(tool, false);
120
+ }
117
121
  }
122
+ for (const toolSet of toolsService.toolSets.get()) {
123
+ defaultEntries.set(toolSet, false);
124
+ }
125
+ toolsEntries = defaultEntries;
118
126
  }
127
+ previousToolsEntries?.forEach((value, key) => {
128
+ toolsEntries.set(key, value);
129
+ });
130
+ const treeItems = [];
131
+ const bucketMap = ( new Map());
132
+ const getKey = (source) => {
133
+ switch (source.type) {
134
+ case 'mcp':
135
+ case 'extension':
136
+ return ToolDataSource.toKey(source);
137
+ case 'internal':
138
+ return ( BucketOrdinal.BuiltIn.toString());
139
+ case 'user':
140
+ return ( BucketOrdinal.User.toString());
141
+ case 'external':
142
+ throw ( new Error('should not be reachable'));
143
+ default:
144
+ assertNever();
145
+ }
146
+ };
147
+ const mcpServers = ( new Map(( mcpService.servers.get().map(s => [s.definition.id, { server: s, seen: false }]))));
148
+ const createBucket = (source, key) => {
149
+ if (source.type === 'mcp') {
150
+ const mcpServerEntry = mcpServers.get(source.definitionId);
151
+ if (!mcpServerEntry) {
152
+ return undefined;
153
+ }
154
+ mcpServerEntry.seen = true;
155
+ const mcpServer = mcpServerEntry.server;
156
+ const buttons = [];
157
+ const collection = mcpRegistry.collections.get().find(c => c.id === mcpServer.collection.id);
158
+ if (collection?.source) {
159
+ buttons.push({
160
+ iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
161
+ tooltip: ( localize(4745, "Configure {0}", collection.label)),
162
+ action: () => collection.source ? collection.source instanceof ExtensionIdentifier ? extensionsWorkbenchService.open(collection.source.value, { tab: ExtensionEditorTab.Features, feature: 'mcp' }) : mcpWorkbenchService.open(collection.source, { tab: McpServerEditorTab.Configuration }) : undefined
163
+ });
164
+ }
165
+ else if (collection?.presentation?.origin) {
166
+ buttons.push({
167
+ iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
168
+ tooltip: ( localize(4745, "Configure {0}", collection.label)),
169
+ action: () => editorService.openEditor({
170
+ resource: collection.presentation.origin,
171
+ })
172
+ });
173
+ }
174
+ if (mcpServer.connectionState.get().state === McpConnectionState.Kind.Error) {
175
+ buttons.push({
176
+ iconClass: ThemeIcon.asClassName(Codicon.warning),
177
+ tooltip: ( localize(4746, "Show Output")),
178
+ action: () => mcpServer.showOutput(),
179
+ });
180
+ }
181
+ const cacheState = mcpServer.cacheState.get();
182
+ const children = [];
183
+ let collapsed = true;
184
+ if (cacheState === McpServerCacheState.Unknown || cacheState === McpServerCacheState.Outdated) {
185
+ collapsed = false;
186
+ children.push({
187
+ itemType: 'callback',
188
+ iconClass: ThemeIcon.asClassName(Codicon.sync),
189
+ label: ( localize(4747, "Update Tools")),
190
+ pickable: false,
191
+ run: () => {
192
+ treePicker.busy = true;
193
+ (async () => {
194
+ const ok = await startServerAndWaitForLiveTools(mcpServer, { promptType: 'all-untrusted' });
195
+ if (!ok) {
196
+ mcpServer.showOutput();
197
+ treePicker.hide();
198
+ return;
199
+ }
200
+ treePicker.busy = false;
201
+ computeItems(collectResults());
202
+ })();
203
+ return false;
204
+ },
205
+ });
206
+ }
207
+ const bucket = {
208
+ itemType: 'bucket',
209
+ ordinal: BucketOrdinal.Mcp,
210
+ id: key,
211
+ label: ( localize(4748, "MCP Server: {0}", source.label)),
212
+ checked: undefined,
213
+ collapsed,
214
+ children,
215
+ buttons,
216
+ };
217
+ const iconURI = mcpServer.serverMetadata.get()?.icons.getUrl(22);
218
+ if (iconURI) {
219
+ bucket.iconPath = { dark: iconURI, light: iconURI };
220
+ }
221
+ else {
222
+ bucket.iconClass = ThemeIcon.asClassName(Codicon.mcp);
223
+ }
224
+ return bucket;
225
+ }
226
+ else if (source.type === 'extension') {
227
+ return {
228
+ itemType: 'bucket',
229
+ ordinal: BucketOrdinal.Extension,
230
+ id: key,
231
+ label: ( localize(4749, 'Extension: {0}', source.label)),
232
+ checked: undefined,
233
+ children: [],
234
+ buttons: [],
235
+ collapsed: true,
236
+ iconClass: ThemeIcon.asClassName(Codicon.extensions)
237
+ };
238
+ }
239
+ else if (source.type === 'internal') {
240
+ return {
241
+ itemType: 'bucket',
242
+ ordinal: BucketOrdinal.BuiltIn,
243
+ id: key,
244
+ label: ( localize(4750, "Built-In")),
245
+ checked: undefined,
246
+ children: [],
247
+ buttons: [],
248
+ collapsed: false
249
+ };
250
+ }
251
+ else {
252
+ return {
253
+ itemType: 'bucket',
254
+ ordinal: BucketOrdinal.User,
255
+ id: key,
256
+ label: ( localize(4751, "User Defined Tool Sets")),
257
+ checked: undefined,
258
+ children: [],
259
+ buttons: [],
260
+ collapsed: true
261
+ };
262
+ }
263
+ };
264
+ const getBucket = (source) => {
265
+ const key = getKey(source);
266
+ let bucket = bucketMap.get(key);
267
+ if (!bucket) {
268
+ bucket = createBucket(source, key);
269
+ if (bucket) {
270
+ bucketMap.set(key, bucket);
271
+ }
272
+ }
273
+ return bucket;
274
+ };
119
275
  for (const toolSet of toolsService.toolSets.get()) {
120
- defaultEntries.set(toolSet, false);
121
- }
122
- toolsEntries = defaultEntries;
123
- }
124
- const treeItems = [];
125
- const bucketMap = ( new Map());
126
- const getKey = (source) => {
127
- switch (source.type) {
128
- case 'mcp':
129
- case 'extension':
130
- return ToolDataSource.toKey(source);
131
- case 'internal':
132
- return ( BucketOrdinal.BuiltIn.toString());
133
- case 'user':
134
- return ( BucketOrdinal.User.toString());
135
- case 'external':
136
- throw ( new Error('should not be reachable'));
137
- default:
138
- assertNever();
139
- }
140
- };
141
- const createBucket = (source, key) => {
142
- if (source.type === 'mcp') {
143
- const { definitionId } = source;
144
- const mcpServer = mcpService.servers.get().find(candidate => candidate.definition.id === definitionId);
145
- if (!mcpServer) {
146
- return undefined;
276
+ if (!( toolsEntries.has(toolSet))) {
277
+ continue;
147
278
  }
148
- const buttons = [];
149
- const collection = mcpRegistry.collections.get().find(c => c.id === mcpServer.collection.id);
150
- if (collection?.source) {
151
- buttons.push({
152
- iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
153
- tooltip: ( localize(4716, "Configure {0}", collection.label)),
154
- action: () => collection.source ? collection.source instanceof ExtensionIdentifier ? extensionsWorkbenchService.open(collection.source.value, { tab: ExtensionEditorTab.Features, feature: 'mcp' }) : mcpWorkbenchService.open(collection.source, { tab: McpServerEditorTab.Configuration }) : undefined
155
- });
279
+ const bucket = getBucket(toolSet.source);
280
+ if (!bucket) {
281
+ continue;
156
282
  }
157
- else if (collection?.presentation?.origin) {
158
- buttons.push({
159
- iconClass: ThemeIcon.asClassName(Codicon.settingsGear),
160
- tooltip: ( localize(4716, "Configure {0}", collection.label)),
161
- action: () => editorService.openEditor({
162
- resource: collection.presentation.origin,
163
- })
164
- });
283
+ const toolSetChecked = toolsEntries.get(toolSet) === true;
284
+ if (toolSet.source.type === 'mcp') {
285
+ bucket.toolset = toolSet;
286
+ if (toolSetChecked) {
287
+ bucket.checked = toolSetChecked;
288
+ }
165
289
  }
166
- if (mcpServer.connectionState.get().state === McpConnectionState.Kind.Error) {
167
- buttons.push({
168
- iconClass: ThemeIcon.asClassName(Codicon.warning),
169
- tooltip: ( localize(4717, "Show Output")),
170
- action: () => mcpServer.showOutput(),
171
- });
290
+ else {
291
+ const treeItem = createToolSetTreeItem(toolSet, toolSetChecked, editorService);
292
+ bucket.children.push(treeItem);
293
+ const children = [];
294
+ for (const tool of toolSet.getTools()) {
295
+ const toolChecked = toolSetChecked || toolsEntries.get(tool) === true;
296
+ const toolTreeItem = createToolTreeItemFromData(tool, toolChecked);
297
+ children.push(toolTreeItem);
298
+ }
299
+ if (children.length > 0) {
300
+ treeItem.children = children;
301
+ }
172
302
  }
173
- return {
174
- itemType: 'bucket',
175
- ordinal: BucketOrdinal.Mcp,
176
- id: key,
177
- label: ( localize(4718, "MCP Server: {0}", source.label)),
178
- checked: undefined,
179
- collapsed: true,
180
- children: [],
181
- buttons,
182
- iconClass: ThemeIcon.asClassName(Codicon.mcp)
183
- };
184
- }
185
- else if (source.type === 'extension') {
186
- return {
187
- itemType: 'bucket',
188
- ordinal: BucketOrdinal.Extension,
189
- id: key,
190
- label: ( localize(4719, 'Extension: {0}', source.label)),
191
- checked: undefined,
192
- children: [],
193
- buttons: [],
194
- collapsed: true,
195
- iconClass: ThemeIcon.asClassName(Codicon.extensions)
196
- };
197
- }
198
- else if (source.type === 'internal') {
199
- return {
200
- itemType: 'bucket',
201
- ordinal: BucketOrdinal.BuiltIn,
202
- id: key,
203
- label: ( localize(4720, "Built-In")),
204
- checked: undefined,
205
- children: [],
206
- buttons: [],
207
- collapsed: false
208
- };
209
- }
210
- else {
211
- return {
212
- itemType: 'bucket',
213
- ordinal: BucketOrdinal.User,
214
- id: key,
215
- label: ( localize(4721, "User Defined Tool Sets")),
216
- checked: undefined,
217
- children: [],
218
- buttons: [],
219
- collapsed: true
220
- };
221
303
  }
222
- };
223
- const getBucket = (source) => {
224
- const key = getKey(source);
225
- let bucket = bucketMap.get(key);
226
- if (!bucket) {
227
- bucket = createBucket(source, key);
228
- if (bucket) {
229
- bucketMap.set(key, bucket);
304
+ for (const tool of toolsService.getTools()) {
305
+ if (!tool.canBeReferencedInPrompt || !( toolsEntries.has(tool))) {
306
+ continue;
230
307
  }
231
- }
232
- return bucket;
233
- };
234
- for (const toolSet of toolsService.toolSets.get()) {
235
- if (!( toolsEntries.has(toolSet))) {
236
- continue;
237
- }
238
- const bucket = getBucket(toolSet.source);
239
- if (!bucket) {
240
- continue;
241
- }
242
- const toolSetChecked = toolsEntries.get(toolSet) === true;
243
- if (toolSet.source.type === 'mcp') {
244
- bucket.toolset = toolSet;
245
- if (toolSetChecked) {
246
- bucket.checked = toolSetChecked;
308
+ const bucket = getBucket(tool.source);
309
+ if (!bucket) {
310
+ continue;
247
311
  }
312
+ const toolChecked = bucket.checked === true || toolsEntries.get(tool) === true;
313
+ const toolTreeItem = createToolTreeItemFromData(tool, toolChecked);
314
+ bucket.children.push(toolTreeItem);
248
315
  }
249
- else {
250
- const treeItem = createToolSetTreeItem(toolSet, toolSetChecked, editorService);
251
- bucket.children.push(treeItem);
252
- const children = [];
253
- for (const tool of toolSet.getTools()) {
254
- const toolChecked = toolSetChecked || toolsEntries.get(tool) === true;
255
- const toolTreeItem = createToolTreeItemFromData(tool, toolChecked);
256
- children.push(toolTreeItem);
257
- }
258
- if (children.length > 0) {
259
- treeItem.children = children;
316
+ for (const { server, seen } of ( mcpServers.values())) {
317
+ const cacheState = server.cacheState.get();
318
+ if (!seen && (cacheState === McpServerCacheState.Unknown || cacheState === McpServerCacheState.Outdated)) {
319
+ getBucket({ type: 'mcp', definitionId: server.definition.id, label: server.definition.label, instructions: '', serverLabel: '', collectionId: server.collection.id });
260
320
  }
261
321
  }
262
- }
263
- for (const tool of toolsService.getTools()) {
264
- if (!tool.canBeReferencedInPrompt || !( toolsEntries.has(tool))) {
265
- continue;
322
+ const sortedBuckets = Array.from(( bucketMap.values())).sort((a, b) => a.ordinal - b.ordinal);
323
+ treeItems.push(...sortedBuckets);
324
+ if (treeItems.length === 0) {
325
+ treePicker.placeholder = ( localize(4752, "Add tools to chat"));
266
326
  }
267
- const bucket = getBucket(tool.source);
268
- if (!bucket) {
269
- continue;
327
+ else {
328
+ treePicker.placeholder = placeHolder;
270
329
  }
271
- const toolChecked = bucket.checked === true || toolsEntries.get(tool) === true;
272
- const toolTreeItem = createToolTreeItemFromData(tool, toolChecked);
273
- bucket.children.push(toolTreeItem);
330
+ treePicker.setItemTree(treeItems);
274
331
  }
275
- const sortedBuckets = Array.from(( bucketMap.values())).sort((a, b) => a.ordinal - b.ordinal);
276
- treeItems.push(...sortedBuckets);
277
332
  const store = ( new DisposableStore());
278
333
  const treePicker = store.add(quickPickService.createQuickTree());
279
334
  treePicker.placeholder = placeHolder;
@@ -281,10 +336,7 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
281
336
  treePicker.description = description;
282
337
  treePicker.matchOnDescription = true;
283
338
  treePicker.matchOnLabel = true;
284
- if (treeItems.length === 0) {
285
- treePicker.placeholder = ( localize(4722, "Add tools to chat"));
286
- }
287
- treePicker.setItemTree(treeItems);
339
+ computeItems();
288
340
  store.add(treePicker.onDidTriggerItemButton(e => {
289
341
  if (e.button && typeof e.button.action === 'function') {
290
342
  e.button.action();
@@ -306,11 +358,11 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
306
358
  }
307
359
  }
308
360
  };
309
- traverse(treeItems);
361
+ traverse(treePicker.itemTree);
310
362
  if (count > toolLimit) {
311
363
  treePicker.severity = Severity.Warning;
312
364
  treePicker.validationMessage = ( localize(
313
- 4723,
365
+ 4753,
314
366
  "{0} tools are enabled. You may experience degraded tool calling above {1} tools.",
315
367
  count,
316
368
  markdownCommandLink({ title: String(toolLimit), id: '_chat.toolPicker.closeAndOpenVirtualThreshold' })
@@ -341,11 +393,11 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
341
393
  }
342
394
  }
343
395
  else if (isToolTreeItem(item)) {
344
- result.set(item.tool, item.checked);
396
+ result.set(item.tool, item.checked || result.get(item.tool) === true);
345
397
  }
346
398
  }
347
399
  };
348
- traverse(treeItems);
400
+ traverse(treePicker.itemTree);
349
401
  return result;
350
402
  };
351
403
  store.add(CommandsRegistry.registerCommand({
@@ -357,29 +409,33 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
357
409
  }));
358
410
  store.add(treePicker.onDidChangeCheckedLeafItems(() => updateToolLimitMessage()));
359
411
  let didAccept = false;
412
+ const didAcceptFinalItem = store.add(( new Emitter()));
360
413
  store.add(treePicker.onDidAccept(() => {
361
414
  const activeItems = treePicker.activeItems;
362
415
  const callbackItem = activeItems.find(isCallbackTreeItem);
363
- if (callbackItem) {
364
- callbackItem.run();
365
- }
366
- else {
416
+ if (!callbackItem) {
367
417
  didAccept = true;
418
+ treePicker.hide();
419
+ return;
420
+ }
421
+ const ret = callbackItem.run();
422
+ if (ret !== false) {
423
+ didAcceptFinalItem.fire();
368
424
  }
369
425
  }));
370
426
  const addMcpServerButton = {
371
427
  iconClass: ThemeIcon.asClassName(Codicon.mcp),
372
- tooltip: ( localize(4724, 'Add MCP Server...'))
428
+ tooltip: ( localize(4754, 'Add MCP Server...'))
373
429
  };
374
430
  const installExtension = {
375
431
  iconClass: ThemeIcon.asClassName(Codicon.extensions),
376
- tooltip: ( localize(4725, 'Install Extension...'))
432
+ tooltip: ( localize(4755, 'Install Extension...'))
377
433
  };
378
434
  const configureToolSets = {
379
435
  iconClass: ThemeIcon.asClassName(Codicon.gear),
380
- tooltip: ( localize(4726, 'Configure Tool Sets...'))
436
+ tooltip: ( localize(4756, 'Configure Tool Sets...'))
381
437
  };
382
- treePicker.title = ( localize(4727, "Configure Tools"));
438
+ treePicker.title = ( localize(4757, "Configure Tools"));
383
439
  treePicker.buttons = [addMcpServerButton, installExtension, configureToolSets];
384
440
  store.add(treePicker.onDidTriggerButton(button => {
385
441
  if (button === addMcpServerButton) {
@@ -394,7 +450,7 @@ async function showToolsPicker(accessor, placeHolder, description, toolsEntries)
394
450
  treePicker.hide();
395
451
  }));
396
452
  treePicker.show();
397
- await Promise.race([Event.toPromise(Event.any(treePicker.onDidAccept, treePicker.onDidHide), store)]);
453
+ await Promise.race([Event.toPromise(Event.any(treePicker.onDidHide, didAcceptFinalItem.event), store)]);
398
454
  store.dispose();
399
455
  return didAccept ? collectResults() : undefined;
400
456
  }