@codingame/monaco-vscode-workbench-service-override 37.5.0 → 37.6.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 (76) hide show
  1. package/index.js +2 -2
  2. package/package.json +10 -10
  3. package/session.js +45 -28
  4. package/vscode/src/vs/sessions/browser/singlePaneWorkbench.d.ts +76 -0
  5. package/vscode/src/vs/sessions/browser/singlePaneWorkbench.js +320 -0
  6. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +42 -42
  7. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +11 -11
  8. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +18 -18
  9. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +12 -12
  10. package/vscode/src/vs/sessions/contrib/applyCommitsToParentRepo/browser/applyChangesToParentRepo.js +7 -7
  11. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +12 -12
  12. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +10 -10
  13. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +68 -68
  14. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +7 -7
  15. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +4 -4
  16. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +2 -2
  17. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +38 -38
  18. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +2 -2
  19. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +1 -1
  20. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +6 -6
  21. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +4 -4
  22. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +20 -20
  23. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +1 -1
  24. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +9 -9
  25. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +17 -17
  26. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +17 -17
  27. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +2 -2
  28. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReview.contributions.js +2 -2
  29. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +7 -7
  30. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +9 -7
  31. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +8 -8
  32. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +1 -1
  33. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +5 -5
  34. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +1 -1
  35. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +7 -7
  36. package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +1 -1
  37. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +5 -24
  38. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +2 -2
  39. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneExistingSessionStrategy.js +1 -1
  40. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +19 -19
  41. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +4 -4
  42. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +6 -6
  43. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +2 -2
  44. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +4 -4
  45. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +24 -24
  46. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.js +3 -3
  47. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.js +3 -3
  48. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.js +2 -2
  49. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.js +8 -8
  50. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionBranchActions.js +3 -3
  51. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.js +32 -32
  52. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentMergeActions.js +29 -29
  53. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/exportDebugLogsAction.js +1 -1
  54. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatInputConfigPicker.js +3 -3
  55. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +6 -6
  56. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +3 -3
  57. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +1 -1
  58. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +4 -4
  59. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +5 -5
  60. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +2 -2
  61. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +8 -8
  62. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +58 -58
  63. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +8 -8
  64. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +5 -5
  65. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +10 -10
  66. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +38 -38
  67. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +118 -118
  68. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +53 -53
  69. package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.js +1 -1
  70. package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.js +2 -2
  71. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +2 -2
  72. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +2 -2
  73. package/vscode/src/vs/workbench/browser/layout.d.ts +46 -70
  74. package/vscode/src/vs/workbench/browser/layout.js +243 -44
  75. package/vscode/src/vs/workbench/browser/workbench.d.ts +1 -1
  76. package/vscode/src/vs/workbench/browser/workbench.js +3 -4
@@ -23,8 +23,8 @@ import { SESSIONS_ARCHIVE_SESSION_CONFETTI_SETTING } from '@codingame/monaco-vsc
23
23
  import { SessionsWindowNotifier } from './sessionsWindowNotifier.js';
24
24
  import { USE_WORKTREE_SETTING, USE_WORKTREE_SETTING_TREATMENT } from '@codingame/monaco-vscode-api/vscode/vs/sessions/common/sessionConfig';
25
25
 
26
- const agentSessionsViewIcon = registerIcon("chat-sessions-icon", Codicon.commentDiscussionSparkle, ( localize(4643, "Icon for Agent Sessions View")));
27
- const AGENT_SESSIONS_VIEW_TITLE = ( localize2(4644, "Sessions"));
26
+ const agentSessionsViewIcon = registerIcon("chat-sessions-icon", Codicon.commentDiscussionSparkle, ( localize(4644, "Icon for Agent Sessions View")));
27
+ const AGENT_SESSIONS_VIEW_TITLE = ( localize2(4645, "Sessions"));
28
28
  const SessionsContainerId = "agentic.workbench.view.sessionsContainer";
29
29
  const agentSessionsViewContainer = ( Registry.as(Extensions.ViewContainersRegistry)).registerViewContainer({
30
30
  id: SessionsContainerId,
@@ -38,7 +38,7 @@ const agentSessionsViewContainer = ( Registry.as(Extensions.ViewContainersRegist
38
38
  order: 6,
39
39
  openCommandActionDescriptor: {
40
40
  id: SessionsContainerId,
41
- mnemonicTitle: ( localize(4645, "&&Sessions")),
41
+ mnemonicTitle: ( localize(4646, "&&Sessions")),
42
42
  keybindings: {
43
43
  primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KeyX
44
44
  },
@@ -67,7 +67,7 @@ const sessionsViewPaneDescriptor = {
67
67
  type: "boolean",
68
68
  tags: ["preview"],
69
69
  description: ( localize(
70
- 4646,
70
+ 4647,
71
71
  "Controls whether the Chats group is shown in the sessions list even when it is empty."
72
72
  )),
73
73
  default: true,
@@ -79,7 +79,7 @@ const sessionsViewPaneDescriptor = {
79
79
  type: "boolean",
80
80
  tags: ["preview"],
81
81
  description: ( localize(
82
- 4647,
82
+ 4648,
83
83
  "Controls whether a confetti animation is shown when archiving a session."
84
84
  )),
85
85
  default: false
@@ -95,7 +95,7 @@ const sessionsViewPaneDescriptor = {
95
95
  mode: "auto",
96
96
  name: AUTOMATIONS_NEW_BADGE_STYLE_TREATMENT
97
97
  },
98
- description: ( localize(4648, "Controls the visual style of the Automations first-use badge."))
98
+ description: ( localize(4649, "Controls the visual style of the Automations first-use badge."))
99
99
  },
100
100
  [NEW_SESSION_BUTTON_STYLE_SETTING]: {
101
101
  type: "string",
@@ -108,14 +108,14 @@ const sessionsViewPaneDescriptor = {
108
108
  mode: "auto",
109
109
  name: NEW_SESSION_BUTTON_STYLE_TREATMENT
110
110
  },
111
- description: ( localize(4649, "Controls the visual style of the New Session button."))
111
+ description: ( localize(4650, "Controls the visual style of the New Session button."))
112
112
  },
113
113
  [USE_WORKTREE_SETTING]: {
114
114
  type: "boolean",
115
115
  default: true,
116
116
  scope: ConfigurationScope.APPLICATION,
117
117
  description: ( localize(
118
- 4650,
118
+ 4651,
119
119
  "Controls whether New Worktree is checked when no previous isolation choice has been saved. Once a choice is saved, it is used across workspaces instead of this setting."
120
120
  )),
121
121
  experiment: {
@@ -88,7 +88,7 @@ registerAction2(class ShowSessionsPickerAction extends Action2 {
88
88
  constructor() {
89
89
  super({
90
90
  id: SHOW_SESSIONS_PICKER_COMMAND_ID,
91
- title: ( localize2(4651, "Show Sessions Picker")),
91
+ title: ( localize2(4652, "Show Sessions Picker")),
92
92
  f1: true,
93
93
  category: SessionsCategories.Sessions,
94
94
  keybinding: {
@@ -141,7 +141,7 @@ registerAction2(class ShowSessionsPickerAction extends Action2 {
141
141
  const picker = quickInputService.createQuickPick({
142
142
  useSeparators: true
143
143
  });
144
- picker.placeholder = ( localize(4652, "Search sessions by name or folder"));
144
+ picker.placeholder = ( localize(4653, "Search sessions by name or folder"));
145
145
  picker.canAcceptInBackground = true;
146
146
  picker.matchOnDetail = true;
147
147
  const disposables = ( new DisposableStore());
@@ -159,7 +159,7 @@ registerAction2(class ShowSessionsPickerAction extends Action2 {
159
159
  const sessionGroups = groupSessionsForPicker(recent, other, reader);
160
160
  const items = [{
161
161
  id: "newSession",
162
- label: `$(add) ${( localize(4653, "New Session"))}`,
162
+ label: `$(add) ${( localize(4654, "New Session"))}`,
163
163
  session: undefined
164
164
  }];
165
165
  let firstSessionItem;
@@ -177,10 +177,10 @@ registerAction2(class ShowSessionsPickerAction extends Action2 {
177
177
  items.push(item);
178
178
  }
179
179
  };
180
- appendSessions(( localize(4654, "needs input")), sessionGroups.needsInput);
181
- appendSessions(( localize(4655, "unread")), sessionGroups.unread);
182
- appendSessions(( localize(4656, "recently opened")), sessionGroups.recent);
183
- appendSessions(( localize(4657, "other sessions")), sessionGroups.other);
180
+ appendSessions(( localize(4655, "needs input")), sessionGroups.needsInput);
181
+ appendSessions(( localize(4656, "unread")), sessionGroups.unread);
182
+ appendSessions(( localize(4657, "recently opened")), sessionGroups.recent);
183
+ appendSessions(( localize(4658, "other sessions")), sessionGroups.other);
184
184
  const activeItemId = picker.activeItems[0]?.id;
185
185
  picker.items = items;
186
186
  const activeItem = activeItemId ? items.find(item => item.type !== "separator" && item.id === activeItemId) : firstSessionItem;
@@ -248,12 +248,12 @@ registerAction2(class GoBackAction extends Action2 {
248
248
  super({
249
249
  id: "sessions.goBack",
250
250
  title: {
251
- ...( localize2(4658, "Go Back")),
252
- mnemonicTitle: ( localize(4659, "&&Back"))
251
+ ...( localize2(4659, "Go Back")),
252
+ mnemonicTitle: ( localize(4660, "&&Back"))
253
253
  },
254
254
  f1: true,
255
255
  icon: Codicon.arrowLeft,
256
- tooltip: ( localize(4660, "Go Back One Session")),
256
+ tooltip: ( localize(4661, "Go Back One Session")),
257
257
  category: SessionsCategories.Sessions,
258
258
  precondition: CanGoBackContext,
259
259
  keybinding: {
@@ -293,12 +293,12 @@ registerAction2(class GoForwardAction extends Action2 {
293
293
  super({
294
294
  id: "sessions.goForward",
295
295
  title: {
296
- ...( localize2(4661, "Go Forward")),
297
- mnemonicTitle: ( localize(4662, "&&Forward"))
296
+ ...( localize2(4662, "Go Forward")),
297
+ mnemonicTitle: ( localize(4663, "&&Forward"))
298
298
  },
299
299
  f1: true,
300
300
  icon: Codicon.arrowRight,
301
- tooltip: ( localize(4663, "Go Forward One Session")),
301
+ tooltip: ( localize(4664, "Go Forward One Session")),
302
302
  category: SessionsCategories.Sessions,
303
303
  precondition: CanGoForwardContext,
304
304
  keybinding: {
@@ -337,7 +337,7 @@ registerAction2(class FocusActiveSessionAction extends Action2 {
337
337
  constructor() {
338
338
  super({
339
339
  id: FOCUS_ACTIVE_SESSION_COMMAND_ID,
340
- title: ( localize2(4664, "Focus Active Session")),
340
+ title: ( localize2(4665, "Focus Active Session")),
341
341
  f1: true,
342
342
  category: SessionsCategories.Sessions,
343
343
  keybinding: {
@@ -372,7 +372,7 @@ registerAction2(class FocusPreviousChatGroupAction extends Action2 {
372
372
  constructor() {
373
373
  super({
374
374
  id: FOCUS_PREVIOUS_CHAT_GROUP_COMMAND_ID,
375
- title: ( localize2(4665, "Focus Previous Chat Group")),
375
+ title: ( localize2(4666, "Focus Previous Chat Group")),
376
376
  f1: true,
377
377
  category: SessionsCategories.Sessions,
378
378
  keybinding: {
@@ -390,7 +390,7 @@ registerAction2(class FocusNextChatGroupAction extends Action2 {
390
390
  constructor() {
391
391
  super({
392
392
  id: FOCUS_NEXT_CHAT_GROUP_COMMAND_ID,
393
- title: ( localize2(4666, "Focus Next Chat Group")),
393
+ title: ( localize2(4667, "Focus Next Chat Group")),
394
394
  f1: true,
395
395
  category: SessionsCategories.Sessions,
396
396
  keybinding: {
@@ -408,7 +408,7 @@ registerAction2(class SplitChatGroupRightAction extends Action2 {
408
408
  constructor() {
409
409
  super({
410
410
  id: SPLIT_CHAT_GROUP_RIGHT_COMMAND_ID,
411
- title: ( localize2(4667, "Split Chat Group Right")),
411
+ title: ( localize2(4668, "Split Chat Group Right")),
412
412
  f1: true,
413
413
  category: SessionsCategories.Sessions
414
414
  });
@@ -421,7 +421,7 @@ registerAction2(class SplitChatGroupDownAction extends Action2 {
421
421
  constructor() {
422
422
  super({
423
423
  id: SPLIT_CHAT_GROUP_DOWN_COMMAND_ID,
424
- title: ( localize2(4668, "Split Chat Group Down")),
424
+ title: ( localize2(4669, "Split Chat Group Down")),
425
425
  f1: true,
426
426
  category: SessionsCategories.Sessions
427
427
  });
@@ -434,7 +434,7 @@ registerAction2(class MoveChatToPreviousGroupAction extends Action2 {
434
434
  constructor() {
435
435
  super({
436
436
  id: MOVE_CHAT_TO_PREVIOUS_GROUP_COMMAND_ID,
437
- title: ( localize2(4669, "Move Chat to Previous Group")),
437
+ title: ( localize2(4670, "Move Chat to Previous Group")),
438
438
  f1: true,
439
439
  category: SessionsCategories.Sessions
440
440
  });
@@ -447,7 +447,7 @@ registerAction2(class MoveChatToNextGroupAction extends Action2 {
447
447
  constructor() {
448
448
  super({
449
449
  id: MOVE_CHAT_TO_NEXT_GROUP_COMMAND_ID,
450
- title: ( localize2(4670, "Move Chat to Next Group")),
450
+ title: ( localize2(4671, "Move Chat to Next Group")),
451
451
  f1: true,
452
452
  category: SessionsCategories.Sessions
453
453
  });
@@ -463,7 +463,7 @@ for (let index = 0; index < 9; index++) {
463
463
  constructor() {
464
464
  super({
465
465
  id: `sessions.focusSessionInGrid${position}`,
466
- title: isLast ? ( localize2(4671, "Focus Last Session in Grid")) : ( localize2(4672, "Focus Session {0} in Grid", position)),
466
+ title: isLast ? ( localize2(4672, "Focus Last Session in Grid")) : ( localize2(4673, "Focus Session {0} in Grid", position)),
467
467
  f1: true,
468
468
  category: SessionsCategories.Sessions,
469
469
  keybinding: {
@@ -491,7 +491,7 @@ registerAction2(class CloseAllSessionsAction extends Action2 {
491
491
  constructor() {
492
492
  super({
493
493
  id: "sessions.closeAllSessions",
494
- title: ( localize2(4673, "Close All Sessions")),
494
+ title: ( localize2(4674, "Close All Sessions")),
495
495
  f1: true,
496
496
  category: SessionsCategories.Sessions,
497
497
  precondition: IsSessionsWindowContext,
@@ -543,11 +543,11 @@ async function renameChatWithQuickInput(accessor, context) {
543
543
  if (!initialChat || extUri.isEqual(resource, session.mainChat.get().resource) || initialChat.status.get() === SessionStatus.Untitled || !getChatCapabilities(initialChat, session, undefined).canRename) {
544
544
  return;
545
545
  }
546
- const initialTitle = initialChat.title.get().trim() || ( localize(4674, "Untitled Chat"));
546
+ const initialTitle = initialChat.title.get().trim() || ( localize(4675, "Untitled Chat"));
547
547
  const newTitle = await quickInputService.input({
548
548
  value: initialTitle,
549
- prompt: ( localize(4675, "New chat title")),
550
- validateInput: async value => value.trim() ? undefined : ( localize(4676, "Title cannot be empty"))
549
+ prompt: ( localize(4676, "New chat title")),
550
+ validateInput: async value => value.trim() ? undefined : ( localize(4677, "Title cannot be empty"))
551
551
  });
552
552
  const trimmedTitle = newTitle?.trim();
553
553
  if (!trimmedTitle || trimmedTitle === initialTitle) {
@@ -563,7 +563,7 @@ registerAction2(class RenameChatAction extends Action2 {
563
563
  constructor() {
564
564
  super({
565
565
  id: RENAME_CHAT_COMMAND_ID,
566
- title: ( localize2(4677, "Rename...")),
566
+ title: ( localize2(4678, "Rename...")),
567
567
  f1: false,
568
568
  category: SessionsCategories.Sessions,
569
569
  keybinding: {
@@ -584,7 +584,7 @@ registerAction2(class RenameSessionListChatAction extends Action2 {
584
584
  constructor() {
585
585
  super({
586
586
  id: "sessions.list.renameChat",
587
- title: ( localize2(4678, "Rename...")),
587
+ title: ( localize2(4679, "Rename...")),
588
588
  f1: false,
589
589
  menu: {
590
590
  id: Menus.SessionChatItemContext,
@@ -605,7 +605,7 @@ registerAction2(class OpenSessionListChatToSideAction extends Action2 {
605
605
  constructor() {
606
606
  super({
607
607
  id: "sessions.list.openChatToSide",
608
- title: ( localize2(4679, "Open to the Side")),
608
+ title: ( localize2(4680, "Open to the Side")),
609
609
  f1: false,
610
610
  menu: {
611
611
  id: Menus.SessionChatItemContext,
@@ -629,7 +629,7 @@ registerAction2(class DeleteSessionListChatAction extends Action2 {
629
629
  constructor() {
630
630
  super({
631
631
  id: "sessions.list.deleteChat",
632
- title: ( localize2(4680, "Delete...")),
632
+ title: ( localize2(4681, "Delete...")),
633
633
  f1: false,
634
634
  menu: {
635
635
  id: Menus.SessionChatItemContext,
@@ -651,7 +651,7 @@ registerAction2(class AddChatToSessionAction extends Action2 {
651
651
  constructor() {
652
652
  super({
653
653
  id: ADD_CHAT_TO_SESSION_ACTION_ID,
654
- title: ( localize2(4681, "New Chat in This Session")),
654
+ title: ( localize2(4682, "New Chat in This Session")),
655
655
  icon: Codicon.add,
656
656
  keybinding: {
657
657
  weight: CHAT_TAB_KEYBINDING_WEIGHT,
@@ -720,7 +720,7 @@ registerAction2(class NavigateNextChatAction extends Action2 {
720
720
  constructor() {
721
721
  super({
722
722
  id: "sessions.chatCompositeBar.navigateNextChat",
723
- title: ( localize2(4682, "Go to Next Chat")),
723
+ title: ( localize2(4683, "Go to Next Chat")),
724
724
  f1: true,
725
725
  category: SessionsCategories.Sessions,
726
726
  precondition: SessionHasMultipleOpenChatsContext,
@@ -739,7 +739,7 @@ registerAction2(class NavigatePreviousChatAction extends Action2 {
739
739
  constructor() {
740
740
  super({
741
741
  id: "sessions.chatCompositeBar.navigatePreviousChat",
742
- title: ( localize2(4683, "Go to Previous Chat")),
742
+ title: ( localize2(4684, "Go to Previous Chat")),
743
743
  f1: true,
744
744
  category: SessionsCategories.Sessions,
745
745
  precondition: SessionHasMultipleOpenChatsContext,
@@ -758,7 +758,7 @@ registerAction2(class CloseChatAction extends Action2 {
758
758
  constructor() {
759
759
  super({
760
760
  id: CLOSE_CHAT_COMMAND_ID,
761
- title: ( localize2(4684, "Close Chat")),
761
+ title: ( localize2(4685, "Close Chat")),
762
762
  icon: Codicon.close,
763
763
  f1: false,
764
764
  category: SessionsCategories.Sessions,
@@ -803,7 +803,7 @@ registerAction2(class CloseAllChatsAction extends Action2 {
803
803
  constructor() {
804
804
  super({
805
805
  id: "sessions.chatCompositeBar.closeAllChats",
806
- title: ( localize2(4685, "Close All Chats")),
806
+ title: ( localize2(4686, "Close All Chats")),
807
807
  f1: true,
808
808
  category: SessionsCategories.Sessions,
809
809
  precondition: SessionHasMultipleOpenChatsContext,
@@ -842,7 +842,7 @@ registerAction2(class DeleteChatAction extends Action2 {
842
842
  constructor() {
843
843
  super({
844
844
  id: "sessions.chatCompositeBar.deleteChat",
845
- title: ( localize2(4686, "Delete Chat")),
845
+ title: ( localize2(4687, "Delete Chat")),
846
846
  f1: true,
847
847
  category: SessionsCategories.Sessions,
848
848
  keybinding: {
@@ -874,7 +874,7 @@ registerAction2(class ReopenLastClosedChatAction extends Action2 {
874
874
  constructor() {
875
875
  super({
876
876
  id: "sessions.chatCompositeBar.reopenLastClosedChat",
877
- title: ( localize2(4687, "Reopen Last Closed Chat")),
877
+ title: ( localize2(4688, "Reopen Last Closed Chat")),
878
878
  f1: true,
879
879
  category: SessionsCategories.Sessions,
880
880
  precondition: SessionSupportsMultipleChatsContext
@@ -899,7 +899,7 @@ registerAction2(class ReopenLastClosedItemAction extends Action2 {
899
899
  constructor() {
900
900
  super({
901
901
  id: "sessions.reopenLastClosedItem",
902
- title: ( localize2(4688, "Reopen Closed Chat or Session")),
902
+ title: ( localize2(4689, "Reopen Closed Chat or Session")),
903
903
  category: SessionsCategories.Sessions,
904
904
  keybinding: {
905
905
  weight: CHAT_TAB_KEYBINDING_WEIGHT,
@@ -934,7 +934,7 @@ function openChatsPicker(accessor, mru) {
934
934
  }
935
935
  const extUri = accessor.get(IUriIdentityService).extUri;
936
936
  const toItem = chat => ({
937
- label: chat.title.get()?.trim() || ( localize(4674, "Untitled Chat")),
937
+ label: chat.title.get()?.trim() || ( localize(4675, "Untitled Chat")),
938
938
  description: fromNow(chat.updatedAt.get(), true, true),
939
939
  iconClass: ThemeIcon.asClassName(Codicon.commentDiscussion),
940
940
  chat
@@ -949,10 +949,10 @@ function openChatsPicker(accessor, mru) {
949
949
  }
950
950
  const displayItems = closedItems.length === 0 ? openItems : [{
951
951
  type: "separator",
952
- label: ( localize(4689, "Open"))
952
+ label: ( localize(4690, "Open"))
953
953
  }, ...openItems, {
954
954
  type: "separator",
955
- label: ( localize(4690, "Closed"))
955
+ label: ( localize(4691, "Closed"))
956
956
  }, ...closedItems];
957
957
  const activeChat = session.activeChat.get();
958
958
  const activeIndex = Math.max(
@@ -972,7 +972,7 @@ function openChatsPicker(accessor, mru) {
972
972
  keybindings: keybindingService.lookupKeybindings(CHATS_PICKER_QUICK_NAVIGATE_NEXT_ID)
973
973
  };
974
974
  } else {
975
- picker.placeholder = ( localize(4691, "Search chats by name"));
975
+ picker.placeholder = ( localize(4692, "Search chats by name"));
976
976
  picker.matchOnDescription = true;
977
977
  }
978
978
  const pickerVisibleContext = SessionChatsPickerVisibleContext.bindTo(contextKeyService);
@@ -993,7 +993,7 @@ registerAction2(class ShowChatsPickerAction extends Action2 {
993
993
  constructor() {
994
994
  super({
995
995
  id: SHOW_CHATS_PICKER_COMMAND_ID,
996
- title: ( localize2(4692, "Go to Chat in Session")),
996
+ title: ( localize2(4693, "Go to Chat in Session")),
997
997
  f1: true,
998
998
  category: SessionsCategories.Sessions,
999
999
  precondition: SessionHasMultipleCommittedChatsContext,
@@ -1012,7 +1012,7 @@ registerAction2(class QuickSwitchNextChatAction extends Action2 {
1012
1012
  constructor() {
1013
1013
  super({
1014
1014
  id: QUICK_SWITCH_NEXT_CHAT_ID,
1015
- title: ( localize2(4693, "Quick Switch to Next Chat")),
1015
+ title: ( localize2(4694, "Quick Switch to Next Chat")),
1016
1016
  f1: false,
1017
1017
  category: SessionsCategories.Sessions,
1018
1018
  precondition: SessionHasMultipleOpenChatsContext,
@@ -1036,7 +1036,7 @@ registerAction2(class QuickSwitchPreviousChatAction extends Action2 {
1036
1036
  constructor() {
1037
1037
  super({
1038
1038
  id: QUICK_SWITCH_PREVIOUS_CHAT_ID,
1039
- title: ( localize2(4694, "Quick Switch to Previous Chat")),
1039
+ title: ( localize2(4695, "Quick Switch to Previous Chat")),
1040
1040
  f1: false,
1041
1041
  category: SessionsCategories.Sessions,
1042
1042
  precondition: SessionHasMultipleOpenChatsContext,
@@ -1195,7 +1195,7 @@ let NewSessionActionViewItem = class NewSessionActionViewItem extends CompactBut
1195
1195
  return NEW_SESSION_ACTION_ID;
1196
1196
  }
1197
1197
  get label() {
1198
- return localize(4695, "New");
1198
+ return localize(4696, "New");
1199
1199
  }
1200
1200
  get onboardingTargetId() {
1201
1201
  return "sessions.newSession.button";
@@ -1214,10 +1214,10 @@ let NewSessionActionViewItem = class NewSessionActionViewItem extends CompactBut
1214
1214
  }));
1215
1215
  }
1216
1216
  getHoverContent(keybindingLabel) {
1217
- return keybindingLabel ? ( localize(4696, "New Session ({0})", keybindingLabel)) : ( localize(4697, "New Session"));
1217
+ return keybindingLabel ? ( localize(4697, "New Session ({0})", keybindingLabel)) : ( localize(4698, "New Session"));
1218
1218
  }
1219
1219
  getAriaLabel(keybindingAriaLabel) {
1220
- return keybindingAriaLabel ? ( localize(4698, "New Session ({0})", keybindingAriaLabel)) : ( localize(4699, "New Session"));
1220
+ return keybindingAriaLabel ? ( localize(4699, "New Session ({0})", keybindingAriaLabel)) : ( localize(4700, "New Session"));
1221
1221
  }
1222
1222
  onRun() {
1223
1223
  logSessionsInteraction(this.telemetryService, "newSession", this.telemetrySource);
@@ -1352,7 +1352,7 @@ let SessionConversationActionsContribution = class SessionConversationActionsCon
1352
1352
  const allChats = session.chats.read(reader);
1353
1353
  const registerOpen = (chat, order) => {
1354
1354
  const chatResource = chat.resource;
1355
- const title = chat.title.read(reader) || ( localize(4674, "Untitled Chat"));
1355
+ const title = chat.title.read(reader) || ( localize(4675, "Untitled Chat"));
1356
1356
  store.add(registerAction2(class extends Action2 {
1357
1357
  constructor() {
1358
1358
  super({
@@ -1397,7 +1397,7 @@ let SessionConversationActionsContribution = class SessionConversationActionsCon
1397
1397
  SessionConversationActionsContribution = ( __decorate([( __param(0, ISessionsService)), ( __param(1, IUriIdentityService))], SessionConversationActionsContribution));
1398
1398
  MenuRegistry.appendMenuItem(Menus.SessionBarToolbar, {
1399
1399
  submenu: Menus.SessionConversations,
1400
- title: ( localize2(4700, "Side Chats")),
1400
+ title: ( localize2(4701, "Side Chats")),
1401
1401
  icon: Codicon.commentDiscussion,
1402
1402
  group: "secondary/2_chats",
1403
1403
  order: 10,
@@ -1407,12 +1407,12 @@ registerAction2(class TogglePinSessionAction extends Action2 {
1407
1407
  constructor() {
1408
1408
  super({
1409
1409
  id: "sessions.chatCompositeBar.togglePin",
1410
- title: ( localize2(4701, "Pin")),
1410
+ title: ( localize2(4702, "Pin")),
1411
1411
  icon: Codicon.pin,
1412
1412
  toggled: {
1413
1413
  condition: SessionIsStickyContext,
1414
1414
  icon: Codicon.pinned,
1415
- title: ( localize(4702, "Unpin"))
1415
+ title: ( localize(4703, "Unpin"))
1416
1416
  },
1417
1417
  menu: [{
1418
1418
  id: Menus.SessionBarToolbar,
@@ -1437,10 +1437,10 @@ registerAction2(class TogglePinSessionAction extends Action2 {
1437
1437
  MenuRegistry.appendMenuItem(Menus.SessionHeaderContext, {
1438
1438
  command: {
1439
1439
  id: "sessions.chatCompositeBar.togglePin",
1440
- title: ( localize(4703, "Pin")),
1440
+ title: ( localize(4704, "Pin")),
1441
1441
  toggled: {
1442
1442
  condition: SessionIsStickyContext,
1443
- title: ( localize(4704, "Unpin"))
1443
+ title: ( localize(4705, "Unpin"))
1444
1444
  }
1445
1445
  },
1446
1446
  group: "1_view",
@@ -1451,7 +1451,7 @@ registerAction2(class RenameSessionHeaderAction extends Action2 {
1451
1451
  constructor() {
1452
1452
  super({
1453
1453
  id: "sessions.sessionHeader.rename",
1454
- title: ( localize2(4705, "Rename...")),
1454
+ title: ( localize2(4706, "Rename...")),
1455
1455
  icon: Codicon.edit,
1456
1456
  menu: [{
1457
1457
  id: Menus.SessionHeaderContext,
@@ -1480,7 +1480,7 @@ registerAction2(class CloseSessionAction extends Action2 {
1480
1480
  constructor() {
1481
1481
  super({
1482
1482
  id: "sessions.chatCompositeBar.close",
1483
- title: ( localize2(4706, "Close")),
1483
+ title: ( localize2(4707, "Close")),
1484
1484
  icon: Codicon.close,
1485
1485
  menu: [{
1486
1486
  id: Menus.SessionBarToolbar,
@@ -1506,12 +1506,12 @@ registerAction2(class ToggleMaximizeSessionViewAction extends Action2 {
1506
1506
  constructor() {
1507
1507
  super({
1508
1508
  id: "sessions.chatCompositeBar.toggleMaximize",
1509
- title: ( localize2(4707, "Maximize")),
1509
+ title: ( localize2(4708, "Maximize")),
1510
1510
  icon: Codicon.screenFull,
1511
1511
  toggled: {
1512
1512
  condition: SessionIsMaximizedContext,
1513
1513
  icon: Codicon.screenNormal,
1514
- title: ( localize(4708, "Restore"))
1514
+ title: ( localize(4709, "Restore"))
1515
1515
  },
1516
1516
  menu: {
1517
1517
  id: Menus.SessionBarToolbar,
@@ -1530,7 +1530,7 @@ registerAction2(class CloseEditorAreaAction extends Action2 {
1530
1530
  constructor() {
1531
1531
  super({
1532
1532
  id: "sessions.closeEditorArea",
1533
- title: ( localize2(4709, "Close Editor Area")),
1533
+ title: ( localize2(4710, "Close Editor Area")),
1534
1534
  icon: Codicon.close,
1535
1535
  category: SessionsCategories.Sessions,
1536
1536
  menu: {
@@ -47,7 +47,7 @@ function registerBlockedSessionsHeaderActions() {
47
47
  return combinedDisposable(MenuRegistry.appendMenuItem(Menus.BlockedSessionsHeader, {
48
48
  command: {
49
49
  id: SHOW_ALL_SESSIONS_FROM_BLOCKED_LIST_COMMAND_ID,
50
- title: ( localize(4710, "Show All Sessions")),
50
+ title: ( localize(4711, "Show All Sessions")),
51
51
  icon: Codicon.listSelection
52
52
  },
53
53
  group: "navigation",
@@ -55,7 +55,7 @@ function registerBlockedSessionsHeaderActions() {
55
55
  }), MenuRegistry.appendMenuItem(Menus.BlockedSessionsHeader, {
56
56
  command: {
57
57
  id: IGNORE_ALL_INPUT_NEEDED_COMMAND_ID,
58
- title: ( localize(4711, "Ignore All Input Needed")),
58
+ title: ( localize(4712, "Ignore All Input Needed")),
59
59
  icon: Codicon.bellSlash
60
60
  },
61
61
  group: "navigation",
@@ -63,7 +63,7 @@ function registerBlockedSessionsHeaderActions() {
63
63
  }), MenuRegistry.appendMenuItem(Menus.BlockedSessionsHeader, {
64
64
  command: {
65
65
  id: HIDE_BLOCKED_SESSIONS_COMMAND_ID,
66
- title: ( localize(4712, "Close")),
66
+ title: ( localize(4713, "Close")),
67
67
  icon: Codicon.close
68
68
  },
69
69
  group: "z_close",
@@ -212,7 +212,7 @@ let SessionsTitleBarWidget = class SessionsTitleBarWidget extends BaseActionView
212
212
  }
213
213
  _renderActiveSession() {
214
214
  const container = this._container;
215
- container.setAttribute("aria-label", this._sessionTitle ? ( localize(4713, "Show Sessions: {0}", this._sessionTitle)) : ( localize(4714, "Show Sessions")));
215
+ container.setAttribute("aria-label", this._sessionTitle ? ( localize(4714, "Show Sessions: {0}", this._sessionTitle)) : ( localize(4715, "Show Sessions")));
216
216
  const workspaceInfo = this._workspaceInfo;
217
217
  const sessionPill = $("div.agent-sessions-titlebar-pill");
218
218
  const centerGroup = $("div.agent-sessions-titlebar-center");
@@ -239,7 +239,7 @@ let SessionsTitleBarWidget = class SessionsTitleBarWidget extends BaseActionView
239
239
  );
240
240
  centerGroup.appendChild(workspaceIconEl);
241
241
  const workspaceEl = $("div.agent-sessions-titlebar-workspace");
242
- workspaceEl.textContent = this._sessionTitle ?? ( localize(4715, "No workspace"));
242
+ workspaceEl.textContent = this._sessionTitle ?? ( localize(4716, "No workspace"));
243
243
  centerGroup.appendChild(workspaceEl);
244
244
  this._dynamicDisposables.add(this.hoverService.setupDelayedHover(workspaceEl, {
245
245
  content: workspaceEl.textContent
@@ -302,7 +302,7 @@ let SessionsTitleBarWidget = class SessionsTitleBarWidget extends BaseActionView
302
302
  }
303
303
  _renderApproved(count) {
304
304
  const container = this._container;
305
- const label = count === 1 ? ( localize(4716, "Approved 1 session")) : ( localize(4717, "Approved {0} sessions", count));
305
+ const label = count === 1 ? ( localize(4717, "Approved 1 session")) : ( localize(4718, "Approved {0} sessions", count));
306
306
  container.setAttribute("aria-label", label);
307
307
  const pill = $("div.agent-sessions-titlebar-pill");
308
308
  const labelEl = $("div.agent-sessions-titlebar-approved-label");
@@ -475,14 +475,14 @@ let SessionsTitleBarContribution = class SessionsTitleBarContribution extends Di
475
475
  ));
476
476
  this._register(MenuRegistry.appendMenuItem(Menus.CommandCenter, {
477
477
  submenu: Menus.TitleBarSessionTitle,
478
- title: ( localize(4718, "Agent Sessions")),
478
+ title: ( localize(4719, "Agent Sessions")),
479
479
  order: 101,
480
480
  when: ( ContextKeyExpr.and(( IsAuxiliaryWindowContext.negate()), ( SessionsWelcomeVisibleContext.negate())))
481
481
  }));
482
482
  this._register(MenuRegistry.appendMenuItem(Menus.TitleBarSessionTitle, {
483
483
  command: {
484
484
  id: SHOW_SESSIONS_PICKER_COMMAND_ID,
485
- title: ( localize(4719, "Show Sessions"))
485
+ title: ( localize(4720, "Show Sessions"))
486
486
  },
487
487
  group: "a_sessions",
488
488
  order: 1,
@@ -113,9 +113,9 @@ let SessionsWindowNotifier = class SessionsWindowNotifier extends Disposable {
113
113
  return;
114
114
  }
115
115
  const result = await this._hostService.showToast({
116
- title: this._sanitizeOSToastText(( localize(4720, "Session: {0}", session.title.get()))),
116
+ title: this._sanitizeOSToastText(( localize(4721, "Session: {0}", session.title.get()))),
117
117
  body: this._sanitizeOSToastText(this._getNotificationBody(session, status)),
118
- actions: [( localize(4721, "Open Session"))],
118
+ actions: [( localize(4722, "Open Session"))],
119
119
  dedupeKey: getChatNotificationDedupeKey(
120
120
  session.resource,
121
121
  status === SessionStatus.NeedsInput ? ChatNotificationKind.NeedsInput : ChatNotificationKind.Idle
@@ -139,11 +139,11 @@ let SessionsWindowNotifier = class SessionsWindowNotifier extends Disposable {
139
139
  const workspaceLabel = session.workspace.get()?.label;
140
140
  switch (status) {
141
141
  case SessionStatus.NeedsInput:
142
- return workspaceLabel ? ( localize(4722, "Input needed in {0}.", workspaceLabel)) : ( localize(4723, "Input needed."));
142
+ return workspaceLabel ? ( localize(4723, "Input needed in {0}.", workspaceLabel)) : ( localize(4724, "Input needed."));
143
143
  case SessionStatus.Completed:
144
- return workspaceLabel ? ( localize(4724, "Completed in {0}.", workspaceLabel)) : ( localize(4725, "Session completed."));
144
+ return workspaceLabel ? ( localize(4725, "Completed in {0}.", workspaceLabel)) : ( localize(4726, "Session completed."));
145
145
  case SessionStatus.Error:
146
- return workspaceLabel ? ( localize(4726, "Failed in {0}.", workspaceLabel)) : ( localize(4727, "Session failed."));
146
+ return workspaceLabel ? ( localize(4727, "Failed in {0}.", workspaceLabel)) : ( localize(4728, "Session failed."));
147
147
  default:
148
148
  return "";
149
149
  }
@@ -4,10 +4,10 @@ import { isContributionEnabled } from '@codingame/monaco-vscode-api/vscode/vs/wo
4
4
 
5
5
  const AUTOMATION_TEMPLATES = [{
6
6
  id: "main-updates",
7
- name: ( localize(4728, "Catch up on main")),
8
- description: ( localize(4729, "Pull the latest main and summarize new commits.")),
7
+ name: ( localize(4729, "Catch up on main")),
8
+ description: ( localize(4730, "Pull the latest main and summarize new commits.")),
9
9
  prompt: ( localize(
10
- 4730,
10
+ 4731,
11
11
  "Pull the latest main and summarize the commits that were pulled.\n\nInspect this repository's current branch, working tree, and configured remotes. Resolve the remote for main from the repository configuration rather than assuming origin. Record HEAD, then pull that remote's main into the current checkout using --ff-only. Proceed only with a clean working tree and a fast-forward update. If the remote is ambiguous, main is missing, or the update is blocked, stop and explain why. Do not switch branches, stash or discard local changes, rebase, or force an update.\n\nCompare the starting and ending HEAD and summarize only newly pulled commits, grouped by theme. Highlight user-visible changes, bug fixes, breaking changes, and follow-up actions. Include commit links and related pull requests when available. If no commits were pulled, say so."
12
12
  )),
13
13
  schedule: {
@@ -18,10 +18,10 @@ const AUTOMATION_TEMPLATES = [{
18
18
  }
19
19
  }, {
20
20
  id: "issue-triage",
21
- name: ( localize(4731, "Issue triage")),
22
- description: ( localize(4732, "Triage my GitHub repositories' issues using their precedents.")),
21
+ name: ( localize(4732, "Issue triage")),
22
+ description: ( localize(4733, "Triage my GitHub repositories' issues using their precedents.")),
23
23
  prompt: ( localize(
24
- 4733,
24
+ 4734,
25
25
  "Triage my GitHub repositories' issues using existing repository precedents.\n\nUse the authenticated GitHub account to find my repositories, prioritizing active repositories and new or untriaged issues. For each repository, read its contribution guidelines, issue templates, existing labels, and comparable issues with maintainer decisions. Learn each repository's conventions separately before making recommendations.\n\nProduce a report grouped by repository. Link to each issue, recommend existing labels, identify likely duplicates, and draft a reply when useful. Cite prior issues, pull requests, or maintainer comments supporting each recommendation. Flag uncertainty or missing precedent rather than inventing a rule. Do not apply labels, post comments, close issues, or make other GitHub changes. State which repositories and issues were reviewed and any access limitations."
26
26
  )),
27
27
  schedule: {
@@ -32,10 +32,10 @@ const AUTOMATION_TEMPLATES = [{
32
32
  }
33
33
  }, {
34
34
  id: "find-bugs",
35
- name: ( localize(4734, "Find bugs")),
36
- description: ( localize(4735, "Explore the codebase and report verified, reproducible bugs.")),
35
+ name: ( localize(4735, "Find bugs")),
36
+ description: ( localize(4736, "Explore the codebase and report verified, reproducible bugs.")),
37
37
  prompt: ( localize(
38
- 4736,
38
+ 4737,
39
39
  "Explore this codebase and find concrete, reproducible bugs.\n\nRead the repository guidance and understand the architecture before choosing a focused area to investigate, such as recent changes, complex state transitions, or error handling. Trace suspected problems through callers and existing tests. Use the smallest relevant tests or a minimal reproduction to verify behavior, and distinguish confirmed bugs from hypotheses. Avoid style-only suggestions and speculative findings.\n\nReport high-confidence, actionable bugs with severity, file and line references, a triggering scenario, expected versus actual behavior, and supporting test or reproduction results. Suggest a focused fix for each finding without modifying repository files or committing changes. State what you explored, any validation limitations, and when no confirmed bugs were found."
40
40
  )),
41
41
  schedule: {
@@ -57,7 +57,7 @@ function readAutomationTemplates(plugins, reader) {
57
57
  templates.push({
58
58
  id: `${( plugin.uri.toString())}#automation=${automation.blueprint.id}`,
59
59
  name: automation.blueprint.name,
60
- description: automation.blueprint.description ?? ( localize(4737, "Provided by {0}.", plugin.label)),
60
+ description: automation.blueprint.description ?? ( localize(4738, "Provided by {0}.", plugin.label)),
61
61
  prompt: automation.blueprint.prompt,
62
62
  schedule: automation.blueprint.schedule,
63
63
  source: {