@codingame/monaco-vscode-chat-service-override 22.1.9 → 23.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 (277) hide show
  1. package/index.js +17 -8
  2. package/package.json +43 -40
  3. package/vscode/src/vs/editor/common/diff/documentDiffProvider.d.ts +1 -1
  4. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +6 -6
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +57 -48
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +19 -19
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +1 -1
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +26 -17
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +51 -5
  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 +4 -4
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +2 -2
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +7 -7
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +19 -19
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.d.ts → chatNewActions.d.ts} +2 -1
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.js → chatNewActions.js} +32 -32
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +4 -4
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +9 -9
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +9 -9
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +101 -98
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +35 -24
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +43 -25
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +34 -33
  27. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.d.ts +53 -0
  28. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.js +154 -0
  29. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +7 -0
  30. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +13 -0
  31. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.d.ts +44 -0
  32. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.js +347 -0
  33. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +85 -0
  34. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +250 -0
  35. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsview.css +24 -0
  36. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +97 -0
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +290 -231
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +2 -2
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +7 -10
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +6 -6
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.d.ts +24 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.js +113 -0
  45. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.d.ts +31 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +102 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +646 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +2 -3
  49. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +46 -26
  50. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +17 -4
  51. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +44 -34
  52. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
  53. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +25 -6
  54. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +46 -10
  55. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +45 -6
  56. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +30 -10
  57. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +10 -3
  58. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +60 -9
  59. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.d.ts +117 -0
  60. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +12 -0
  61. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +6 -4
  62. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +60 -55
  63. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +29 -16
  64. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +365 -143
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +2 -3
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +3 -30
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +7 -3
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +58 -22
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +1 -1
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +5 -4
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.d.ts +3 -3
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +3 -3
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +5 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +6 -18
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.d.ts +1 -3
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +7 -11
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +13 -1
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +38 -33
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +11 -6
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +83 -24
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.d.ts +1 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +91 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +64 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +370 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +25 -0
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +56 -0
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +61 -0
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +349 -0
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +43 -0
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +787 -0
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +17 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +109 -0
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +122 -0
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +211 -0
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +69 -0
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +1 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +21 -20
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +54 -54
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +31 -22
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +16 -6
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +6 -3
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +29 -21
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +5 -2
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +37 -33
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +15 -12
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +96 -131
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +12 -7
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +66 -34
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +5 -3
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +77 -71
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +91 -18
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +458 -138
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +3 -1
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +212 -150
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +96 -89
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +3 -2
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +5 -5
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +3 -4
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +15 -16
  124. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
  125. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +33 -17
  126. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
  127. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
  128. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.d.ts +27 -0
  129. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.js +688 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +15 -10
  131. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +126 -135
  132. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +6 -1
  133. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css +2 -1
  134. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +38 -1
  135. package/vscode/src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css +14 -14
  136. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.d.ts +1 -1
  137. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +28 -26
  138. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
  139. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
  140. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +9 -6
  141. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +24 -13
  142. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +15 -14
  143. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +25 -23
  144. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.d.ts +21 -0
  145. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +89 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +16 -16
  147. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +30 -29
  148. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +10 -19
  149. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +61 -43
  150. package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +7 -4
  151. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +28 -28
  152. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +254 -165
  153. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +4 -4
  154. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +2 -2
  155. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
  156. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +4 -6
  157. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +10 -6
  158. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +20 -12
  159. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +13 -17
  160. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +9 -8
  161. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +1 -0
  162. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +51 -21
  163. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +7 -3
  164. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +74 -20
  165. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +11 -6
  166. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -2
  167. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +83 -53
  168. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +2 -1
  169. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +136 -78
  170. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +4 -4
  171. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +18 -10
  172. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +357 -157
  173. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
  174. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +55 -28
  175. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +235 -108
  176. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +12 -2
  177. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +50 -4
  178. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
  179. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
  180. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
  181. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +3 -1
  182. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +11 -7
  183. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +13 -15
  184. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
  185. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +2 -2
  186. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +20 -32
  187. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +63 -140
  188. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +1 -1
  189. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +17 -16
  190. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -1
  191. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
  192. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
  193. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  194. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +3 -0
  195. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  196. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +119 -15
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +6 -4
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +47 -0
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +192 -0
  200. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +7 -5
  201. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +21 -16
  202. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +8 -3
  203. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -2
  204. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +18 -27
  205. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +5 -2
  206. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +3 -1
  207. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +1 -1
  208. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -25
  209. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -2
  210. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +18 -27
  211. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +12 -0
  212. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +31 -0
  213. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
  214. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +24 -8
  215. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +8 -0
  216. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
  217. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +33 -4
  218. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +42 -13
  219. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +14 -21
  220. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +23 -0
  221. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +18 -0
  222. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +227 -0
  223. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +17 -0
  224. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +133 -0
  225. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
  226. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +36 -0
  227. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
  228. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
  229. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +17 -0
  230. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +5 -1
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +75 -37
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -0
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +8 -0
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +71 -0
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +28 -15
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +366 -363
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +18 -18
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +9 -9
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +16 -16
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +19 -0
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +123 -0
  246. package/vscode/src/vs/base/common/yaml.d.ts +0 -74
  247. package/vscode/src/vs/base/common/yaml.js +0 -597
  248. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.d.ts +0 -8
  249. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +0 -239
  250. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +0 -102
  251. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +0 -435
  252. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.d.ts +0 -14
  253. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.js +0 -67
  254. package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.d.ts +0 -49
  255. package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +0 -380
  256. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +0 -37
  257. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +0 -137
  258. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +0 -44
  259. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +0 -176
  260. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.d.ts +0 -4
  261. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +0 -206
  262. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +0 -7
  263. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +0 -79
  264. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +0 -8
  265. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +0 -145
  266. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +0 -65
  267. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +0 -306
  268. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +0 -12
  269. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +0 -102
  270. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.d.ts +0 -97
  271. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.js +0 -247
  272. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +0 -118
  273. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +0 -10
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.d.ts +0 -10
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.js +0 -55
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +0 -2
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +0 -66
@@ -1,247 +0,0 @@
1
-
2
- import { Iterable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/iterator';
3
- import { dirname, joinPath } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
4
- import { splitLinesIncludeSeparators } from '@codingame/monaco-vscode-api/vscode/vs/base/common/strings';
5
- import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
6
- import { parse } from '../../../../../../base/common/yaml.js';
7
- import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
8
- import { chatVariableLeader } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
9
-
10
- class NewPromptsParser {
11
- constructor() {
12
- }
13
- parse(uri, content) {
14
- const linesWithEOL = splitLinesIncludeSeparators(content);
15
- if (linesWithEOL.length === 0) {
16
- return ( new ParsedPromptFile(uri, undefined, undefined));
17
- }
18
- let header = undefined;
19
- let body = undefined;
20
- let bodyStartLine = 0;
21
- if (linesWithEOL[0].match(/^---[\s\r\n]*$/)) {
22
- let headerEndLine = linesWithEOL.findIndex((line, index) => index > 0 && line.match(/^---[\s\r\n]*$/));
23
- if (headerEndLine === -1) {
24
- headerEndLine = linesWithEOL.length;
25
- bodyStartLine = linesWithEOL.length;
26
- }
27
- else {
28
- bodyStartLine = headerEndLine + 1;
29
- }
30
- const range = ( new Range(2, 1, headerEndLine + 1, 1));
31
- header = ( new PromptHeader(range, linesWithEOL));
32
- }
33
- if (bodyStartLine < linesWithEOL.length) {
34
- const range = ( new Range(bodyStartLine + 1, 1, linesWithEOL.length + 1, 1));
35
- body = ( new PromptBody(range, linesWithEOL, uri));
36
- }
37
- return ( new ParsedPromptFile(uri, header, body));
38
- }
39
- }
40
- class ParsedPromptFile {
41
- constructor(uri, header, body) {
42
- this.uri = uri;
43
- this.header = header;
44
- this.body = body;
45
- }
46
- }
47
- class PromptHeader {
48
- constructor(range, linesWithEOL) {
49
- this.range = range;
50
- this.linesWithEOL = linesWithEOL;
51
- }
52
- get _parsedHeader() {
53
- if (this._parsed === undefined) {
54
- const yamlErrors = [];
55
- const lines = this.linesWithEOL.slice(this.range.startLineNumber - 1, this.range.endLineNumber - 1).join('');
56
- const node = parse(lines, yamlErrors);
57
- const attributes = [];
58
- const errors = ( yamlErrors.map(
59
- err => ({ message: err.message, range: this.asRange(err), code: err.code })
60
- ));
61
- if (node) {
62
- if (node.type !== 'object') {
63
- errors.push({ message: 'Invalid header, expecting <key: value> pairs', range: this.range, code: 'INVALID_YAML' });
64
- }
65
- else {
66
- for (const property of node.properties) {
67
- attributes.push({
68
- key: property.key.value,
69
- range: this.asRange({ start: property.key.start, end: property.value.end }),
70
- value: this.asValue(property.value)
71
- });
72
- }
73
- }
74
- }
75
- this._parsed = { node, attributes, errors };
76
- }
77
- return this._parsed;
78
- }
79
- asRange({ start, end }) {
80
- return ( new Range(
81
- this.range.startLineNumber + start.line,
82
- start.character + 1,
83
- this.range.startLineNumber + end.line,
84
- end.character + 1
85
- ));
86
- }
87
- asValue(node) {
88
- switch (node.type) {
89
- case 'string':
90
- return { type: 'string', value: node.value, range: this.asRange(node) };
91
- case 'number':
92
- return { type: 'number', value: node.value, range: this.asRange(node) };
93
- case 'boolean':
94
- return { type: 'boolean', value: node.value, range: this.asRange(node) };
95
- case 'null':
96
- return { type: 'null', value: node.value, range: this.asRange(node) };
97
- case 'array':
98
- return { type: 'array', items: ( node.items.map(item => this.asValue(item))), range: this.asRange(node) };
99
- case 'object': {
100
- const properties = ( node.properties.map(
101
- property => ({ key: this.asValue(property.key), value: this.asValue(property.value) })
102
- ));
103
- return { type: 'object', properties, range: this.asRange(node) };
104
- }
105
- }
106
- }
107
- get attributes() {
108
- return this._parsedHeader.attributes;
109
- }
110
- getAttribute(key) {
111
- return this._parsedHeader.attributes.find(attr => attr.key === key);
112
- }
113
- get errors() {
114
- return this._parsedHeader.errors;
115
- }
116
- getStringAttribute(key) {
117
- const attribute = this._parsedHeader.attributes.find(attr => attr.key === key);
118
- if (attribute?.value.type === 'string') {
119
- return attribute.value.value;
120
- }
121
- return undefined;
122
- }
123
- get description() {
124
- return this.getStringAttribute('description');
125
- }
126
- get mode() {
127
- return this.getStringAttribute('mode');
128
- }
129
- get model() {
130
- return this.getStringAttribute('model');
131
- }
132
- get applyTo() {
133
- return this.getStringAttribute('applyTo');
134
- }
135
- get tools() {
136
- const toolsAttribute = this._parsedHeader.attributes.find(attr => attr.key === 'tools');
137
- if (!toolsAttribute) {
138
- return undefined;
139
- }
140
- if (toolsAttribute.value.type === 'array') {
141
- const tools = [];
142
- for (const item of toolsAttribute.value.items) {
143
- if (item.type === 'string' && item.value) {
144
- tools.push(item.value);
145
- }
146
- }
147
- return tools;
148
- }
149
- else if (toolsAttribute.value.type === 'object') {
150
- const tools = [];
151
- const collectLeafs = ({ key, value }) => {
152
- if (value.type === 'boolean') {
153
- tools.push(key.value);
154
- }
155
- else if (value.type === 'object') {
156
- value.properties.forEach(collectLeafs);
157
- }
158
- };
159
- toolsAttribute.value.properties.forEach(collectLeafs);
160
- return tools;
161
- }
162
- return undefined;
163
- }
164
- }
165
- class PromptBody {
166
- constructor(range, linesWithEOL, uri) {
167
- this.range = range;
168
- this.linesWithEOL = linesWithEOL;
169
- this.uri = uri;
170
- }
171
- get fileReferences() {
172
- return this.getParsedBody().fileReferences;
173
- }
174
- get variableReferences() {
175
- return this.getParsedBody().variableReferences;
176
- }
177
- get offset() {
178
- return this.getParsedBody().bodyOffset;
179
- }
180
- getParsedBody() {
181
- if (this._parsed === undefined) {
182
- const markdownLinkRanges = [];
183
- const fileReferences = [];
184
- const variableReferences = [];
185
- const bodyOffset = Iterable.reduce(Iterable.slice(this.linesWithEOL, 0, this.range.startLineNumber - 1), (len, line) => line.length + len, 0);
186
- for (let i = this.range.startLineNumber - 1, lineStartOffset = bodyOffset; i < this.range.endLineNumber - 1; i++) {
187
- const line = this.linesWithEOL[i];
188
- const linkMatch = line.matchAll(/\[(.*?)\]\((.+?)\)/g);
189
- for (const match of linkMatch) {
190
- const linkEndOffset = match.index + match[0].length - 1;
191
- const linkStartOffset = match.index + match[0].length - match[2].length - 1;
192
- const range = ( new Range(i + 1, linkStartOffset + 1, i + 1, linkEndOffset + 1));
193
- fileReferences.push({ content: match[2], range, isMarkdownLink: true });
194
- markdownLinkRanges.push(( new Range(i + 1, match.index + 1, i + 1, match.index + match[0].length + 1)));
195
- }
196
- const reg = ( new RegExp(`${chatVariableLeader}([\\w]+:)?([^\\s#]+)`, 'g'));
197
- const matches = line.matchAll(reg);
198
- for (const match of matches) {
199
- const fullRange = ( new Range(i + 1, match.index + 1, i + 1, match.index + match[0].length + 1));
200
- if (( markdownLinkRanges.some(mdRange => Range.areIntersectingOrTouching(mdRange, fullRange)))) {
201
- continue;
202
- }
203
- const varType = match[1];
204
- if (varType) {
205
- if (varType === 'file:') {
206
- const linkStartOffset = match.index + match[0].length - match[2].length;
207
- const linkEndOffset = match.index + match[0].length;
208
- const range = ( new Range(i + 1, linkStartOffset + 1, i + 1, linkEndOffset + 1));
209
- fileReferences.push({ content: match[2], range, isMarkdownLink: false });
210
- }
211
- }
212
- else {
213
- const contentStartOffset = match.index + 1;
214
- const contentEndOffset = match.index + match[0].length;
215
- const range = ( new Range(i + 1, contentStartOffset + 1, i + 1, contentEndOffset + 1));
216
- variableReferences.push({ name: match[2], range, offset: lineStartOffset + match.index });
217
- }
218
- }
219
- lineStartOffset += line.length;
220
- }
221
- this._parsed = { fileReferences: fileReferences.sort((a, b) => Range.compareRangesUsingStarts(a.range, b.range)), variableReferences, bodyOffset };
222
- }
223
- return this._parsed;
224
- }
225
- getContent() {
226
- return this.linesWithEOL.slice(this.range.startLineNumber - 1, this.range.endLineNumber - 1).join('');
227
- }
228
- resolveFilePath(path) {
229
- try {
230
- if (path.startsWith('/')) {
231
- return this.uri.with({ path });
232
- }
233
- else if (path.match(/^[a-zA-Z]:\\/)) {
234
- return ( URI.parse(path));
235
- }
236
- else {
237
- const dirName = dirname(this.uri);
238
- return joinPath(dirName, path);
239
- }
240
- }
241
- catch {
242
- return undefined;
243
- }
244
- }
245
- }
246
-
247
- export { NewPromptsParser, ParsedPromptFile, PromptBody, PromptHeader };
@@ -1,118 +0,0 @@
1
- import { ChatModeKind } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants";
2
- import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
3
- import { PromptsType } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes";
4
- import { IChatModeInstructions } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatModes";
5
- import { IExtensionDescription } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions";
6
- /**
7
- * Where the prompt is stored.
8
- */
9
- export declare enum PromptsStorage {
10
- local = "local",
11
- user = "user",
12
- extension = "extension"
13
- }
14
- /**
15
- * Represents a prompt path with its type.
16
- * This is used for both prompt files and prompt source folders.
17
- */
18
- export type IPromptPath = IExtensionPromptPath | ILocalPromptPath | IUserPromptPath;
19
- export interface IPromptPathBase {
20
- /**
21
- * URI of the prompt.
22
- */
23
- readonly uri: URI;
24
- /**
25
- * Storage of the prompt.
26
- */
27
- readonly storage: PromptsStorage;
28
- /**
29
- * Type of the prompt (e.g. 'prompt' or 'instructions').
30
- */
31
- readonly type: PromptsType;
32
- /**
33
- * Identifier of the contributing extension (only when storage === PromptsStorage.extension).
34
- */
35
- readonly extension?: IExtensionDescription;
36
- readonly name?: string;
37
- readonly description?: string;
38
- }
39
- export interface IExtensionPromptPath extends IPromptPathBase {
40
- readonly storage: PromptsStorage.extension;
41
- readonly extension: IExtensionDescription;
42
- readonly name: string;
43
- readonly description: string;
44
- }
45
- export interface ILocalPromptPath extends IPromptPathBase {
46
- readonly storage: PromptsStorage.local;
47
- }
48
- export interface IUserPromptPath extends IPromptPathBase {
49
- readonly storage: PromptsStorage.user;
50
- }
51
- export interface ICustomChatMode {
52
- /**
53
- * URI of a custom chat mode file.
54
- */
55
- readonly uri: URI;
56
- /**
57
- * Name of the custom chat mode as used in prompt files or contexts
58
- */
59
- readonly name: string;
60
- /**
61
- * Description of the mode
62
- */
63
- readonly description?: string;
64
- /**
65
- * Tools metadata in the prompt header.
66
- */
67
- readonly tools?: readonly string[];
68
- /**
69
- * Model metadata in the prompt header.
70
- */
71
- readonly model?: string;
72
- /**
73
- * Contents of the custom chat mode file body and other mode instructions.
74
- */
75
- readonly modeInstructions: IChatModeInstructions;
76
- }
77
- /**
78
- * Type of combined tools metadata for the case
79
- * when the prompt is in the agent mode.
80
- */
81
- interface ICombinedAgentToolsMetadata {
82
- /**
83
- * List of combined tools metadata for
84
- * the entire tree of prompt references.
85
- */
86
- readonly tools: readonly string[] | undefined;
87
- /**
88
- * Resulting chat mode of a prompt, based on modes
89
- * used in the entire tree of prompt references.
90
- */
91
- readonly mode: ChatModeKind.Agent;
92
- }
93
- /**
94
- * Type of combined tools metadata for the case
95
- * when the prompt is in non-agent mode.
96
- */
97
- interface ICombinedNonAgentToolsMetadata {
98
- /**
99
- * List of combined tools metadata is empty
100
- * when the prompt is in non-agent mode.
101
- */
102
- readonly tools: undefined;
103
- /**
104
- * Resulting chat mode of a prompt, based on modes
105
- * used in the entire tree of prompt references.
106
- */
107
- readonly mode?: ChatModeKind.Ask | ChatModeKind.Edit;
108
- }
109
- /**
110
- * General type of the combined tools metadata.
111
- */
112
- export type TCombinedToolsMetadata = ICombinedAgentToolsMetadata | ICombinedNonAgentToolsMetadata;
113
- export interface IChatPromptSlashCommand {
114
- readonly command: string;
115
- readonly detail: string;
116
- readonly promptPath?: IPromptPath;
117
- }
118
- export {};
@@ -1,10 +0,0 @@
1
-
2
-
3
- var PromptsStorage;
4
- (function (PromptsStorage) {
5
- PromptsStorage["local"] = "local";
6
- PromptsStorage["user"] = "user";
7
- PromptsStorage["extension"] = "extension";
8
- })(PromptsStorage || (PromptsStorage = {}));
9
-
10
- export { PromptsStorage };
@@ -1,10 +0,0 @@
1
- import { OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/common/platform";
2
- import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
3
- import type { ITerminalInstance } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal";
4
- import type { IRunInTerminalInputParams } from "./tools/runInTerminalTool.js";
5
- export declare class CommandSimplifier {
6
- private readonly _osBackend;
7
- private readonly _workspaceContextService;
8
- constructor(_osBackend: Promise<OperatingSystem>, _workspaceContextService: IWorkspaceContextService);
9
- rewriteIfNeeded(args: IRunInTerminalInputParams, instance: Pick<ITerminalInstance, "getCwdResource"> | undefined, shell: string): Promise<string>;
10
- }
@@ -1,55 +0,0 @@
1
-
2
- import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
- import { OperatingSystem } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
4
- import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
5
- import { isPowerShell } from './runInTerminalHelpers.js';
6
-
7
- let CommandSimplifier = class CommandSimplifier {
8
- constructor(_osBackend, _workspaceContextService) {
9
- this._osBackend = _osBackend;
10
- this._workspaceContextService = _workspaceContextService;
11
- }
12
- async rewriteIfNeeded(args, instance, shell) {
13
- const commandLine = args.command;
14
- const os = await this._osBackend;
15
- const isPwsh = isPowerShell(shell, os);
16
- const cdPrefixMatch = commandLine.match(isPwsh
17
- ? /^(?:cd(?: \/d)?|Set-Location(?: -Path)?) (?<dir>[^\s]+) ?(?:&&|;)\s+(?<suffix>.+)$/i
18
- : /^cd (?<dir>[^\s]+) &&\s+(?<suffix>.+)$/);
19
- const cdDir = cdPrefixMatch?.groups?.dir;
20
- const cdSuffix = cdPrefixMatch?.groups?.suffix;
21
- if (cdDir && cdSuffix) {
22
- let cwd;
23
- if (instance) {
24
- cwd = await instance.getCwdResource();
25
- }
26
- if (!cwd) {
27
- const workspaceFolders = this._workspaceContextService.getWorkspace().folders;
28
- if (workspaceFolders.length === 1) {
29
- cwd = workspaceFolders[0].uri;
30
- }
31
- }
32
- if (cwd) {
33
- let cdDirPath = cdDir;
34
- if (cdDirPath.startsWith('"') && cdDirPath.endsWith('"')) {
35
- cdDirPath = cdDirPath.slice(1, -1);
36
- }
37
- cdDirPath = cdDirPath.replace(/(?:[\\\/])$/, '');
38
- let cwdFsPath = cwd.fsPath.replace(/(?:[\\\/])$/, '');
39
- if (os === OperatingSystem.Windows) {
40
- cdDirPath = cdDirPath.toLowerCase();
41
- cwdFsPath = cwdFsPath.toLowerCase();
42
- }
43
- if (cdDirPath === cwdFsPath) {
44
- return cdSuffix;
45
- }
46
- }
47
- }
48
- return commandLine;
49
- }
50
- };
51
- CommandSimplifier = ( __decorate([
52
- ( __param(1, IWorkspaceContextService))
53
- ], CommandSimplifier));
54
-
55
- export { CommandSimplifier };
@@ -1,2 +0,0 @@
1
- import type { OperatingSystem } from "@codingame/monaco-vscode-api/vscode/vs/base/common/platform";
2
- export declare function splitCommandLineIntoSubCommands(commandLine: string, envShell: string, envOS: OperatingSystem): string[];
@@ -1,66 +0,0 @@
1
-
2
- import { isPowerShell } from './runInTerminalHelpers.js';
3
-
4
- function createNumberRange(start, end) {
5
- return Array.from({ length: end - start + 1 }, (_, i) => ( (start + i).toString()));
6
- }
7
- function sortByStringLengthDesc(arr) {
8
- return [...arr].sort((a, b) => b.length - a.length);
9
- }
10
- const shellTypeResetChars = ( new Map([
11
- ['sh', sortByStringLengthDesc([
12
- ...( createNumberRange(1, 9).concat('').map(n => `${n}<<<`)),
13
- ...createNumberRange(1, 9).concat('').flatMap(n => ( createNumberRange(1, 9).map(m => `${n}>&${m}`))),
14
- ...( createNumberRange(1, 9).concat('').map(n => `${n}<>`)),
15
- ...( createNumberRange(1, 9).concat('&', '').map(n => `${n}>>`)),
16
- ...( createNumberRange(1, 9).concat('&', '').map(n => `${n}>`)),
17
- '0<', '||', '&&', '|&', '<<', '&', ';', '{', '>', '<', '|'
18
- ])],
19
- ['zsh', sortByStringLengthDesc([
20
- ...( createNumberRange(1, 9).concat('').map(n => `${n}<<<`)),
21
- ...createNumberRange(1, 9).concat('').flatMap(n => ( createNumberRange(1, 9).map(m => `${n}>&${m}`))),
22
- ...( createNumberRange(1, 9).concat('').map(n => `${n}<>`)),
23
- ...( createNumberRange(1, 9).concat('&', '').map(n => `${n}>>`)),
24
- ...( createNumberRange(1, 9).concat('&', '').map(n => `${n}>`)),
25
- '<(', '||', '>|', '>!', '&&', '|&', '&', ';', '{', '<(', '<', '|'
26
- ])],
27
- ['pwsh', sortByStringLengthDesc([
28
- ...createNumberRange(1, 6).concat('*', '').flatMap(n => ( createNumberRange(1, 6).map(m => `${n}>&${m}`))),
29
- ...( createNumberRange(1, 6).concat('*', '').map(n => `${n}>>`)),
30
- ...( createNumberRange(1, 6).concat('*', '').map(n => `${n}>`)),
31
- '&&', '<', '|', ';', '!', '&'
32
- ])],
33
- ]));
34
- function splitCommandLineIntoSubCommands(commandLine, envShell, envOS) {
35
- let shellType;
36
- const envShellWithoutExe = envShell.replace(/\.exe$/, '');
37
- if (isPowerShell(envShell, envOS)) {
38
- shellType = 'pwsh';
39
- }
40
- else {
41
- switch (envShellWithoutExe) {
42
- case 'zsh':
43
- shellType = 'zsh';
44
- break;
45
- default:
46
- shellType = 'sh';
47
- break;
48
- }
49
- }
50
- const subCommands = [commandLine];
51
- const resetChars = shellTypeResetChars.get(shellType);
52
- if (resetChars) {
53
- for (const chars of resetChars) {
54
- for (let i = 0; i < subCommands.length; i++) {
55
- const subCommand = subCommands[i];
56
- if (subCommand.includes(chars)) {
57
- subCommands.splice(i, 1, ...( subCommand.split(chars).map(e => e.trim())));
58
- i--;
59
- }
60
- }
61
- }
62
- }
63
- return subCommands.filter(e => e.length > 0);
64
- }
65
-
66
- export { splitCommandLineIntoSubCommands };