@codingame/monaco-vscode-katex-common 26.2.2 → 28.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 (230) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.d.ts +10 -4
  3. package/vscode/src/vs/platform/actionWidget/browser/actionWidgetDropdown.js +37 -11
  4. package/vscode/src/vs/platform/actions/browser/buttonbar.d.ts +3 -0
  5. package/vscode/src/vs/platform/actions/browser/buttonbar.js +15 -4
  6. package/vscode/src/vs/platform/mcp/common/modelContextProtocolApps.d.ts +576 -0
  7. package/vscode/src/vs/{workbench/contrib → platform}/mcp/common/modelContextProtocolApps.js +1 -0
  8. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.js +15 -15
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.d.ts +5 -0
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +176 -17
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.d.ts +5 -0
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +127 -64
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.d.ts +1 -0
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +12 -11
  16. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.d.ts +26 -0
  17. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionApprovalModel.js +106 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +9 -9
  19. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +14 -0
  20. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +105 -29
  21. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +13 -1
  22. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +69 -43
  23. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +2 -2
  24. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +35 -7
  25. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +187 -78
  26. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +138 -32
  27. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.d.ts +23 -6
  28. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +394 -87
  29. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.d.ts +1 -0
  30. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.js +28 -13
  31. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +38 -19
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +113 -116
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +16 -15
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +2 -2
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +8 -8
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +14 -14
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +5 -5
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingExplanationWidget.css +1 -1
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +2 -1
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +30 -11
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +250 -132
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +4 -4
  43. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.d.ts +1 -16
  44. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +4 -110
  45. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
  46. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.d.ts +1 -1
  47. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
  48. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.d.ts +1 -1
  49. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
  50. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.d.ts +3 -1
  51. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.js +9 -4
  52. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.d.ts +2 -4
  53. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +7 -10
  54. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.d.ts +1 -1
  55. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
  56. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +4 -2
  57. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.js +22 -4
  58. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.d.ts +3 -2
  59. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleMarkdownContentPart.js +11 -3
  60. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.d.ts +1 -1
  61. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
  62. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.d.ts +1 -1
  63. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +2 -2
  64. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.d.ts +1 -1
  65. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
  66. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +59 -0
  67. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.js +29 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.d.ts +0 -2
  69. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.js +0 -6
  70. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.d.ts +1 -1
  71. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +2 -2
  72. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.d.ts +1 -1
  73. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.d.ts +4 -2
  74. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.js +6 -3
  75. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.d.ts +1 -1
  76. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.d.ts +1 -1
  77. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
  78. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.d.ts +3 -2
  79. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +7 -6
  80. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.d.ts +0 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +26 -27
  82. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.d.ts +4 -1
  83. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +53 -20
  84. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.d.ts +15 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownTableScrolling.js +55 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.d.ts +1 -1
  87. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +8 -7
  88. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.d.ts +1 -1
  89. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
  90. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.d.ts +3 -2
  91. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +24 -10
  92. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.d.ts +4 -4
  93. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.js +11 -6
  94. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +62 -7
  95. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +414 -129
  96. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.d.ts +1 -1
  97. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
  98. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.d.ts +4 -3
  99. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +19 -12
  100. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.d.ts +22 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatResourceGroupWidget.js +263 -0
  102. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +14 -5
  103. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +98 -26
  104. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +5 -5
  105. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.d.ts +1 -1
  106. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.js +1 -0
  107. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.d.ts +1 -1
  108. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
  109. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.d.ts +11 -2
  110. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +252 -80
  111. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.d.ts +29 -1
  112. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTipContentPart.js +246 -8
  113. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.d.ts +4 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +39 -18
  115. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.d.ts +6 -4
  116. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +36 -23
  117. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.d.ts +3 -13
  118. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +6 -260
  119. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.d.ts +1 -1
  120. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.d.ts +1 -1
  122. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
  123. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.d.ts +5 -7
  124. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +42 -37
  125. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css +12 -3
  126. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css +65 -18
  127. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatHookContentPart.css +9 -6
  128. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css +2 -2
  129. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +356 -415
  130. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css +14 -7
  131. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css +102 -7
  132. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTipContent.css +68 -19
  133. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/codeBlockPart.css +48 -15
  134. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.d.ts +5 -2
  135. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +47 -23
  136. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.d.ts +1 -1
  137. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
  138. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.d.ts +1 -2
  139. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.js +0 -5
  140. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.d.ts +8 -1
  141. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +57 -4
  142. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.d.ts +5 -1
  143. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +24 -8
  144. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.d.ts +1 -1
  145. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.d.ts +18 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSimpleToolProgressPart.js +103 -0
  147. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.d.ts +1 -1
  148. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +15 -18
  149. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.d.ts +44 -1
  150. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +85 -89
  151. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.d.ts +3 -5
  152. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +15 -17
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.d.ts +4 -2
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +41 -2
  155. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.d.ts +1 -1
  156. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
  157. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +3 -3
  158. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.d.ts +2 -2
  159. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +6 -5
  160. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.d.ts +1 -1
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +13 -1
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.d.ts +1 -1
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolStreamingSubPart.js +2 -1
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +21 -5
  166. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +341 -88
  167. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.d.ts +6 -0
  168. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +13 -4
  169. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.d.ts +35 -0
  170. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatQuestionCarouselAutoReply.js +440 -0
  171. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +24 -10
  172. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +437 -241
  173. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
  174. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +77 -17
  175. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +521 -284
  176. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.d.ts +1 -1
  177. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPickerActionItem.js +7 -1
  178. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.d.ts +71 -0
  179. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelPicker.js +664 -0
  180. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.d.ts +104 -0
  181. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatModelSelectionLogic.js +127 -0
  182. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.d.ts +12 -1
  183. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +57 -16
  184. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +4 -7
  185. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +89 -49
  186. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.d.ts +1 -0
  187. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.d.ts +28 -0
  188. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem2.js +87 -0
  189. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.d.ts +22 -0
  190. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/permissionPickerActionItem.js +213 -0
  191. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.d.ts +1 -0
  192. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +15 -17
  193. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +7 -4
  194. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +563 -140
  195. package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css +35 -26
  196. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.d.ts +2 -2
  197. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +26 -23
  198. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.d.ts +26 -6
  199. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +145 -79
  200. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageDetails.css +36 -50
  201. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatContextUsageWidget.css +35 -15
  202. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.d.ts +7 -0
  203. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +127 -30
  204. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.d.ts +1 -0
  205. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +20 -14
  206. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.d.ts +6 -6
  207. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAffordance.js +96 -34
  208. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.d.ts +11 -2
  209. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +68 -27
  210. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.d.ts +5 -0
  211. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatEditorAffordance.js +125 -13
  212. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.d.ts +8 -11
  213. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.js +54 -45
  214. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.d.ts +11 -10
  215. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +172 -112
  216. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
  217. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
  218. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css +2 -44
  219. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatEditorAffordance.css +28 -4
  220. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatOverlayWidget.css +84 -3
  221. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.d.ts +9 -2
  222. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +58 -41
  223. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
  224. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocolApps.d.ts +1 -548
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
  227. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
  228. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
  229. package/vscode/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.js +6 -10
  230. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +0 -187
@@ -124,6 +124,7 @@
124
124
  0% {
125
125
  background-position: 120% 0;
126
126
  }
127
+
127
128
  100% {
128
129
  background-position: -120% 0;
129
130
  }
@@ -234,6 +235,7 @@
234
235
  visibility: hidden;
235
236
  padding-top: 6px;
236
237
  height: 22px;
238
+ transition: opacity 0.1s ease-in-out, visibility 0s linear 0.1s;
237
239
  }
238
240
 
239
241
  /* Show toolbar on hover and last response. Also show when the item has keyboard focus (focus-within) or when the surrounding list row is marked focused (monaco list keyboard navigation). */
@@ -243,9 +245,12 @@
243
245
  .interactive-item-container.interactive-response:not(.chat-response-loading):focus-within .chat-footer-toolbar,
244
246
  .interactive-item-container.interactive-response:not(.chat-response-loading):focus-within .chat-footer-toolbar .chat-footer-details,
245
247
  .monaco-list-row.focused .interactive-item-container.interactive-response:not(.chat-response-loading) .chat-footer-toolbar,
246
- .monaco-list-row.focused .interactive-item-container.interactive-response:not(.chat-response-loading) .chat-footer-toolbar .chat-footer-details {
248
+ .monaco-list-row.focused .interactive-item-container.interactive-response:not(.chat-response-loading) .chat-footer-toolbar .chat-footer-details,
249
+ .interactive-item-container.interactive-response:not(.chat-response-loading).group-hovered .chat-footer-toolbar,
250
+ .interactive-item-container.interactive-response:not(.chat-response-loading).group-hovered .chat-footer-toolbar .chat-footer-details {
247
251
  opacity: 1;
248
252
  visibility: visible;
253
+ transition: opacity 0.1s ease-in-out, visibility 0s linear 0s;
249
254
  }
250
255
 
251
256
  /* Style the internal toolbar element to use flexbox */
@@ -263,6 +268,9 @@
263
268
  color: var(--vscode-descriptionForeground);
264
269
  line-height: 16px;
265
270
  margin-left: auto;
271
+ overflow: hidden;
272
+ text-overflow: ellipsis;
273
+ white-space: nowrap;
266
274
  }
267
275
 
268
276
  .interactive-item-container .chat-footer-details.hidden {
@@ -274,7 +282,11 @@
274
282
  }
275
283
 
276
284
  .interactive-item-container > .value .chat-used-context {
277
- margin-bottom: 10px;
285
+ margin-bottom: 16px;
286
+ }
287
+
288
+ .interactive-item-container > .value .chat-used-context .chat-used-context-list {
289
+ margin-bottom: 0;
278
290
  }
279
291
 
280
292
  .interactive-item-container .value .rendered-markdown:not(:has(.chat-extensions-content-part)) {
@@ -297,20 +309,46 @@
297
309
  border-color: var(--vscode-textBlockQuote-border);
298
310
  }
299
311
 
300
- .interactive-item-container .value .rendered-markdown table {
312
+ .interactive-item-container .value .rendered-markdown strong {
313
+ font-weight: 600;
314
+ }
315
+
316
+ .interactive-item-container .value .rendered-markdown .rendered-markdown-table-scroll-wrapper {
301
317
  width: 100%;
302
- text-align: left;
303
318
  margin-bottom: 16px;
304
319
  }
305
320
 
306
- .interactive-item-container .value .rendered-markdown table,
321
+ .interactive-item-container .value .rendered-markdown table {
322
+ text-align: left;
323
+ border-radius: var(--vscode-cornerRadius-medium);
324
+ overflow: hidden;
325
+ border-collapse: separate;
326
+ border-spacing: 0;
327
+ border: 1px solid var(--vscode-chat-requestBorder);
328
+ }
329
+
307
330
  .interactive-item-container .value .rendered-markdown table td,
308
331
  .interactive-item-container .value .rendered-markdown table th {
309
332
  border: 1px solid var(--vscode-chat-requestBorder);
310
- border-collapse: collapse;
333
+ border-top: none;
334
+ border-left: none;
311
335
  padding: 4px 6px;
312
336
  }
313
337
 
338
+ .interactive-item-container .value .rendered-markdown table th {
339
+ white-space: normal;
340
+ overflow-wrap: break-word;
341
+ }
342
+
343
+ .interactive-item-container .value .rendered-markdown table td:last-child,
344
+ .interactive-item-container .value .rendered-markdown table th:last-child {
345
+ border-right: none;
346
+ }
347
+
348
+ .interactive-item-container .value .rendered-markdown table tbody tr:last-child td {
349
+ border-bottom: none;
350
+ }
351
+
314
352
  .interactive-item-container .value .rendered-markdown a,
315
353
  .interactive-item-container .value .interactive-session-followups,
316
354
  .interactive-item-container .value .rendered-markdown a code {
@@ -369,7 +407,7 @@
369
407
  .interactive-item-container .value .rendered-markdown h1 {
370
408
  font-size: var(--vscode-chat-font-size-body-xxl);
371
409
  font-weight: 600;
372
- margin: 16px 0 8px 0;
410
+ margin: 1.5em 0 0.875em 0;
373
411
  font-family: var(--vscode-chat-font-family, inherit);
374
412
 
375
413
  }
@@ -377,14 +415,14 @@
377
415
  .interactive-item-container .value .rendered-markdown h2 {
378
416
  font-size: var(--vscode-chat-font-size-body-xl);
379
417
  font-weight: 600;
380
- margin: 16px 0 8px 0;
418
+ margin: 1.5em 0 0.875em 0;
381
419
  font-family: var(--vscode-chat-font-family, inherit);
382
420
  }
383
421
 
384
422
  .interactive-item-container .value .rendered-markdown h3 {
385
423
  font-size: var(--vscode-chat-font-size-body-l);
386
424
  font-weight: 600;
387
- margin: 16px 0 8px 0;
425
+ margin: 1.5em 0 0.875em 0;
388
426
  font-family: var(--vscode-chat-font-family, inherit);
389
427
  }
390
428
 
@@ -394,8 +432,7 @@
394
432
 
395
433
  .interactive-item-container.editing-session .value .rendered-markdown h3 {
396
434
  font-size: var(--vscode-chat-font-size-body-m);
397
- margin: 0 0 8px 0;
398
- font-weight: unset;
435
+ margin: 1.5em 0 0.875em 0;
399
436
  }
400
437
 
401
438
  /* Codicons next to text need to be aligned with the text */
@@ -537,7 +574,7 @@
537
574
 
538
575
  .tool-output-part {
539
576
  border: 1px solid var(--vscode-widget-border);
540
- border-radius: 6px;
577
+ border-radius: var(--vscode-cornerRadius-medium);
541
578
  background: var(--vscode-editor-background);
542
579
  margin: 4px 0;
543
580
  overflow: hidden;
@@ -587,7 +624,7 @@
587
624
  }
588
625
 
589
626
  &:not(:last-child) {
590
- margin-bottom: 12px;
627
+ margin-bottom: 16px;
591
628
  }
592
629
  }
593
630
 
@@ -606,6 +643,10 @@
606
643
  padding-inline-start: 28px;
607
644
  }
608
645
 
646
+ .interactive-item-container .value .rendered-markdown li {
647
+ margin: 4px 0;
648
+ }
649
+
609
650
  /* NOTE- We want to dedent codeblocks in lists specifically to give them the full width. No more elegant way to do this, these values
610
651
  have to be updated for changes to the rules above, or to support more deeply nested lists. */
611
652
  .interactive-item-container .value .rendered-markdown ul .interactive-result-code-block {
@@ -641,7 +682,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
641
682
  .monaco-tokenized-source,
642
683
  code {
643
684
  font-family: var(--monaco-monospace-font);
644
- font-size: var(--vscode-chat-font-size-body-s);
685
+ font-size: var(--vscode-chat-font-size-body-xs);
645
686
  color: var(--vscode-textPreformat-foreground);
646
687
  background-color: var(--vscode-textPreformat-background);
647
688
  padding: 1px 3px;
@@ -767,34 +808,49 @@ have to be updated for changes to the rules above, or to support more deeply nes
767
808
  margin-right: 3px;
768
809
  }
769
810
 
770
- .interactive-session .chat-input-container {
811
+ .monaco-workbench .interactive-session .chat-input-container {
771
812
  box-sizing: border-box;
772
813
  cursor: text;
773
814
  background-color: var(--vscode-input-background);
774
815
  border: 1px solid var(--vscode-input-border, transparent);
775
- border-radius: 4px;
816
+ border-radius: var(--vscode-cornerRadius-large);
776
817
  padding: 0 6px 6px 6px;
777
818
  /* top padding is inside the editor widget */
778
819
  width: 100%;
779
820
  position: relative;
780
821
  }
781
822
 
782
- /* Context usage widget container - positioned at top right of chat input */
783
- .interactive-session .chat-input-container .chat-context-usage-container {
784
- position: absolute;
785
- top: 4px;
786
- right: 6px;
787
- z-index: 1;
823
+ /* Prevent contents from covering border corners. Not applied in compact mode
824
+ because overflow:hidden creates a BFC that causes a ResizeObserver ↔ layout
825
+ feedback loop when toolbars share width with the editor. */
826
+ .interactive-session .interactive-input-part:not(.compact) .chat-input-container {
827
+ /* Prevent contents from covering border corner */
828
+ overflow: hidden;
788
829
  }
789
830
 
790
- /* Hide context usage widget in compact mode (quick chat) */
791
- .interactive-session .interactive-input-part.compact .chat-context-usage-container {
792
- display: none;
831
+ /* Context usage widget container - positioned in the secondary toolbar below input */
832
+ .interactive-session .chat-input-toolbars .chat-context-usage-container,
833
+ .interactive-session .chat-secondary-toolbar .chat-context-usage-container {
834
+ display: flex;
835
+ align-items: center;
836
+ flex-shrink: 0;
837
+ margin-left: auto;
838
+ order: 1;
839
+ }
840
+
841
+ /* When context usage is inside the toolbars (compact mode), keep the ordering */
842
+ .interactive-session .chat-input-toolbars .chat-context-usage-container {
843
+ order: 1;
844
+ }
845
+
846
+ .interactive-session .chat-input-toolbars > .chat-execute-toolbar {
847
+ order: 2;
793
848
  }
794
849
 
795
850
  .interactive-input-part:has(.chat-editing-session > .chat-editing-session-container) .chat-input-container,
796
851
  .interactive-input-part:has(.chat-todo-list-widget-container > .chat-todo-list-widget.has-todos) .chat-input-container,
797
- .interactive-input-part:has(.chat-input-widgets-container > .chat-status-widget:not([style*="display: none"])) .chat-input-container {
852
+ .interactive-input-part:has(.chat-input-widgets-container > .chat-status-widget:not([style*="display: none"])) .chat-input-container,
853
+ .interactive-input-part:has(.chat-getting-started-tip-container > .chat-tip-widget) .chat-input-container {
798
854
  /* Remove top border radius when editing session, todo list, or status widget is present */
799
855
  border-top-left-radius: 0;
800
856
  border-top-right-radius: 0;
@@ -808,13 +864,13 @@ have to be updated for changes to the rules above, or to support more deeply nes
808
864
  position: relative;
809
865
  }
810
866
 
811
- .interactive-session .chat-editing-session .chat-editing-session-container {
867
+ .monaco-workbench .interactive-session .chat-editing-session .chat-editing-session-container {
812
868
  padding: 4px 3px 4px 3px;
813
869
  box-sizing: border-box;
814
870
  background-color: var(--vscode-editor-background);
815
871
  border: 1px solid var(--vscode-input-border, transparent);
816
872
  border-bottom: none;
817
- border-radius: 4px 4px 0 0;
873
+ border-radius: var(--vscode-cornerRadius-large) var(--vscode-cornerRadius-large) 0 0;
818
874
  display: flex;
819
875
  flex-direction: column;
820
876
  gap: 2px;
@@ -908,7 +964,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
908
964
  border-radius: 2px;
909
965
  border: none;
910
966
  background-color: unset;
911
- color: var(--vscode-foreground)
967
+ color: var(--vscode-descriptionForeground);
912
968
  }
913
969
 
914
970
  .monaco-button:focus-visible {
@@ -981,7 +1037,6 @@ have to be updated for changes to the rules above, or to support more deeply nes
981
1037
  flex-direction: row;
982
1038
  gap: 4px;
983
1039
  margin-top: 6px;
984
- margin-right: 20px;
985
1040
  flex-wrap: wrap;
986
1041
  cursor: default;
987
1042
  }
@@ -1050,23 +1105,6 @@ have to be updated for changes to the rules above, or to support more deeply nes
1050
1105
  position: relative;
1051
1106
  }
1052
1107
 
1053
- /* question carousel - this is above edits and todos */
1054
- .interactive-session .interactive-input-part > .chat-question-carousel-widget-container {
1055
- width: 100%;
1056
- position: relative;
1057
- }
1058
-
1059
- .interactive-session .interactive-input-part > .chat-question-carousel-widget-container:empty {
1060
- display: none;
1061
- }
1062
-
1063
- .interactive-session .interactive-input-part > .chat-question-carousel-widget-container .chat-question-carousel-container {
1064
- margin: 0px;
1065
- border: 1px solid var(--vscode-input-border, transparent);
1066
- background-color: var(--vscode-editor-background);
1067
- border-radius: 4px;
1068
- }
1069
-
1070
1108
  /* Chat Todo List Widget Container - mirrors chat-editing-session styling */
1071
1109
  .interactive-session .interactive-input-part > .chat-todo-list-widget-container {
1072
1110
  margin-bottom: -4px;
@@ -1081,8 +1119,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
1081
1119
  border: 1px solid var(--vscode-input-border, transparent);
1082
1120
  background-color: var(--vscode-editor-background);
1083
1121
  border-bottom: none;
1084
- border-top-left-radius: 4px;
1085
- border-top-right-radius: 4px;
1122
+ border-radius: var(--vscode-cornerRadius-large) var(--vscode-cornerRadius-large) 0 0;
1086
1123
  flex-direction: column;
1087
1124
  gap: 2px;
1088
1125
  overflow: hidden;
@@ -1236,14 +1273,16 @@ have to be updated for changes to the rules above, or to support more deeply nes
1236
1273
  }
1237
1274
 
1238
1275
  .interactive-session .interactive-input-part > .chat-todo-list-widget-container .chat-todo-list-widget .monaco-scrollable-element .monaco-list-rows .monaco-list-row {
1239
- border-radius: 2px;
1276
+ border-radius: var(--vscode-cornerRadius-small);
1240
1277
  }
1241
1278
 
1242
1279
  .interactive-session .interactive-input-part.compact .chat-input-container {
1243
1280
  display: flex;
1244
1281
  justify-content: space-between;
1245
1282
  padding-bottom: 0;
1246
- border-radius: 2px;
1283
+ /* no scrollbar */
1284
+ padding-right: 6px;
1285
+ border-radius: var(--vscode-cornerRadius-small);
1247
1286
  }
1248
1287
 
1249
1288
  .interactive-session .interactive-input-and-side-toolbar {
@@ -1257,6 +1296,15 @@ have to be updated for changes to the rules above, or to support more deeply nes
1257
1296
  border-color: var(--vscode-focusBorder);
1258
1297
  }
1259
1298
 
1299
+ .chat-editor-container {
1300
+ padding: 0 0 0 4px;
1301
+ }
1302
+
1303
+ .interactive-session .interactive-input-part.compact .chat-editor-container {
1304
+ /* No scrollbar */
1305
+ padding-right: 4px;
1306
+ }
1307
+
1260
1308
  .chat-editor-container .monaco-editor .mtk1 {
1261
1309
  color: var(--vscode-input-foreground);
1262
1310
  }
@@ -1290,12 +1338,99 @@ have to be updated for changes to the rules above, or to support more deeply nes
1290
1338
 
1291
1339
  .interactive-session .chat-input-toolbars {
1292
1340
  display: flex;
1341
+ align-items: center;
1342
+ gap: 6px;
1343
+ margin-top: 4px;
1344
+ }
1345
+
1346
+ /* Secondary toolbar below the input box */
1347
+ .interactive-session .chat-secondary-toolbar {
1348
+ display: flex;
1349
+ align-items: center;
1350
+ gap: 6px;
1351
+ padding: 0 4px 0 5px;
1352
+ }
1353
+
1354
+ .interactive-session .chat-secondary-toolbar:empty {
1355
+ display: none;
1356
+ }
1357
+
1358
+ .interactive-session .chat-secondary-toolbar > .chat-secondary-input-toolbar {
1359
+ overflow: hidden;
1360
+ min-width: 0px;
1361
+ color: var(--vscode-icon-foreground);
1362
+
1363
+ .monaco-action-bar .action-item .codicon {
1364
+ color: var(--vscode-icon-foreground);
1365
+ }
1366
+
1367
+ .chat-input-picker-item {
1368
+ min-width: 0px;
1369
+ overflow: hidden;
1370
+
1371
+ .action-label {
1372
+ min-width: 0px;
1373
+ overflow: hidden;
1374
+ position: relative;
1375
+
1376
+ .chat-input-picker-label {
1377
+ overflow: hidden;
1378
+ text-overflow: ellipsis;
1379
+ }
1380
+
1381
+ span + .chat-input-picker-label {
1382
+ margin-left: 2px;
1383
+ }
1384
+
1385
+ .codicon {
1386
+ font-size: 12px;
1387
+ }
1388
+ }
1389
+
1390
+ .codicon {
1391
+ flex-shrink: 0;
1392
+ }
1393
+ }
1394
+ }
1395
+
1396
+ .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label {
1397
+ height: 16px;
1398
+ padding: 3px 0px 3px 6px;
1399
+ display: flex;
1400
+ align-items: center;
1401
+ color: var(--vscode-icon-foreground);
1402
+ }
1403
+
1404
+ .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label.warning {
1405
+ color: var(--vscode-problemsWarningIcon-foreground);
1406
+ }
1407
+
1408
+ .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label.warning .codicon {
1409
+ color: var(--vscode-problemsWarningIcon-foreground) !important;
1410
+ }
1411
+
1412
+ .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label.info {
1413
+ color: var(--vscode-problemsInfoIcon-foreground);
1414
+ }
1415
+
1416
+ .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label.info .codicon {
1417
+ color: var(--vscode-problemsInfoIcon-foreground) !important;
1418
+ }
1419
+
1420
+ .monaco-workbench .interactive-session .chat-secondary-toolbar .chat-input-picker-item .action-label .codicon-chevron-down {
1421
+ font-size: 10px;
1422
+ margin-left: 4px;
1423
+ opacity: 0.75;
1293
1424
  }
1294
1425
 
1295
1426
  .interactive-session .chat-input-toolbars :not(.responsive.chat-input-toolbar) .actions-container:first-child {
1296
1427
  margin-right: auto;
1297
1428
  }
1298
1429
 
1430
+ .interactive-session .chat-input-toolbars > .chat-input-toolbar .actions-container:first-child {
1431
+ margin-right: 0;
1432
+ }
1433
+
1299
1434
  .interactive-session .chat-input-toolbars .tool-warning-indicator {
1300
1435
  position: absolute;
1301
1436
  bottom: 0;
@@ -1309,9 +1444,15 @@ have to be updated for changes to the rules above, or to support more deeply nes
1309
1444
  }
1310
1445
 
1311
1446
  .interactive-session .chat-input-toolbars > .chat-input-toolbar {
1447
+ order: 0;
1312
1448
  overflow: hidden;
1313
1449
  min-width: 0px;
1314
1450
  width: 100%;
1451
+ color: var(--vscode-icon-foreground);
1452
+
1453
+ .monaco-action-bar .action-item .codicon {
1454
+ color: var(--vscode-icon-foreground);
1455
+ }
1315
1456
 
1316
1457
  .chat-input-picker-item {
1317
1458
  min-width: 0px;
@@ -1320,14 +1461,27 @@ have to be updated for changes to the rules above, or to support more deeply nes
1320
1461
  .action-label {
1321
1462
  min-width: 0px;
1322
1463
  overflow: hidden;
1464
+ position: relative;
1323
1465
 
1324
1466
  .chat-input-picker-label {
1325
1467
  overflow: hidden;
1326
1468
  text-overflow: ellipsis;
1327
1469
  }
1328
1470
 
1329
- .codicon-warning {
1330
- color: var(--vscode-problemsWarningIcon-foreground);
1471
+ .model-picker-badge {
1472
+ display: inline-flex;
1473
+ align-items: center;
1474
+ margin-left: 4px;
1475
+ flex-shrink: 0;
1476
+ font-size: 12px;
1477
+
1478
+ .codicon.codicon-info {
1479
+ color: var(--vscode-problemsInfoIcon-foreground) !important;
1480
+ }
1481
+
1482
+ .codicon.codicon-warning {
1483
+ color: var(--vscode-problemsWarningIcon-foreground) !important;
1484
+ }
1331
1485
  }
1332
1486
 
1333
1487
  span + .chat-input-picker-label {
@@ -1351,24 +1505,60 @@ have to be updated for changes to the rules above, or to support more deeply nes
1351
1505
  }
1352
1506
  }
1353
1507
 
1354
-
1355
-
1356
1508
  .interactive-session .chat-input-toolbar .chat-input-picker-item .action-label,
1357
1509
  .interactive-session .chat-input-toolbar .chat-sessionPicker-item .action-label {
1358
1510
  height: 16px;
1359
- padding: 3px 0px 3px 6px;
1511
+ padding: 3px 1px 3px 7px;
1360
1512
  display: flex;
1361
1513
  align-items: center;
1514
+ color: var(--vscode-icon-foreground);
1362
1515
  }
1363
1516
 
1517
+ /* Keep hover background while picker dropdown is open */
1518
+ .interactive-session .chat-input-toolbar .action-label[aria-expanded="true"],
1519
+ .interactive-session .chat-secondary-toolbar .action-label[aria-expanded="true"] {
1520
+ background-color: var(--vscode-toolbar-hoverBackground);
1521
+ }
1364
1522
 
1365
- .interactive-session .chat-input-toolbar .chat-input-picker-item .action-label .codicon-chevron-down,
1366
- .interactive-session .chat-input-toolbar .chat-sessionPicker-item .action-label .codicon-chevron-down {
1367
- font-size: 12px;
1368
- margin-left: 2px;
1523
+ /* When chevrons are hidden and only showing an icon (no label), size to 22x22 with centered icon */
1524
+ .interactive-session .chat-input-toolbar .chat-input-picker-item .action-label.hide-chevrons:not(:has(.chat-input-picker-label)),
1525
+ .interactive-session .chat-input-toolbar .chat-input-picker-item.hide-chevrons .action-label:not(:has(.chat-input-picker-label)),
1526
+ .interactive-session .chat-input-toolbar .chat-sessionPicker-item .action-label.hide-chevrons:not(:has(.chat-input-picker-label)) {
1527
+ width: 22px;
1528
+ min-width: 22px;
1529
+ height: 22px;
1530
+ padding: 0;
1531
+ box-sizing: border-box;
1532
+ display: flex;
1533
+ align-items: center;
1534
+ justify-content: center;
1535
+
1536
+ .codicon {
1537
+ justify-content: center;
1538
+ }
1539
+ }
1540
+
1541
+
1542
+ /* Add context button icon sizing */
1543
+ .interactive-session .chat-input-toolbar .action-item:has(.codicon-add) .action-label {
1544
+ display: flex;
1545
+ align-items: center;
1546
+ justify-content: center;
1547
+ }
1548
+
1549
+ .interactive-session .chat-input-toolbar .action-item:has(.codicon-add) .codicon-add {
1550
+ font-size: 14px;
1551
+ }
1552
+
1553
+ .monaco-workbench .interactive-session .chat-input-toolbar .chat-input-picker-item .action-label .codicon-chevron-down,
1554
+ .monaco-workbench .interactive-session .chat-input-toolbar .chat-sessionPicker-item .action-label .codicon-chevron-down {
1555
+ font-size: 10px;
1556
+ margin-left: 4px;
1557
+ opacity: 0.75;
1369
1558
  }
1370
1559
 
1371
- .interactive-session .chat-input-toolbars .monaco-action-bar .actions-container {
1560
+ .interactive-session .chat-input-toolbars .monaco-action-bar .actions-container,
1561
+ .interactive-session .chat-secondary-toolbar .monaco-action-bar .actions-container {
1372
1562
  display: flex;
1373
1563
  gap: 4px;
1374
1564
  }
@@ -1378,6 +1568,38 @@ have to be updated for changes to the rules above, or to support more deeply nes
1378
1568
  max-width: 100%;
1379
1569
  }
1380
1570
 
1571
+ .monaco-workbench .interactive-session .chat-input-toolbars .monaco-action-bar .action-item .codicon,
1572
+ .monaco-workbench .interactive-session .chat-input-toolbars .action-label .codicon {
1573
+ color: var(--vscode-icon-foreground) !important;
1574
+ }
1575
+
1576
+ .monaco-workbench .interactive-session .chat-input-toolbars .monaco-action-bar .action-item.disabled .codicon,
1577
+ .monaco-workbench .interactive-session .chat-input-toolbars .action-label.disabled .codicon {
1578
+ color: var(--vscode-disabledForeground) !important;
1579
+ }
1580
+
1581
+ .action-widget .monaco-list-row.chat-model-picker-unavailable .description a,
1582
+ .action-widget .monaco-list-row.chat-model-picker-unavailable .description a:visited {
1583
+ color: var(--vscode-textLink-foreground);
1584
+ }
1585
+
1586
+ .action-widget .monaco-list-row.chat-model-picker-unavailable .description a:hover,
1587
+ .action-widget .monaco-list-row.chat-model-picker-unavailable .description a:active {
1588
+ color: var(--vscode-textLink-activeForeground);
1589
+ }
1590
+
1591
+ .action-widget .action-list-filter-input.chat-model-picker-filter-input,
1592
+ .action-widget .action-list-filter-input.chat-model-picker-filter-input:focus {
1593
+ outline: none;
1594
+ box-shadow: none;
1595
+ border-color: transparent;
1596
+ background-color: transparent;
1597
+ }
1598
+
1599
+ .action-widget .action-list-filter:has(.chat-model-picker-filter-input) {
1600
+ margin-bottom: 4px;
1601
+ }
1602
+
1381
1603
  .interactive-session .chat-input-toolbars .codicon-debug-stop {
1382
1604
  color: var(--vscode-icon-foreground) !important;
1383
1605
  }
@@ -1548,7 +1770,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
1548
1770
 
1549
1771
  .interactive-session .interactive-input-part {
1550
1772
  margin: 0px 12px;
1551
- padding: 4px 0 12px 0px;
1773
+ padding: 4px 0 4px 0px;
1552
1774
  display: flex;
1553
1775
  flex-direction: column;
1554
1776
  gap: 4px;
@@ -1560,7 +1782,6 @@ have to be updated for changes to the rules above, or to support more deeply nes
1560
1782
  padding: 8px 0 0 0
1561
1783
  }
1562
1784
 
1563
- .action-item.chat-attachment-button .action-label,
1564
1785
  .interactive-session .chat-attached-context .chat-attached-context-attachment {
1565
1786
  display: flex;
1566
1787
  overflow: hidden;
@@ -1573,40 +1794,11 @@ have to be updated for changes to the rules above, or to support more deeply nes
1573
1794
  width: fit-content;
1574
1795
  }
1575
1796
 
1576
- .action-item.chat-attachment-button .action-label {
1577
- padding: 0 4px;
1578
- }
1579
-
1580
1797
  .interactive-session .interactive-list .chat-attached-context .chat-attached-context-attachment {
1581
1798
  font-family: var(--vscode-chat-font-family, inherit);
1582
1799
  font-size: var(--vscode-chat-font-size-body-xs);
1583
1800
  }
1584
1801
 
1585
- .action-item.chat-attachment-button > .action-label > .codicon {
1586
- font-size: 14px;
1587
- height: auto;
1588
- }
1589
-
1590
- .interactive-session .action-item.chat-attachment-button .action-label:not(.has-label) {
1591
- display: flex;
1592
- align-items: center;
1593
- justify-content: center;
1594
- padding: 2px 4px 2px 4px;
1595
- height: fit-content;
1596
- gap: 0;
1597
- border: 1px solid var(--vscode-chat-requestBorder, var(--vscode-input-background, transparent));
1598
- border-radius: 4px;
1599
- box-sizing: border-box;
1600
-
1601
- .codicon {
1602
- width: 14px;
1603
- }
1604
- }
1605
-
1606
- .action-item.chat-attachment-button .codicon {
1607
- font-size: 14px;
1608
- }
1609
-
1610
1802
  .action-item.chat-mcp {
1611
1803
  min-width: 22px !important;
1612
1804
 
@@ -1709,11 +1901,6 @@ have to be updated for changes to the rules above, or to support more deeply nes
1709
1901
  gap: 4px;
1710
1902
  }
1711
1903
 
1712
- .interactive-session .chat-attachment-toolbar .actions-container {
1713
- gap: 4px;
1714
- flex-wrap: wrap;
1715
- }
1716
-
1717
1904
  .interactive-session .interactive-input-part.compact .chat-attached-context {
1718
1905
  padding-bottom: 0px;
1719
1906
  display: flex;
@@ -2074,6 +2261,12 @@ have to be updated for changes to the rules above, or to support more deeply nes
2074
2261
 
2075
2262
  .monaco-icon-label {
2076
2263
  padding: 0px 3px;
2264
+ gap: 2px;
2265
+
2266
+ &::before {
2267
+ width: var(--vscode-chat-font-size-body-s);
2268
+ padding-right: 0;
2269
+ }
2077
2270
  }
2078
2271
  }
2079
2272
 
@@ -2110,7 +2303,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
2110
2303
  }
2111
2304
 
2112
2305
  .interactive-session .chat-used-context-label {
2113
- font-size: var(--vscode-chat-font-size-body-s);
2306
+ font-size: 13px;
2114
2307
  font-family: var(--vscode-chat-font-family, inherit);
2115
2308
  color: var(--vscode-descriptionForeground);
2116
2309
  user-select: none;
@@ -2134,7 +2327,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
2134
2327
  width: fit-content;
2135
2328
  border: none;
2136
2329
  border-radius: 4px;
2137
- gap: 4px;
2330
+ gap: 0;
2138
2331
  text-align: initial;
2139
2332
  justify-content: initial;
2140
2333
  }
@@ -2150,18 +2343,23 @@ have to be updated for changes to the rules above, or to support more deeply nes
2150
2343
 
2151
2344
  .interactive-session .chat-used-context-label .monaco-button {
2152
2345
  padding: 2px 6px 2px 2px;
2153
- font-size: var(--vscode-chat-font-size-body-m);
2346
+ margin-left: -2px;
2347
+ font-size: var(--vscode-chat-font-size-body-s);
2154
2348
  line-height: unset;
2155
2349
  }
2156
2350
 
2351
+ .interactive-session .chat-used-context.show-checkmarks .chat-used-context-label .monaco-button {
2352
+ gap: 4px;
2353
+ margin-left: 0;
2354
+ }
2355
+
2157
2356
  .interactive-session .chat-file-changes-label .monaco-button:hover {
2158
2357
  background-color: var(--vscode-toolbar-hoverBackground);
2159
2358
  }
2160
2359
 
2360
+ .interactive-session .chat-used-context:not(.chat-used-context-collapsed) .chat-used-context-label .monaco-button,
2161
2361
  .interactive-session .chat-used-context-label .monaco-button:hover {
2162
- background-color: var(--vscode-list-hoverBackground);
2163
2362
  color: var(--vscode-foreground);
2164
-
2165
2363
  }
2166
2364
 
2167
2365
  .interactive-session .chat-file-changes-label .monaco-text-button:focus,
@@ -2176,22 +2374,56 @@ have to be updated for changes to the rules above, or to support more deeply nes
2176
2374
 
2177
2375
  .interactive-session .chat-file-changes-label .monaco-button .codicon,
2178
2376
  .interactive-session .chat-used-context-label .monaco-button .codicon {
2179
- font-size: var(--vscode-chat-font-size-body-s);
2377
+ font-size: 12px;
2180
2378
  color: var(--vscode-icon-foreground) !important;
2181
2379
  }
2182
2380
 
2381
+ /* Hide the leading icon on collapsible parts by default; show-checkmarks restores it */
2382
+ .interactive-session .chat-used-context-label .monaco-icon-button > .codicon:first-child:not(.chat-collapsible-hover-chevron):not(.codicon-error):not(.codicon-warning) {
2383
+ display: none;
2384
+ }
2385
+
2386
+ .interactive-session .chat-used-context.show-checkmarks .chat-used-context-label .monaco-icon-button > .codicon:first-child:not(.chat-collapsible-hover-chevron) {
2387
+ display: inline-block;
2388
+ }
2389
+
2390
+ /* Hover chevron indicator for collapsible parts */
2391
+ .chat-collapsible-hover-chevron {
2392
+ font-size: 12px;
2393
+ opacity: 0;
2394
+ transition: opacity 0.1s ease-in-out;
2395
+ color: var(--vscode-descriptionForeground);
2396
+ }
2397
+
2398
+ .chat-collapsible-hover-chevron.codicon-chevron-down {
2399
+ opacity: 1;
2400
+ }
2401
+
2402
+ .interactive-session .chat-used-context-label .monaco-button:hover .chat-collapsible-hover-chevron {
2403
+ opacity: 1;
2404
+ }
2405
+
2183
2406
  .interactive-item-container .progress-container {
2184
2407
  display: flex;
2185
2408
  align-items: center;
2186
2409
  gap: 4px;
2187
- margin: 0 0 6px 2px;
2410
+ margin: 0 0 6px 0;
2411
+ font-size: 13px;
2188
2412
 
2189
2413
  /* Tool calls transition from a progress to a collapsible list part, which needs to have this top padding.
2190
2414
  The working progress also can be replaced by a tool progress part. So align this padding so the text doesn't appear to shift. */
2191
2415
  padding-top: 2px;
2192
2416
 
2193
2417
  > .codicon[class*='codicon-'] {
2194
- font-size: var(--vscode-chat-font-size-body-s);
2418
+ font-size: 12px;
2419
+
2420
+ &::before {
2421
+ font-size: 12px;
2422
+ }
2423
+ }
2424
+
2425
+ > .codicon.codicon-check {
2426
+ display: none;
2195
2427
  }
2196
2428
 
2197
2429
  .codicon {
@@ -2223,8 +2455,13 @@ have to be updated for changes to the rules above, or to support more deeply nes
2223
2455
  }
2224
2456
  }
2225
2457
 
2226
- /* shimmer animation for working progress only */
2227
- &.working-progress:has(.codicon-loading) .rendered-markdown.progress-step > p {
2458
+ /* hide spinner icon for shimmer progress, shimmer handles animation */
2459
+ &.shimmer-progress > .codicon {
2460
+ display: none;
2461
+ }
2462
+
2463
+ /* shimmer animation for shimmer progress */
2464
+ &.shimmer-progress .rendered-markdown.progress-step > p {
2228
2465
  background: linear-gradient(
2229
2466
  90deg,
2230
2467
  var(--vscode-descriptionForeground) 0%,
@@ -2241,6 +2478,12 @@ have to be updated for changes to the rules above, or to support more deeply nes
2241
2478
  }
2242
2479
  }
2243
2480
 
2481
+ .show-checkmarks .progress-container > .codicon.codicon-check,
2482
+ .progress-container.show-checkmarks > .codicon.codicon-check {
2483
+ display: inline-flex;
2484
+ margin-left: 4px;
2485
+ }
2486
+
2244
2487
  .interactive-item-container .chat-command-button {
2245
2488
  display: flex;
2246
2489
  flex-wrap: wrap;
@@ -2326,6 +2569,130 @@ have to be updated for changes to the rules above, or to support more deeply nes
2326
2569
  margin-top: 2px;
2327
2570
  }
2328
2571
 
2572
+ /* Element hover (DevTools-style) */
2573
+ .chat-element-hover {
2574
+ max-width: 400px;
2575
+ min-width: 250px;
2576
+ }
2577
+
2578
+ .monaco-hover.workbench-hover.chat-element-data-hover .hover-contents.html-hover-contents {
2579
+ padding: 0;
2580
+ }
2581
+
2582
+ .monaco-hover.workbench-hover.chat-element-data-hover .chat-element-hover-scrollable {
2583
+ width: 100%;
2584
+ }
2585
+
2586
+ .chat-element-hover.chat-attached-context-hover {
2587
+ padding: 6px 0 6px 6px;
2588
+ }
2589
+
2590
+ .chat-element-hover-content {
2591
+ max-height: 500px;
2592
+ box-sizing: border-box;
2593
+ padding-right: 10px;
2594
+ padding-bottom: 15px;
2595
+ }
2596
+
2597
+ .chat-element-hover .chat-element-hover-section {
2598
+ padding: 4px 6px;
2599
+ }
2600
+
2601
+ .chat-element-hover .chat-element-hover-section + .chat-element-hover-section {
2602
+ border-top: 1px solid var(--vscode-editorWidget-border, rgba(127, 127, 127, 0.2));
2603
+ }
2604
+
2605
+ .chat-element-hover .chat-element-hover-header {
2606
+ font-size: 11px;
2607
+ font-weight: 600;
2608
+ text-transform: uppercase;
2609
+ color: var(--vscode-descriptionForeground);
2610
+ letter-spacing: 0.5px;
2611
+ margin-bottom: 4px;
2612
+ }
2613
+
2614
+ .chat-element-hover .chat-element-hover-code {
2615
+ margin: 0;
2616
+ padding: 4px 6px;
2617
+ background: var(--vscode-textCodeBlock-background);
2618
+ border-radius: 3px;
2619
+ font-family: var(--monaco-monospace-font);
2620
+ font-size: 12px;
2621
+ line-height: 1.5;
2622
+ white-space: pre;
2623
+ overflow: hidden;
2624
+ color: var(--vscode-editor-foreground);
2625
+ }
2626
+
2627
+ .chat-element-hover .chat-element-hover-code code {
2628
+ font-family: inherit;
2629
+ font-size: inherit;
2630
+ background: transparent;
2631
+ padding: 0;
2632
+ border-radius: 0;
2633
+ display: block;
2634
+ }
2635
+
2636
+ .chat-element-hover .chat-element-hover-table {
2637
+ display: grid;
2638
+ grid-template-columns: auto 1fr;
2639
+ gap: 2px 8px;
2640
+ }
2641
+
2642
+ .chat-element-hover .chat-element-hover-row {
2643
+ display: contents;
2644
+ }
2645
+
2646
+ .chat-element-hover .chat-element-hover-label {
2647
+ font-family: var(--monaco-monospace-font);
2648
+ font-size: 12px;
2649
+ color: var(--vscode-debugTokenExpression-name);
2650
+ white-space: nowrap;
2651
+ }
2652
+
2653
+ .chat-element-hover .chat-element-hover-value {
2654
+ font-family: var(--monaco-monospace-font);
2655
+ font-size: 12px;
2656
+ color: var(--vscode-editor-foreground);
2657
+ word-break: break-all;
2658
+ display: flex;
2659
+ align-items: center;
2660
+ gap: 4px;
2661
+ }
2662
+
2663
+ .chat-element-hover .chat-element-hover-color-swatch {
2664
+ display: inline-block;
2665
+ width: 12px;
2666
+ height: 12px;
2667
+ border: 1px solid var(--vscode-editorWidget-border, rgba(127, 127, 127, 0.4));
2668
+ border-radius: 2px;
2669
+ flex-shrink: 0;
2670
+ }
2671
+
2672
+ .chat-element-hover .chat-element-hover-text {
2673
+ font-family: var(--monaco-monospace-font);
2674
+ font-size: 12px;
2675
+ color: var(--vscode-editor-foreground);
2676
+ white-space: pre-wrap;
2677
+ word-break: break-word;
2678
+ }
2679
+
2680
+ .chat-element-hover .chat-element-hover-show-more {
2681
+ background: none;
2682
+ border: none;
2683
+ padding: 0;
2684
+ margin-top: 6px;
2685
+ color: var(--vscode-textLink-foreground);
2686
+ cursor: pointer;
2687
+ font-size: 12px;
2688
+ text-decoration: none;
2689
+ }
2690
+
2691
+ .chat-element-hover .chat-element-hover-show-more:hover,
2692
+ .chat-element-hover .chat-element-hover-show-more:focus-visible {
2693
+ color: var(--vscode-textLink-activeForeground);
2694
+ }
2695
+
2329
2696
 
2330
2697
  .chat-attached-context-attachment .chat-attached-context-pill {
2331
2698
  font-size: 12px;
@@ -2338,8 +2705,9 @@ have to be updated for changes to the rules above, or to support more deeply nes
2338
2705
  outline: none;
2339
2706
  border: none;
2340
2707
 
2341
- .codicon.codicon-file-media {
2708
+ .codicon.codicon-file-media, .codicon.codicon-warning {
2342
2709
  font-size: 12px;
2710
+ margin-right: 2px;
2343
2711
  }
2344
2712
  }
2345
2713
 
@@ -2464,7 +2832,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
2464
2832
 
2465
2833
  .interactive-item-container.interactive-request .value .rendered-markdown {
2466
2834
  background-color: var(--vscode-chat-requestBubbleBackground);
2467
- border-radius: 8px;
2835
+ border-radius: var(--vscode-cornerRadius-xLarge);
2468
2836
  padding: 8px 12px;
2469
2837
  max-width: 90%;
2470
2838
  margin-left: auto;
@@ -2522,15 +2890,25 @@ have to be updated for changes to the rules above, or to support more deeply nes
2522
2890
  }
2523
2891
 
2524
2892
  .interactive-request .header.partially-disabled .detail-container {
2525
- margin-left: 4px;
2893
+ margin-left: 0px;
2526
2894
  }
2527
2895
 
2528
2896
  .interactive-item-container .header .detail .codicon-check {
2529
2897
  margin-right: 7px;
2530
2898
  vertical-align: middle;
2531
2899
  font-size: 11px;
2900
+ display: none;
2532
2901
  }
2533
2902
 
2903
+ .interactive-item-container .header.partially-disabled .detail.show-checkmarks {
2904
+ margin-left: 4px;
2905
+
2906
+ .codicon-check {
2907
+ display: inline;
2908
+ }
2909
+ }
2910
+
2911
+
2534
2912
  .request-hover {
2535
2913
  position: absolute;
2536
2914
  overflow: hidden;
@@ -2580,65 +2958,101 @@ have to be updated for changes to the rules above, or to support more deeply nes
2580
2958
  display: flex;
2581
2959
  width: 100%;
2582
2960
  position: relative;
2961
+ align-items: center;
2962
+ gap: 4px;
2963
+ margin-top: 0;
2964
+ margin-bottom: 8px;
2583
2965
 
2584
- .checkpoint-divider {
2585
- border-top: 1px dashed var(--vscode-chat-checkpointSeparator);
2586
- margin: 15px 0;
2587
- width: 100%;
2588
- height: 0;
2966
+ .checkpoint-line-left,
2967
+ .checkpoint-line-right {
2968
+ flex: 1;
2969
+ height: 1px;
2970
+ background-color: var(--vscode-chat-requestBorder, var(--vscode-input-background));
2589
2971
  }
2590
2972
 
2591
- .codicon-container {
2592
- color: var(--vscode-descriptionForeground);
2593
- padding-right: 4px;
2594
- display: flex;
2595
- align-items: center;
2596
- gap: 4px;
2973
+ .checkpoint-line-left {
2974
+ mask-image: linear-gradient(to right, transparent, black);
2975
+ -webkit-mask-image: linear-gradient(to right, transparent, black);
2597
2976
  }
2598
2977
 
2599
- .codicon-container .codicon {
2600
- font-size: 14px;
2601
- color: var(--vscode-chat-checkpointSeparator);
2978
+ .checkpoint-line-right {
2979
+ mask-image: linear-gradient(to left, transparent, black);
2980
+ -webkit-mask-image: linear-gradient(to left, transparent, black);
2602
2981
  }
2603
2982
 
2604
2983
  .monaco-toolbar {
2605
- opacity: 0;
2606
2984
  height: fit-content;
2607
2985
  width: fit-content;
2608
2986
  user-select: none;
2609
- position: absolute;
2610
- top: 4px;
2611
- margin-left: 25px;
2612
- background: var(--vscode-sideBar-background);
2987
+ flex-shrink: 0;
2988
+ gap: 4px;
2613
2989
  }
2614
2990
 
2615
2991
  .monaco-toolbar .action-label {
2616
- border: 1px solid var(--vscode-chat-requestBorder, var(--vscode-input-background));
2992
+ font-size: 12px;
2993
+ line-height: 18px;
2994
+ color: var(--vscode-descriptionForeground);
2995
+ border: 1px solid transparent;
2996
+ background-color: transparent;
2617
2997
  padding: 1px 5px;
2998
+ margin-right: 5px;
2999
+ }
3000
+
3001
+ .monaco-toolbar .action-label.codicon.codicon-repo-forked {
3002
+ width: fit-content;
3003
+ padding: 2px 5px;
3004
+ }
3005
+
3006
+ .monaco-toolbar .actions-container > .action-item:not(:first-child):has(.action-label.codicon.codicon-repo-forked) {
3007
+ display: flex;
3008
+ align-items: center;
3009
+ gap: 4px;
3010
+ }
3011
+
3012
+ .monaco-toolbar .actions-container > .action-item:not(:first-child):has(.action-label.codicon.codicon-repo-forked)::before {
3013
+ content: '\00B7';
3014
+ font-size: 12px;
3015
+ line-height: 18px;
3016
+ color: var(--vscode-descriptionForeground);
3017
+ }
3018
+
3019
+ .monaco-toolbar .action-label:hover {
3020
+ color: var(--vscode-foreground);
3021
+ border-color: var(--vscode-chat-requestBorder, var(--vscode-input-background));
2618
3022
  background-color: var(--vscode-sideBar-background);
2619
3023
  }
2620
3024
  }
2621
3025
 
3026
+ .checkpoint-container {
3027
+ opacity: 0;
3028
+ transition: opacity 0.1s ease-in-out;
3029
+ }
3030
+
2622
3031
  .checkpoint-restore-container {
2623
3032
  margin-top: 10px;
2624
3033
 
2625
3034
  .checkpoint-label-text {
2626
3035
  font-size: 12px;
3036
+ line-height: 18px;
2627
3037
  color: var(--vscode-descriptionForeground);
2628
- background-color: var(--vscode-sideBar-background);
2629
- padding: 4px;
2630
3038
  display: flex;
2631
3039
  align-items: center;
2632
- gap: 4px;
2633
- position: absolute;
2634
- margin-left: 71px;
2635
- margin-top: 2px;
3040
+ flex-shrink: 0;
3041
+ padding: 1px 5px;
3042
+ border: 1px solid transparent;
3043
+ }
3044
+
3045
+ .checkpoint-dot-separator {
3046
+ font-size: 12px;
3047
+ line-height: 18px;
3048
+ color: var(--vscode-descriptionForeground);
3049
+ flex-shrink: 0;
2636
3050
  }
2637
3051
  }
2638
3052
 
2639
- .checkpoint-container .monaco-toolbar:focus-within,
2640
- .checkpoint-restore-container .monaco-toolbar,
2641
- .interactive-item-container.interactive-request:not(.editing):hover .checkpoint-container .monaco-toolbar {
3053
+ .checkpoint-container:focus-within,
3054
+ .checkpoint-container.group-hovered,
3055
+ .interactive-item-container.interactive-request:not(.editing):hover .checkpoint-container {
2642
3056
  opacity: 1;
2643
3057
  }
2644
3058
 
@@ -2650,7 +3064,7 @@ have to be updated for changes to the rules above, or to support more deeply nes
2650
3064
  overflow: visible !important;
2651
3065
  }
2652
3066
 
2653
- .interactive-list > .monaco-list > .monaco-scrollable-element > .monaco-list-rows > .monaco-list-row.monaco-list-row.focused.request {
3067
+ .interactive-list > .monaco-list > .monaco-scrollable-element > .monaco-list-rows > .monaco-list-row.focused.request {
2654
3068
  outline: none !important;
2655
3069
  }
2656
3070
 
@@ -2678,6 +3092,10 @@ have to be updated for changes to the rules above, or to support more deeply nes
2678
3092
  .request-hover:not(.has-no-actions) {
2679
3093
  display: block;
2680
3094
  }
3095
+
3096
+ .checkpoint-container {
3097
+ opacity: 1;
3098
+ }
2681
3099
  }
2682
3100
 
2683
3101
  .interactive-request.editing .rendered-markdown,
@@ -2924,3 +3342,8 @@ have to be updated for changes to the rules above, or to support more deeply nes
2924
3342
  letter-spacing: 0.5px;
2925
3343
  color: var(--vscode-descriptionForeground);
2926
3344
  }
3345
+
3346
+ /* Outline removal except for HC themes */
3347
+ .monaco-workbench:not(.hc-black):not(.hc-light) .interactive-list > .monaco-list > .monaco-scrollable-element > .monaco-list-rows > .monaco-list-row.focused.response {
3348
+ outline: none !important;
3349
+ }