@codingame/monaco-vscode-chat-service-override 20.4.1 → 21.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 (200) hide show
  1. package/index.js +15 -7
  2. package/package.json +38 -36
  3. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.d.ts +2 -0
  4. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +60 -0
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +56 -46
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +18 -16
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +52 -11
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +28 -26
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +19 -13
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +2 -2
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +2 -2
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +15 -12
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +11 -11
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +6 -6
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +10 -10
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +68 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +433 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -18
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +7 -3
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +205 -551
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +7 -5
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +52 -29
  24. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +277 -163
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +1 -1
  26. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +20 -5
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +17 -17
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +11 -14
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +32 -6
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +3 -1
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +22 -3
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +2 -1
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +22 -9
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +6 -8
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +1 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +47 -15
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +12 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +8 -2
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +33 -8
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +3 -3
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +3 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +74 -19
  44. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
  45. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +2 -2
  46. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +19 -19
  47. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +3 -1
  48. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +23 -19
  49. package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.d.ts +12 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/chatLayoutService.js +36 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
  52. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +36 -35
  53. package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +6 -6
  54. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
  55. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +2 -2
  56. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +1 -1
  57. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +37 -9
  58. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +238 -52
  59. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +23 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +257 -148
  61. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +3 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +126 -77
  63. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +2 -3
  64. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +3 -13
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +4 -2
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +55 -45
  67. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +6 -3
  68. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +1 -1
  69. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +13 -7
  70. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +130 -47
  71. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +5 -3
  74. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +6 -6
  75. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +9 -9
  76. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +4 -4
  77. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +39 -35
  78. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +9 -9
  79. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +18 -18
  80. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +12 -12
  81. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
  82. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
  83. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
  84. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
  85. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +2 -2
  86. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +14 -14
  87. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
  88. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +5 -4
  89. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +7 -4
  90. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +4 -8
  91. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +153 -168
  92. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +127 -1
  93. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +111 -1
  94. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
  95. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +2 -1
  96. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +6 -3
  97. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.d.ts +20 -0
  98. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +66 -0
  99. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +38 -0
  100. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +143 -0
  101. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +3 -1
  102. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +12 -3
  103. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.d.ts +8 -3
  104. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +41 -8
  105. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.d.ts +4 -1
  106. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +55 -22
  107. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +1 -1
  108. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +4 -4
  110. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +2 -2
  111. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.d.ts +2 -0
  112. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +5 -2
  113. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.d.ts +3 -3
  114. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/mode.js +3 -4
  115. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +4 -4
  116. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +0 -5
  117. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +8 -23
  118. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +9 -9
  119. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +4 -5
  120. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +11 -5
  121. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +28 -28
  122. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
  123. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +12 -0
  124. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +54 -0
  125. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +4 -4
  126. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +33 -31
  127. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +9 -9
  128. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.d.ts +1 -3
  129. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +9 -13
  130. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  131. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -18
  132. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +2 -1
  133. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +11 -4
  134. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  135. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +1 -2
  136. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +1 -6
  137. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +16 -1
  138. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +84 -25
  139. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.d.ts +10 -0
  140. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.js +55 -0
  141. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +8 -2
  142. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +15 -7
  143. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +23 -0
  144. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +72 -1
  145. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +8 -2
  146. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +19 -9
  147. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +5 -0
  148. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +7 -5
  149. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +12 -8
  150. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +6 -0
  151. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +85 -1
  152. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +35 -0
  153. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +448 -0
  154. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +0 -1
  155. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +30 -77
  156. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +62 -0
  157. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +174 -0
  158. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +75 -10
  159. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +15 -2
  160. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +81 -38
  161. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.d.ts +11 -0
  162. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +106 -0
  163. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{getTerminalOutputTool.js → tools/getTerminalOutputTool.js} +5 -3
  164. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.d.ts +11 -0
  165. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +59 -0
  166. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +57 -0
  167. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +452 -0
  168. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +45 -0
  169. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +23 -0
  170. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.d.ts +2 -0
  171. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/utils.js +31 -0
  172. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{runInTerminalTool.d.ts → tools/runInTerminalTool.d.ts} +11 -13
  173. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{runInTerminalTool.js → tools/runInTerminalTool.js} +282 -133
  174. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/createAndRunTaskTool.d.ts +5 -5
  175. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/createAndRunTaskTool.js +51 -50
  176. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/getTaskOutputTool.d.ts +6 -1
  177. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +117 -0
  178. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/runTaskTool.d.ts +3 -5
  179. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{task → tools/task}/runTaskTool.js +54 -50
  180. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +19 -0
  181. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +36 -0
  182. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminal.chatAgentTools.d.ts +3 -0
  183. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminal.chatAgentTools.js +8 -0
  184. package/vscode/src/vs/base/common/policy.d.ts +0 -41
  185. package/vscode/src/vs/base/common/policy.js +0 -11
  186. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.d.ts +0 -12
  187. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.js +0 -738
  188. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +0 -42
  189. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.d.ts +0 -67
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.js +0 -167
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.d.ts +0 -23
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +0 -63
  193. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.d.ts +0 -55
  194. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.js +0 -163
  195. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.js +0 -88
  196. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.d.ts +0 -35
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.js +0 -80
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.d.ts +0 -1
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.js +0 -40
  200. /package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/{getTerminalOutputTool.d.ts → tools/getTerminalOutputTool.d.ts} +0 -0
@@ -4,15 +4,19 @@ function getOutput(instance, startMarker) {
4
4
  if (!instance.xterm || !instance.xterm.raw) {
5
5
  return '';
6
6
  }
7
- const lines = [];
8
- for (let y = Math.min(0, 0); y < instance.xterm.raw.buffer.active.length; y++) {
9
- const line = instance.xterm.raw.buffer.active.getLine(y);
10
- if (!line) {
11
- continue;
12
- }
13
- lines.push(line.translateToString(true));
7
+ const buffer = instance.xterm.raw.buffer.active;
8
+ const startLine = Math.max(startMarker?.line ?? 0, 0);
9
+ const endLine = buffer.length;
10
+ const lines = ( new Array(endLine - startLine));
11
+ for (let y = startLine; y < endLine; y++) {
12
+ const line = buffer.getLine(y);
13
+ lines[y - startLine] = line ? line.translateToString(true) : '';
14
14
  }
15
- return lines.join('\n');
15
+ let output = lines.join('\n');
16
+ if (output.length > 16000) {
17
+ output = output.slice(-16e3);
18
+ }
19
+ return output;
16
20
  }
17
21
 
18
22
  export { getOutput };
@@ -1,3 +1,9 @@
1
1
  import { OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/common/platform";
2
+ import type { ToolConfirmationAction } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService";
3
+ import type { ICommandApprovalResultWithReason } from "./commandLineAutoApprover.js";
2
4
  export declare function isPowerShell(envShell: string, os: OperatingSystem): boolean;
3
5
  export declare function sanitizeTerminalOutput(output: string): string;
6
+ export declare function generateAutoApproveActions(commandLine: string, subCommands: string[], autoApproveResult: {
7
+ subCommandResults: ICommandApprovalResultWithReason[];
8
+ commandLineResult: ICommandApprovalResultWithReason;
9
+ }): ToolConfirmationAction[];
@@ -1,7 +1,10 @@
1
1
 
2
+ import { Separator } from '@codingame/monaco-vscode-api/vscode/vs/base/common/actions';
3
+ import { coalesce } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
2
4
  import { win32, posix } from '@codingame/monaco-vscode-api/vscode/vs/base/common/path';
3
5
  import { OperatingSystem } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
4
6
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/strings';
7
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
5
8
 
6
9
  function isPowerShell(envShell, os) {
7
10
  if (os === OperatingSystem.Windows) {
@@ -9,5 +12,86 @@ function isPowerShell(envShell, os) {
9
12
  }
10
13
  return /^(?:powershell|pwsh)(?:-preview)?$/.test(posix.basename(envShell));
11
14
  }
15
+ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult) {
16
+ const actions = [];
17
+ const canCreateAutoApproval = ( autoApproveResult.subCommandResults.some(e => e.result !== 'denied')) || autoApproveResult.commandLineResult.result === 'denied';
18
+ if (canCreateAutoApproval) {
19
+ const unapprovedSubCommands = subCommands.filter((_, index) => {
20
+ return autoApproveResult.subCommandResults[index].result !== 'approved';
21
+ });
22
+ const commandsWithSubcommands = ( new Set(
23
+ ['git', 'npm', 'yarn', 'docker', 'kubectl', 'cargo', 'dotnet', 'mvn', 'gradle']
24
+ ));
25
+ const commandsWithSubSubCommands = ( new Set(['npm run', 'yarn run']));
26
+ const subCommandsToSuggest = Array.from(( new Set(coalesce(( unapprovedSubCommands.map(command => {
27
+ const parts = command.trim().split(/\s+/);
28
+ const baseCommand = parts[0].toLowerCase();
29
+ const baseSubCommand = parts.length > 1 ? `${parts[0]} ${parts[1]}`.toLowerCase() : '';
30
+ if (( commandsWithSubSubCommands.has(baseSubCommand))) {
31
+ if (parts.length >= 3 && !parts[2].startsWith('-')) {
32
+ return `${parts[0]} ${parts[1]} ${parts[2]}`;
33
+ }
34
+ return undefined;
35
+ }
36
+ else if (( commandsWithSubcommands.has(baseCommand))) {
37
+ if (parts.length >= 2 && !parts[1].startsWith('-')) {
38
+ return `${parts[0]} ${parts[1]}`;
39
+ }
40
+ return undefined;
41
+ }
42
+ else {
43
+ return parts[0];
44
+ }
45
+ }))))));
46
+ if (subCommandsToSuggest.length > 0) {
47
+ let subCommandLabel;
48
+ if (subCommandsToSuggest.length === 1) {
49
+ subCommandLabel = ( localize(11426, 'Always Allow Command: {0}', subCommandsToSuggest[0]));
50
+ }
51
+ else {
52
+ const commandSeparated = subCommandsToSuggest.join(', ');
53
+ subCommandLabel = ( localize(11427, 'Always Allow Commands: {0}', commandSeparated));
54
+ }
55
+ actions.push({
56
+ label: subCommandLabel,
57
+ data: {
58
+ type: 'newRule',
59
+ rule: ( subCommandsToSuggest.map(key => ({
60
+ key,
61
+ value: true
62
+ })))
63
+ }
64
+ });
65
+ }
66
+ const firstSubcommandFirstWord = unapprovedSubCommands.length > 0 ? unapprovedSubCommands[0].split(' ')[0] : '';
67
+ if (firstSubcommandFirstWord !== commandLine &&
68
+ !( commandsWithSubcommands.has(commandLine)) &&
69
+ !( commandsWithSubSubCommands.has(commandLine))) {
70
+ actions.push({
71
+ label: ( localize(11428, 'Always Allow Exact Command Line')),
72
+ data: {
73
+ type: 'newRule',
74
+ rule: {
75
+ key: commandLine,
76
+ value: {
77
+ approve: true,
78
+ matchCommandLine: true
79
+ }
80
+ }
81
+ }
82
+ });
83
+ }
84
+ }
85
+ if (actions.length > 0) {
86
+ actions.push(( new Separator()));
87
+ }
88
+ actions.push({
89
+ label: ( localize(11429, 'Configure Auto Approve...')),
90
+ data: {
91
+ type: 'configure'
92
+ }
93
+ });
94
+ return actions;
95
+ }
12
96
 
13
- export { isPowerShell };
97
+ export { generateAutoApproveActions, isPowerShell };
@@ -0,0 +1,35 @@
1
+ import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
2
+ import type { ITerminalInstance } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal";
3
+ import { ShellIntegrationQuality } from "./toolTerminalCreator.js";
4
+ export declare class RunInTerminalToolTelemetry {
5
+ private readonly _telemetryService;
6
+ constructor(_telemetryService: ITelemetryService);
7
+ logPrepare(state: {
8
+ terminalToolSessionId: string | undefined;
9
+ subCommands: string[];
10
+ autoApproveAllowed: "allowed" | "needsOptIn" | "off";
11
+ autoApproveResult: "approved" | "denied" | "manual";
12
+ autoApproveReason: "subCommand" | "commandLine" | undefined;
13
+ autoApproveDefault: boolean | undefined;
14
+ }): void;
15
+ logInvoke(instance: ITerminalInstance, state: {
16
+ terminalToolSessionId: string | undefined;
17
+ didUserEditCommand: boolean;
18
+ didToolEditCommand: boolean;
19
+ error: string | undefined;
20
+ isBackground: boolean;
21
+ isNewSession: boolean;
22
+ shellIntegrationQuality: ShellIntegrationQuality;
23
+ outputLineCount: number;
24
+ timingConnectMs: number;
25
+ timingExecuteMs: number;
26
+ pollDurationMs: number | undefined;
27
+ terminalExecutionIdleBeforeTimeout: boolean | undefined;
28
+ exitCode: number | undefined;
29
+ inputUserChars: number;
30
+ inputUserSigint: boolean;
31
+ inputToolManualAcceptCount: number | undefined;
32
+ inputToolManualRejectCount: number | undefined;
33
+ inputToolManualChars: number | undefined;
34
+ }): void;
35
+ }
@@ -0,0 +1,448 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
+ import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
4
+ import { TelemetryTrustedValue } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetryUtils';
5
+ import { ShellIntegrationQuality } from './toolTerminalCreator.js';
6
+
7
+ let RunInTerminalToolTelemetry = class RunInTerminalToolTelemetry {
8
+ constructor(_telemetryService) {
9
+ this._telemetryService = _telemetryService;
10
+ }
11
+ logPrepare(state) {
12
+ const subCommandsSanitized = ( state.subCommands.map(e => {
13
+ const commandName = e.split(' ')[0];
14
+ let sanitizedCommandName = commandName.toLowerCase();
15
+ if (!( commandAllowList.has(sanitizedCommandName))) {
16
+ if (/^(?:[A-Z][a-z0-9]+)+(?:-(?:[A-Z][a-z0-9]+))*$/.test(commandName)) {
17
+ sanitizedCommandName = '(unknown:pwsh)';
18
+ }
19
+ else if (/^[a-z0-9_\-\.\\\/:;]+$/i.test(commandName)) {
20
+ const properties = [];
21
+ if (/[a-z]/.test(commandName)) {
22
+ properties.push('ascii_lower');
23
+ }
24
+ if (/[A-Z]/.test(commandName)) {
25
+ properties.push('ascii_upper');
26
+ }
27
+ if (/[0-9]/.test(commandName)) {
28
+ properties.push('numeric');
29
+ }
30
+ const chars = [];
31
+ for (const c of ['.', '-', '_', '/', '\\', ':', ';']) {
32
+ if (commandName.includes(c)) {
33
+ chars.push(c);
34
+ }
35
+ }
36
+ sanitizedCommandName = `(unknown:${properties.join(',')}:${chars.join('')})`;
37
+ }
38
+ else if (/[^\x00-\x7F]/.test(commandName)) {
39
+ sanitizedCommandName = '(unknown:unicode)';
40
+ }
41
+ else {
42
+ sanitizedCommandName = '(unknown)';
43
+ }
44
+ }
45
+ return sanitizedCommandName;
46
+ }));
47
+ this._telemetryService.publicLog2('toolUse.runInTerminal.prepare', {
48
+ terminalToolSessionId: state.terminalToolSessionId,
49
+ subCommands: ( new TelemetryTrustedValue(JSON.stringify(subCommandsSanitized))),
50
+ autoApproveAllowed: state.autoApproveAllowed,
51
+ autoApproveResult: state.autoApproveResult,
52
+ autoApproveReason: state.autoApproveReason,
53
+ autoApproveDefault: state.autoApproveDefault,
54
+ });
55
+ }
56
+ logInvoke(instance, state) {
57
+ this._telemetryService.publicLog2('toolUse.runInTerminal', {
58
+ terminalSessionId: instance.sessionId,
59
+ terminalToolSessionId: state.terminalToolSessionId,
60
+ result: state.error ?? 'success',
61
+ strategy: state.shellIntegrationQuality === ShellIntegrationQuality.Rich ? 2 : state.shellIntegrationQuality === ShellIntegrationQuality.Basic ? 1 : 0,
62
+ userEditedCommand: state.didUserEditCommand ? 1 : 0,
63
+ toolEditedCommand: state.didToolEditCommand ? 1 : 0,
64
+ isBackground: state.isBackground ? 1 : 0,
65
+ isNewSession: state.isNewSession ? 1 : 0,
66
+ outputLineCount: state.outputLineCount,
67
+ nonZeroExitCode: state.exitCode === undefined ? -1 : state.exitCode === 0 ? 0 : 1,
68
+ timingConnectMs: state.timingConnectMs,
69
+ timingExecuteMs: state.timingExecuteMs,
70
+ pollDurationMs: state.pollDurationMs ?? 0,
71
+ terminalExecutionIdleBeforeTimeout: state.terminalExecutionIdleBeforeTimeout ?? false,
72
+ inputUserChars: state.inputUserChars,
73
+ inputUserSigint: state.inputUserSigint,
74
+ inputToolManualAcceptCount: state.inputToolManualAcceptCount ?? 0,
75
+ inputToolManualRejectCount: state.inputToolManualRejectCount ?? 0,
76
+ inputToolManualChars: state.inputToolManualChars ?? 0,
77
+ });
78
+ }
79
+ };
80
+ RunInTerminalToolTelemetry = ( __decorate([
81
+ ( __param(0, ITelemetryService))
82
+ ], RunInTerminalToolTelemetry));
83
+ const commandAllowList = ( new Set([
84
+ '!',
85
+ '@',
86
+ '#',
87
+ '$',
88
+ '%',
89
+ '^',
90
+ '&',
91
+ '*',
92
+ '(',
93
+ ')',
94
+ '~',
95
+ '{',
96
+ '}',
97
+ '<',
98
+ '>',
99
+ '.',
100
+ '7z',
101
+ 'alias',
102
+ 'assoc',
103
+ 'attrib',
104
+ 'awk',
105
+ 'basename',
106
+ 'bg',
107
+ 'blkid',
108
+ 'bunzip2',
109
+ 'bzip2',
110
+ 'cat',
111
+ 'cd',
112
+ 'certutil',
113
+ 'chkdsk',
114
+ 'chmod',
115
+ 'chown',
116
+ 'cipher',
117
+ 'clear',
118
+ 'cls',
119
+ 'cmp',
120
+ 'column',
121
+ 'comm',
122
+ 'compact',
123
+ 'compress',
124
+ 'copy',
125
+ 'cp',
126
+ 'curl',
127
+ 'cut',
128
+ 'date',
129
+ 'dd',
130
+ 'del',
131
+ 'df',
132
+ 'diff',
133
+ 'dig',
134
+ 'dir',
135
+ 'dirname',
136
+ 'diskpart',
137
+ 'dism',
138
+ 'disown',
139
+ 'du',
140
+ 'echo',
141
+ 'env',
142
+ 'erase',
143
+ 'eval',
144
+ 'expand',
145
+ 'export',
146
+ 'fc',
147
+ 'fdisk',
148
+ 'fg',
149
+ 'file',
150
+ 'find',
151
+ 'findstr',
152
+ 'fmt',
153
+ 'fold',
154
+ 'forfiles',
155
+ 'format',
156
+ 'free',
157
+ 'fsck',
158
+ 'git',
159
+ 'gpupdate',
160
+ 'grep',
161
+ 'groupadd',
162
+ 'groups',
163
+ 'gunzip',
164
+ 'gzip',
165
+ 'hash',
166
+ 'head',
167
+ 'hexdump',
168
+ 'history',
169
+ 'host',
170
+ 'htop',
171
+ 'icacls',
172
+ 'id',
173
+ 'ifconfig',
174
+ 'iostat',
175
+ 'ip',
176
+ 'ipconfig',
177
+ 'iptables',
178
+ 'jobs',
179
+ 'jq',
180
+ 'kill',
181
+ 'killall',
182
+ 'less',
183
+ 'ln',
184
+ 'locate',
185
+ 'ls',
186
+ 'lsblk',
187
+ 'lscpu',
188
+ 'lsof',
189
+ 'man',
190
+ 'mkdir',
191
+ 'mklink',
192
+ 'more',
193
+ 'mount',
194
+ 'move',
195
+ 'mv',
196
+ 'nbtstat',
197
+ 'nc/netcat',
198
+ 'net',
199
+ 'netstat',
200
+ 'nice',
201
+ 'nl',
202
+ 'nohup',
203
+ 'nslookup',
204
+ 'nslookup',
205
+ 'od',
206
+ 'passwd',
207
+ 'paste',
208
+ 'pathping',
209
+ 'pause',
210
+ 'pgrep',
211
+ 'ping',
212
+ 'pkill',
213
+ 'powercfg',
214
+ 'pr',
215
+ 'printenv',
216
+ 'ps',
217
+ 'pwd',
218
+ 'query',
219
+ 'rar',
220
+ 'readlink',
221
+ 'realpath',
222
+ 'reg',
223
+ 'rem',
224
+ 'ren',
225
+ 'rename',
226
+ 'renice',
227
+ 'rev',
228
+ 'rm',
229
+ 'rmdir',
230
+ 'robocopy',
231
+ 'route',
232
+ 'rsync',
233
+ 'sc',
234
+ 'schtasks',
235
+ 'scp',
236
+ 'sed',
237
+ 'seq',
238
+ 'set',
239
+ 'setx',
240
+ 'sfc',
241
+ 'shred',
242
+ 'shuf',
243
+ 'shutdown',
244
+ 'sleep',
245
+ 'sort',
246
+ 'source',
247
+ 'split',
248
+ 'ss',
249
+ 'ssh',
250
+ 'stat',
251
+ 'strings',
252
+ 'su',
253
+ 'subst',
254
+ 'sudo',
255
+ 'systeminfo',
256
+ 'tac',
257
+ 'tail',
258
+ 'tar',
259
+ 'tee',
260
+ 'telnet',
261
+ 'test',
262
+ 'time',
263
+ 'top',
264
+ 'touch',
265
+ 'tr',
266
+ 'traceroute',
267
+ 'tracert',
268
+ 'tree',
269
+ 'true',
270
+ 'truncate',
271
+ 'type',
272
+ 'type',
273
+ 'umask',
274
+ 'umount',
275
+ 'unalias',
276
+ 'uname',
277
+ 'uncompress',
278
+ 'unexpand',
279
+ 'uniq',
280
+ 'unlink',
281
+ 'unrar',
282
+ 'unzip',
283
+ 'uptime',
284
+ 'useradd',
285
+ 'usermod',
286
+ 'vmstat',
287
+ 'vol',
288
+ 'watch',
289
+ 'wc',
290
+ 'wget',
291
+ 'where',
292
+ 'whereis',
293
+ 'which',
294
+ 'who',
295
+ 'whoami',
296
+ 'wmic',
297
+ 'xargs',
298
+ 'xcopy',
299
+ 'xxd',
300
+ 'xz',
301
+ 'yes',
302
+ 'zcat',
303
+ 'zip',
304
+ 'zless',
305
+ 'zmore',
306
+ 'bitbucket',
307
+ 'bzr',
308
+ 'cvs',
309
+ 'gh',
310
+ 'git',
311
+ 'glab',
312
+ 'hg',
313
+ 'svn',
314
+ 'fossil',
315
+ 'p4',
316
+ 'adb',
317
+ 'ansible',
318
+ 'apk',
319
+ 'apt-get',
320
+ 'apt',
321
+ 'aws',
322
+ 'az',
323
+ 'brew',
324
+ 'bundle',
325
+ 'cargo',
326
+ 'choco',
327
+ 'clang',
328
+ 'cmake',
329
+ 'composer',
330
+ 'conan',
331
+ 'conda',
332
+ 'dnf',
333
+ 'docker-compose',
334
+ 'docker',
335
+ 'dotnet',
336
+ 'emacs',
337
+ 'esbuild',
338
+ 'eslint',
339
+ 'flatpak',
340
+ 'flutter',
341
+ 'fnm',
342
+ 'g++',
343
+ 'gcc',
344
+ 'gcloud',
345
+ 'go',
346
+ 'gradle',
347
+ 'helm',
348
+ 'java',
349
+ 'javac',
350
+ 'jest',
351
+ 'julia',
352
+ 'kotlin',
353
+ 'kubectl',
354
+ 'lua',
355
+ 'make',
356
+ 'mocha',
357
+ 'mvn',
358
+ 'n',
359
+ 'nano',
360
+ 'node',
361
+ 'npm',
362
+ 'nvm',
363
+ 'pacman',
364
+ 'perl',
365
+ 'php',
366
+ 'phpunit',
367
+ 'pip',
368
+ 'pipenv',
369
+ 'pnpm',
370
+ 'pod',
371
+ 'podman',
372
+ 'poetry',
373
+ 'python',
374
+ 'r',
375
+ 'rollup',
376
+ 'ruby',
377
+ 'rustc',
378
+ 'rustup',
379
+ 'snap',
380
+ 'swift',
381
+ 'terraform',
382
+ 'tsc',
383
+ 'tslint',
384
+ 'vagrant',
385
+ 'vcpkg',
386
+ 'vi',
387
+ 'vim',
388
+ 'vite',
389
+ 'vitest',
390
+ 'webpack',
391
+ 'yarn',
392
+ 'yum',
393
+ 'zypper',
394
+ 'taskkill',
395
+ 'taskkill.exe',
396
+ 'add-content',
397
+ 'compare-object',
398
+ 'convertfrom-json',
399
+ 'convertto-json',
400
+ 'copy-item',
401
+ 'format-custom',
402
+ 'format-list',
403
+ 'format-table',
404
+ 'format-wide',
405
+ 'get-childitem',
406
+ 'get-command',
407
+ 'get-content',
408
+ 'get-date',
409
+ 'get-help',
410
+ 'get-location',
411
+ 'get-process',
412
+ 'get-random',
413
+ 'get-service',
414
+ 'invoke-expression',
415
+ 'invoke-restmethod',
416
+ 'invoke-webrequest',
417
+ 'join-path',
418
+ 'measure-command',
419
+ 'measure-object',
420
+ 'move-item',
421
+ 'new-item',
422
+ 'out-file',
423
+ 'remove-item',
424
+ 'restart-computer',
425
+ 'select-object',
426
+ 'select-string',
427
+ 'select-xml',
428
+ 'set-acl',
429
+ 'set-content',
430
+ 'set-itemproperty',
431
+ 'sort-object',
432
+ 'split-path',
433
+ 'start-process',
434
+ 'start-sleep',
435
+ 'stop-process',
436
+ 'test-path',
437
+ 'write-host',
438
+ 'write-output',
439
+ 'iex',
440
+ 'irm',
441
+ 'iwr',
442
+ 'rd',
443
+ 'ri',
444
+ 'sp',
445
+ 'spps',
446
+ ]));
447
+
448
+ export { RunInTerminalToolTelemetry };
@@ -1,3 +1,2 @@
1
1
  import type { OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/common/platform";
2
2
  export declare function splitCommandLineIntoSubCommands(commandLine: string, envShell: string, envOS: OperatingSystem): string[];
3
- export declare function extractInlineSubCommands(commandLine: string, envShell: string, envOS: OperatingSystem): Set<string>;