@codingame/monaco-vscode-chat-service-override 32.0.0 → 32.0.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.
- package/index.js +1 -0
- package/package.json +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.d.ts +58 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentPluginsView.js +637 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostPermissionUiContribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +53 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationIcons.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.js +97 -97
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagement.contribution.js +43 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditor.js +58 -58
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationManagementEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWelcomePagePromptLaunchers.js +25 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedAgentPluginDetail.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/embeddedMcpServerDetail.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.js +50 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.js +51 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +229 -229
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.view.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.view.contribution.js +5 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatCustomizationDiscoveryRenderer.js +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.js +99 -99
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugDetailPanel.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventDetailRenderer.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEventList.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFilters.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowChartView.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugFlowGraph.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHomeView.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugHookContentRenderer.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugLogsView.js +24 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugMessageContentRenderer.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugModelTurnContentRenderer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugOverviewView.js +33 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugToolCallContentRenderer.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageCarouselService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +43 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +30 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupGrowthSession.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +26 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommands.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +57 -57
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipCatalog.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/claudePluginRecommendations.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/defaultModelContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/enablementStatusWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackEditorContribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginGitCommandService.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginInstallService.js +25 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginSources.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/pluginUrlHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookActions.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/hookUtils.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptsDebugContribution.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +39 -39
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/renameTool.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/usagesTool.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatQueuePickerActionItem.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/plugins/agentPluginServiceImpl.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +150 -150
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +15 -15
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +4 -4
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +14 -14
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +1 -1
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/sendToTerminalTool.js +10 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +14 -14
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
|
@@ -76,7 +76,7 @@ let AbstractGitPluginSource = class AbstractGitPluginSource {
|
|
|
76
76
|
await this._checkoutRevision(repoDir, descriptor, options?.failureLabel ?? label);
|
|
77
77
|
return this.getInstallUri(cacheRoot, descriptor);
|
|
78
78
|
}
|
|
79
|
-
const progressTitle = options?.progressTitle ?? ( localize(
|
|
79
|
+
const progressTitle = options?.progressTitle ?? ( localize(6763, "Cloning plugin source '{0}'...", label));
|
|
80
80
|
const failureLabel = options?.failureLabel ?? label;
|
|
81
81
|
const ref = descriptor.ref;
|
|
82
82
|
await this._cloneRepository(repoDir, this._cloneUrl(descriptor), progressTitle, failureLabel, ref);
|
|
@@ -118,7 +118,7 @@ let AbstractGitPluginSource = class AbstractGitPluginSource {
|
|
|
118
118
|
try {
|
|
119
119
|
return await this._progressService.withProgress({
|
|
120
120
|
location: ProgressLocation.Notification,
|
|
121
|
-
title: ( localize(
|
|
121
|
+
title: ( localize(6764, "Updating plugin '{0}'...", updateLabel)),
|
|
122
122
|
cancellable: true
|
|
123
123
|
}, () => doUpdate(cts), () => cts.dispose(true));
|
|
124
124
|
} finally {
|
|
@@ -130,7 +130,7 @@ let AbstractGitPluginSource = class AbstractGitPluginSource {
|
|
|
130
130
|
this._notificationService.notify({
|
|
131
131
|
severity: Severity.Error,
|
|
132
132
|
message: ( localize(
|
|
133
|
-
|
|
133
|
+
6765,
|
|
134
134
|
"Failed to update plugin '{0}': {1}",
|
|
135
135
|
failureLabel,
|
|
136
136
|
err?.message ?? String(err)
|
|
@@ -156,7 +156,7 @@ let AbstractGitPluginSource = class AbstractGitPluginSource {
|
|
|
156
156
|
this._notificationService.notify({
|
|
157
157
|
severity: Severity.Error,
|
|
158
158
|
message: ( localize(
|
|
159
|
-
|
|
159
|
+
6766,
|
|
160
160
|
"Failed to install plugin '{0}': {1}",
|
|
161
161
|
failureLabel,
|
|
162
162
|
err?.message ?? String(err)
|
|
@@ -183,7 +183,7 @@ let AbstractGitPluginSource = class AbstractGitPluginSource {
|
|
|
183
183
|
this._notificationService.notify({
|
|
184
184
|
severity: Severity.Error,
|
|
185
185
|
message: ( localize(
|
|
186
|
-
|
|
186
|
+
6767,
|
|
187
187
|
"Failed to checkout plugin '{0}' to requested revision: {1}",
|
|
188
188
|
failureLabel,
|
|
189
189
|
err?.message ?? String(err)
|
|
@@ -329,7 +329,7 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
329
329
|
if (!confirmed) {
|
|
330
330
|
return undefined;
|
|
331
331
|
}
|
|
332
|
-
const progressTitle = ( localize(
|
|
332
|
+
const progressTitle = ( localize(6768, "Installing {0} plugin '{1}'...", this._managerName, plugin.name));
|
|
333
333
|
const {
|
|
334
334
|
success,
|
|
335
335
|
terminal
|
|
@@ -342,7 +342,7 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
342
342
|
this._notificationService.notify({
|
|
343
343
|
severity: Severity.Error,
|
|
344
344
|
message: ( localize(
|
|
345
|
-
|
|
345
|
+
6769,
|
|
346
346
|
"{0} package '{1}' was not found after installation.",
|
|
347
347
|
this._managerName,
|
|
348
348
|
this.getLabel(plugin.sourceDescriptor)
|
|
@@ -360,9 +360,9 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
360
360
|
return (new Promise(resolve => {
|
|
361
361
|
const n = this._notificationService.notify({
|
|
362
362
|
severity: Severity.Info,
|
|
363
|
-
message: ( localize(
|
|
363
|
+
message: ( localize(6770, "Plugin '{0}' wants to run: {1}", pluginName, command)),
|
|
364
364
|
actions: {
|
|
365
|
-
primary: [( new Action("installPlugin", ( localize(
|
|
365
|
+
primary: [( new Action("installPlugin", ( localize(6771, "Install")), undefined, true, async () => resolve(true)))]
|
|
366
366
|
}
|
|
367
367
|
});
|
|
368
368
|
Event.once(n.onDidClose)(() => resolve(false));
|
|
@@ -372,9 +372,9 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
372
372
|
confirmed
|
|
373
373
|
} = await this._dialogService.confirm({
|
|
374
374
|
type: "question",
|
|
375
|
-
message: ( localize(
|
|
376
|
-
detail: ( localize(
|
|
377
|
-
primaryButton: ( localize(
|
|
375
|
+
message: ( localize(6772, "Install Plugin '{0}'?", pluginName)),
|
|
376
|
+
detail: ( localize(6773, "This will run the following command in a terminal:\n\n{0}", command)),
|
|
377
|
+
primaryButton: ( localize(6774, "&&Install"))
|
|
378
378
|
});
|
|
379
379
|
return confirmed;
|
|
380
380
|
}
|
|
@@ -388,7 +388,7 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
388
388
|
}, async () => {
|
|
389
389
|
terminal = await this._terminalService.createTerminal({
|
|
390
390
|
config: {
|
|
391
|
-
name: ( localize(
|
|
391
|
+
name: ( localize(6775, "Plugin Install")),
|
|
392
392
|
forceShellIntegration: true,
|
|
393
393
|
isTransient: true,
|
|
394
394
|
isFeatureTerminal: true
|
|
@@ -400,7 +400,7 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
400
400
|
await terminal.runCommand(command, true);
|
|
401
401
|
const exitCode = await commandResultPromise;
|
|
402
402
|
if (exitCode !== 0) {
|
|
403
|
-
throw ( new Error(( localize(
|
|
403
|
+
throw ( new Error(( localize(6776, "Command exited with code {0}", exitCode))));
|
|
404
404
|
}
|
|
405
405
|
});
|
|
406
406
|
return {
|
|
@@ -412,7 +412,7 @@ let AbstractPackagePluginSource = class AbstractPackagePluginSource {
|
|
|
412
412
|
this._notificationService.notify({
|
|
413
413
|
severity: Severity.Error,
|
|
414
414
|
message: ( localize(
|
|
415
|
-
|
|
415
|
+
6777,
|
|
416
416
|
"Plugin installation command failed: {0}",
|
|
417
417
|
err?.message ?? String(err)
|
|
418
418
|
))
|
|
@@ -83,13 +83,13 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
83
83
|
confirmed
|
|
84
84
|
} = await this._dialogService.confirm({
|
|
85
85
|
type: "question",
|
|
86
|
-
message: ( localize(
|
|
86
|
+
message: ( localize(6778, "Install Plugin from '{0}'?", ref.displayLabel)),
|
|
87
87
|
detail: ( localize(
|
|
88
|
-
|
|
88
|
+
6779,
|
|
89
89
|
"An external application wants to install a plugin from this source. Plugins can run code on your machine. Only install plugins from sources you trust.\n\nSource: {0}",
|
|
90
90
|
ref.rawValue
|
|
91
91
|
)),
|
|
92
|
-
primaryButton: ( localize(
|
|
92
|
+
primaryButton: ( localize(6780, "&&Install")),
|
|
93
93
|
custom: {
|
|
94
94
|
icon: Codicon.shield
|
|
95
95
|
}
|
|
@@ -148,13 +148,13 @@ let PluginUrlHandler = class PluginUrlHandler extends Disposable {
|
|
|
148
148
|
confirmed
|
|
149
149
|
} = await this._dialogService.confirm({
|
|
150
150
|
type: "question",
|
|
151
|
-
message: ( localize(
|
|
151
|
+
message: ( localize(6781, "Add Plugin Marketplace '{0}'?", ref.displayLabel)),
|
|
152
152
|
detail: ( localize(
|
|
153
|
-
|
|
153
|
+
6782,
|
|
154
154
|
"An external application wants to add a plugin marketplace. Plugins from this marketplace will appear in the plugin catalog and can be installed.\n\nSource: {0}",
|
|
155
155
|
ref.rawValue
|
|
156
156
|
)),
|
|
157
|
-
primaryButton: ( localize(
|
|
157
|
+
primaryButton: ( localize(6783, "&&Add Marketplace")),
|
|
158
158
|
custom: {
|
|
159
159
|
icon: Codicon.shield
|
|
160
160
|
}
|
|
@@ -17,7 +17,7 @@ class ConfigAgentActionImpl extends Action2 {
|
|
|
17
17
|
const openerService = accessor.get(IOpenerService);
|
|
18
18
|
const pickers = instaService.createInstance(PromptFilePickers);
|
|
19
19
|
const placeholder = ( localize(
|
|
20
|
-
|
|
20
|
+
6790,
|
|
21
21
|
"Select the custom agents to open and configure visibility in the agent picker"
|
|
22
22
|
));
|
|
23
23
|
const result = await pickers.selectPromptFile({
|
|
@@ -35,8 +35,8 @@ const PICKER_CONFIGURE_AGENTS_ACTION_ID = "workbench.action.chat.picker.customag
|
|
|
35
35
|
function createPickerConfigureAgentsActionConfig(disabled) {
|
|
36
36
|
const config = {
|
|
37
37
|
id: disabled ? PICKER_CONFIGURE_AGENTS_ACTION_ID + ".disabled" : PICKER_CONFIGURE_AGENTS_ACTION_ID,
|
|
38
|
-
title: ( localize2(
|
|
39
|
-
tooltip: disabled ? ( localize(
|
|
38
|
+
title: ( localize2(6791, "Configure Custom Agents...")),
|
|
39
|
+
tooltip: disabled ? ( localize(6792, "Managed by your organization")) : undefined,
|
|
40
40
|
icon: disabled ? Codicon.lock : undefined,
|
|
41
41
|
category: CHAT_CATEGORY,
|
|
42
42
|
f1: false,
|
|
@@ -62,8 +62,8 @@ const CONFIGURE_AGENTS_ACTION_ID = "workbench.action.chat.configure.customagents
|
|
|
62
62
|
function createManageAgentsActionConfig(disabled) {
|
|
63
63
|
const base = {
|
|
64
64
|
id: disabled ? CONFIGURE_AGENTS_ACTION_ID + ".disabled" : CONFIGURE_AGENTS_ACTION_ID,
|
|
65
|
-
title: ( localize2(
|
|
66
|
-
shortTitle: ( localize(
|
|
65
|
+
title: ( localize2(6793, "Configure Custom Agents...")),
|
|
66
|
+
shortTitle: ( localize(6794, "Custom Agents")),
|
|
67
67
|
icon: disabled ? Codicon.lock : Codicon.bookmark,
|
|
68
68
|
f1: !disabled,
|
|
69
69
|
precondition: disabled ? ( ContextKeyExpr.false()) : ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.Modes.agentModeDisabledByPolicy.negate()))),
|
|
@@ -77,7 +77,7 @@ function createManageAgentsActionConfig(disabled) {
|
|
|
77
77
|
};
|
|
78
78
|
return disabled ? {
|
|
79
79
|
...base,
|
|
80
|
-
tooltip: ( localize(
|
|
80
|
+
tooltip: ( localize(6792, "Managed by your organization"))
|
|
81
81
|
} : base;
|
|
82
82
|
}
|
|
83
83
|
class ManageAgentsAction extends ConfigAgentActionImpl {
|
|
@@ -74,7 +74,7 @@ async function addHookToFile(
|
|
|
74
74
|
}
|
|
75
75
|
} catch {
|
|
76
76
|
notificationService.error(( localize(
|
|
77
|
-
|
|
77
|
+
6795,
|
|
78
78
|
"Failed to parse existing hooks file. Please fix the JSON syntax errors and try again."
|
|
79
79
|
)));
|
|
80
80
|
await editorService.openEditor({
|
|
@@ -157,7 +157,7 @@ async function addHookToFile(
|
|
|
157
157
|
range: ( new Range(1, 1, Number.MAX_SAFE_INTEGER, 1)),
|
|
158
158
|
text: jsonContent
|
|
159
159
|
}))], {
|
|
160
|
-
label: ( localize(
|
|
160
|
+
label: ( localize(6796, "Add Hook"))
|
|
161
161
|
});
|
|
162
162
|
const selection = findHookCommandSelection(jsonContent, keyToUse, newHookIndex, "command");
|
|
163
163
|
await editorService.openEditor({
|
|
@@ -182,7 +182,7 @@ async function addHookToFile(
|
|
|
182
182
|
range: ( new Range(1, 1, Number.MAX_SAFE_INTEGER, 1)),
|
|
183
183
|
text: jsonContent
|
|
184
184
|
}))], {
|
|
185
|
-
label: ( localize(
|
|
185
|
+
label: ( localize(6796, "Add Hook"))
|
|
186
186
|
});
|
|
187
187
|
}
|
|
188
188
|
const selection = findHookCommandSelection(jsonContent, keyToUse, newHookIndex, "command");
|
|
@@ -308,29 +308,29 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
308
308
|
if (shared.length > 0) {
|
|
309
309
|
pickerItems.push({
|
|
310
310
|
type: "separator",
|
|
311
|
-
label: ( localize(
|
|
311
|
+
label: ( localize(6797, "Local/Copilot CLI Agents"))
|
|
312
312
|
});
|
|
313
313
|
pickerItems.push(...( shared.map(makeItem)));
|
|
314
314
|
}
|
|
315
315
|
if (vscodeOnly.length > 0) {
|
|
316
316
|
pickerItems.push({
|
|
317
317
|
type: "separator",
|
|
318
|
-
label: ( localize(
|
|
318
|
+
label: ( localize(6798, "Local Agents"))
|
|
319
319
|
});
|
|
320
320
|
pickerItems.push(...( vscodeOnly.map(makeItem)));
|
|
321
321
|
}
|
|
322
322
|
if (copilotOnly.length > 0) {
|
|
323
323
|
pickerItems.push({
|
|
324
324
|
type: "separator",
|
|
325
|
-
label: ( localize(
|
|
325
|
+
label: ( localize(6799, "Copilot CLI Agents"))
|
|
326
326
|
});
|
|
327
327
|
pickerItems.push(...( copilotOnly.map(makeItem)));
|
|
328
328
|
}
|
|
329
329
|
}
|
|
330
330
|
picker.items = pickerItems;
|
|
331
331
|
picker.value = "";
|
|
332
|
-
picker.placeholder = ( localize(
|
|
333
|
-
picker.title = ( localize(
|
|
332
|
+
picker.placeholder = ( localize(6800, "Select a lifecycle event"));
|
|
333
|
+
picker.title = ( localize(6801, "Hooks"));
|
|
334
334
|
picker.buttons = [];
|
|
335
335
|
const result = await awaitPick(picker, backButton);
|
|
336
336
|
if (!result || result === "back") {
|
|
@@ -348,14 +348,14 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
348
348
|
const agentHooks = hooksOfType.filter(h => h.agentName);
|
|
349
349
|
const hookItems = [];
|
|
350
350
|
hookItems.push({
|
|
351
|
-
label: `$(plus) ${( localize(
|
|
351
|
+
label: `$(plus) ${( localize(6802, "Add new hook..."))}`,
|
|
352
352
|
isAddNewHook: true,
|
|
353
353
|
alwaysShow: true
|
|
354
354
|
});
|
|
355
355
|
if (fileHooks.length > 0) {
|
|
356
356
|
hookItems.push({
|
|
357
357
|
type: "separator",
|
|
358
|
-
label: ( localize(
|
|
358
|
+
label: ( localize(6803, "Existing Hooks"))
|
|
359
359
|
});
|
|
360
360
|
for (const entry of fileHooks) {
|
|
361
361
|
const description = labelService.getUriLabel(entry.fileUri, {
|
|
@@ -373,7 +373,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
373
373
|
for (const agentName of agentNames) {
|
|
374
374
|
hookItems.push({
|
|
375
375
|
type: "separator",
|
|
376
|
-
label: ( localize(
|
|
376
|
+
label: ( localize(6804, "Agent: {0}", agentName))
|
|
377
377
|
});
|
|
378
378
|
for (const entry of agentHooks.filter(h => h.agentName === agentName)) {
|
|
379
379
|
const description = labelService.getUriLabel(entry.fileUri, {
|
|
@@ -392,7 +392,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
392
392
|
} else {
|
|
393
393
|
picker.items = hookItems;
|
|
394
394
|
picker.value = "";
|
|
395
|
-
picker.placeholder = ( localize(
|
|
395
|
+
picker.placeholder = ( localize(6805, "Select a hook to open or add a new one"));
|
|
396
396
|
picker.title = selectedHookType.hookTypeMeta.label;
|
|
397
397
|
picker.buttons = [backButton];
|
|
398
398
|
const result = await awaitPick(picker, backButton);
|
|
@@ -449,14 +449,14 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
449
449
|
const hookFiles = await promptsService.listPromptFilesForStorage(PromptsType.hook, PromptsStorage.local, CancellationToken.None);
|
|
450
450
|
const fileItems = [];
|
|
451
451
|
fileItems.push({
|
|
452
|
-
label: `$(new-file) ${( localize(
|
|
452
|
+
label: `$(new-file) ${( localize(6806, "Create new hook config file..."))}`,
|
|
453
453
|
isCreateNewFile: true,
|
|
454
454
|
alwaysShow: true
|
|
455
455
|
});
|
|
456
456
|
if (hookFiles.length > 0) {
|
|
457
457
|
fileItems.push({
|
|
458
458
|
type: "separator",
|
|
459
|
-
label: ( localize(
|
|
459
|
+
label: ( localize(6807, "Existing Hook Files"))
|
|
460
460
|
});
|
|
461
461
|
for (const hookFile of hookFiles) {
|
|
462
462
|
const relativePath = labelService.getUriLabel(hookFile.uri, {
|
|
@@ -473,8 +473,8 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
473
473
|
} else {
|
|
474
474
|
picker.items = fileItems;
|
|
475
475
|
picker.value = "";
|
|
476
|
-
picker.placeholder = ( localize(
|
|
477
|
-
picker.title = ( localize(
|
|
476
|
+
picker.placeholder = ( localize(6808, "Select a hook file or create a new one"));
|
|
477
|
+
picker.title = ( localize(6809, "Add Hook"));
|
|
478
478
|
picker.buttons = [backButton];
|
|
479
479
|
const result = await awaitPick(picker, backButton);
|
|
480
480
|
if (result === "back") {
|
|
@@ -506,7 +506,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
506
506
|
{
|
|
507
507
|
const allFolders = await promptsService.getSourceFolders(PromptsType.hook);
|
|
508
508
|
if (allFolders.length === 0) {
|
|
509
|
-
notificationService.error(( localize(
|
|
509
|
+
notificationService.error(( localize(6810, "Please open a workspace folder to configure hooks.")));
|
|
510
510
|
return;
|
|
511
511
|
}
|
|
512
512
|
selectedFolder = allFolders[0];
|
|
@@ -515,7 +515,7 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
515
515
|
const basePath = labelService.getUriLabel(folder.uri, {
|
|
516
516
|
relative: folder.storage === PromptsStorage.local
|
|
517
517
|
});
|
|
518
|
-
const label = index === 0 ? ( localize(
|
|
518
|
+
const label = index === 0 ? ( localize(6811, "{0} (default)", basePath)) : basePath;
|
|
519
519
|
return {
|
|
520
520
|
label,
|
|
521
521
|
description: folder.source ? getSourceDescription(folder.source) : undefined,
|
|
@@ -524,8 +524,8 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
524
524
|
}));
|
|
525
525
|
picker.items = folderItems;
|
|
526
526
|
picker.value = "";
|
|
527
|
-
picker.placeholder = ( localize(
|
|
528
|
-
picker.title = ( localize(
|
|
527
|
+
picker.placeholder = ( localize(6812, "Select a location for the hook file"));
|
|
528
|
+
picker.title = ( localize(6813, "Hook File Location"));
|
|
529
529
|
picker.buttons = [backButton];
|
|
530
530
|
const result = await awaitPick(picker, backButton);
|
|
531
531
|
if (result === "back") {
|
|
@@ -555,20 +555,20 @@ async function showConfigureHooksQuickPick(accessor, options) {
|
|
|
555
555
|
};
|
|
556
556
|
const inputDisposables = ( new DisposableStore());
|
|
557
557
|
const inputBox = inputDisposables.add(quickInputService.createInputBox());
|
|
558
|
-
inputBox.prompt = ( localize(
|
|
559
|
-
inputBox.placeholder = ( localize(
|
|
560
|
-
inputBox.title = ( localize(
|
|
558
|
+
inputBox.prompt = ( localize(6814, "Enter hook file name"));
|
|
559
|
+
inputBox.placeholder = ( localize(6815, "e.g., hooks, diagnostics, security"));
|
|
560
|
+
inputBox.title = ( localize(6816, "Hook File Name"));
|
|
561
561
|
inputBox.buttons = [backButton];
|
|
562
562
|
inputBox.ignoreFocusOut = true;
|
|
563
563
|
inputDisposables.add(inputBox.onDidAccept(async () => {
|
|
564
564
|
const value = inputBox.value;
|
|
565
565
|
if (!value || !value.trim()) {
|
|
566
|
-
inputBox.validationMessage = ( localize(
|
|
566
|
+
inputBox.validationMessage = ( localize(6817, "File name is required"));
|
|
567
567
|
return;
|
|
568
568
|
}
|
|
569
569
|
const name = value.trim();
|
|
570
570
|
if (/[/\\:*?"<>|]/.test(name)) {
|
|
571
|
-
inputBox.validationMessage = ( localize(
|
|
571
|
+
inputBox.validationMessage = ( localize(6818, "File name contains invalid characters"));
|
|
572
572
|
return;
|
|
573
573
|
}
|
|
574
574
|
done(name);
|
|
@@ -655,8 +655,8 @@ class ManageHooksAction extends Action2 {
|
|
|
655
655
|
constructor() {
|
|
656
656
|
super({
|
|
657
657
|
id: CONFIGURE_HOOKS_ACTION_ID,
|
|
658
|
-
title: ( localize2(
|
|
659
|
-
shortTitle: ( localize2(
|
|
658
|
+
title: ( localize2(6819, "Configure Hooks...")),
|
|
659
|
+
shortTitle: ( localize2(6820, "Hooks")),
|
|
660
660
|
icon: Codicon.zap,
|
|
661
661
|
f1: true,
|
|
662
662
|
precondition: ChatContextKeys.enabled,
|
|
@@ -126,7 +126,7 @@ async function parseAllHookFiles(
|
|
|
126
126
|
}
|
|
127
127
|
for (let i = 0; i < commands.length; i++) {
|
|
128
128
|
const command = commands[i];
|
|
129
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
129
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6821, "(empty command)"));
|
|
130
130
|
parsedHooks.push({
|
|
131
131
|
hookType,
|
|
132
132
|
hookTypeLabel: hookTypeMeta.label,
|
|
@@ -163,7 +163,7 @@ async function parseAllHookFiles(
|
|
|
163
163
|
}
|
|
164
164
|
for (let i = 0; i < commands.length; i++) {
|
|
165
165
|
const command = commands[i];
|
|
166
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
166
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6821, "(empty command)"));
|
|
167
167
|
parsedHooks.push({
|
|
168
168
|
hookType,
|
|
169
169
|
hookTypeLabel: hookTypeMeta.label,
|
|
@@ -201,7 +201,7 @@ async function parseAllHookFiles(
|
|
|
201
201
|
}
|
|
202
202
|
for (let i = 0; i < commands.length; i++) {
|
|
203
203
|
const command = commands[i];
|
|
204
|
-
const commandLabel = formatHookCommandLabel(command, os) || ( localize(
|
|
204
|
+
const commandLabel = formatHookCommandLabel(command, os) || ( localize(6821, "(empty command)"));
|
|
205
205
|
parsedHooks.push({
|
|
206
206
|
hookType: hookTypeValue,
|
|
207
207
|
hookTypeLabel: hookTypeMeta.label,
|
package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js
CHANGED
|
@@ -38,11 +38,11 @@ let PromptCodingAgentActionOverlayWidget = class PromptCodingAgentActionOverlayW
|
|
|
38
38
|
this._domNode = $(".prompt-coding-agent-action-overlay");
|
|
39
39
|
this._button = this._register(( new Button(this._domNode, {
|
|
40
40
|
supportIcons: true,
|
|
41
|
-
title: ( localize(
|
|
41
|
+
title: ( localize(6903, "Run prompt file in a remote coding agent"))
|
|
42
42
|
})));
|
|
43
43
|
this._button.element.style.background = "var(--vscode-button-background)";
|
|
44
44
|
this._button.element.style.color = "var(--vscode-button-foreground)";
|
|
45
|
-
this._button.label = ( localize(
|
|
45
|
+
this._button.label = ( localize(6904, "{0} Delegate to Copilot coding agent", "$(cloud-upload)"));
|
|
46
46
|
this._register(this._button.onDidClick(async () => {
|
|
47
47
|
await this._execute();
|
|
48
48
|
}));
|
package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js
CHANGED
|
@@ -72,7 +72,7 @@ let PromptToolsCodeLensProvider = class PromptToolsCodeLensProvider extends Disp
|
|
|
72
72
|
const codeLens = {
|
|
73
73
|
range: toolsAttr.range.collapseToStart(),
|
|
74
74
|
command: {
|
|
75
|
-
title: ( localize(
|
|
75
|
+
title: ( localize(6905, "Configure Tools...")),
|
|
76
76
|
id: this.cmdId,
|
|
77
77
|
arguments: [
|
|
78
78
|
model,
|
|
@@ -89,7 +89,7 @@ let PromptToolsCodeLensProvider = class PromptToolsCodeLensProvider extends Disp
|
|
|
89
89
|
}
|
|
90
90
|
async updateTools(model, range, isString, selectedTools, target) {
|
|
91
91
|
const selectedToolsNow = () => this.languageModelToolsService.toToolAndToolSetEnablementMap(selectedTools, undefined);
|
|
92
|
-
const newSelectedAfter = await this.instantiationService.invokeFunction(showToolsPicker, ( localize(
|
|
92
|
+
const newSelectedAfter = await this.instantiationService.invokeFunction(showToolsPicker, ( localize(6906, "Select tools")), "codeLens", undefined, selectedToolsNow);
|
|
93
93
|
if (!newSelectedAfter) {
|
|
94
94
|
return;
|
|
95
95
|
}
|
|
@@ -86,7 +86,7 @@ let PromptUrlHandler = class PromptUrlHandler extends Disposable {
|
|
|
86
86
|
}, CancellationToken.None);
|
|
87
87
|
if (result.res.statusCode !== 200) {
|
|
88
88
|
this.logService.error(`[PromptUrlHandler] Failed to fetch URL: ${urlString}`);
|
|
89
|
-
this.notificationService.error(( localize(
|
|
89
|
+
this.notificationService.error(( localize(6907, "Failed to fetch URL: {0}", urlString)));
|
|
90
90
|
return true;
|
|
91
91
|
}
|
|
92
92
|
const responseData = ( (await streamToBuffer(result.stream)).toString());
|
|
@@ -116,28 +116,28 @@ let PromptUrlHandler = class PromptUrlHandler extends Disposable {
|
|
|
116
116
|
const detail = ( new MarkdownString("", {
|
|
117
117
|
supportHtml: true
|
|
118
118
|
}));
|
|
119
|
-
detail.appendMarkdown(( localize(
|
|
119
|
+
detail.appendMarkdown(( localize(6908, "This will access {0}.\n\n", `[${uriLabel}](${( url.toString())})`)));
|
|
120
120
|
detail.appendMarkdown(( localize(
|
|
121
|
-
|
|
121
|
+
6909,
|
|
122
122
|
"If you did not initiate this request, it may represent an attempted attack on your system. Unless you took an explicit action to initiate this request, you should press 'No'"
|
|
123
123
|
)));
|
|
124
124
|
let message;
|
|
125
125
|
switch (promptType) {
|
|
126
126
|
case PromptsType.prompt:
|
|
127
127
|
message = ( localize(
|
|
128
|
-
|
|
128
|
+
6910,
|
|
129
129
|
"An external application wants to create a prompt file with content from a URL. Do you want to continue by selecting a destination folder and name?"
|
|
130
130
|
));
|
|
131
131
|
break;
|
|
132
132
|
case PromptsType.instructions:
|
|
133
133
|
message = ( localize(
|
|
134
|
-
|
|
134
|
+
6911,
|
|
135
135
|
"An external application wants to create an instructions file with content from a URL. Do you want to continue by selecting a destination folder and name?"
|
|
136
136
|
));
|
|
137
137
|
break;
|
|
138
138
|
default:
|
|
139
139
|
message = ( localize(
|
|
140
|
-
|
|
140
|
+
6912,
|
|
141
141
|
"An external application wants to create a custom agent with content from a URL. Do you want to continue by selecting a destination folder and name?"
|
|
142
142
|
));
|
|
143
143
|
break;
|
|
@@ -146,8 +146,8 @@ let PromptUrlHandler = class PromptUrlHandler extends Disposable {
|
|
|
146
146
|
confirmed
|
|
147
147
|
} = await this.dialogService.confirm({
|
|
148
148
|
type: "warning",
|
|
149
|
-
primaryButton: ( localize(
|
|
150
|
-
cancelButton: ( localize(
|
|
149
|
+
primaryButton: ( localize(6913, "&&Yes")),
|
|
150
|
+
cancelButton: ( localize(6914, "No")),
|
|
151
151
|
message,
|
|
152
152
|
custom: {
|
|
153
153
|
markdownDetails: [{
|
|
@@ -70,7 +70,7 @@ class RunPromptBaseAction extends Action2 {
|
|
|
70
70
|
return widget;
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
const RUN_CURRENT_PROMPT_ACTION_TITLE = ( localize2(
|
|
73
|
+
const RUN_CURRENT_PROMPT_ACTION_TITLE = ( localize2(6915, "Run Prompt in Current Chat"));
|
|
74
74
|
const RUN_CURRENT_PROMPT_ACTION_ICON = Codicon.playCircle;
|
|
75
75
|
class RunCurrentPromptAction extends RunPromptBaseAction {
|
|
76
76
|
constructor() {
|
|
@@ -89,7 +89,7 @@ class RunSelectedPromptAction extends Action2 {
|
|
|
89
89
|
constructor() {
|
|
90
90
|
super({
|
|
91
91
|
id: RUN_SELECTED_PROMPT_ACTION_ID,
|
|
92
|
-
title: ( localize2(
|
|
92
|
+
title: ( localize2(6916, "Run Prompt...")),
|
|
93
93
|
icon: Codicon.bookmark,
|
|
94
94
|
f1: true,
|
|
95
95
|
precondition: ChatContextKeys.enabled,
|
|
@@ -108,7 +108,7 @@ class RunSelectedPromptAction extends Action2 {
|
|
|
108
108
|
const widgetService = accessor.get(IChatWidgetService);
|
|
109
109
|
const pickers = instaService.createInstance(PromptFilePickers);
|
|
110
110
|
const placeholder = ( localize(
|
|
111
|
-
|
|
111
|
+
6917,
|
|
112
112
|
"Select the prompt file to run (hold {0}-key to use in new chat)",
|
|
113
113
|
UILabelProvider.modifierLabels[OS].ctrlKey
|
|
114
114
|
));
|
|
@@ -140,8 +140,8 @@ class ManagePromptFilesAction extends Action2 {
|
|
|
140
140
|
constructor() {
|
|
141
141
|
super({
|
|
142
142
|
id: CONFIGURE_PROMPTS_ACTION_ID,
|
|
143
|
-
title: ( localize2(
|
|
144
|
-
shortTitle: ( localize2(
|
|
143
|
+
title: ( localize2(6918, "Configure Prompt Files...")),
|
|
144
|
+
shortTitle: ( localize2(6919, "Prompt Files")),
|
|
145
145
|
icon: Codicon.bookmark,
|
|
146
146
|
f1: true,
|
|
147
147
|
precondition: ChatContextKeys.enabled,
|
|
@@ -158,7 +158,7 @@ class ManagePromptFilesAction extends Action2 {
|
|
|
158
158
|
const openerService = accessor.get(IOpenerService);
|
|
159
159
|
const instaService = accessor.get(IInstantiationService);
|
|
160
160
|
const pickers = instaService.createInstance(PromptFilePickers);
|
|
161
|
-
const placeholder = ( localize(
|
|
161
|
+
const placeholder = ( localize(6920, "Select the prompt file to open"));
|
|
162
162
|
const result = await pickers.selectPromptFile({
|
|
163
163
|
placeholder,
|
|
164
164
|
type: PromptsType.prompt,
|
|
@@ -178,7 +178,7 @@ function getActivePromptFileUri(accessor) {
|
|
|
178
178
|
return undefined;
|
|
179
179
|
}
|
|
180
180
|
const RUN_CURRENT_PROMPT_IN_NEW_CHAT_ACTION_ID = "workbench.action.chat.run-in-new-chat.prompt.current";
|
|
181
|
-
const RUN_IN_NEW_CHAT_ACTION_TITLE = ( localize2(
|
|
181
|
+
const RUN_IN_NEW_CHAT_ACTION_TITLE = ( localize2(6921, "Run Prompt In New Chat"));
|
|
182
182
|
const RUN_IN_NEW_CHAT_ACTION_ICON = Codicon.play;
|
|
183
183
|
class RunCurrentPromptInNewChatAction extends RunPromptBaseAction {
|
|
184
184
|
constructor() {
|
package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js
CHANGED
|
@@ -78,19 +78,19 @@ function createOptions(id, title, description, languageId) {
|
|
|
78
78
|
const SAVE_AS_PROMPT_FILE_ACTION_ID = "workbench.action.chat.save-as-prompt";
|
|
79
79
|
class SaveAsPromptFileAction extends BaseSaveAsPromptFileAction {
|
|
80
80
|
constructor() {
|
|
81
|
-
super(createOptions(SAVE_AS_PROMPT_FILE_ACTION_ID, ( localize2(
|
|
81
|
+
super(createOptions(SAVE_AS_PROMPT_FILE_ACTION_ID, ( localize2(6922, "Save As Prompt File")), ( localize2(6923, "Save as prompt file")), PROMPT_LANGUAGE_ID), PromptsType.prompt);
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
const SAVE_AS_AGENT_FILE_ACTION_ID = "workbench.action.chat.save-as-agent";
|
|
85
85
|
class SaveAsAgentFileAction extends BaseSaveAsPromptFileAction {
|
|
86
86
|
constructor() {
|
|
87
|
-
super(createOptions(SAVE_AS_AGENT_FILE_ACTION_ID, ( localize2(
|
|
87
|
+
super(createOptions(SAVE_AS_AGENT_FILE_ACTION_ID, ( localize2(6924, "Save As Agent File")), ( localize2(6925, "Save as agent file")), AGENT_LANGUAGE_ID), PromptsType.agent);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
const SAVE_AS_INSTRUCTIONS_FILE_ACTION_ID = "workbench.action.chat.save-as-instructions";
|
|
91
91
|
class SaveAsInstructionsFileAction extends BaseSaveAsPromptFileAction {
|
|
92
92
|
constructor() {
|
|
93
|
-
super(createOptions(SAVE_AS_INSTRUCTIONS_FILE_ACTION_ID, ( localize2(
|
|
93
|
+
super(createOptions(SAVE_AS_INSTRUCTIONS_FILE_ACTION_ID, ( localize2(6926, "Save As Instructions File")), ( localize2(6927, "Save as instructions file")), INSTRUCTIONS_LANGUAGE_ID), PromptsType.instructions);
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
|
|
@@ -16,8 +16,8 @@ class ManageSkillsAction extends Action2 {
|
|
|
16
16
|
constructor() {
|
|
17
17
|
super({
|
|
18
18
|
id: CONFIGURE_SKILLS_ACTION_ID,
|
|
19
|
-
title: ( localize2(
|
|
20
|
-
shortTitle: ( localize2(
|
|
19
|
+
title: ( localize2(6928, "Configure Skills...")),
|
|
20
|
+
shortTitle: ( localize2(6929, "Skills")),
|
|
21
21
|
icon: Codicon.lightbulb,
|
|
22
22
|
f1: true,
|
|
23
23
|
precondition: ChatContextKeys.enabled,
|
|
@@ -34,7 +34,7 @@ class ManageSkillsAction extends Action2 {
|
|
|
34
34
|
const openerService = accessor.get(IOpenerService);
|
|
35
35
|
const instaService = accessor.get(IInstantiationService);
|
|
36
36
|
const pickers = instaService.createInstance(PromptFilePickers);
|
|
37
|
-
const placeholder = ( localize(
|
|
37
|
+
const placeholder = ( localize(6930, "Select the skill to open"));
|
|
38
38
|
const result = await pickers.selectPromptFile({
|
|
39
39
|
placeholder,
|
|
40
40
|
type: PromptsType.skill,
|