@codingame/monaco-vscode-katex-common 33.0.9 → 34.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 (255) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.css +169 -0
  3. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.d.ts +28 -0
  4. package/vscode/src/vs/base/browser/ui/pixelSpinner/pixelSpinner.js +61 -0
  5. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.d.ts +1 -1
  6. package/vscode/src/vs/platform/actions/browser/actionWidgetDropdownActionViewItem.js +1 -1
  7. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -2
  8. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +18 -17
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +9 -9
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +40 -38
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +11 -11
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +14 -14
  15. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.d.ts +1 -16
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.contribution.js +4 -48
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.d.ts +16 -18
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatInputPicker.js +81 -69
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.d.ts +1 -3
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostGenericConfigChips.js +5 -22
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.d.ts +2 -0
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionUri.js +21 -0
  23. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/media/agentHostChatInputPicker.css +18 -28
  24. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
  25. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +2 -2
  26. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +9 -9
  27. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
  28. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +30 -30
  29. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +13 -2
  30. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +177 -80
  31. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +15 -15
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +34 -34
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.d.ts +7 -2
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +69 -5
  35. package/vscode/src/vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.js +3 -3
  36. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +13 -13
  37. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  38. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatArtifactsWidget.js +10 -10
  39. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.js +25 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  41. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  42. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
  43. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +2 -1
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.js +4 -2
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +2 -2
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +3 -3
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.d.ts +93 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatEditPillElement.js +140 -0
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.d.ts +46 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExternalEditContentPart.js +134 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +1 -1
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +2 -15
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +49 -117
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -8
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPlanReviewPart.js +30 -30
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +2 -0
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +47 -4
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +3 -1
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +52 -51
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +18 -14
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +23 -13
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +13 -11
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.d.ts +15 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +87 -11
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +21 -4
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +102 -35
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +9 -9
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +17 -17
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +1 -1
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +22 -1
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +22 -0
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +6 -2
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +1 -1
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +21 -2
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.js +2 -2
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatModifiedFilesConfirmationSubPart.js +6 -6
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.js +1 -1
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +35 -18
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +1 -0
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +62 -35
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationCarouselPart.js +8 -8
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +6 -6
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.d.ts +2 -2
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +15 -12
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +1 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +10 -3
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.d.ts +2 -2
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/terminalToolAutoExpand.js +13 -15
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/toolRiskBadgeWidget.js +4 -4
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +19 -1
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +154 -59
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +6 -0
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +21 -0
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.d.ts +4 -3
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatOptions.js +6 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +17 -2
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +113 -23
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.d.ts +21 -0
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatGoalBannerWidget.js +64 -0
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.d.ts +10 -1
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.js +7 -1
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.d.ts +11 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationWidget.js +18 -7
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +26 -0
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +361 -66
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +2 -2
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.js +4 -4
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatusActionViewItem.d.ts +30 -0
  127. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputStatusActionViewItem.js +147 -0
  128. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +11 -5
  129. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +133 -87
  130. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatPhoneInputPresenter.js +2 -4
  131. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +4 -2
  132. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +13 -7
  133. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatGoalBannerWidget.css +81 -0
  134. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/media/chatInputNotificationWidget.css +32 -18
  135. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +6 -6
  136. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +2 -2
  137. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +39 -40
  138. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +23 -2
  139. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +66 -11
  140. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -6
  141. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +373 -32
  142. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +7 -7
  143. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +5 -3
  144. package/vscode/src/vs/workbench/contrib/chat/common/chatArtifactExtraction.js +18 -0
  145. package/vscode/src/vs/workbench/contrib/chat/common/chatImageExtraction.js +7 -7
  146. package/vscode/src/vs/workbench/contrib/chat/common/chatPermissionWarnings.js +6 -6
  147. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +18 -18
  148. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.d.ts +12 -2
  149. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.js +54 -11
  150. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +3 -3
  151. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
  152. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  153. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +30 -30
  154. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  155. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  156. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  157. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  158. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +24 -24
  159. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +3 -3
  160. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +7 -7
  161. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  162. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  163. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  164. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  165. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  166. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +0 -76
  167. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +0 -191
  168. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.d.ts +0 -50
  169. package/vscode/src/vs/platform/networkFilter/common/domainMatcher.js +0 -138
  170. package/vscode/src/vs/platform/networkFilter/common/settings.d.ts +0 -12
  171. package/vscode/src/vs/platform/networkFilter/common/settings.js +0 -14
  172. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.d.ts +0 -18
  173. package/vscode/src/vs/platform/sandbox/common/sandboxHelperIpc.js +0 -13
  174. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.d.ts +0 -87
  175. package/vscode/src/vs/platform/sandbox/common/terminalSandboxService.js +0 -10
  176. package/vscode/src/vs/workbench/contrib/terminal/terminalContribChatExports.d.ts +0 -2
  177. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +0 -2
  178. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +0 -41
  179. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +0 -24
  180. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +0 -26
  181. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +0 -142
  182. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +0 -52
  183. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +0 -232
  184. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -65
  185. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +0 -225
  186. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +0 -27
  187. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +0 -143
  188. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +0 -37
  189. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +0 -205
  190. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +0 -40
  191. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +0 -174
  192. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +0 -7
  193. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +0 -43
  194. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +0 -52
  195. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +0 -260
  196. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.d.ts +0 -44
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +0 -98
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +0 -42
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +0 -225
  200. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +0 -31
  201. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +0 -392
  202. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.d.ts +0 -45
  203. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +0 -243
  204. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +0 -53
  205. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.js +0 -10
  206. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +0 -20
  207. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +0 -310
  208. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +0 -27
  209. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +0 -177
  210. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +0 -11
  211. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +0 -33
  212. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +0 -41
  213. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +0 -19
  214. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +0 -37
  215. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +0 -19
  216. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +0 -37
  217. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +0 -19
  218. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +0 -44
  219. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +0 -13
  220. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +0 -22
  221. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.d.ts +0 -42
  222. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineBackgroundDetachRewriter.js +0 -102
  223. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +0 -5
  224. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +0 -27
  225. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.d.ts +0 -14
  226. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +0 -29
  227. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +0 -8
  228. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +0 -33
  229. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +0 -24
  230. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +0 -15
  231. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +0 -53
  232. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +0 -177
  233. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +0 -512
  234. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +0 -42
  235. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +0 -23
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/outputAnalyzer.d.ts +0 -9
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +0 -258
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +0 -2623
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.d.ts +0 -22
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sandboxOutputAnalyzer.js +0 -43
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +0 -17
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +0 -118
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.d.ts +0 -22
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalToolAutoApprove.js +0 -44
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +0 -1
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +0 -58
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +0 -223
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.d.ts +0 -31
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxCommandRules.js +0 -49
  250. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.d.ts +0 -18
  251. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxReadAllowList.js +0 -302
  252. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.d.ts +0 -7
  253. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxRuntimeConfigurationPerOperation.js +0 -118
  254. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +0 -114
  255. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +0 -788
@@ -1,225 +0,0 @@
1
-
2
- import { DeferredPromise, RunOnceScheduler } from '@codingame/monaco-vscode-api/vscode/vs/base/common/async';
3
- import { DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
4
-
5
- async function waitForIdle(onData, idleDurationMs) {
6
- const store = ( new DisposableStore());
7
- const deferred = ( new DeferredPromise());
8
- const scheduler = store.add(( new RunOnceScheduler(() => deferred.complete(), idleDurationMs)));
9
- store.add(onData(() => scheduler.schedule()));
10
- scheduler.schedule();
11
- return deferred.p.finally(() => store.dispose());
12
- }
13
- function detectsCommonPromptPattern(cursorLine) {
14
- if (cursorLine.trim().length === 0) {
15
- return {
16
- detected: false,
17
- reason: "Content is empty or contains only whitespace"
18
- };
19
- }
20
- if (/PS\s+[A-Z]:\\.*>\s*$/.test(cursorLine)) {
21
- return {
22
- detected: true,
23
- reason: `PowerShell prompt pattern detected: "${cursorLine}"`
24
- };
25
- }
26
- if (/^[A-Z]:\\.*>\s*$/.test(cursorLine)) {
27
- return {
28
- detected: true,
29
- reason: `Command Prompt pattern detected: "${cursorLine}"`
30
- };
31
- }
32
- if (/\$\s*$/.test(cursorLine)) {
33
- return {
34
- detected: true,
35
- reason: `Bash-style prompt pattern detected: "${cursorLine}"`
36
- };
37
- }
38
- if (/#\s*$/.test(cursorLine)) {
39
- return {
40
- detected: true,
41
- reason: `Root prompt pattern detected: "${cursorLine}"`
42
- };
43
- }
44
- if (/^>>>\s*$/.test(cursorLine)) {
45
- return {
46
- detected: true,
47
- reason: `Python REPL prompt pattern detected: "${cursorLine}"`
48
- };
49
- }
50
- if (/\u276f\s*$/.test(cursorLine)) {
51
- return {
52
- detected: true,
53
- reason: `Starship prompt pattern detected: "${cursorLine}"`
54
- };
55
- }
56
- if (/[>%]\s*$/.test(cursorLine)) {
57
- return {
58
- detected: true,
59
- reason: `Generic prompt pattern detected: "${cursorLine}"`
60
- };
61
- }
62
- return {
63
- detected: false,
64
- reason: `No common prompt pattern found in last line: "${cursorLine}"`
65
- };
66
- }
67
- async function waitForIdleWithPromptHeuristics(onData, instance, idlePollIntervalMs, extendedTimeoutMs) {
68
- await waitForIdle(onData, idlePollIntervalMs);
69
- const xterm = await instance.xtermReadyPromise;
70
- if (!xterm) {
71
- return {
72
- detected: false,
73
- reason: `Xterm not available, using ${idlePollIntervalMs}ms timeout`
74
- };
75
- }
76
- const startTime = Date.now();
77
- while (Date.now() - startTime < extendedTimeoutMs) {
78
- try {
79
- let content = "";
80
- const buffer = xterm.raw.buffer.active;
81
- const line = buffer.getLine(buffer.baseY + buffer.cursorY);
82
- if (line) {
83
- content = line.translateToString(true);
84
- }
85
- const promptResult = detectsCommonPromptPattern(content);
86
- if (promptResult.detected) {
87
- return promptResult;
88
- }
89
- } catch (error) {}
90
- await waitForIdle(
91
- onData,
92
- Math.min(idlePollIntervalMs, extendedTimeoutMs - (Date.now() - startTime))
93
- );
94
- }
95
- try {
96
- let content = "";
97
- const buffer = xterm.raw.buffer.active;
98
- const line = buffer.getLine(buffer.baseY + buffer.cursorY);
99
- if (line) {
100
- content = line.translateToString(true) + "\n";
101
- }
102
- return {
103
- detected: false,
104
- reason: `Extended timeout reached without prompt detection. Last line: "${content.trim()}"`
105
- };
106
- } catch (error) {
107
- return {
108
- detected: false,
109
- reason: `Extended timeout reached. Error reading terminal content: ${error}`
110
- };
111
- }
112
- }
113
- async function trackIdleOnPrompt(instance, idleDurationMs, store, promptFallbackMs, logService, options) {
114
- const idleOnPrompt = ( new DeferredPromise());
115
- const onData = instance.onData;
116
- const log = logService ? msg => logService.info(`trackIdleOnPrompt: ${msg}`) : undefined;
117
- let TerminalState;
118
- (function(TerminalState) {
119
- TerminalState[TerminalState["Initial"] = 0] = "Initial";
120
- TerminalState[TerminalState["Prompt"] = 1] = "Prompt";
121
- TerminalState[TerminalState["Executing"] = 2] = "Executing";
122
- TerminalState[TerminalState["PromptAfterExecuting"] = 3] = "PromptAfterExecuting";
123
- })(TerminalState || (TerminalState = {}));
124
- const stateNames = {
125
- [0 ]: "Initial",
126
- [1 ]: "Prompt",
127
- [2 ]: "Executing",
128
- [3 ]: "PromptAfterExecuting"
129
- };
130
- let state = 0 ;
131
- let dataEventCount = 0;
132
- function setState(newState, reason) {
133
- if (state !== newState) {
134
- log?.(`State ${stateNames[state]} → ${stateNames[newState]} (${reason})`);
135
- state = newState;
136
- }
137
- }
138
- const scheduler = store.add(( new RunOnceScheduler(() => {
139
- log?.(`Idle scheduler fired, completing (dataEvents=${dataEventCount})`);
140
- idleOnPrompt.complete();
141
- }, idleDurationMs)));
142
- const promptFallbackScheduler = store.add(( new RunOnceScheduler(() => {
143
- if (state === 2 || state === 3 ) {
144
- promptFallbackScheduler.cancel();
145
- return;
146
- }
147
- log?.(`Prompt fallback fired (dataEvents=${dataEventCount})`);
148
- setState(3, "promptFallback");
149
- scheduler.schedule();
150
- }, promptFallbackMs ?? 1000)));
151
- const disableFallbacks = options?.disableFallbacks ?? false;
152
- const initialFallbackScheduler = store.add(( new RunOnceScheduler(() => {
153
- if (state === 2 || state === 3 ) {
154
- log?.(`Initial fallback fired but state is ${stateNames[state]}, skipping`);
155
- return;
156
- }
157
- log?.(`Initial fallback fired, no data events received`);
158
- setState(3, "initialFallback");
159
- scheduler.schedule();
160
- }, 10_000)));
161
- if (!disableFallbacks) {
162
- initialFallbackScheduler.schedule();
163
- }
164
- const executingFallbackScheduler = store.add(( new RunOnceScheduler(() => {
165
- if (state === 2 ) {
166
- log?.(
167
- `Executing fallback fired after 30s data-idle (dataEvents=${dataEventCount})`
168
- );
169
- setState(3, "executingFallback");
170
- scheduler.schedule();
171
- }
172
- }, 30_000)));
173
- const hardCapScheduler = store.add(( new RunOnceScheduler(() => {
174
- if (state === 0 || state === 1 ) {
175
- log?.(
176
- `Hard cap fired after 5min in state ${stateNames[state]} (dataEvents=${dataEventCount})`
177
- );
178
- setState(3, "hardCap");
179
- scheduler.schedule();
180
- }
181
- }, 60_000)));
182
- if (!disableFallbacks) {
183
- hardCapScheduler.schedule();
184
- }
185
- store.add(onData(e => {
186
- dataEventCount++;
187
- initialFallbackScheduler.cancel();
188
- const matches = e.matchAll(/(?:\x1b\]|\x9d)[16]33;(?<type>[ACD])(?:;.*)?(?:\x1b\\|\x07|\x9c)/g);
189
- for (const match of matches) {
190
- if (match.groups?.type === "A") {
191
- if (state === 0 ) {
192
- setState(1, "sequence A");
193
- } else if (state === 2 ) {
194
- setState(3, "sequence A after executing");
195
- executingFallbackScheduler.cancel();
196
- }
197
- } else if (match.groups?.type === "C" || match.groups?.type === "D") {
198
- setState(2, `sequence ${match.groups?.type}`);
199
- if (!disableFallbacks) {
200
- executingFallbackScheduler.schedule();
201
- }
202
- }
203
- }
204
- if (state === 3 ) {
205
- promptFallbackScheduler.cancel();
206
- executingFallbackScheduler.cancel();
207
- scheduler.schedule();
208
- } else {
209
- scheduler.cancel();
210
- if (state === 0 || state === 1 ) {
211
- if (!disableFallbacks) {
212
- promptFallbackScheduler.schedule();
213
- }
214
- } else {
215
- promptFallbackScheduler.cancel();
216
- if (!disableFallbacks) {
217
- executingFallbackScheduler.schedule();
218
- }
219
- }
220
- }
221
- }));
222
- return idleOnPrompt.p;
223
- }
224
-
225
- export { detectsCommonPromptPattern, trackIdleOnPrompt, waitForIdle, waitForIdleWithPromptHeuristics };
@@ -1,27 +0,0 @@
1
- import type { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
- import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
3
- import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
4
- import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
5
- import { ITerminalLogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service";
6
- import { type ITerminalExecuteStrategy, type ITerminalExecuteStrategyResult } from "./executeStrategy.js";
7
- import type { IMarker as IXtermMarker } from "@xterm/xterm";
8
- import { ITerminalInstance } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal";
9
- /**
10
- * This strategy is used when no shell integration is available. There are very few extension APIs
11
- * available in this case. This uses similar strategies to the basic integration strategy, but
12
- * with `sendText` instead of `shellIntegration.executeCommand` and relying on idle events instead
13
- * of execution events.
14
- */
15
- export declare class NoneExecuteStrategy extends Disposable implements ITerminalExecuteStrategy {
16
- private readonly _instance;
17
- private readonly _hasReceivedUserInput;
18
- private readonly _configurationService;
19
- private readonly _logService;
20
- readonly type = "none";
21
- private readonly _startMarker;
22
- private readonly _onDidCreateStartMarker;
23
- onDidCreateStartMarker: Event<IXtermMarker | undefined>;
24
- constructor(_instance: ITerminalInstance, _hasReceivedUserInput: () => boolean, _configurationService: IConfigurationService, _logService: ITerminalLogService);
25
- execute(commandLine: string, token: CancellationToken, _commandId?: string, _commandLineForMetadata?: string): Promise<ITerminalExecuteStrategyResult>;
26
- private _log;
27
- }
@@ -1,143 +0,0 @@
1
-
2
- import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
- import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
4
- import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
5
- import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
- import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
7
- import { ITerminalLogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service';
8
- import { waitForIdle, waitForIdleWithPromptHeuristics } from './executeStrategy.js';
9
- import { createAltBufferPromise, setupRecreatingStartMarker, stripCommandEchoAndPrompt } from './strategyHelpers.js';
10
- import { TerminalChatAgentToolsSettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration';
11
- import { isMacintosh } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
12
- import { isMultilineCommand } from '../runInTerminalHelpers.js';
13
-
14
- let NoneExecuteStrategy = class NoneExecuteStrategy extends Disposable {
15
- constructor(_instance, _hasReceivedUserInput, _configurationService, _logService) {
16
- super();
17
- this._instance = _instance;
18
- this._hasReceivedUserInput = _hasReceivedUserInput;
19
- this._configurationService = _configurationService;
20
- this._logService = _logService;
21
- this.type = "none";
22
- this._startMarker = this._register(( new MutableDisposable()));
23
- this._onDidCreateStartMarker = this._register(( new Emitter()));
24
- this.onDidCreateStartMarker = this._onDidCreateStartMarker.event;
25
- }
26
- async execute(commandLine, token, _commandId, _commandLineForMetadata) {
27
- const store = ( new DisposableStore());
28
- try {
29
- if (token.isCancellationRequested) {
30
- throw ( new CancellationError());
31
- }
32
- this._log("Waiting for xterm");
33
- const xterm = await this._instance.xtermReadyPromise;
34
- if (!xterm) {
35
- throw ( new Error("Xterm is not available"));
36
- }
37
- const alternateBufferPromise = createAltBufferPromise(xterm, store, this._log.bind(this));
38
- const idlePollInterval = this._configurationService.getValue(TerminalChatAgentToolsSettingId.IdlePollInterval) ?? 1000;
39
- this._log("Waiting for idle");
40
- await waitForIdle(this._instance.onData, idlePollInterval);
41
- if (token.isCancellationRequested) {
42
- throw ( new CancellationError());
43
- }
44
- const markerRecreation = setupRecreatingStartMarker(
45
- xterm,
46
- this._startMarker,
47
- m => this._onDidCreateStartMarker.fire(m),
48
- store,
49
- this._log.bind(this)
50
- );
51
- if (this._hasReceivedUserInput()) {
52
- this._log("Sending Ctrl+U to clear any pending input before sending command");
53
- await this._instance.sendText("\u0015", false);
54
- await waitForIdle(this._instance.onData, 100);
55
- }
56
- this._log(`Executing command line \`${commandLine}\``);
57
- markerRecreation.dispose();
58
- const startLine = this._startMarker.value?.line;
59
- const forceBracketedPasteMode = isMacintosh || isMultilineCommand(commandLine);
60
- this._instance.sendText(commandLine, true, forceBracketedPasteMode);
61
- if (startLine !== undefined) {
62
- this._log("Waiting for cursor to move past start line");
63
- const cursorMovedPromise = ( new Promise(resolve => {
64
- const check = () => {
65
- const buffer = xterm.raw.buffer.active;
66
- const cursorLine = buffer.baseY + buffer.cursorY;
67
- if (cursorLine > startLine) {
68
- resolve();
69
- }
70
- };
71
- const listener = this._instance.onData(() => check());
72
- store.add(listener);
73
- check();
74
- }));
75
- const cursorMoveTimeout = ( new Promise(resolve => {
76
- const handle = setTimeout(() => resolve("timeout"), 1000);
77
- store.add({
78
- dispose: () => clearTimeout(handle)
79
- });
80
- }));
81
- const raceResult = await Promise.race([cursorMovedPromise, cursorMoveTimeout]);
82
- if (raceResult === "timeout") {
83
- this._log(
84
- "Cursor did not move past start line before timeout, proceeding with idle detection"
85
- );
86
- }
87
- }
88
- this._log("Waiting for idle with prompt heuristics");
89
- const promptResultOrAltBuffer = await Promise.race([waitForIdleWithPromptHeuristics(
90
- this._instance.onData,
91
- this._instance,
92
- idlePollInterval,
93
- idlePollInterval * 10
94
- ), alternateBufferPromise.then(() => "alternateBuffer")]);
95
- if (promptResultOrAltBuffer === "alternateBuffer") {
96
- this._log("Detected alternate buffer entry, skipping output capture");
97
- return {
98
- output: undefined,
99
- additionalInformation: undefined,
100
- exitCode: undefined,
101
- error: "alternateBuffer",
102
- didEnterAltBuffer: true
103
- };
104
- }
105
- const promptResult = promptResultOrAltBuffer;
106
- this._log(
107
- `Prompt detection result: ${promptResult.detected ? "detected" : "not detected"} - ${promptResult.reason}`
108
- );
109
- if (token.isCancellationRequested) {
110
- throw ( new CancellationError());
111
- }
112
- const endMarker = store.add(xterm.raw.registerMarker());
113
- let output;
114
- const additionalInformationLines = [];
115
- try {
116
- output = xterm.getContentsAsText(this._startMarker.value, endMarker);
117
- this._log("Fetched output via markers");
118
- if (output !== undefined) {
119
- output = stripCommandEchoAndPrompt(output, commandLine, this._log.bind(this));
120
- }
121
- } catch {
122
- this._log("Failed to fetch output via markers");
123
- additionalInformationLines.push("Failed to retrieve command output");
124
- }
125
- if (output !== undefined && output.trim().length === 0) {
126
- additionalInformationLines.push("Command produced no output");
127
- }
128
- return {
129
- output,
130
- additionalInformation: additionalInformationLines.length > 0 ? additionalInformationLines.join("\n") : undefined,
131
- exitCode: undefined
132
- };
133
- } finally {
134
- store.dispose();
135
- }
136
- }
137
- _log(message) {
138
- this._logService.debug(`RunInTerminalTool#None: ${message}`);
139
- }
140
- };
141
- NoneExecuteStrategy = ( __decorate([( __param(2, IConfigurationService)), ( __param(3, ITerminalLogService))], NoneExecuteStrategy));
142
-
143
- export { NoneExecuteStrategy };
@@ -1,37 +0,0 @@
1
- import type { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
- import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
3
- import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
4
- import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
5
- import type { ICommandDetectionCapability } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/capabilities/capabilities";
6
- import { ITerminalLogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service";
7
- import type { ITerminalInstance } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal";
8
- import { type ITerminalExecuteStrategy, type ITerminalExecuteStrategyResult } from "./executeStrategy.js";
9
- import type { IMarker as IXtermMarker } from "@xterm/xterm";
10
- /**
11
- * This strategy is used when the terminal has rich shell integration/command detection is
12
- * available, meaning every sequence we rely upon should be exactly where we expect it to be. In
13
- * particular (`633;`) `A, B, E, C, D` all happen in exactly that order. While things still could go
14
- * wrong in this state, minimal verification is done in this mode since rich command detection is a
15
- * strong signal that it's behaving correctly.
16
- */
17
- export declare class RichExecuteStrategy extends Disposable implements ITerminalExecuteStrategy {
18
- private readonly _instance;
19
- private readonly _commandDetection;
20
- private readonly _isSyncMode;
21
- private readonly _configurationService;
22
- private readonly _logService;
23
- readonly type = "rich";
24
- private readonly _startMarker;
25
- private readonly _onDidCreateStartMarker;
26
- onDidCreateStartMarker: Event<IXtermMarker | undefined>;
27
- /**
28
- * Tracks per-execute() DisposableStores so they can be cleaned up if the
29
- * strategy is disposed mid-flight, AND removed from this collection on
30
- * successful completion to avoid accumulating stale references when
31
- * execute() is invoked many times on the same strategy instance.
32
- */
33
- private readonly _executionStores;
34
- constructor(_instance: ITerminalInstance, _commandDetection: ICommandDetectionCapability, _isSyncMode: boolean, _configurationService: IConfigurationService, _logService: ITerminalLogService);
35
- execute(commandLine: string, token: CancellationToken, commandId?: string, commandLineForMetadata?: string): Promise<ITerminalExecuteStrategyResult>;
36
- private _log;
37
- }
@@ -1,205 +0,0 @@
1
-
2
- import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
- import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
4
- import { Emitter, Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
5
- import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
6
- import { isNumber } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
7
- import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
8
- import { isMacintosh, isCI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
9
- import { ITerminalLogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/terminal/common/terminal.service';
10
- import { trackIdleOnPrompt } from './executeStrategy.js';
11
- import { createAltBufferPromise, setupRecreatingStartMarker, stripCommandEchoAndPrompt } from './strategyHelpers.js';
12
- import { TerminalChatAgentToolsSettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration';
13
- import { isMultilineCommand } from '../runInTerminalHelpers.js';
14
-
15
- function isTerminalLaunchError(value) {
16
- return typeof value === "object" && value !== null && "message" in value;
17
- }
18
- function formatExitCodeOrError(exitCodeOrError) {
19
- if (isTerminalLaunchError(exitCodeOrError)) {
20
- return `launch error: ${exitCodeOrError.message}${exitCodeOrError.code !== undefined ? `, code=${exitCodeOrError.code}` : ""}`;
21
- }
22
- return `code=${exitCodeOrError}`;
23
- }
24
- function extractExitCode(exitCodeOrError) {
25
- if (isNumber(exitCodeOrError)) {
26
- return exitCodeOrError;
27
- }
28
- if (isTerminalLaunchError(exitCodeOrError)) {
29
- return exitCodeOrError.code;
30
- }
31
- return undefined;
32
- }
33
- let RichExecuteStrategy = class RichExecuteStrategy extends Disposable {
34
- constructor(
35
- _instance,
36
- _commandDetection,
37
- _isSyncMode,
38
- _configurationService,
39
- _logService
40
- ) {
41
- super();
42
- this._instance = _instance;
43
- this._commandDetection = _commandDetection;
44
- this._isSyncMode = _isSyncMode;
45
- this._configurationService = _configurationService;
46
- this._logService = _logService;
47
- this.type = "rich";
48
- this._startMarker = this._register(( new MutableDisposable()));
49
- this._onDidCreateStartMarker = this._register(( new Emitter()));
50
- this.onDidCreateStartMarker = this._onDidCreateStartMarker.event;
51
- this._executionStores = this._register(( new DisposableStore()));
52
- }
53
- async execute(commandLine, token, commandId, commandLineForMetadata) {
54
- const store = ( new DisposableStore());
55
- this._executionStores.add(store);
56
- try {
57
- if (this._instance.isDisposed) {
58
- this._log("Terminal already disposed at strategy entry");
59
- throw ( new Error("The terminal was closed"));
60
- }
61
- if (this._instance.exitCode !== undefined) {
62
- this._log(
63
- `Terminal pty already exited at strategy entry (code=${this._instance.exitCode})`
64
- );
65
- return {
66
- output: undefined,
67
- exitCode: this._instance.exitCode,
68
- additionalInformation: `Command exited with code ${this._instance.exitCode}`
69
- };
70
- }
71
- const idlePollInterval = this._configurationService.getValue(TerminalChatAgentToolsSettingId.IdlePollInterval) ?? 1000;
72
- const staleMarker = this._commandDetection.executingCommandObject?.marker;
73
- const onCommandFinishedFiltered = staleMarker ? Event.filter(
74
- this._commandDetection.onCommandFinished,
75
- e => e.marker !== staleMarker,
76
- store
77
- ) : this._commandDetection.onCommandFinished;
78
- const onDone = Promise.race([Event.toPromise(onCommandFinishedFiltered, store).then(e => {
79
- this._log("onDone via end event");
80
- return {
81
- "type": "success",
82
- command: e
83
- };
84
- }), Event.toPromise(token.onCancellationRequested, store).then(() => {
85
- this._log("onDone via cancellation");
86
- }), Event.toPromise(this._instance.onDisposed, store).then(() => {
87
- this._log("onDone via terminal disposal");
88
- return {
89
- type: "disposal"
90
- };
91
- }), Event.toPromise(this._instance.onExit, store).then(exitCodeOrError => {
92
- this._log(`onDone via process exit (${formatExitCodeOrError(exitCodeOrError)})`);
93
- return {
94
- type: "processExit",
95
- exitCodeOrError
96
- };
97
- }),
98
- ...(this._isSyncMode ? [trackIdleOnPrompt(
99
- this._instance,
100
- idlePollInterval,
101
- store,
102
- idlePollInterval,
103
- this._logService,
104
- {
105
- disableFallbacks: true
106
- }
107
- ).then(() => {
108
- this._log("onDone via idle prompt");
109
- })] : [])]);
110
- this._log("Waiting for xterm");
111
- const xterm = await this._instance.xtermReadyPromise;
112
- if (!xterm) {
113
- throw ( new Error("Xterm is not available"));
114
- }
115
- const alternateBufferPromise = createAltBufferPromise(xterm, store, this._log.bind(this));
116
- const markerRecreation = setupRecreatingStartMarker(
117
- xterm,
118
- this._startMarker,
119
- m => this._onDidCreateStartMarker.fire(m),
120
- store,
121
- this._log.bind(this)
122
- );
123
- this._log(`Executing command line \`${commandLine}\``);
124
- markerRecreation.dispose();
125
- const forceBracketedPasteMode = isMacintosh || isMultilineCommand(commandLine);
126
- this._instance.runCommand(
127
- commandLine,
128
- true,
129
- commandId,
130
- forceBracketedPasteMode,
131
- commandLineForMetadata
132
- );
133
- this._log("Waiting for done event");
134
- const onDoneResult = await Promise.race([onDone, alternateBufferPromise.then(() => ({
135
- type: "alternateBuffer"
136
- }))]);
137
- if (onDoneResult && onDoneResult.type === "disposal") {
138
- throw ( new Error("The terminal was closed"));
139
- }
140
- if (onDoneResult && onDoneResult.type === "alternateBuffer") {
141
- this._log("Detected alternate buffer entry, skipping output capture");
142
- return {
143
- output: undefined,
144
- exitCode: undefined,
145
- error: "alternateBuffer",
146
- didEnterAltBuffer: true
147
- };
148
- }
149
- const finishedCommand = onDoneResult && onDoneResult.type === "success" ? onDoneResult.command : undefined;
150
- if (token.isCancellationRequested) {
151
- throw ( new CancellationError());
152
- }
153
- const endMarker = store.add(xterm.raw.registerMarker());
154
- let output;
155
- const additionalInformationLines = [];
156
- if (finishedCommand) {
157
- const commandOutput = finishedCommand?.getOutput();
158
- if (commandOutput !== undefined) {
159
- this._log("Fetched output via finished command");
160
- output = stripCommandEchoAndPrompt(commandOutput, commandLine, this._log.bind(this));
161
- }
162
- }
163
- if (output === undefined) {
164
- try {
165
- output = xterm.getContentsAsText(this._startMarker.value, endMarker);
166
- this._log("Fetched output via markers");
167
- if (output !== undefined) {
168
- output = stripCommandEchoAndPrompt(output, commandLine, this._log.bind(this));
169
- }
170
- } catch {
171
- this._log("Failed to fetch output via markers");
172
- additionalInformationLines.push("Failed to retrieve command output");
173
- }
174
- }
175
- if (output !== undefined && output.trim().length === 0) {
176
- additionalInformationLines.push("Command produced no output");
177
- }
178
- let exitCode = finishedCommand?.exitCode;
179
- if (exitCode === undefined && onDoneResult && onDoneResult.type === "processExit") {
180
- exitCode = extractExitCode(onDoneResult.exitCodeOrError);
181
- }
182
- if (isNumber(exitCode) && exitCode > 0) {
183
- additionalInformationLines.push(`Command exited with code ${exitCode}`);
184
- }
185
- return {
186
- output,
187
- additionalInformation: additionalInformationLines.length > 0 ? additionalInformationLines.join("\n") : undefined,
188
- exitCode
189
- };
190
- } finally {
191
- this._executionStores.delete(store);
192
- }
193
- }
194
- _log(message) {
195
- const msg = `RunInTerminalTool#Rich: ${message}`;
196
- if (isCI) {
197
- this._logService.info(msg);
198
- } else {
199
- this._logService.debug(msg);
200
- }
201
- }
202
- };
203
- RichExecuteStrategy = ( __decorate([( __param(3, IConfigurationService)), ( __param(4, ITerminalLogService))], RichExecuteStrategy));
204
-
205
- export { RichExecuteStrategy };