@codingame/monaco-vscode-chat-service-override 26.0.0 → 26.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/package.json +5 -5
  2. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
  3. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
  4. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
  5. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
  6. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  7. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
  8. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
  9. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
  10. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +6 -6
  11. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
  12. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +3 -3
  13. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +1 -1
  14. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +12 -12
  15. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +2 -2
  16. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
  17. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
  18. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
  19. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
  20. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +8 -8
  21. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
  22. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +11 -11
  23. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
  24. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
  25. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
  26. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-chat-service-override",
3
- "version": "26.0.0",
3
+ "version": "26.1.0",
4
4
  "private": false,
5
5
  "description": "VSCode public API plugged on the monaco editor - chat service-override",
6
6
  "keywords": [],
@@ -15,10 +15,10 @@
15
15
  },
16
16
  "type": "module",
17
17
  "dependencies": {
18
- "@codingame/monaco-vscode-api": "26.0.0",
19
- "@codingame/monaco-vscode-katex-common": "26.0.0",
20
- "@codingame/monaco-vscode-xterm-addons-common": "26.0.0",
21
- "@codingame/monaco-vscode-xterm-common": "26.0.0"
18
+ "@codingame/monaco-vscode-api": "26.1.0",
19
+ "@codingame/monaco-vscode-katex-common": "26.1.0",
20
+ "@codingame/monaco-vscode-xterm-addons-common": "26.1.0",
21
+ "@codingame/monaco-vscode-xterm-common": "26.1.0"
22
22
  },
23
23
  "main": "index.js",
24
24
  "module": "index.js",
@@ -41,7 +41,7 @@ function createNotebookOutputVariableEntry(outputViewModel, mimeType, notebookEd
41
41
  value: outputCellUri,
42
42
  id: ( outputCellUri.toString()),
43
43
  name: ( localize(
44
- 9573,
44
+ 9574,
45
45
  "{0} • Cell {1} • Output {2}",
46
46
  fileName,
47
47
  `${cellIndex + 1}`,
@@ -42,12 +42,12 @@ registerAction2(class extends NotebookAction {
42
42
  super({
43
43
  id: "notebook.cell.chat.start",
44
44
  title: {
45
- value: "$(sparkle) " + ( localize(9676, "Generate")),
45
+ value: "$(sparkle) " + ( localize(9677, "Generate")),
46
46
  original: "$(sparkle) Generate"
47
47
  },
48
- tooltip: ( localize(9677, "Start Chat to Generate Code")),
48
+ tooltip: ( localize(9678, "Start Chat to Generate Code")),
49
49
  metadata: {
50
- description: ( localize(9677, "Start Chat to Generate Code")),
50
+ description: ( localize(9678, "Start Chat to Generate Code")),
51
51
  args: [{
52
52
  name: "args",
53
53
  schema: {
@@ -128,10 +128,10 @@ registerAction2(class extends NotebookAction {
128
128
  super({
129
129
  id: "notebook.cell.chat.startAtTop",
130
130
  title: {
131
- value: "$(sparkle) " + ( localize(9676, "Generate")),
131
+ value: "$(sparkle) " + ( localize(9677, "Generate")),
132
132
  original: "$(sparkle) Generate"
133
133
  },
134
- tooltip: ( localize(9677, "Start Chat to Generate Code")),
134
+ tooltip: ( localize(9678, "Start Chat to Generate Code")),
135
135
  f1: false,
136
136
  menu: [{
137
137
  id: MenuId.NotebookCellListTop,
@@ -149,8 +149,8 @@ MenuRegistry.appendMenuItem(MenuId.NotebookToolbar, {
149
149
  command: {
150
150
  id: "notebook.cell.chat.start",
151
151
  icon: Codicon.sparkle,
152
- title: ( localize(9678, "Generate")),
153
- tooltip: ( localize(9679, "Start Chat to Generate Code"))
152
+ title: ( localize(9679, "Generate")),
153
+ tooltip: ( localize(9680, "Start Chat to Generate Code"))
154
154
  },
155
155
  order: -10,
156
156
  group: "navigation/add",
@@ -160,9 +160,9 @@ class AcceptChangesAndRun extends EditorAction2 {
160
160
  constructor() {
161
161
  super({
162
162
  id: "notebook.inlineChat.acceptChangesAndRun",
163
- title: ( localize2(9680, "Accept and Run")),
164
- shortTitle: ( localize(9681, "Accept & Run")),
165
- tooltip: ( localize(9682, "Accept the changes and run the cell")),
163
+ title: ( localize2(9681, "Accept and Run")),
164
+ shortTitle: ( localize(9682, "Accept & Run")),
165
+ tooltip: ( localize(9683, "Accept the changes and run the cell")),
166
166
  icon: Codicon.check,
167
167
  f1: true,
168
168
  precondition: ( ContextKeyExpr.and(( NOTEBOOK_EDITOR_EDITABLE.isEqualTo(true)), CTX_INLINE_CHAT_VISIBLE)),
@@ -91,7 +91,7 @@ let NotebookChatContribution = class NotebookChatContribution extends Disposable
91
91
  result.suggestions.push({
92
92
  label: `${chatVariableLeader}${NotebookKernelVariableKey}`,
93
93
  insertText: `${chatVariableLeader}${NotebookKernelVariableKey}:`,
94
- detail: ( localize(9683, "Pick a variable from the kernel")),
94
+ detail: ( localize(9684, "Pick a variable from the kernel")),
95
95
  range,
96
96
  kind: CompletionItemKind.Text,
97
97
  command: {
@@ -198,7 +198,7 @@ class SelectAndInsertKernelVariableAction extends Action2 {
198
198
  detail: variable.type
199
199
  });
200
200
  }
201
- const placeHolder = quickPickItems.length > 0 ? ( localize(9684, "Select a kernel variable")) : ( localize(9685, "No kernel variables found"));
201
+ const placeHolder = quickPickItems.length > 0 ? ( localize(9685, "Select a kernel variable")) : ( localize(9686, "No kernel variables found"));
202
202
  const pickedVariable = await quickInputService.pick(quickPickItems, {
203
203
  placeHolder
204
204
  });
@@ -248,7 +248,7 @@ let KernelVariableContextPicker = class KernelVariableContextPicker {
248
248
  this.editorService = editorService;
249
249
  this.notebookKernelService = notebookKernelService;
250
250
  this.type = "pickerPick";
251
- this.label = ( localize(9686, "Kernel Variable..."));
251
+ this.label = ( localize(9687, "Kernel Variable..."));
252
252
  this.icon = Codicon.serverEnvironment;
253
253
  }
254
254
  isEnabled(widget) {
@@ -287,7 +287,7 @@ let KernelVariableContextPicker = class KernelVariableContextPicker {
287
287
  return result;
288
288
  })();
289
289
  return {
290
- placeholder: ( localize(9687, "Select a kernel variable")),
290
+ placeholder: ( localize(9688, "Select a kernel variable")),
291
291
  picks
292
292
  };
293
293
  }
@@ -297,7 +297,7 @@ registerAction2(class AddCellOutputToChatAction extends Action2 {
297
297
  constructor() {
298
298
  super({
299
299
  id: "notebook.cellOutput.addToChat",
300
- title: ( localize(9688, "Add Cell Output to Chat")),
300
+ title: ( localize(9689, "Add Cell Output to Chat")),
301
301
  menu: {
302
302
  id: MenuId.NotebookOutputToolbar,
303
303
  when: ( ContextKeyExpr.and(NOTEBOOK_CELL_HAS_OUTPUTS, ContextKeyExpr.in(
@@ -2,6 +2,6 @@
2
2
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
3
3
  import { RawContextKey } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
4
4
 
5
- const CTX_NOTEBOOK_CHAT_HAS_AGENT = ( new RawContextKey("notebookChatAgentRegistered", false, ( localize(9689, "Whether a chat agent for notebook is registered"))));
5
+ const CTX_NOTEBOOK_CHAT_HAS_AGENT = ( new RawContextKey("notebookChatAgentRegistered", false, ( localize(9690, "Whether a chat agent for notebook is registered"))));
6
6
 
7
7
  export { CTX_NOTEBOOK_CHAT_HAS_AGENT };
@@ -13,42 +13,42 @@ import { IRemoteCodingAgentsService } from '@codingame/monaco-vscode-api/vscode/
13
13
  const extensionPoint = ExtensionsRegistry.registerExtensionPoint({
14
14
  extensionPoint: "remoteCodingAgents",
15
15
  jsonSchema: {
16
- description: ( localize(10727, "Contributes remote coding agent integrations to the chat widget.")),
16
+ description: ( localize(10728, "Contributes remote coding agent integrations to the chat widget.")),
17
17
  type: "array",
18
18
  items: {
19
19
  type: "object",
20
20
  properties: {
21
21
  id: {
22
- description: ( localize(10728, "A unique identifier for this item.")),
22
+ description: ( localize(10729, "A unique identifier for this item.")),
23
23
  type: "string"
24
24
  },
25
25
  command: {
26
26
  description: ( localize(
27
- 10729,
27
+ 10730,
28
28
  "Identifier of the command to execute. The command must be declared in the \"commands\" section."
29
29
  )),
30
30
  type: "string"
31
31
  },
32
32
  displayName: {
33
33
  description: ( localize(
34
- 10730,
34
+ 10731,
35
35
  "A user-friendly name for this item which is used for display in menus."
36
36
  )),
37
37
  type: "string"
38
38
  },
39
39
  description: {
40
- description: ( localize(10731, "Description of the remote agent for use in menus and tooltips.")),
40
+ description: ( localize(10732, "Description of the remote agent for use in menus and tooltips.")),
41
41
  type: "string"
42
42
  },
43
43
  followUpRegex: {
44
44
  description: ( localize(
45
- 10732,
45
+ 10733,
46
46
  "The last occurrence of pattern in an existing chat conversation is sent to the contributing extension to facilitate follow-up responses."
47
47
  )),
48
48
  type: "string"
49
49
  },
50
50
  when: {
51
- description: ( localize(10733, "Condition which must be true to show this item.")),
51
+ description: ( localize(10734, "Condition which must be true to show this item.")),
52
52
  type: "string"
53
53
  }
54
54
  },
@@ -37,68 +37,68 @@ function getAccessibilityHelpText(accessor) {
37
37
  const focusResponseKeybinding = keybindingService.lookupKeybinding("chat.action.focus")?.getAriaLabel();
38
38
  const focusInputKeybinding = keybindingService.lookupKeybinding("workbench.action.chat.focusInput")?.getAriaLabel();
39
39
  content.push(( localize(
40
- 12305,
40
+ 12306,
41
41
  "Inline chat occurs within a terminal. It is useful for suggesting terminal commands. Keep in mind that AI generated code may be incorrect."
42
42
  )));
43
43
  content.push(( localize(
44
- 12306,
44
+ 12307,
45
45
  "It can be activated using the command: Terminal: Start Chat ({0}), which will focus the input box.",
46
46
  startChatKeybinding
47
47
  )));
48
48
  content.push(makeRequestKeybinding ? ( localize(
49
- 12307,
49
+ 12308,
50
50
  "The input box is where the user can type a request and can make the request ({0}). The widget will be closed and all content will be discarded when the Escape key is pressed and the terminal will regain focus.",
51
51
  makeRequestKeybinding
52
52
  )) : ( localize(
53
- 12308,
53
+ 12309,
54
54
  "The input box is where the user can type a request and can make the request by tabbing to the Make Request button, which is not currently triggerable via keybindings. The widget will be closed and all content will be discarded when the Escape key is pressed and the terminal will regain focus."
55
55
  )));
56
56
  content.push(openAccessibleViewKeybinding ? ( localize(
57
- 12309,
57
+ 12310,
58
58
  "The response can be inspected in the accessible view ({0}).",
59
59
  openAccessibleViewKeybinding
60
60
  )) : ( localize(
61
- 12310,
61
+ 12311,
62
62
  "With the input box focused, inspect the response in the accessible view via the Open Accessible View command, which is currently not triggerable by a keybinding."
63
63
  )));
64
64
  content.push(focusResponseKeybinding ? ( localize(
65
- 12311,
65
+ 12312,
66
66
  "Reach the response from the input box ({0}).",
67
67
  focusResponseKeybinding
68
68
  )) : ( localize(
69
- 12312,
69
+ 12313,
70
70
  "Reach the response from the input box by tabbing or assigning a keybinding for the command: Focus Terminal Response."
71
71
  )));
72
72
  content.push(focusInputKeybinding ? ( localize(
73
- 12313,
73
+ 12314,
74
74
  "Reach the input box from the response ({0}).",
75
75
  focusInputKeybinding
76
76
  )) : ( localize(
77
- 12314,
77
+ 12315,
78
78
  "Reach the response from the input box by shift+tabbing or assigning a keybinding for the command: Focus Terminal Input."
79
79
  )));
80
80
  content.push(runCommandKeybinding ? ( localize(
81
- 12315,
81
+ 12316,
82
82
  "With focus in the input box or command editor, the Terminal: Run Chat Command ({0}) action.",
83
83
  runCommandKeybinding
84
84
  )) : ( localize(
85
- 12316,
85
+ 12317,
86
86
  "Run a command by tabbing to the button as the action is currently not triggerable by a keybinding."
87
87
  )));
88
88
  content.push(insertCommandKeybinding ? ( localize(
89
- 12317,
89
+ 12318,
90
90
  "With focus in the input box command editor, the Terminal: Insert Chat Command ({0}) action.",
91
91
  insertCommandKeybinding
92
92
  )) : ( localize(
93
- 12318,
93
+ 12319,
94
94
  "Insert a command by tabbing to the button as the action is currently not triggerable by a keybinding."
95
95
  )));
96
96
  content.push(( localize(
97
- 12319,
97
+ 12320,
98
98
  "Use tab to reach conditional parts like commands, status, message responses and more."
99
99
  )));
100
100
  content.push(( localize(
101
- 12320,
101
+ 12321,
102
102
  "Accessibility Signals can be changed via settings with a prefix of signals.chat. By default, if a request takes more than 4 seconds, you will hear a sound indicating that progress is still occurring."
103
103
  )));
104
104
  return content.join("\n");
@@ -33,8 +33,8 @@ import { activeChatController } from './terminalChatControllerHolder.js';
33
33
 
34
34
  registerActiveXtermAction({
35
35
  id: TerminalChatCommandId.Start,
36
- title: ( localize2(12321, "Open Inline Chat")),
37
- category: ( localize2(12322, "Terminal")),
36
+ title: ( localize2(12322, "Open Inline Chat")),
37
+ category: ( localize2(12323, "Terminal")),
38
38
  keybinding: {
39
39
  primary: KeyMod.CtrlCmd | KeyCode.KeyI,
40
40
  when: ( ContextKeyExpr.and(TerminalContextKeys.focusInAny)),
@@ -78,7 +78,7 @@ registerActiveXtermAction({
78
78
  });
79
79
  registerActiveXtermAction({
80
80
  id: TerminalChatCommandId.Close,
81
- title: ( localize2(12323, "Close")),
81
+ title: ( localize2(12324, "Close")),
82
82
  category: AbstractInlineChatAction.category,
83
83
  keybinding: {
84
84
  primary: KeyCode.Escape,
@@ -103,8 +103,8 @@ registerActiveXtermAction({
103
103
  });
104
104
  registerActiveXtermAction({
105
105
  id: TerminalChatCommandId.RunCommand,
106
- title: ( localize2(12324, "Run Chat Command")),
107
- shortTitle: ( localize2(12325, "Run")),
106
+ title: ( localize2(12325, "Run Chat Command")),
107
+ shortTitle: ( localize2(12326, "Run")),
108
108
  category: AbstractInlineChatAction.category,
109
109
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
110
110
  TerminalContextKeys.processSupported,
@@ -132,8 +132,8 @@ registerActiveXtermAction({
132
132
  });
133
133
  registerActiveXtermAction({
134
134
  id: TerminalChatCommandId.RunFirstCommand,
135
- title: ( localize2(12326, "Run First Chat Command")),
136
- shortTitle: ( localize2(12327, "Run First")),
135
+ title: ( localize2(12327, "Run First Chat Command")),
136
+ shortTitle: ( localize2(12328, "Run First")),
137
137
  category: AbstractInlineChatAction.category,
138
138
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
139
139
  TerminalContextKeys.processSupported,
@@ -161,8 +161,8 @@ registerActiveXtermAction({
161
161
  });
162
162
  registerActiveXtermAction({
163
163
  id: TerminalChatCommandId.InsertCommand,
164
- title: ( localize2(12328, "Insert Chat Command")),
165
- shortTitle: ( localize2(12329, "Insert")),
164
+ title: ( localize2(12329, "Insert Chat Command")),
165
+ shortTitle: ( localize2(12330, "Insert")),
166
166
  category: AbstractInlineChatAction.category,
167
167
  icon: Codicon.insert,
168
168
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
@@ -191,8 +191,8 @@ registerActiveXtermAction({
191
191
  });
192
192
  registerActiveXtermAction({
193
193
  id: TerminalChatCommandId.InsertFirstCommand,
194
- title: ( localize2(12330, "Insert First Chat Command")),
195
- shortTitle: ( localize2(12331, "Insert First")),
194
+ title: ( localize2(12331, "Insert First Chat Command")),
195
+ shortTitle: ( localize2(12332, "Insert First")),
196
196
  category: AbstractInlineChatAction.category,
197
197
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
198
198
  TerminalContextKeys.processSupported,
@@ -220,7 +220,7 @@ registerActiveXtermAction({
220
220
  });
221
221
  registerActiveXtermAction({
222
222
  id: TerminalChatCommandId.RerunRequest,
223
- title: ( localize2(12332, "Rerun Request")),
223
+ title: ( localize2(12333, "Rerun Request")),
224
224
  f1: false,
225
225
  icon: Codicon.refresh,
226
226
  category: AbstractInlineChatAction.category,
@@ -261,7 +261,7 @@ registerActiveXtermAction({
261
261
  });
262
262
  registerActiveXtermAction({
263
263
  id: TerminalChatCommandId.ViewInChat,
264
- title: ( localize2(12333, "View in Chat")),
264
+ title: ( localize2(12334, "View in Chat")),
265
265
  category: AbstractInlineChatAction.category,
266
266
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(
267
267
  TerminalContextKeys.processSupported,
@@ -287,8 +287,8 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
287
287
  constructor() {
288
288
  super({
289
289
  id: TerminalChatCommandId.ViewHiddenChatTerminals,
290
- title: ( localize2(12334, "View Hidden Chat Terminals")),
291
- category: ( localize2(12335, "Terminal")),
290
+ title: ( localize2(12335, "View Hidden Chat Terminals")),
291
+ category: ( localize2(12336, "Terminal")),
292
292
  f1: true,
293
293
  precondition: ( ContextKeyExpr.and(TerminalChatContextKeys.hasHiddenChatTerminals, ChatContextKeys.enabled)),
294
294
  menu: [{
@@ -320,7 +320,7 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
320
320
  }
321
321
  }
322
322
  const items = [];
323
- const lastCommandLocalized = command => ( localize2(12336, "Last: {0}", command)).value;
323
+ const lastCommandLocalized = command => ( localize2(12337, "Last: {0}", command)).value;
324
324
  const MAX_DETAIL_LENGTH = 80;
325
325
  const metas = [];
326
326
  for (const instance of ( all.values())) {
@@ -371,10 +371,10 @@ registerAction2(class ShowChatTerminalsAction extends Action2 {
371
371
  });
372
372
  }
373
373
  const qp = quickInputService.createQuickPick();
374
- qp.placeholder = ( localize2(12337, "Select a chat terminal to show and focus")).value;
374
+ qp.placeholder = ( localize2(12338, "Select a chat terminal to show and focus")).value;
375
375
  qp.items = items;
376
376
  qp.canSelectMany = false;
377
- qp.title = ( localize2(12338, "Chat Terminals")).value;
377
+ qp.title = ( localize2(12339, "Chat Terminals")).value;
378
378
  qp.matchOnDescription = true;
379
379
  qp.matchOnDetail = true;
380
380
  const qpDisposables = ( new DisposableStore());
@@ -433,14 +433,14 @@ KeybindingsRegistry.registerCommandAndKeybindingRule({
433
433
  MenuRegistry.appendMenuItem(MenuId.CommandPalette, {
434
434
  command: {
435
435
  id: TerminalChatCommandId.FocusMostRecentChatTerminal,
436
- title: ( localize(12339, "Chat: Focus Most Recent Terminal"))
436
+ title: ( localize(12340, "Chat: Focus Most Recent Terminal"))
437
437
  },
438
438
  when: ChatContextKeys.inChatSession
439
439
  });
440
440
  MenuRegistry.appendMenuItem(MenuId.CommandPalette, {
441
441
  command: {
442
442
  id: TerminalChatCommandId.FocusMostRecentChatTerminalOutput,
443
- title: ( localize(12340, "Chat: Focus Most Recent Terminal Output"))
443
+ title: ( localize(12341, "Chat: Focus Most Recent Terminal Output"))
444
444
  },
445
445
  when: ChatContextKeys.inChatSession
446
446
  });
@@ -188,7 +188,7 @@ let TerminalChatWidget = class TerminalChatWidget extends Disposable {
188
188
  }
189
189
  _resetPlaceholder() {
190
190
  const defaultAgent = this._chatAgentService.getDefaultAgent(ChatAgentLocation.Terminal);
191
- this.inlineChatWidget.placeholder = defaultAgent?.description ?? ( localize(12341, "Ask about commands"));
191
+ this.inlineChatWidget.placeholder = defaultAgent?.description ?? ( localize(12342, "Ask about commands"));
192
192
  }
193
193
  async reveal() {
194
194
  await this._createSession();
@@ -152,7 +152,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
152
152
  const firstSubcommandFirstWord = unapprovedSubCommands.length > 0 ? unapprovedSubCommands[0].split(" ")[0] : "";
153
153
  if (firstSubcommandFirstWord !== commandLine && !( commandsWithSubcommands.has(commandLine)) && !( commandsWithSubSubCommands.has(commandLine))) {
154
154
  actions.push({
155
- label: ( localize(12342, "Allow Exact Command Line in this Session")),
155
+ label: ( localize(12343, "Allow Exact Command Line in this Session")),
156
156
  data: {
157
157
  type: "newRule",
158
158
  rule: {
@@ -166,7 +166,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
166
166
  }
167
167
  });
168
168
  actions.push({
169
- label: ( localize(12343, "Allow Exact Command Line in this Workspace")),
169
+ label: ( localize(12344, "Allow Exact Command Line in this Workspace")),
170
170
  data: {
171
171
  type: "newRule",
172
172
  rule: {
@@ -180,7 +180,7 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
180
180
  }
181
181
  });
182
182
  actions.push({
183
- label: ( localize(12344, "Always Allow Exact Command Line")),
183
+ label: ( localize(12345, "Always Allow Exact Command Line")),
184
184
  data: {
185
185
  type: "newRule",
186
186
  rule: {
@@ -199,15 +199,15 @@ function generateAutoApproveActions(commandLine, subCommands, autoApproveResult)
199
199
  actions.push(( new Separator()));
200
200
  }
201
201
  actions.push({
202
- label: ( localize(12345, "Allow All Commands in this Session")),
203
- tooltip: ( localize(12346, "Allow this tool to run in this session without confirmation.")),
202
+ label: ( localize(12346, "Allow All Commands in this Session")),
203
+ tooltip: ( localize(12347, "Allow this tool to run in this session without confirmation.")),
204
204
  data: {
205
205
  type: "sessionApproval"
206
206
  }
207
207
  });
208
208
  actions.push(( new Separator()));
209
209
  actions.push({
210
- label: ( localize(12347, "Configure Auto Approve...")),
210
+ label: ( localize(12348, "Configure Auto Approve...")),
211
211
  data: {
212
212
  type: "configure"
213
213
  }
@@ -126,7 +126,7 @@ registerWorkbenchContribution2(
126
126
  );
127
127
  registerActiveInstanceAction({
128
128
  id: TerminalChatAgentToolsCommandId.ChatAddTerminalSelection,
129
- title: ( localize(12348, "Add Terminal Selection to Chat")),
129
+ title: ( localize(12349, "Add Terminal Selection to Chat")),
130
130
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, sharedWhenClause.terminalAvailable)),
131
131
  menu: [{
132
132
  id: MenuId.TerminalInstanceContext,
@@ -147,8 +147,8 @@ registerActiveInstanceAction({
147
147
  chatView.attachmentModel.addContext({
148
148
  id: `terminal-selection-${Date.now()}`,
149
149
  kind: "generic",
150
- name: ( localize(12349, "Terminal Selection")),
151
- fullName: ( localize(12349, "Terminal Selection")),
150
+ name: ( localize(12350, "Terminal Selection")),
151
+ fullName: ( localize(12350, "Terminal Selection")),
152
152
  value: selection,
153
153
  icon: Codicon.terminal
154
154
  });
@@ -11,7 +11,7 @@ import { timeout, raceCancellationError } from '@codingame/monaco-vscode-api/vsc
11
11
  const AwaitTerminalToolData = {
12
12
  id: TerminalToolId.AwaitTerminal,
13
13
  toolReferenceName: "awaitTerminal",
14
- displayName: ( localize(12350, "Await Terminal")),
14
+ displayName: ( localize(12351, "Await Terminal")),
15
15
  modelDescription: "Wait for a background terminal command to complete. Returns the output, exit code, or timeout status.",
16
16
  icon: Codicon.terminal,
17
17
  source: ToolDataSource.Internal,
@@ -33,8 +33,8 @@ const AwaitTerminalToolData = {
33
33
  class AwaitTerminalTool extends Disposable {
34
34
  async prepareToolInvocation(_context, _token) {
35
35
  return {
36
- invocationMessage: ( localize(12351, "Awaiting terminal completion")),
37
- pastTenseMessage: ( localize(12352, "Awaited terminal completion"))
36
+ invocationMessage: ( localize(12352, "Awaiting terminal completion")),
37
+ pastTenseMessage: ( localize(12353, "Awaited terminal completion"))
38
38
  };
39
39
  }
40
40
  async invoke(invocation, _countTokens, _progress, token) {
@@ -154,7 +154,7 @@ let NpmScriptAutoApprover = class NpmScriptAutoApprover extends Disposable {
154
154
  isAutoApproved: true,
155
155
  scriptName,
156
156
  autoApproveInfo: ( new MarkdownString(( localize(
157
- 12353,
157
+ 12354,
158
158
  "Auto approved as {0} is defined in package.json",
159
159
  `\`${scriptName}\``
160
160
  ))))
@@ -55,7 +55,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
55
55
  isAutoApproved: true,
56
56
  isAutoApproveAllowed: true,
57
57
  disclaimers: [],
58
- autoApproveInfo: ( new MarkdownString(`${( localize(12354, "Auto approved for this session"))} ([${( localize(12355, "Disable"))}](${( disableUri.toString())}))`, mdTrustSettings))
58
+ autoApproveInfo: ( new MarkdownString(`${( localize(12355, "Auto approved for this session"))} ([${( localize(12356, "Disable"))}](${( disableUri.toString())}))`, mdTrustSettings))
59
59
  };
60
60
  }
61
61
  const trimmedCommandLine = options.commandLine.trimStart();
@@ -148,7 +148,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
148
148
  const subCommandsLowerFirstWordOnly = ( subCommands.map(command => command.split(" ")[0].toLowerCase()));
149
149
  if (!isAutoApproved && (( subCommandsLowerFirstWordOnly.some(command => promptInjectionWarningCommandsLower.includes(command))) || (isPowerShell(options.shell, options.os) && ( subCommandsLowerFirstWordOnly.some(command => promptInjectionWarningCommandsLowerPwshOnly.includes(command)))))) {
150
150
  disclaimers.push(( localize(
151
- 12356,
151
+ 12357,
152
152
  "Web content may contain malicious code or attempt prompt injection attacks."
153
153
  )));
154
154
  }
@@ -189,10 +189,10 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
189
189
  return ( asArray(result).filter(e => isAutoApproveRule(e.rule)).map(e => {
190
190
  const escapedSourceText = e.rule.sourceText.replaceAll("$", "\\$");
191
191
  if (e.rule.sourceTarget === "session") {
192
- return localize(12357, "{0} (session)", `\`${escapedSourceText}\``);
192
+ return localize(12358, "{0} (session)", `\`${escapedSourceText}\``);
193
193
  }
194
194
  const settingsUri = createCommandUri(TerminalChatCommandId.OpenTerminalSettingsLink, e.rule.sourceTarget);
195
- const tooltip = ( localize(12358, "View rule in settings"));
195
+ const tooltip = ( localize(12359, "View rule in settings"));
196
196
  let label = escapedSourceText;
197
197
  switch (e.rule?.sourceTarget) {
198
198
  case ConfigurationTarget.DEFAULT:
@@ -223,9 +223,9 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
223
223
  if (isGlobalAutoApproved) {
224
224
  const settingsUri = createCommandUri(TerminalChatCommandId.OpenTerminalSettingsLink, "global");
225
225
  return (new MarkdownString(`${( localize(
226
- 12359,
226
+ 12360,
227
227
  "Auto approved by setting {0}",
228
- `[\`${ChatConfiguration.GlobalAutoApprove}\`](${( settingsUri.toString())} "${( localize(12360, "View settings"))}")`
228
+ `[\`${ChatConfiguration.GlobalAutoApprove}\`](${( settingsUri.toString())} "${( localize(12361, "View settings"))}")`
229
229
  ))}`, mdTrustSettings));
230
230
  }
231
231
  if (isAutoApproved) {
@@ -234,7 +234,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
234
234
  {
235
235
  if (isAutoApproveRule(commandLineResult.rule)) {
236
236
  return (new MarkdownString(
237
- localize(12361, "Auto approved by rule {0}", formatRuleLinks(commandLineResult)),
237
+ localize(12362, "Auto approved by rule {0}", formatRuleLinks(commandLineResult)),
238
238
  mdTrustSettings
239
239
  ));
240
240
  }
@@ -249,12 +249,12 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
249
249
  const uniqueRules = dedupeRules(subCommandResults);
250
250
  if (uniqueRules.length === 1) {
251
251
  return (new MarkdownString(
252
- localize(12361, "Auto approved by rule {0}", formatRuleLinks(uniqueRules)),
252
+ localize(12362, "Auto approved by rule {0}", formatRuleLinks(uniqueRules)),
253
253
  mdTrustSettings
254
254
  ));
255
255
  } else if (uniqueRules.length > 1) {
256
256
  return (new MarkdownString(
257
- localize(12362, "Auto approved by rules {0}", formatRuleLinks(uniqueRules)),
257
+ localize(12363, "Auto approved by rules {0}", formatRuleLinks(uniqueRules)),
258
258
  mdTrustSettings
259
259
  ));
260
260
  }
@@ -267,7 +267,7 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
267
267
  {
268
268
  if (commandLineResult.rule) {
269
269
  return (new MarkdownString(localize(
270
- 12363,
270
+ 12364,
271
271
  "Auto approval denied by rule {0}",
272
272
  formatRuleLinks(commandLineResult)
273
273
  ), mdTrustSettings));
@@ -279,12 +279,12 @@ let CommandLineAutoApproveAnalyzer = class CommandLineAutoApproveAnalyzer extend
279
279
  const uniqueRules = dedupeRules(subCommandResults.filter(e => e.result === "denied"));
280
280
  if (uniqueRules.length === 1) {
281
281
  return (new MarkdownString(
282
- localize(12363, "Auto approval denied by rule {0}", formatRuleLinks(uniqueRules)),
282
+ localize(12364, "Auto approval denied by rule {0}", formatRuleLinks(uniqueRules)),
283
283
  mdTrustSettings
284
284
  ));
285
285
  } else if (uniqueRules.length > 1) {
286
286
  return (new MarkdownString(
287
- localize(12364, "Auto approval denied by rules {0}", formatRuleLinks(uniqueRules)),
287
+ localize(12365, "Auto approval denied by rules {0}", formatRuleLinks(uniqueRules)),
288
288
  mdTrustSettings
289
289
  ));
290
290
  }
@@ -149,12 +149,12 @@ let CommandLineFileWriteAnalyzer = class CommandLineFileWriteAnalyzer extends Di
149
149
  )).join(", ");
150
150
  if (!isAutoApproveAllowed) {
151
151
  disclaimers.push(( localize(
152
- 12365,
152
+ 12366,
153
153
  "File write operations detected that cannot be auto approved: {0}",
154
154
  fileWritesList
155
155
  )));
156
156
  } else {
157
- disclaimers.push(( localize(12366, "File write operations detected: {0}", fileWritesList)));
157
+ disclaimers.push(( localize(12367, "File write operations detected: {0}", fileWritesList)));
158
158
  }
159
159
  }
160
160
  return {
@@ -12,7 +12,7 @@ const GetTerminalLastCommandToolData = {
12
12
  id: TerminalToolId.TerminalLastCommand,
13
13
  toolReferenceName: "terminalLastCommand",
14
14
  legacyToolReferenceFullNames: ["runCommands/terminalLastCommand"],
15
- displayName: ( localize(12367, "Get Terminal Last Command")),
15
+ displayName: ( localize(12368, "Get Terminal Last Command")),
16
16
  modelDescription: "Get the last command run in the active terminal.",
17
17
  source: ToolDataSource.Internal,
18
18
  icon: Codicon.terminal
@@ -24,8 +24,8 @@ let GetTerminalLastCommandTool = class GetTerminalLastCommandTool extends Dispos
24
24
  }
25
25
  async prepareToolInvocation(context, token) {
26
26
  return {
27
- invocationMessage: ( localize(12368, "Getting last terminal command")),
28
- pastTenseMessage: ( localize(12369, "Got last terminal command"))
27
+ invocationMessage: ( localize(12369, "Getting last terminal command")),
28
+ pastTenseMessage: ( localize(12370, "Got last terminal command"))
29
29
  };
30
30
  }
31
31
  async invoke(invocation, _countTokens, _progress, token) {
@@ -10,7 +10,7 @@ const GetTerminalOutputToolData = {
10
10
  id: TerminalToolId.GetTerminalOutput,
11
11
  toolReferenceName: "getTerminalOutput",
12
12
  legacyToolReferenceFullNames: ["runCommands/getTerminalOutput"],
13
- displayName: ( localize(12370, "Get Terminal Output")),
13
+ displayName: ( localize(12371, "Get Terminal Output")),
14
14
  modelDescription: `Get the output of a terminal command previously started with ${TerminalToolId.RunInTerminal}`,
15
15
  icon: Codicon.terminal,
16
16
  source: ToolDataSource.Internal,
@@ -28,8 +28,8 @@ const GetTerminalOutputToolData = {
28
28
  class GetTerminalOutputTool extends Disposable {
29
29
  async prepareToolInvocation(context, token) {
30
30
  return {
31
- invocationMessage: ( localize(12371, "Checking background terminal output")),
32
- pastTenseMessage: ( localize(12372, "Checked background terminal output"))
31
+ invocationMessage: ( localize(12372, "Checking background terminal output")),
32
+ pastTenseMessage: ( localize(12373, "Checked background terminal output"))
33
33
  };
34
34
  }
35
35
  async invoke(invocation, _countTokens, _progress, token) {
@@ -11,7 +11,7 @@ const GetTerminalSelectionToolData = {
11
11
  id: TerminalToolId.TerminalSelection,
12
12
  toolReferenceName: "terminalSelection",
13
13
  legacyToolReferenceFullNames: ["runCommands/terminalSelection"],
14
- displayName: ( localize(12373, "Get Terminal Selection")),
14
+ displayName: ( localize(12374, "Get Terminal Selection")),
15
15
  modelDescription: "Get the current selection in the active terminal.",
16
16
  source: ToolDataSource.Internal,
17
17
  icon: Codicon.terminal
@@ -23,8 +23,8 @@ let GetTerminalSelectionTool = class GetTerminalSelectionTool extends Disposable
23
23
  }
24
24
  async prepareToolInvocation(context, token) {
25
25
  return {
26
- invocationMessage: ( localize(12374, "Reading terminal selection")),
27
- pastTenseMessage: ( localize(12375, "Read terminal selection"))
26
+ invocationMessage: ( localize(12375, "Reading terminal selection")),
27
+ pastTenseMessage: ( localize(12376, "Read terminal selection"))
28
28
  };
29
29
  }
30
30
  async invoke(invocation, _countTokens, _progress, token) {
@@ -9,7 +9,7 @@ import { TerminalToolId } from './toolIds.js';
9
9
  const KillTerminalToolData = {
10
10
  id: TerminalToolId.KillTerminal,
11
11
  toolReferenceName: "killTerminal",
12
- displayName: ( localize(12376, "Kill Terminal")),
12
+ displayName: ( localize(12377, "Kill Terminal")),
13
13
  modelDescription: `Kill a terminal by its ID. Use this to clean up terminals that are no longer needed (e.g., after stopping a server or when a long-running task completes). The terminal ID is returned by ${TerminalToolId.RunInTerminal} when isBackground=true.`,
14
14
  icon: Codicon.terminal,
15
15
  source: ToolDataSource.Internal,
@@ -27,8 +27,8 @@ const KillTerminalToolData = {
27
27
  class KillTerminalTool extends Disposable {
28
28
  async prepareToolInvocation(_context, _token) {
29
29
  return {
30
- invocationMessage: ( localize(12377, "Killing terminal")),
31
- pastTenseMessage: ( localize(12378, "Killed terminal"))
30
+ invocationMessage: ( localize(12378, "Killing terminal")),
31
+ pastTenseMessage: ( localize(12379, "Killed terminal"))
32
32
  };
33
33
  }
34
34
  async invoke(invocation, _countTokens, _progress, _token) {
@@ -521,11 +521,11 @@ let OutputMonitor = class OutputMonitor extends Disposable {
521
521
  const {
522
522
  promise: userPrompt,
523
523
  part
524
- } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(12379, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
525
- 12380,
524
+ } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(12380, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
525
+ 12381,
526
526
  "{0}\nPlease provide the required input to the terminal.\n\n",
527
527
  confirmationPrompt.prompt
528
- )))), "", ( localize(12381, "Focus terminal")), undefined, () => {
528
+ )))), "", ( localize(12382, "Focus terminal")), undefined, () => {
529
529
  this._showInstance(execution.instance.instanceId);
530
530
  return focusTerminalSelection;
531
531
  });
@@ -578,13 +578,13 @@ let OutputMonitor = class OutputMonitor extends Disposable {
578
578
  const {
579
579
  promise: userPrompt,
580
580
  part
581
- } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(12382, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
582
- 12383,
581
+ } = this._createElicitationPart(token, execution.sessionId, ( new MarkdownString(( localize(12383, "The terminal is awaiting input.")))), ( new MarkdownString(( localize(
582
+ 12384,
583
583
  "{0}\n Do you want to send `{1}`{2} followed by `Enter` to the terminal?",
584
584
  confirmationPrompt.prompt,
585
585
  suggestedOptionValue,
586
586
  isString(suggestedOption) ? "" : suggestedOption.description ? " (" + suggestedOption.description + ")" : ""
587
- )))), "", ( localize(12384, "Allow")), ( localize(12385, "Focus Terminal")), async value => {
587
+ )))), "", ( localize(12385, "Allow")), ( localize(12386, "Focus Terminal")), async value => {
588
588
  let option = undefined;
589
589
  if (value === true) {
590
590
  option = suggestedOptionValue;
@@ -768,8 +768,8 @@ function detectsNonInteractiveHelpPattern(cursorLine) {
768
768
  ].some(e => e.test(cursorLine)));
769
769
  }
770
770
  const taskFinishMessages = [(
771
- localize(12386, "Terminal will be reused by tasks, press any key to close it.")), ( localize(12387, "Terminal will be reused by tasks, press any key to close it.")), (
772
- localize(12388, "Press any key to close the terminal.")), ( localize(12389, "Press any key to close the terminal."))];
771
+ localize(12387, "Terminal will be reused by tasks, press any key to close it.")), ( localize(12388, "Terminal will be reused by tasks, press any key to close it.")), (
772
+ localize(12389, "Press any key to close the terminal.")), ( localize(12390, "Press any key to close the terminal."))];
773
773
  function detectsVSCodeTaskFinishMessage(cursorLine) {
774
774
  const normalized = cursorLine.replace(/\s/g, "").toLowerCase();
775
775
  return (taskFinishMessages.some(msg => normalized.includes(msg.replace(/\s/g, "").toLowerCase())));
@@ -8,7 +8,7 @@ import { TerminalToolId } from './toolIds.js';
8
8
 
9
9
  const ConfirmTerminalCommandToolData = {
10
10
  id: TerminalToolId.ConfirmTerminalCommand,
11
- displayName: ( localize(12390, "Confirm Terminal Command")),
11
+ displayName: ( localize(12391, "Confirm Terminal Command")),
12
12
  modelDescription: [
13
13
  "This tool allows you to get explicit user confirmation for a terminal command without executing it.",
14
14
  "",
@@ -26,7 +26,7 @@ const ConfirmTerminalCommandToolData = {
26
26
  "",
27
27
  "After confirmation, use a tool to actually execute the command."
28
28
  ].join("\n"),
29
- userDescription: ( localize(12391, "Tool for confirming terminal commands")),
29
+ userDescription: ( localize(12392, "Tool for confirming terminal commands")),
30
30
  source: ToolDataSource.Internal,
31
31
  icon: Codicon.shield,
32
32
  inputSchema: {
@@ -193,9 +193,9 @@ async function createRunInTerminalToolData(accessor) {
193
193
  id: TerminalToolId.RunInTerminal,
194
194
  toolReferenceName: TOOL_REFERENCE_NAME,
195
195
  legacyToolReferenceFullNames: LEGACY_TOOL_REFERENCE_FULL_NAMES,
196
- displayName: ( localize(12392, "Run in Terminal")),
196
+ displayName: ( localize(12393, "Run in Terminal")),
197
197
  modelDescription,
198
- userDescription: ( localize(12393, "Run commands in the terminal")),
198
+ userDescription: ( localize(12394, "Run commands in the terminal")),
199
199
  source: ToolDataSource.Internal,
200
200
  icon: Codicon.terminal,
201
201
  inputSchema: {
@@ -233,7 +233,7 @@ var TerminalToolStorageKeysInternal;
233
233
  const telemetryIgnoredSequences = [
234
234
  "\u001b[I",
235
235
  "\u001b[O"];
236
- const altBufferMessage = ( localize(12394, "The command opened the alternate buffer."));
236
+ const altBufferMessage = ( localize(12395, "The command opened the alternate buffer."));
237
237
  let RunInTerminalTool = class RunInTerminalTool extends Disposable {
238
238
  static {
239
239
  RunInTerminalTool_1 = this;
@@ -490,16 +490,16 @@ let RunInTerminalTool = class RunInTerminalTool extends Disposable {
490
490
  cdPrefix
491
491
  };
492
492
  confirmationTitle = args.isBackground ? ( localize(
493
- 12395,
493
+ 12396,
494
494
  "Run `{0}` command in background within `{1}`?",
495
495
  shellType,
496
496
  directoryLabel
497
- )) : ( localize(12396, "Run `{0}` command within `{1}`?", shellType, directoryLabel));
497
+ )) : ( localize(12397, "Run `{0}` command within `{1}`?", shellType, directoryLabel));
498
498
  } else {
499
499
  toolSpecificData.confirmation = {
500
500
  commandLine: commandToDisplay
501
501
  };
502
- confirmationTitle = args.isBackground ? ( localize(12397, "Run `{0}` command in background?", shellType)) : ( localize(12398, "Run `{0}` command?", shellType));
502
+ confirmationTitle = args.isBackground ? ( localize(12398, "Run `{0}` command in background?", shellType)) : ( localize(12399, "Run `{0}` command?", shellType));
503
503
  }
504
504
  const commandForPresenter = extractedCd?.command ?? commandToDisplay;
505
505
  let presenterInput = commandForPresenter;
@@ -519,13 +519,13 @@ let RunInTerminalTool = class RunInTerminalTool extends Disposable {
519
519
  };
520
520
  if (extractedCd && toolSpecificData.confirmation?.cwdLabel) {
521
521
  confirmationTitle = args.isBackground ? ( localize(
522
- 12399,
522
+ 12400,
523
523
  "Run `{0}` command in `{1}` in background within `{2}`?",
524
524
  presenterResult.languageDisplayName,
525
525
  shellType,
526
526
  toolSpecificData.confirmation.cwdLabel
527
527
  )) : ( localize(
528
- 12400,
528
+ 12401,
529
529
  "Run `{0}` command in `{1}` within `{2}`?",
530
530
  presenterResult.languageDisplayName,
531
531
  shellType,
@@ -533,12 +533,12 @@ let RunInTerminalTool = class RunInTerminalTool extends Disposable {
533
533
  ));
534
534
  } else {
535
535
  confirmationTitle = args.isBackground ? ( localize(
536
- 12401,
536
+ 12402,
537
537
  "Run `{0}` command in `{1}` in background?",
538
538
  presenterResult.languageDisplayName,
539
539
  shellType
540
540
  )) : ( localize(
541
- 12402,
541
+ 12403,
542
542
  "Run `{0}` command in `{1}`?",
543
543
  presenterResult.languageDisplayName,
544
544
  shellType
@@ -552,7 +552,7 @@ let RunInTerminalTool = class RunInTerminalTool extends Disposable {
552
552
  }
553
553
  const confirmationMessages = isFinalAutoApproved ? undefined : {
554
554
  title: confirmationTitle,
555
- message: ( new MarkdownString(( localize(12403, "Explanation: {0}\n\nGoal: {1}", args.explanation, args.goal)))),
555
+ message: ( new MarkdownString(( localize(12404, "Explanation: {0}\n\nGoal: {1}", args.explanation, args.goal)))),
556
556
  disclaimer,
557
557
  terminalCustomActions: customActions
558
558
  };
@@ -79,7 +79,7 @@ let CreateAndRunTaskTool = class CreateAndRunTaskTool {
79
79
  });
80
80
  }
81
81
  _progress.report({
82
- message: ( new MarkdownString(( localize(12404, "Resolving the task"))))
82
+ message: ( new MarkdownString(( localize(12405, "Resolving the task"))))
83
83
  });
84
84
  let task;
85
85
  const start = Date.now();
@@ -96,11 +96,11 @@ let CreateAndRunTaskTool = class CreateAndRunTaskTool {
96
96
  kind: "text",
97
97
  value: `Task not found: ${args.task.label}`
98
98
  }],
99
- toolResultMessage: ( new MarkdownString(( localize(12405, "Task not found: `{0}`", args.task.label))))
99
+ toolResultMessage: ( new MarkdownString(( localize(12406, "Task not found: `{0}`", args.task.label))))
100
100
  };
101
101
  }
102
102
  _progress.report({
103
- message: ( new MarkdownString(( localize(12406, "Running task `{0}`", args.task.label))))
103
+ message: ( new MarkdownString(( localize(12407, "Running task `{0}`", args.task.label))))
104
104
  });
105
105
  const raceResult = await Promise.race([
106
106
  this._tasksService.run(task, undefined, TaskRunSource.ChatAgent),
@@ -119,7 +119,7 @@ let CreateAndRunTaskTool = class CreateAndRunTaskTool {
119
119
  value: `Task started but no terminal was found for: ${args.task.label}`
120
120
  }],
121
121
  toolResultMessage: ( new MarkdownString(( localize(
122
- 12407,
122
+ 12408,
123
123
  "Task started but no terminal was found for: `{0}`",
124
124
  args.task.label
125
125
  ))))
@@ -182,26 +182,26 @@ let CreateAndRunTaskTool = class CreateAndRunTaskTool {
182
182
  const allTasks = await this._tasksService.tasks();
183
183
  if (allTasks?.find(t => t._label === task.label)) {
184
184
  return {
185
- invocationMessage: ( new MarkdownString(( localize(12408, "Task `{0}` already exists.", task.label)))),
186
- pastTenseMessage: ( new MarkdownString(( localize(12409, "Task `{0}` already exists.", task.label)))),
185
+ invocationMessage: ( new MarkdownString(( localize(12409, "Task `{0}` already exists.", task.label)))),
186
+ pastTenseMessage: ( new MarkdownString(( localize(12410, "Task `{0}` already exists.", task.label)))),
187
187
  confirmationMessages: undefined
188
188
  };
189
189
  }
190
190
  const activeTasks = await this._tasksService.getActiveTasks();
191
191
  if (activeTasks.find(t => t._label === task.label)) {
192
192
  return {
193
- invocationMessage: ( new MarkdownString(( localize(12410, "Task `{0}` is already running.", task.label)))),
194
- pastTenseMessage: ( new MarkdownString(( localize(12410, "Task `{0}` is already running.", task.label)))),
193
+ invocationMessage: ( new MarkdownString(( localize(12411, "Task `{0}` is already running.", task.label)))),
194
+ pastTenseMessage: ( new MarkdownString(( localize(12411, "Task `{0}` is already running.", task.label)))),
195
195
  confirmationMessages: undefined
196
196
  };
197
197
  }
198
198
  return {
199
- invocationMessage: ( new MarkdownString(( localize(12411, "Created task `{0}`", task.label)))),
200
- pastTenseMessage: ( new MarkdownString(( localize(12412, "Created task `{0}`", task.label)))),
199
+ invocationMessage: ( new MarkdownString(( localize(12412, "Created task `{0}`", task.label)))),
200
+ pastTenseMessage: ( new MarkdownString(( localize(12413, "Created task `{0}`", task.label)))),
201
201
  confirmationMessages: {
202
- title: ( localize(12413, "Allow task creation and execution?")),
202
+ title: ( localize(12414, "Allow task creation and execution?")),
203
203
  message: ( new MarkdownString(( localize(
204
- 12414,
204
+ 12415,
205
205
  "A task `{0}` with command `{1}`{2} will be created.",
206
206
  task.label,
207
207
  task.command,
@@ -216,9 +216,9 @@ const CreateAndRunTaskToolData = {
216
216
  id: TerminalToolId.CreateAndRunTask,
217
217
  toolReferenceName: "createAndRunTask",
218
218
  legacyToolReferenceFullNames: ["runTasks/createAndRunTask"],
219
- displayName: ( localize(12415, "Create and run Task")),
219
+ displayName: ( localize(12416, "Create and run Task")),
220
220
  modelDescription: "Creates and runs a build, run, or custom task for the workspace by generating or adding to a tasks.json file based on the project structure (such as package.json or README.md). If the user asks to build, run, launch and they have no tasks.json file, use this tool. If they ask to create or add a task, use this tool.",
221
- userDescription: ( localize(12416, "Create and run a task in the workspace")),
221
+ userDescription: ( localize(12417, "Create and run a task in the workspace")),
222
222
  source: ToolDataSource.Internal,
223
223
  inputSchema: {
224
224
  "type": "object",
@@ -18,7 +18,7 @@ const GetTaskOutputToolData = {
18
18
  id: TerminalToolId.GetTaskOutput,
19
19
  toolReferenceName: "getTaskOutput",
20
20
  legacyToolReferenceFullNames: ["runTasks/getTaskOutput"],
21
- displayName: ( localize(12417, "Get Task Output")),
21
+ displayName: ( localize(12418, "Get Task Output")),
22
22
  modelDescription: "Get the output of a task",
23
23
  source: ToolDataSource.Internal,
24
24
  when: TasksAvailableContext,
@@ -65,19 +65,19 @@ let GetTaskOutputTool = class GetTaskOutputTool extends Disposable {
65
65
  );
66
66
  if (!task) {
67
67
  return {
68
- invocationMessage: ( new MarkdownString(( localize(12418, "Task not found: `{0}`", args.id))))
68
+ invocationMessage: ( new MarkdownString(( localize(12419, "Task not found: `{0}`", args.id))))
69
69
  };
70
70
  }
71
71
  const taskLabel = task._label;
72
72
  const activeTasks = await this._tasksService.getActiveTasks();
73
73
  if (activeTasks.includes(task)) {
74
74
  return {
75
- invocationMessage: ( new MarkdownString(( localize(12419, "The task `{0}` is already running.", taskLabel))))
75
+ invocationMessage: ( new MarkdownString(( localize(12420, "The task `{0}` is already running.", taskLabel))))
76
76
  };
77
77
  }
78
78
  return {
79
- invocationMessage: ( new MarkdownString(( localize(12420, "Checking output for task `{0}`", taskLabel)))),
80
- pastTenseMessage: ( new MarkdownString(( localize(12421, "Checked output for task `{0}`", taskLabel))))
79
+ invocationMessage: ( new MarkdownString(( localize(12421, "Checking output for task `{0}`", taskLabel)))),
80
+ pastTenseMessage: ( new MarkdownString(( localize(12422, "Checked output for task `{0}`", taskLabel))))
81
81
  };
82
82
  }
83
83
  async invoke(invocation, _countTokens, _progress, token) {
@@ -97,7 +97,7 @@ let GetTaskOutputTool = class GetTaskOutputTool extends Disposable {
97
97
  kind: "text",
98
98
  value: `Task not found: ${args.id}`
99
99
  }],
100
- toolResultMessage: ( new MarkdownString(( localize(12418, "Task not found: `{0}`", args.id))))
100
+ toolResultMessage: ( new MarkdownString(( localize(12419, "Task not found: `{0}`", args.id))))
101
101
  };
102
102
  }
103
103
  const dependencyTasks = await resolveDependencyTasks(task, args.workspaceFolder, this._configurationService, this._tasksService);
@@ -112,7 +112,7 @@ let GetTaskOutputTool = class GetTaskOutputTool extends Disposable {
112
112
  kind: "text",
113
113
  value: `Terminal not found for task ${taskLabel}`
114
114
  }],
115
- toolResultMessage: ( new MarkdownString(( localize(12422, "Terminal not found for task `{0}`", taskLabel))))
115
+ toolResultMessage: ( new MarkdownString(( localize(12423, "Terminal not found for task `{0}`", taskLabel))))
116
116
  };
117
117
  }
118
118
  const store = ( new DisposableStore());
@@ -57,7 +57,7 @@ let RunTaskTool = class RunTaskTool {
57
57
  kind: "text",
58
58
  value: `Task not found: ${args.id}`
59
59
  }],
60
- toolResultMessage: ( new MarkdownString(( localize(12423, "Task not found: `{0}`", args.id))))
60
+ toolResultMessage: ( new MarkdownString(( localize(12424, "Task not found: `{0}`", args.id))))
61
61
  };
62
62
  }
63
63
  const taskLabel = task._label;
@@ -68,7 +68,7 @@ let RunTaskTool = class RunTaskTool {
68
68
  kind: "text",
69
69
  value: `The task ${taskLabel} is already running.`
70
70
  }],
71
- toolResultMessage: ( new MarkdownString(( localize(12424, "The task `{0}` is already running.", taskLabel))))
71
+ toolResultMessage: ( new MarkdownString(( localize(12425, "The task `{0}` is already running.", taskLabel))))
72
72
  };
73
73
  }
74
74
  const raceResult = await Promise.race([
@@ -84,7 +84,7 @@ let RunTaskTool = class RunTaskTool {
84
84
  kind: "text",
85
85
  value: `Task started but no terminal was found for: ${taskLabel}`
86
86
  }],
87
- toolResultMessage: ( new MarkdownString(( localize(12425, "Task started but no terminal was found for: `{0}`", taskLabel))))
87
+ toolResultMessage: ( new MarkdownString(( localize(12426, "Task started but no terminal was found for: `{0}`", taskLabel))))
88
88
  };
89
89
  }
90
90
  const terminals = this._terminalService.instances.filter(t => ( resources.some(r => r.path === t.resource.path && r.scheme === t.resource.scheme)));
@@ -94,7 +94,7 @@ let RunTaskTool = class RunTaskTool {
94
94
  kind: "text",
95
95
  value: `Task started but no terminal was found for: ${taskLabel}`
96
96
  }],
97
- toolResultMessage: ( new MarkdownString(( localize(12425, "Task started but no terminal was found for: `{0}`", taskLabel))))
97
+ toolResultMessage: ( new MarkdownString(( localize(12426, "Task started but no terminal was found for: `{0}`", taskLabel))))
98
98
  };
99
99
  }
100
100
  const store = ( new DisposableStore());
@@ -161,29 +161,29 @@ let RunTaskTool = class RunTaskTool {
161
161
  );
162
162
  if (!task) {
163
163
  return {
164
- invocationMessage: ( new MarkdownString(( localize(12423, "Task not found: `{0}`", args.id))))
164
+ invocationMessage: ( new MarkdownString(( localize(12424, "Task not found: `{0}`", args.id))))
165
165
  };
166
166
  }
167
167
  const taskLabel = task._label;
168
168
  const activeTasks = await this._tasksService.getActiveTasks();
169
169
  if (task && activeTasks.includes(task)) {
170
170
  return {
171
- invocationMessage: ( new MarkdownString(( localize(12426, "The task is already running."))))
171
+ invocationMessage: ( new MarkdownString(( localize(12427, "The task is already running."))))
172
172
  };
173
173
  }
174
174
  if (await this._isTaskActive(task)) {
175
175
  return {
176
- invocationMessage: ( new MarkdownString(( localize(12427, "`{0}` is already running.", taskLabel)))),
177
- pastTenseMessage: ( new MarkdownString(( localize(12428, "`{0}` was already running.", taskLabel)))),
176
+ invocationMessage: ( new MarkdownString(( localize(12428, "`{0}` is already running.", taskLabel)))),
177
+ pastTenseMessage: ( new MarkdownString(( localize(12429, "`{0}` was already running.", taskLabel)))),
178
178
  confirmationMessages: undefined
179
179
  };
180
180
  }
181
181
  return {
182
- invocationMessage: ( new MarkdownString(( localize(12429, "Running `{0}`", taskLabel)))),
183
- pastTenseMessage: ( new MarkdownString(task?.configurationProperties.isBackground ? ( localize(12430, "Started `{0}`", taskLabel)) : ( localize(12431, "Ran `{0}`", taskLabel)))),
182
+ invocationMessage: ( new MarkdownString(( localize(12430, "Running `{0}`", taskLabel)))),
183
+ pastTenseMessage: ( new MarkdownString(task?.configurationProperties.isBackground ? ( localize(12431, "Started `{0}`", taskLabel)) : ( localize(12432, "Ran `{0}`", taskLabel)))),
184
184
  confirmationMessages: task ? {
185
- title: ( localize(12432, "Allow task run?")),
186
- message: ( localize(12433, "Allow to run the task `{0}`?", taskLabel))
185
+ title: ( localize(12433, "Allow task run?")),
186
+ message: ( localize(12434, "Allow to run the task `{0}`?", taskLabel))
187
187
  } : undefined
188
188
  };
189
189
  }
@@ -193,9 +193,9 @@ const RunTaskToolData = {
193
193
  id: TerminalToolId.RunTask,
194
194
  toolReferenceName: "runTask",
195
195
  legacyToolReferenceFullNames: ["runTasks/runTask"],
196
- displayName: ( localize(12434, "Run Task")),
196
+ displayName: ( localize(12435, "Run Task")),
197
197
  modelDescription: `Runs a VS Code task.\n\n- If you see that an appropriate task exists for building or running code, prefer to use this tool to run the task instead of using the ${TerminalToolId.RunInTerminal} tool.\n- Make sure that any appropriate build or watch task is running before trying to run tests or execute code.\n- If the user asks to run a task, use this tool to do so.`,
198
- userDescription: ( localize(12435, "Run tasks in the workspace")),
198
+ userDescription: ( localize(12436, "Run tasks in the workspace")),
199
199
  icon: Codicon.tools,
200
200
  source: ToolDataSource.Internal,
201
201
  when: TasksAvailableContext,
@@ -26,7 +26,7 @@ function toolResultMessageFromResponse(
26
26
  ) {
27
27
  let resultSummary = "";
28
28
  if (result?.exitCode) {
29
- resultSummary = ( localize(12436, "Task `{0}` failed with exit code {1}.", taskLabel, result.exitCode));
29
+ resultSummary = ( localize(12437, "Task `{0}` failed with exit code {1}.", taskLabel, result.exitCode));
30
30
  } else {
31
31
  resultSummary += `\`${taskLabel}\` task `;
32
32
  const problemCount = toolResultDetails.length;