@codingame/monaco-vscode-workbench-service-override 37.2.0 → 37.3.1

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 (325) hide show
  1. package/common.d.ts +3 -0
  2. package/common.js +29 -0
  3. package/index.d.ts +1 -1
  4. package/index.js +25 -32
  5. package/package.json +18 -8
  6. package/session.d.ts +4 -0
  7. package/session.js +260 -0
  8. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostLocationPreferenceService.d.ts +24 -0
  9. package/vscode/src/vs/platform/agentHost/browser/remoteAgentHostLocationPreferenceService.js +71 -0
  10. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.d.ts +7 -0
  11. package/vscode/src/vs/platform/agentHost/common/remoteAgentHostLocationPreference.js +7 -0
  12. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.d.ts +50 -0
  13. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.js +120 -0
  14. package/vscode/src/vs/sessions/browser/media/sessions-logo-dark.svg +6 -0
  15. package/vscode/src/vs/sessions/browser/media/sessions-logo-light.svg +6 -0
  16. package/vscode/src/vs/sessions/browser/media/sessionsSetUp.css +72 -0
  17. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.d.ts +116 -0
  18. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.js +566 -0
  19. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.d.ts +43 -0
  20. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.js +308 -0
  21. package/vscode/src/vs/sessions/browser/parts/chatGroupView.d.ts +108 -0
  22. package/vscode/src/vs/sessions/browser/parts/chatGroupView.js +324 -0
  23. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.d.ts +136 -0
  24. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.js +771 -0
  25. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.d.ts +43 -0
  26. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.js +113 -0
  27. package/vscode/src/vs/sessions/browser/parts/customViewGridParts.d.ts +17 -0
  28. package/vscode/src/vs/sessions/browser/parts/customViewGridParts.js +31 -0
  29. package/vscode/src/vs/sessions/browser/parts/customViewNode.d.ts +24 -0
  30. package/vscode/src/vs/sessions/browser/parts/customViewNode.js +131 -0
  31. package/vscode/src/vs/sessions/browser/parts/editorPart.d.ts +11 -0
  32. package/vscode/src/vs/sessions/browser/parts/editorPart.js +36 -0
  33. package/vscode/src/vs/sessions/browser/parts/editorParts.d.ts +12 -0
  34. package/vscode/src/vs/sessions/browser/parts/editorParts.js +45 -0
  35. package/vscode/src/vs/sessions/browser/parts/media/chatCompositeBar.css +559 -0
  36. package/vscode/src/vs/sessions/browser/parts/media/chatGroupDropTarget.css +27 -0
  37. package/vscode/src/vs/sessions/browser/parts/media/chatGroupsView.css +60 -0
  38. package/vscode/src/vs/sessions/browser/parts/media/customViewGridPart.css +108 -0
  39. package/vscode/src/vs/sessions/browser/parts/media/editorPart.css +210 -0
  40. package/vscode/src/vs/sessions/browser/parts/media/remoteHostUnavailableEmptyState.css +81 -0
  41. package/vscode/src/vs/sessions/browser/parts/media/sessionDropTarget.css +31 -0
  42. package/vscode/src/vs/sessions/browser/parts/media/sessionReadOnlyBanner.css +87 -0
  43. package/vscode/src/vs/sessions/browser/parts/media/sessionView.css +107 -0
  44. package/vscode/src/vs/sessions/browser/parts/media/sessionsPart.css +134 -0
  45. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.d.ts +1 -0
  46. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.js +79 -0
  47. package/vscode/src/vs/sessions/browser/parts/mobile/mobileCustomViewGridPart.d.ts +13 -0
  48. package/vscode/src/vs/sessions/browser/parts/mobile/mobileCustomViewGridPart.js +33 -0
  49. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.d.ts +14 -0
  50. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.js +34 -0
  51. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.d.ts +39 -0
  52. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.js +136 -0
  53. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.d.ts +9 -0
  54. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.js +62 -0
  55. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.d.ts +39 -0
  56. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.js +261 -0
  57. package/vscode/src/vs/sessions/browser/parts/sessionHeader.d.ts +97 -0
  58. package/vscode/src/vs/sessions/browser/parts/sessionHeader.js +345 -0
  59. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.d.ts +43 -0
  60. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.js +69 -0
  61. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.d.ts +79 -0
  62. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.js +363 -0
  63. package/vscode/src/vs/sessions/browser/parts/sessionView.d.ts +125 -0
  64. package/vscode/src/vs/sessions/browser/parts/sessionView.js +300 -0
  65. package/vscode/src/vs/sessions/browser/parts/sessionsPart.d.ts +124 -0
  66. package/vscode/src/vs/sessions/browser/parts/sessionsPart.js +336 -0
  67. package/vscode/src/vs/sessions/browser/parts/sessionsParts.d.ts +33 -0
  68. package/vscode/src/vs/sessions/browser/parts/sessionsParts.js +62 -0
  69. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.d.ts +13 -0
  70. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +36 -0
  71. package/vscode/src/vs/sessions/browser/parts/singlePaneEditorPart.d.ts +65 -0
  72. package/vscode/src/vs/sessions/browser/parts/singlePaneEditorPart.js +178 -0
  73. package/vscode/src/vs/sessions/browser/sessionWorkspace.d.ts +12 -0
  74. package/vscode/src/vs/sessions/browser/sessionWorkspace.js +19 -0
  75. package/vscode/src/vs/sessions/browser/sessionsSetUpService.d.ts +24 -0
  76. package/vscode/src/vs/sessions/browser/sessionsSetUpService.js +598 -0
  77. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.d.ts +25 -0
  78. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.js +91 -0
  79. package/vscode/src/vs/sessions/common/welcome.d.ts +1 -0
  80. package/vscode/src/vs/sessions/common/welcome.js +5 -0
  81. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.d.ts +11 -0
  82. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +1052 -0
  83. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.d.ts +23 -0
  84. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +168 -0
  85. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountTitleBarWidget.css +646 -0
  86. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountWidget.css +231 -0
  87. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/chatPetAchievementBadges.css +120 -0
  88. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.d.ts +53 -0
  89. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.js +99 -0
  90. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.d.ts +1 -0
  91. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +270 -0
  92. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.d.ts +62 -0
  93. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +606 -0
  94. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/media/aiCustomizationTreeView.css +116 -0
  95. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.d.ts +1 -0
  96. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +97 -0
  97. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.d.ts +72 -0
  98. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +776 -0
  99. package/vscode/src/vs/sessions/contrib/aquarium/browser/fish.d.ts +68 -0
  100. package/vscode/src/vs/sessions/contrib/aquarium/browser/fish.js +153 -0
  101. package/vscode/src/vs/sessions/contrib/aquarium/browser/fishFeedingStreak.d.ts +58 -0
  102. package/vscode/src/vs/sessions/contrib/aquarium/browser/fishFeedingStreak.js +172 -0
  103. package/vscode/src/vs/sessions/contrib/aquarium/browser/media/aquarium.css +316 -0
  104. package/vscode/src/vs/sessions/contrib/aquarium/browser/vscodeLogoPath.d.ts +1 -0
  105. package/vscode/src/vs/sessions/contrib/aquarium/browser/vscodeLogoPath.js +5 -0
  106. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.d.ts +173 -0
  107. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +1589 -0
  108. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.d.ts +32 -0
  109. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +396 -0
  110. package/vscode/src/vs/sessions/contrib/automations/browser/automationInputCompletions.d.ts +33 -0
  111. package/vscode/src/vs/sessions/contrib/automations/browser/automationInputCompletions.js +216 -0
  112. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +37 -0
  113. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +126 -0
  114. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.d.ts +21 -0
  115. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +294 -0
  116. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +59 -0
  117. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +232 -0
  118. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +13 -0
  119. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +22 -0
  120. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.d.ts +60 -0
  121. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +1256 -0
  122. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.d.ts +1 -0
  123. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +88 -0
  124. package/vscode/src/vs/sessions/contrib/automations/browser/media/automationDialog.css +746 -0
  125. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.d.ts +62 -0
  126. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +493 -0
  127. package/vscode/src/vs/sessions/contrib/automations/common/isolationGroupModel.d.ts +38 -0
  128. package/vscode/src/vs/sessions/contrib/automations/common/isolationGroupModel.js +123 -0
  129. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +45 -0
  130. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +110 -0
  131. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.contribution.d.ts +1 -0
  132. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.contribution.js +5 -0
  133. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.d.ts +31 -0
  134. package/vscode/src/vs/sessions/contrib/browserView/browser/sessionBrowserView.js +137 -0
  135. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.d.ts +1 -0
  136. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +130 -0
  137. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.d.ts +8 -0
  138. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +385 -0
  139. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.d.ts +28 -0
  140. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.js +76 -0
  141. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.d.ts +1 -0
  142. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +509 -0
  143. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.d.ts +6 -0
  144. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +58 -0
  145. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesActions.css +11 -0
  146. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.d.ts +24 -0
  147. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +188 -0
  148. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.d.ts +15 -0
  149. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +100 -0
  150. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.d.ts +9 -0
  151. package/vscode/src/vs/sessions/contrib/chat/browser/chatViewStateService.js +18 -0
  152. package/vscode/src/vs/sessions/contrib/chat/browser/media/sessionChatInputToolbarDebug.css +59 -0
  153. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.d.ts +47 -0
  154. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +306 -0
  155. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.d.ts +41 -0
  156. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.js +31 -0
  157. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.d.ts +1 -0
  158. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +84 -0
  159. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.d.ts +1 -0
  160. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +111 -0
  161. package/vscode/src/vs/sessions/contrib/customViewTest/browser/media/customViewTest.css +9 -0
  162. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.d.ts +21 -0
  163. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +170 -0
  164. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.d.ts +14 -0
  165. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +425 -0
  166. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.d.ts +1 -0
  167. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +35 -0
  168. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.d.ts +18 -0
  169. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +85 -0
  170. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.d.ts +31 -0
  171. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +125 -0
  172. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorBreadcrumbs.css +66 -0
  173. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorHeader.css +113 -0
  174. package/vscode/src/vs/sessions/contrib/editor/browser/media/emptyFileEditor.css +30 -0
  175. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.contribution.d.ts +1 -0
  176. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.contribution.js +25 -0
  177. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.d.ts +66 -0
  178. package/vscode/src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.js +274 -0
  179. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.d.ts +6 -0
  180. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +100 -0
  181. package/vscode/src/vs/sessions/contrib/files/browser/filesView.d.ts +21 -0
  182. package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +76 -0
  183. package/vscode/src/vs/sessions/contrib/files/browser/media/filesView.css +29 -0
  184. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.d.ts +211 -0
  185. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +587 -0
  186. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +112 -0
  187. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +444 -0
  188. package/vscode/src/vs/sessions/contrib/layout/browser/mobileSessionLayoutController.d.ts +13 -0
  189. package/vscode/src/vs/sessions/contrib/layout/browser/mobileSessionLayoutController.js +8 -0
  190. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.d.ts +1 -0
  191. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +68 -0
  192. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDetailPanelCoordinator.d.ts +32 -0
  193. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDetailPanelCoordinator.js +81 -0
  194. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDockedTabsCoordinator.d.ts +111 -0
  195. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDockedTabsCoordinator.js +513 -0
  196. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDraftSessionStrategy.d.ts +44 -0
  197. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneDraftSessionStrategy.js +423 -0
  198. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneExistingSessionStrategy.d.ts +62 -0
  199. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneExistingSessionStrategy.js +435 -0
  200. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneLayoutStrategy.d.ts +46 -0
  201. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneLayoutStrategy.js +11 -0
  202. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.d.ts +11 -0
  203. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +43 -0
  204. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneVisibilityProfileStore.d.ts +21 -0
  205. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneVisibilityProfileStore.js +77 -0
  206. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +55 -0
  207. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +91 -0
  208. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/agentHostReadinessContext.d.ts +11 -0
  209. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/agentHostReadinessContext.js +39 -0
  210. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.d.ts +1 -0
  211. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.js +109 -0
  212. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.d.ts +1 -0
  213. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.js +123 -0
  214. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.d.ts +24 -0
  215. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.js +67 -0
  216. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.d.ts +1 -0
  217. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.js +47 -0
  218. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.d.ts +79 -0
  219. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +1277 -0
  220. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3TourContribution.d.ts +1 -0
  221. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3TourContribution.js +75 -0
  222. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.d.ts +34 -0
  223. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +53 -0
  224. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.d.ts +40 -0
  225. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +69 -0
  226. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.d.ts +4 -0
  227. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +38 -0
  228. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.d.ts +6 -0
  229. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +63 -0
  230. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.d.ts +15 -0
  231. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.js +49 -0
  232. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/media/sessionsPolicyBlocked.css +125 -0
  233. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.d.ts +20 -0
  234. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.js +98 -0
  235. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.d.ts +39 -0
  236. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +218 -0
  237. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.d.ts +53 -0
  238. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +496 -0
  239. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +27 -0
  240. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +26 -0
  241. package/vscode/src/vs/sessions/contrib/search/browser/media/searchEditorEmptyState.css +15 -0
  242. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.d.ts +1 -0
  243. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +79 -0
  244. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.d.ts +7 -0
  245. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +57 -0
  246. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsCIFixModel.d.ts +39 -0
  247. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsCIFixModel.js +155 -0
  248. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.d.ts +117 -0
  249. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +320 -0
  250. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.d.ts +65 -0
  251. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +129 -0
  252. package/vscode/src/vs/sessions/contrib/sessions/browser/media/automationsCards.css +624 -0
  253. package/vscode/src/vs/sessions/contrib/sessions/browser/media/blockedSessionsList.css +111 -0
  254. package/vscode/src/vs/sessions/contrib/sessions/browser/media/newSessionActionViewItem.css +112 -0
  255. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsTitleBarWidget.css +159 -0
  256. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionActionFeedback.d.ts +26 -0
  257. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionActionFeedback.js +26 -0
  258. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.d.ts +2 -0
  259. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +77 -0
  260. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.d.ts +1 -0
  261. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +162 -0
  262. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.d.ts +111 -0
  263. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +1550 -0
  264. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsMouseNavigation.d.ts +13 -0
  265. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsMouseNavigation.js +69 -0
  266. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsPicker.d.ts +10 -0
  267. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsPicker.js +33 -0
  268. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.d.ts +126 -0
  269. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.js +724 -0
  270. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.d.ts +150 -0
  271. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +526 -0
  272. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTypedCharactersTracker.d.ts +64 -0
  273. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTypedCharactersTracker.js +99 -0
  274. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.d.ts +37 -0
  275. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +160 -0
  276. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.d.ts +19 -0
  277. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +74 -0
  278. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.d.ts +4 -0
  279. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +228 -0
  280. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.d.ts +53 -0
  281. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +2143 -0
  282. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.d.ts +12 -0
  283. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +1270 -0
  284. package/vscode/src/vs/sessions/contrib/workspace/browser/workspace.contribution.d.ts +1 -0
  285. package/vscode/src/vs/sessions/contrib/workspace/browser/workspace.contribution.js +5 -0
  286. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.d.ts +28 -0
  287. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.js +95 -0
  288. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.d.ts +79 -0
  289. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.js +259 -0
  290. package/vscode/src/vs/sessions/services/customView/browser/customView.d.ts +42 -0
  291. package/vscode/src/vs/sessions/services/customView/browser/customView.js +15 -0
  292. package/vscode/src/vs/sessions/services/customView/browser/customViewService.d.ts +21 -0
  293. package/vscode/src/vs/sessions/services/customView/browser/customViewService.js +68 -0
  294. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.d.ts +72 -0
  295. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.js +115 -0
  296. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.d.ts +77 -0
  297. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.js +330 -0
  298. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.d.ts +67 -0
  299. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.js +157 -0
  300. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.d.ts +32 -0
  301. package/vscode/src/vs/sessions/services/sessions/browser/sessionOpenTelemetryService.js +162 -0
  302. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.d.ts +40 -0
  303. package/vscode/src/vs/sessions/services/sessions/browser/sessionSectionOrderService.js +170 -0
  304. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.d.ts +63 -0
  305. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.js +419 -0
  306. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.d.ts +229 -0
  307. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +1212 -0
  308. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.d.ts +22 -0
  309. package/vscode/src/vs/sessions/services/sessions/browser/sessionsProvidersService.js +42 -0
  310. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.d.ts +43 -0
  311. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.js +103 -0
  312. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.d.ts +243 -0
  313. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +1121 -0
  314. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.d.ts +8 -0
  315. package/vscode/src/vs/sessions/services/sessions/browser/sessionsWindowUsageService.js +24 -0
  316. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.d.ts +321 -0
  317. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.js +729 -0
  318. package/vscode/src/vs/sessions/services/sessions/browser/worktreeTrust.d.ts +23 -0
  319. package/vscode/src/vs/sessions/services/sessions/browser/worktreeTrust.js +23 -0
  320. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.d.ts +32 -0
  321. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.js +103 -0
  322. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.d.ts +16 -0
  323. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.js +41 -0
  324. package/vscode/src/vs/workbench/browser/layout.js +7 -7
  325. package/vscode/src/vs/workbench/browser/workbench.js +3 -3
@@ -0,0 +1,75 @@
1
+
2
+ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
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 { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
6
+ import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
7
+ import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
8
+ import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service';
9
+ import { ITelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service';
10
+ import { registerWorkbenchContribution2, WorkbenchPhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
11
+ import { IGitService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/git/common/gitService.service';
12
+ import { onboardingScenarioRegistry } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingRegistry';
13
+ import { IOnboardingScenarioService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenarioService.service';
14
+ import { IWorkbenchAssignmentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/assignment/common/assignmentService.service';
15
+ import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
16
+ import { ISessionsService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsService.service';
17
+ import { INewSessionComposerService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/chat/browser/newSessionComposerService.service';
18
+ import { IGitHubService } from '@codingame/monaco-vscode-api/vscode/vs/sessions/contrib/github/browser/githubService.service';
19
+ import { NewSessionViewV3PromptRunner } from './newSessionViewV3Prompt.js';
20
+ import { NewSessionViewTourTrigger } from './newSessionViewTourTrigger.js';
21
+ import { NEW_SESSION_VIEW_V3_TOUR_ID, createNewSessionViewV3Tour } from './tours/newSessionViewV3Tour.js';
22
+
23
+ let NewSessionViewV3TourContribution = class NewSessionViewV3TourContribution extends Disposable {
24
+ static {
25
+ this.ID = "sessions.contrib.onboardingTours.newSessionViewV3Tour";
26
+ }
27
+ constructor(
28
+ onboardingScenarioService,
29
+ _sessionsService,
30
+ storageService,
31
+ configurationService,
32
+ contextKeyService,
33
+ chatEntitlementService,
34
+ _newSessionComposerService,
35
+ assignmentService,
36
+ gitService,
37
+ fileService,
38
+ gitHubService,
39
+ telemetryService,
40
+ logService
41
+ ) {
42
+ super();
43
+ this._sessionsService = _sessionsService;
44
+ this._newSessionComposerService = _newSessionComposerService;
45
+ const trigger = this._register(( new NewSessionViewTourTrigger(
46
+ NEW_SESSION_VIEW_V3_TOUR_ID,
47
+ onboardingScenarioService,
48
+ this._sessionsService,
49
+ storageService,
50
+ configurationService,
51
+ contextKeyService,
52
+ chatEntitlementService
53
+ )));
54
+ const promptRunner = ( new NewSessionViewV3PromptRunner(
55
+ assignmentService,
56
+ configurationService,
57
+ this._sessionsService,
58
+ this._newSessionComposerService,
59
+ gitService,
60
+ fileService,
61
+ gitHubService,
62
+ telemetryService,
63
+ logService
64
+ ));
65
+ this._register(onboardingScenarioRegistry.register(
66
+ createNewSessionViewV3Tour(trigger.signal, token => promptRunner.run(token))
67
+ ));
68
+ }
69
+ };
70
+ NewSessionViewV3TourContribution = ( __decorate([( __param(0, IOnboardingScenarioService)), ( __param(1, ISessionsService)), ( __param(2, IStorageService)), ( __param(3, IConfigurationService)), ( __param(4, IContextKeyService)), ( __param(5, IChatEntitlementService)), ( __param(6, INewSessionComposerService)), ( __param(7, IWorkbenchAssignmentService)), ( __param(8, IGitService)), ( __param(9, IFileService)), ( __param(10, IGitHubService)), ( __param(11, ITelemetryService)), ( __param(12, ILogService))], NewSessionViewV3TourContribution));
71
+ registerWorkbenchContribution2(
72
+ NewSessionViewV3TourContribution.ID,
73
+ NewSessionViewV3TourContribution,
74
+ WorkbenchPhase.AfterRestored
75
+ );
@@ -0,0 +1,34 @@
1
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
2
+ import { IOnboardingScenario } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenario";
3
+ import { ISpotlightPayload } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
4
+ /**
5
+ * Spotlight steps shown after the user presses the pulsing "New Session"
6
+ * button. The tour runs in the new-session view and teaches the workspace and
7
+ * isolation options:
8
+ *
9
+ * 1. The workspace picker.
10
+ * 2. The isolation picker (worktree vs folder).
11
+ *
12
+ * Each `targetId` matches a `data-onboarding-id` set via `markOnboardingTarget`:
13
+ * - `sessions.newSession.workspacePicker` — contrib/chat/browser/sessionWorkspacePicker.ts
14
+ * - `sessions.newSession.isolation` — provider-specific config/isolation pickers
15
+ */
16
+ export declare const NEW_SESSION_TOUR_ID = "sessions.onboarding.newSession";
17
+ /**
18
+ * Shared "shown" persistence key for the new-session onboarding tours. The
19
+ * The new-session tour variants teach the same setup flow, so they record their
20
+ * once-per-user state under this single key.
21
+ *
22
+ * The value matches {@link NEW_SESSION_TOUR_ID} so users who already saw the
23
+ * original tour (state persisted under that id) are not shown the variant.
24
+ */
25
+ export declare const NEW_SESSION_ONBOARDING_SEEN_KEY = "sessions.onboarding.newSession";
26
+ /**
27
+ * Builds the "new session" tour scenario. The provided `signal` controls *when*
28
+ * the spotlight steps become eligible — it is driven by
29
+ * {@link NewSessionTourContribution}, which flips it after the eligible user
30
+ * presses the pulsing New Session button.
31
+ * `ChatContextKeys.enabled` keeps the tour hidden when AI features are disabled.
32
+ * The modal-editor gate keeps the tour hidden while a modal editor is showing.
33
+ */
34
+ export declare function createNewSessionTour(signal: IObservable<boolean>): IOnboardingScenario<ISpotlightPayload>;
@@ -0,0 +1,53 @@
1
+
2
+ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
3
+ import { EditorPartModalContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
4
+ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
5
+ import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
6
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
7
+
8
+ const NEW_SESSION_TOUR_ID = "sessions.onboarding.newSession";
9
+ const NEW_SESSION_ONBOARDING_SEEN_KEY = NEW_SESSION_TOUR_ID;
10
+ const NEW_SESSION_EXPERIMENT = {
11
+ behaviorFlag: "onb.newSession.show",
12
+ assignmentContextIdFlag: "onb.newSession.id"
13
+ };
14
+ const newSessionPayload = {
15
+ steps: [{
16
+ id: "workspacePicker",
17
+ targetId: "sessions.newSession.workspacePicker",
18
+ title: ( localize(4117, "Work Across Workspaces")),
19
+ description: ( localize(
20
+ 4118,
21
+ "Choose between the folders and repositories you work in. Run multiple sessions at once in a single workspace, or across many."
22
+ )),
23
+ placement: "above"
24
+ }, {
25
+ id: "isolation",
26
+ targetId: "sessions.newSession.isolation",
27
+ title: ( localize(4119, "Isolate Your Work")),
28
+ description: ( localize(
29
+ 4120,
30
+ "Use a worktree to work on multiple tasks in the same project without conflicts. Each task stays isolated, so you can experiment freely and safely."
31
+ )),
32
+ placement: "below"
33
+ }]
34
+ };
35
+ function createNewSessionTour(signal) {
36
+ return {
37
+ id: NEW_SESSION_TOUR_ID,
38
+ seenKey: NEW_SESSION_ONBOARDING_SEEN_KEY,
39
+ when: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( EditorPartModalContext.toNegated()))),
40
+ trigger: {
41
+ kind: "observable",
42
+ signal
43
+ },
44
+ priority: 100,
45
+ experiment: NEW_SESSION_EXPERIMENT,
46
+ presentation: {
47
+ kind: SPOTLIGHT_PRESENTATION_KIND,
48
+ payload: newSessionPayload
49
+ }
50
+ };
51
+ }
52
+
53
+ export { NEW_SESSION_ONBOARDING_SEEN_KEY, NEW_SESSION_TOUR_ID, createNewSessionTour };
@@ -0,0 +1,40 @@
1
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
2
+ import { IOnboardingScenario } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenario";
3
+ import { ISpotlightPayload } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
4
+ /**
5
+ * Spotlight steps that walk a brand-new user through the new-session view the
6
+ * first time they open the Agents window with it showing. The tour teaches the
7
+ * three pickers that shape a session:
8
+ *
9
+ * 1. The workspace picker — work in one workspace or many at the same time.
10
+ * 2. The harness picker — choose Copilot, Claude or Codex, each running the
11
+ * agent with its own agent loop.
12
+ * 3. The isolation picker — pick a worktree to run several tasks at once in the
13
+ * same workspace, fully isolated from each other.
14
+ *
15
+ * Each `targetId` matches a `data-onboarding-id` set via `markOnboardingTarget`:
16
+ * - `sessions.newSession.workspacePicker` — contrib/chat/browser/sessionWorkspacePicker.ts
17
+ * - `sessions.newSession.harnessPicker` — contrib/chat/browser/sessionTypePicker.ts
18
+ * - `sessions.newSession.isolation` — provider-specific config/isolation pickers
19
+ *
20
+ * Each step is additionally gated on a `*PickerVisible` context key the picker
21
+ * keeps in sync with its real visibility. This skips a step whose picker is
22
+ * rendered but not actually shown — e.g. the harness picker hidden because only
23
+ * a single harness can serve the folder, or the isolation picker disabled
24
+ * because the workspace has no git repository. A step whose target element is
25
+ * missing entirely is also skipped automatically.
26
+ */
27
+ export declare const NEW_SESSION_VIEW_TOUR_ID = "sessions.onboarding.newSessionView";
28
+ /**
29
+ * Builds the "new session view" tour scenario. The provided `signal` controls
30
+ * *when* the spotlight steps become eligible — it is driven by
31
+ * {@link NewSessionViewTourContribution}, which flips it once an eligible
32
+ * (brand-new) user has the new-session view open and rendered.
33
+ * `ChatContextKeys.enabled` keeps the tour hidden when AI features are disabled.
34
+ * The modal-editor gate keeps the tour hidden while a modal editor is showing.
35
+ *
36
+ * Shares {@link NEW_SESSION_ONBOARDING_SEEN_KEY} with the pulsing-button
37
+ * {@link createNewSessionTour} variant, so a user who has seen either tour is
38
+ * never shown the other.
39
+ */
40
+ export declare function createNewSessionViewTour(signal: IObservable<boolean>): IOnboardingScenario<ISpotlightPayload>;
@@ -0,0 +1,69 @@
1
+
2
+ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
3
+ import { EditorPartModalVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
4
+ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
5
+ import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
6
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
7
+ import { NEW_SESSION_ONBOARDING_SEEN_KEY } from './newSessionTour.js';
8
+ import { SessionWorkspacePickerVisibleContext, SessionHarnessPickerVisibleContext, SessionIsolationPickerVisibleContext, IsNewChatSessionContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
9
+
10
+ const NEW_SESSION_VIEW_TOUR_ID = "sessions.onboarding.newSessionView";
11
+ const NEW_SESSION_VIEW_EXPERIMENT = {
12
+ behaviorFlag: "onb.newSessionView.show",
13
+ assignmentContextIdFlag: "onb.newSessionView.id"
14
+ };
15
+ const newSessionViewPayload = {
16
+ steps: [{
17
+ id: "workspacePicker",
18
+ targetId: "sessions.newSession.workspacePicker",
19
+ title: ( localize(4121, "Work Across Workspaces")),
20
+ description: ( localize(
21
+ 4122,
22
+ "Choose between the folders and repositories you work in. Run multiple sessions at once in a single workspace, or across many."
23
+ )),
24
+ placement: "above",
25
+ when: SessionWorkspacePickerVisibleContext,
26
+ allowTargetInteraction: true
27
+ }, {
28
+ id: "harnessPicker",
29
+ targetId: "sessions.newSession.harnessPicker",
30
+ title: ( localize(4123, "Choose a Harness")),
31
+ description: ( localize(
32
+ 4124,
33
+ "Each has different strengths; choose what works best for your task and switch anytime."
34
+ )),
35
+ placement: "above",
36
+ when: SessionHarnessPickerVisibleContext,
37
+ allowTargetInteraction: true
38
+ }, {
39
+ id: "isolation",
40
+ targetId: "sessions.newSession.isolation",
41
+ title: ( localize(4125, "Isolate Your Work")),
42
+ description: ( localize(
43
+ 4126,
44
+ "Use a worktree to work on multiple tasks in the same project without conflicts. Each task stays isolated, so you can experiment freely and safely."
45
+ )),
46
+ placement: "below",
47
+ when: SessionIsolationPickerVisibleContext,
48
+ allowTargetInteraction: true
49
+ }]
50
+ };
51
+ function createNewSessionViewTour(signal) {
52
+ return {
53
+ id: NEW_SESSION_VIEW_TOUR_ID,
54
+ seenKey: NEW_SESSION_ONBOARDING_SEEN_KEY,
55
+ when: ( ContextKeyExpr.and(ChatContextKeys.enabled, IsNewChatSessionContext, ( EditorPartModalVisibleContext.toNegated()))),
56
+ trigger: {
57
+ kind: "observable",
58
+ signal
59
+ },
60
+ priority: 100,
61
+ experiment: NEW_SESSION_VIEW_EXPERIMENT,
62
+ presentation: {
63
+ kind: SPOTLIGHT_PRESENTATION_KIND,
64
+ payload: newSessionViewPayload
65
+ }
66
+ };
67
+ }
68
+
69
+ export { NEW_SESSION_VIEW_TOUR_ID, createNewSessionViewTour };
@@ -0,0 +1,4 @@
1
+ import { ContextKeyExpression } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey";
2
+ import { ISpotlightStep } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
3
+ export declare function createNewSessionViewRecentTourWhen(): ContextKeyExpression | undefined;
4
+ export declare function createNewSessionViewWorkspaceStep(): ISpotlightStep;
@@ -0,0 +1,38 @@
1
+
2
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
+ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
4
+ import { EditorPartModalVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
5
+ import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
6
+ import { ChatEntitlementContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
7
+ import { IsNewChatSessionContext, AgentHostSessionTypesAvailableContext, SessionHasWorkspaceContext, SessionWorkspacePickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
8
+
9
+ function createNewSessionViewRecentTourWhen() {
10
+ return ( ContextKeyExpr.and(
11
+ ChatContextKeys.enabled,
12
+ IsNewChatSessionContext,
13
+ AgentHostSessionTypesAvailableContext,
14
+ ( ChatEntitlementContextKeys.Entitlement.signedOut.toNegated()),
15
+ ( EditorPartModalVisibleContext.toNegated())
16
+ ));
17
+ }
18
+ function createNewSessionViewWorkspaceStep() {
19
+ return {
20
+ id: "workspacePicker",
21
+ targetId: "sessions.newSession.workspacePicker",
22
+ title: ( localize(4127, "Choose a workspace")),
23
+ description: ( localize(
24
+ 4128,
25
+ "A workspace is the folder or repository where your agent reads context and makes changes. Choose one so it can understand your project and work on the right files."
26
+ )),
27
+ placement: "above",
28
+ when: ( ContextKeyExpr.and(SessionWorkspacePickerVisibleContext, ( SessionHasWorkspaceContext.toNegated()))),
29
+ missingTarget: {
30
+ kind: "skip"
31
+ },
32
+ openTarget: true,
33
+ allowTargetInteraction: true,
34
+ advanceWhen: SessionHasWorkspaceContext
35
+ };
36
+ }
37
+
38
+ export { createNewSessionViewRecentTourWhen, createNewSessionViewWorkspaceStep };
@@ -0,0 +1,6 @@
1
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
2
+ import { ISpotlightPayload } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes";
3
+ import { IOnboardingScenario } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenario";
4
+ export declare const NEW_SESSION_VIEW_V2_TOUR_ID = "sessions.onboarding.newSessionViewV2";
5
+ /** Builds the interactive new-session view tour. */
6
+ export declare function createNewSessionViewV2Tour(signal: IObservable<boolean>): IOnboardingScenario<ISpotlightPayload>;
@@ -0,0 +1,63 @@
1
+
2
+ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
+ import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
4
+ import { SessionHarnessPickerVisibleContext } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/contextkeys';
5
+ import { NEW_SESSION_ONBOARDING_SEEN_KEY } from './newSessionTour.js';
6
+ import { createNewSessionViewWorkspaceStep, createNewSessionViewRecentTourWhen } from './newSessionViewTourShared.js';
7
+
8
+ const NEW_SESSION_VIEW_V2_TOUR_ID = "sessions.onboarding.newSessionViewV2";
9
+ const NEW_SESSION_VIEW_V2_EXPERIMENT = {
10
+ behaviorFlag: "onb.newSessionViewV2.show",
11
+ assignmentContextIdFlag: "onb.newSessionViewV2.id"
12
+ };
13
+ const WAIT_FOR_PICKER = {
14
+ kind: "wait",
15
+ timeoutMs: 5_000
16
+ };
17
+ const newSessionViewV2Payload = {
18
+ steps: [createNewSessionViewWorkspaceStep(), {
19
+ id: "harnessPicker",
20
+ targetId: "sessions.newSession.harnessPicker",
21
+ title: ( localize(4129, "Choose a harness")),
22
+ description: ( localize(
23
+ 4130,
24
+ "A harness is the agent runtime that plans, uses tools, and carries out your task. Choose one based on the capabilities your work needs."
25
+ )),
26
+ placement: "above",
27
+ missingTarget: WAIT_FOR_PICKER,
28
+ openTarget: false,
29
+ when: SessionHarnessPickerVisibleContext,
30
+ allowTargetInteraction: true
31
+ }, {
32
+ id: "modelPicker",
33
+ targetId: "sessions.newSession.modelPicker",
34
+ title: ( localize(4131, "Choose a model")),
35
+ description: ( localize(
36
+ 4132,
37
+ "The model powers your agent's reasoning. Choose one based on the balance of speed and capability your task needs."
38
+ )),
39
+ placement: "below",
40
+ missingTarget: WAIT_FOR_PICKER,
41
+ openTarget: true,
42
+ allowTargetInteraction: true
43
+ }]
44
+ };
45
+ function createNewSessionViewV2Tour(signal) {
46
+ return {
47
+ id: NEW_SESSION_VIEW_V2_TOUR_ID,
48
+ seenKey: NEW_SESSION_ONBOARDING_SEEN_KEY,
49
+ when: createNewSessionViewRecentTourWhen(),
50
+ trigger: {
51
+ kind: "observable",
52
+ signal
53
+ },
54
+ priority: 110,
55
+ experiment: NEW_SESSION_VIEW_V2_EXPERIMENT,
56
+ presentation: {
57
+ kind: SPOTLIGHT_PRESENTATION_KIND,
58
+ payload: newSessionViewV2Payload
59
+ }
60
+ };
61
+ }
62
+
63
+ export { NEW_SESSION_VIEW_V2_TOUR_ID, createNewSessionViewV2Tour };
@@ -0,0 +1,15 @@
1
+ import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
+ import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
+ import { IOnboardingScenario } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingScenario";
4
+ import { IOnboardingSequencePayload } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingSequence";
5
+ export declare const NEW_SESSION_VIEW_V3_TOUR_ID = "sessions.onboarding.newSessionViewV3";
6
+ export declare const NEW_SESSION_VIEW_V3_PROMPT_VARIATION = "prompt";
7
+ export declare const NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION = "githubPrompt";
8
+ export declare const NEW_SESSION_VIEW_V3_OPTIONS_VARIATION = "options";
9
+ export declare const NEW_SESSION_VIEW_V3_VARIATION_TREATMENT = "onb.newSessionViewV3.variation";
10
+ export declare const NEW_SESSION_VIEW_V3_VARIATIONS: readonly [
11
+ "prompt",
12
+ "githubPrompt",
13
+ "options"
14
+ ];
15
+ export declare function createNewSessionViewV3Tour(signal: IObservable<boolean>, runPromptStep: (token: CancellationToken) => Promise<boolean> | boolean): IOnboardingScenario<IOnboardingSequencePayload>;
@@ -0,0 +1,49 @@
1
+
2
+ import { RUN_ONBOARDING_STEP_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/sequence/runOnboardingStep';
3
+ import { SPOTLIGHT_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/browser/spotlight/spotlightTypes';
4
+ import { ONBOARDING_SEQUENCE_PRESENTATION_KIND } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/onboarding/common/onboardingSequence';
5
+ import { NEW_SESSION_ONBOARDING_SEEN_KEY } from './newSessionTour.js';
6
+ import { createNewSessionViewWorkspaceStep, createNewSessionViewRecentTourWhen } from './newSessionViewTourShared.js';
7
+
8
+ const NEW_SESSION_VIEW_V3_TOUR_ID = 'sessions.onboarding.newSessionViewV3';
9
+ const NEW_SESSION_VIEW_V3_PROMPT_VARIATION = 'prompt';
10
+ const NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION = 'githubPrompt';
11
+ const NEW_SESSION_VIEW_V3_OPTIONS_VARIATION = 'options';
12
+ const NEW_SESSION_VIEW_V3_VARIATION_TREATMENT = 'onb.newSessionViewV3.variation';
13
+ const NEW_SESSION_VIEW_V3_VARIATIONS = [NEW_SESSION_VIEW_V3_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_OPTIONS_VARIATION];
14
+ const NEW_SESSION_VIEW_V3_EXPERIMENT = {
15
+ behaviorFlag: 'onb.newSessionViewV3.show',
16
+ assignmentContextIdFlag: 'onb.newSessionViewV3.id',
17
+ };
18
+ function createNewSessionViewV3Tour(signal, runPromptStep) {
19
+ return {
20
+ id: NEW_SESSION_VIEW_V3_TOUR_ID,
21
+ seenKey: NEW_SESSION_ONBOARDING_SEEN_KEY,
22
+ developerModeVariations: NEW_SESSION_VIEW_V3_VARIATIONS,
23
+ when: createNewSessionViewRecentTourWhen(),
24
+ trigger: { kind: 'observable', signal },
25
+ priority: 120,
26
+ experiment: NEW_SESSION_VIEW_V3_EXPERIMENT,
27
+ presentation: {
28
+ kind: ONBOARDING_SEQUENCE_PRESENTATION_KIND,
29
+ payload: {
30
+ steps: [
31
+ {
32
+ id: 'workspacePicker',
33
+ kind: SPOTLIGHT_PRESENTATION_KIND,
34
+ payload: createNewSessionViewWorkspaceStep(),
35
+ },
36
+ {
37
+ id: 'insertPrompt',
38
+ kind: RUN_ONBOARDING_STEP_KIND,
39
+ payload: {
40
+ run: async (token) => ({ shown: await runPromptStep(token) }),
41
+ },
42
+ },
43
+ ],
44
+ },
45
+ },
46
+ };
47
+ }
48
+
49
+ export { NEW_SESSION_VIEW_V3_GITHUB_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_OPTIONS_VARIATION, NEW_SESSION_VIEW_V3_PROMPT_VARIATION, NEW_SESSION_VIEW_V3_TOUR_ID, NEW_SESSION_VIEW_V3_VARIATIONS, NEW_SESSION_VIEW_V3_VARIATION_TREATMENT, createNewSessionViewV3Tour };
@@ -0,0 +1,125 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+
6
+ .sessions-policy-blocked-overlay {
7
+ position: absolute;
8
+ inset: 0;
9
+ z-index: 200;
10
+ display: flex;
11
+ align-items: center;
12
+ justify-content: center;
13
+ background: var(--vscode-editor-background);
14
+ }
15
+
16
+ /* Hide titlebar actions while policy-blocked (class toggled in sessionsPolicyBlocked.ts) */
17
+ .monaco-workbench.sessions-policy-blocked .part.titlebar .titlebar-right {
18
+ visibility: hidden;
19
+ }
20
+
21
+ .sessions-policy-blocked-card {
22
+ display: flex;
23
+ flex-direction: column;
24
+ align-items: center;
25
+ text-align: center;
26
+ gap: 12px;
27
+ max-width: 420px;
28
+ padding: 32px;
29
+ }
30
+
31
+ .sessions-policy-blocked-card .sessions-policy-blocked-logo {
32
+ width: 64px;
33
+ height: 64px;
34
+ background-image: url('../../../../browser/media/sessions-logo-light.svg');
35
+ background-size: contain;
36
+ background-repeat: no-repeat;
37
+ background-position: center;
38
+ opacity: 0.4;
39
+ }
40
+
41
+ .vs .sessions-policy-blocked-card .sessions-policy-blocked-logo,
42
+ .hc-light .sessions-policy-blocked-card .sessions-policy-blocked-logo {
43
+ background-image: url('../../../../browser/media/sessions-logo-dark.svg');
44
+ }
45
+
46
+ .sessions-policy-blocked-card h2 {
47
+ margin: 0;
48
+ font-size: 22px;
49
+ font-weight: var(--vscode-fontWeight-semiBold);
50
+ color: var(--vscode-foreground);
51
+ }
52
+
53
+ .sessions-policy-blocked-card p {
54
+ margin: 0;
55
+ font-size: var(--vscode-fontSize-body1);
56
+ color: var(--vscode-descriptionForeground);
57
+ line-height: 1.5;
58
+ }
59
+
60
+ .sessions-policy-blocked-card .sessions-policy-blocked-link {
61
+ color: var(--vscode-textLink-foreground);
62
+ cursor: pointer;
63
+ text-decoration: none;
64
+ }
65
+
66
+ .sessions-policy-blocked-card .sessions-policy-blocked-link:hover {
67
+ text-decoration: underline;
68
+ }
69
+
70
+ /* Progress bar for transient loading state */
71
+ .sessions-policy-blocked-card .sessions-policy-blocked-progress-bar {
72
+ width: 100%;
73
+ height: 3px;
74
+ background: color-mix(in srgb, var(--vscode-foreground) 10%, transparent);
75
+ border-radius: var(--vscode-cornerRadius-xSmall);
76
+ overflow: hidden;
77
+ margin-top: 16px;
78
+ }
79
+
80
+ .sessions-policy-blocked-card .sessions-policy-blocked-progress-bar-fill {
81
+ width: 30%;
82
+ height: 100%;
83
+ background: var(--vscode-progressBar-background, #0078d4);
84
+ border-radius: var(--vscode-cornerRadius-xSmall);
85
+ animation: sessions-policy-blocked-progress 2s ease-in-out infinite;
86
+ }
87
+
88
+ @keyframes sessions-policy-blocked-progress {
89
+ 0% { transform: translateX(0%); }
90
+ 50% { transform: translateX(233%); }
91
+ 100% { transform: translateX(0%); }
92
+ }
93
+
94
+ /* Approved organizations list */
95
+ .sessions-policy-blocked-card .sessions-policy-blocked-orgs {
96
+ text-align: center;
97
+ }
98
+
99
+ .sessions-policy-blocked-card .sessions-policy-blocked-orgs-label {
100
+ margin: 0 0 4px 0;
101
+ font-size: var(--vscode-fontSize-label1);
102
+ font-weight: var(--vscode-fontWeight-semiBold);
103
+ color: var(--vscode-foreground);
104
+ }
105
+
106
+ .sessions-policy-blocked-card .sessions-policy-blocked-orgs ul {
107
+ margin: 0;
108
+ padding: 0;
109
+ list-style: none;
110
+ }
111
+
112
+ .sessions-policy-blocked-card .sessions-policy-blocked-orgs li {
113
+ font-size: var(--vscode-fontSize-label1);
114
+ color: var(--vscode-descriptionForeground);
115
+ line-height: 1.6;
116
+ }
117
+
118
+ .sessions-policy-blocked-card .sessions-policy-blocked-footer {
119
+ font-size: var(--vscode-fontSize-label1);
120
+ }
121
+
122
+ .sessions-policy-blocked-card .monaco-button {
123
+ margin-top: 4px;
124
+ width: auto;
125
+ }
@@ -0,0 +1,20 @@
1
+ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
3
+ import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service";
4
+ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
5
+ import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
6
+ import { IDefaultAccountService } from "@codingame/monaco-vscode-api/vscode/vs/platform/defaultAccount/common/defaultAccount.service";
7
+ import { IAccountPolicyGateService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/policies/common/accountPolicyService.service";
8
+ export declare class SessionsPolicyBlockedContribution extends Disposable implements IWorkbenchContribution {
9
+ private readonly configurationService;
10
+ private readonly layoutService;
11
+ private readonly instantiationService;
12
+ private readonly gateService;
13
+ private readonly defaultAccountService;
14
+ static readonly ID = "workbench.contrib.sessionsPolicyBlocked";
15
+ private readonly overlayRef;
16
+ private currentReason;
17
+ constructor(configurationService: IConfigurationService, layoutService: IWorkbenchLayoutService, instantiationService: IInstantiationService, gateService: IAccountPolicyGateService, defaultAccountService: IDefaultAccountService);
18
+ private update;
19
+ private showOverlay;
20
+ }