@codingame/monaco-vscode-katex-common 26.1.1 → 26.2.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.
- package/package.json +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.js +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +45 -36
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +23 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.js +31 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.js +33 -33
- 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/chatEditingExplanationWidget.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionPickerActionItem.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +47 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/searchableOptionPickerActionItem.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.js +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDisabledClaudeHooksContentPart.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatHookContentPart.js +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuestionCarouselPart.js +96 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.d.ts +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSubagentContentPart.js +83 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.js +26 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatWorkspaceEditContentPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatDisabledClaudeHooksContent.css +14 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatHookContentPart.css +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatQuestionCarousel.css +15 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppModel.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMcpAppSubPart.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.js +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.js +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPartUtilities.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.js +14 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.js +206 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatListWidget.js +12 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatPendingDragAndDrop.js +148 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidget.js +108 -51
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.d.ts +14 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.js +59 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.js +1 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/delegationSessionPickerActionItem.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/sessionTargetPickerActionItem.js +13 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/workspacePickerActionItem.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/media/chat.css +90 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageDetails.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatContextUsageWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatColors.js +14 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +3 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatGutterAffordance.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatOverlayWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +5 -5
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +32 -32
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +2 -2
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +1 -1
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-katex-common",
|
|
3
|
-
"version": "26.
|
|
3
|
+
"version": "26.2.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "VSCode public API plugged on the monaco editor - common package depending on katex",
|
|
6
6
|
"keywords": [],
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"type": "module",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@codingame/monaco-vscode-api": "26.
|
|
18
|
+
"@codingame/monaco-vscode-api": "26.2.0",
|
|
19
19
|
"katex": "0.16.27",
|
|
20
20
|
"marked": "14.0.0"
|
|
21
21
|
},
|
|
@@ -25,6 +25,7 @@ import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbe
|
|
|
25
25
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
|
|
26
26
|
import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/editing/chatEditingService';
|
|
27
27
|
import { ChatRequestParser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/requestParser/chatRequestParser';
|
|
28
|
+
import { ChatSendResult } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService';
|
|
28
29
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service';
|
|
29
30
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
30
31
|
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
@@ -251,14 +252,14 @@ class CreateRemoteAgentJobAction {
|
|
|
251
252
|
variables: attachedContext.asArray()
|
|
252
253
|
}, 0, undefined, defaultAgent);
|
|
253
254
|
await chatService.removeRequest(sessionResource, addedRequest.id);
|
|
254
|
-
const
|
|
255
|
+
const sendResult = await chatService.sendRequest(sessionResource, userPrompt, {
|
|
255
256
|
agentIdSilent: continuationTargetType,
|
|
256
257
|
attachedContext: attachedContext.asArray(),
|
|
257
258
|
userSelectedModelId: widget.input.currentLanguageModel,
|
|
258
259
|
...widget.getModeRequestOptions()
|
|
259
260
|
});
|
|
260
|
-
if (
|
|
261
|
-
await widget.handleDelegationExitIfNeeded(defaultAgent,
|
|
261
|
+
if (ChatSendResult.isSent(sendResult)) {
|
|
262
|
+
await widget.handleDelegationExitIfNeeded(defaultAgent, sendResult.data.agent);
|
|
262
263
|
}
|
|
263
264
|
} catch (e) {
|
|
264
265
|
console.error("Error creating remote coding agent job", e);
|
|
@@ -15,7 +15,7 @@ class AcceptElicitationRequestAction extends Action2 {
|
|
|
15
15
|
constructor() {
|
|
16
16
|
super({
|
|
17
17
|
id: AcceptElicitationRequestActionId,
|
|
18
|
-
title: ( localize2(
|
|
18
|
+
title: ( localize2(4778, "Accept Request")),
|
|
19
19
|
f1: false,
|
|
20
20
|
category: CHAT_CATEGORY,
|
|
21
21
|
keybinding: {
|
|
@@ -22,6 +22,7 @@ import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/c
|
|
|
22
22
|
import { ChatModeKind, ChatConfiguration, ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
23
23
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
24
24
|
import { PromptsStorage } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService';
|
|
25
|
+
import { isInClaudeAgentsFolder } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations';
|
|
25
26
|
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
26
27
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
27
28
|
import { AgentSessionProviders, getAgentSessionProvider } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessions';
|
|
@@ -65,13 +66,13 @@ class SubmitAction extends Action2 {
|
|
|
65
66
|
if (editsToUndo === 1) {
|
|
66
67
|
if (entriesModifiedInRequestsToRemove.length === 1) {
|
|
67
68
|
message = ( localize(
|
|
68
|
-
|
|
69
|
+
4779,
|
|
69
70
|
"This will remove your last request and undo the edits made to {0}. Do you want to proceed?",
|
|
70
71
|
basename(entriesModifiedInRequestsToRemove[0].modifiedURI)
|
|
71
72
|
));
|
|
72
73
|
} else {
|
|
73
74
|
message = ( localize(
|
|
74
|
-
|
|
75
|
+
4780,
|
|
75
76
|
"This will remove your last request and undo edits made to {0} files in your working set. Do you want to proceed?",
|
|
76
77
|
entriesModifiedInRequestsToRemove.length
|
|
77
78
|
));
|
|
@@ -79,24 +80,24 @@ class SubmitAction extends Action2 {
|
|
|
79
80
|
} else {
|
|
80
81
|
if (entriesModifiedInRequestsToRemove.length === 1) {
|
|
81
82
|
message = ( localize(
|
|
82
|
-
|
|
83
|
+
4781,
|
|
83
84
|
"This will remove all subsequent requests and undo edits made to {0}. Do you want to proceed?",
|
|
84
85
|
basename(entriesModifiedInRequestsToRemove[0].modifiedURI)
|
|
85
86
|
));
|
|
86
87
|
} else {
|
|
87
88
|
message = ( localize(
|
|
88
|
-
|
|
89
|
+
4782,
|
|
89
90
|
"This will remove all subsequent requests and undo edits made to {0} files in your working set. Do you want to proceed?",
|
|
90
91
|
entriesModifiedInRequestsToRemove.length
|
|
91
92
|
));
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
95
|
const confirmation = shouldPrompt ? await dialogService.confirm({
|
|
95
|
-
title: editsToUndo === 1 ? ( localize(
|
|
96
|
+
title: editsToUndo === 1 ? ( localize(4783, "Do you want to undo your last edit?")) : ( localize(4784, "Do you want to undo {0} edits?", editsToUndo)),
|
|
96
97
|
message: message,
|
|
97
|
-
primaryButton: ( localize(
|
|
98
|
+
primaryButton: ( localize(4785, "Yes")),
|
|
98
99
|
checkbox: {
|
|
99
|
-
label: ( localize(
|
|
100
|
+
label: ( localize(4786, "Don't ask again")),
|
|
100
101
|
checked: false
|
|
101
102
|
},
|
|
102
103
|
type: "info"
|
|
@@ -146,7 +147,11 @@ class SubmitAction extends Action2 {
|
|
|
146
147
|
return ( new CreateRemoteAgentJobAction()).run(accessor, targetContribution, widget);
|
|
147
148
|
}
|
|
148
149
|
}
|
|
149
|
-
const
|
|
150
|
+
const requestInProgressOrPendingToolCall = ( ContextKeyExpr.or(
|
|
151
|
+
ChatContextKeys.requestInProgress,
|
|
152
|
+
ChatContextKeys.Editing.hasToolConfirmation
|
|
153
|
+
));
|
|
154
|
+
const whenNotInProgress = ( ContextKeyExpr.and(( ChatContextKeys.requestInProgress.negate()), ( ChatContextKeys.Editing.hasToolConfirmation.negate())));
|
|
150
155
|
class ChatSubmitAction extends SubmitAction {
|
|
151
156
|
static {
|
|
152
157
|
this.ID = "workbench.action.chat.submit";
|
|
@@ -160,7 +165,7 @@ class ChatSubmitAction extends SubmitAction {
|
|
|
160
165
|
));
|
|
161
166
|
super({
|
|
162
167
|
id: ChatSubmitAction.ID,
|
|
163
|
-
title: ( localize2(
|
|
168
|
+
title: ( localize2(4787, "Send")),
|
|
164
169
|
f1: false,
|
|
165
170
|
category: CHAT_CATEGORY,
|
|
166
171
|
icon: Codicon.send,
|
|
@@ -168,7 +173,7 @@ class ChatSubmitAction extends SubmitAction {
|
|
|
168
173
|
toggled: {
|
|
169
174
|
condition: ChatContextKeys.lockedToCodingAgent,
|
|
170
175
|
icon: Codicon.send,
|
|
171
|
-
tooltip: ( localize(
|
|
176
|
+
tooltip: ( localize(4788, "Send to Agent"))
|
|
172
177
|
},
|
|
173
178
|
keybinding: {
|
|
174
179
|
when: ( ContextKeyExpr.and(ChatContextKeys.inChatInput, ( ChatContextKeys.withinEditSessionDiff.negate()))),
|
|
@@ -182,7 +187,7 @@ class ChatSubmitAction extends SubmitAction {
|
|
|
182
187
|
group: "navigation",
|
|
183
188
|
alt: {
|
|
184
189
|
id: "workbench.action.chat.sendToNewChat",
|
|
185
|
-
title: ( localize2(
|
|
190
|
+
title: ( localize2(4789, "Send to New Chat")),
|
|
186
191
|
icon: Codicon.plus
|
|
187
192
|
}
|
|
188
193
|
}, {
|
|
@@ -202,7 +207,7 @@ class ToggleChatModeAction extends Action2 {
|
|
|
202
207
|
constructor() {
|
|
203
208
|
super({
|
|
204
209
|
id: ToggleChatModeAction.ID,
|
|
205
|
-
title: ( localize2(
|
|
210
|
+
title: ( localize2(4790, "Switch to Next Agent")),
|
|
206
211
|
f1: true,
|
|
207
212
|
category: CHAT_CATEGORY,
|
|
208
213
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.requestInProgress.negate())))
|
|
@@ -253,6 +258,8 @@ class ToggleChatModeAction extends Action2 {
|
|
|
253
258
|
}
|
|
254
259
|
return mode.name.get();
|
|
255
260
|
};
|
|
261
|
+
const modeUri = switchToMode.uri?.get();
|
|
262
|
+
const isClaudeAgent = modeUri ? isInClaudeAgentsFolder(modeUri) : undefined;
|
|
256
263
|
telemetryService.publicLog2("chat.modeChange", {
|
|
257
264
|
fromMode: getModeNameForTelemetry(currentMode),
|
|
258
265
|
mode: getModeNameForTelemetry(switchToMode),
|
|
@@ -260,7 +267,8 @@ class ToggleChatModeAction extends Action2 {
|
|
|
260
267
|
storage,
|
|
261
268
|
extensionId,
|
|
262
269
|
toolsCount,
|
|
263
|
-
handoffsCount
|
|
270
|
+
handoffsCount,
|
|
271
|
+
isClaudeAgent
|
|
264
272
|
});
|
|
265
273
|
widget.input.setChatMode(switchToMode.id);
|
|
266
274
|
if (chatModeCheck.needToClearSession) {
|
|
@@ -284,7 +292,7 @@ class SwitchToNextModelAction extends Action2 {
|
|
|
284
292
|
constructor() {
|
|
285
293
|
super({
|
|
286
294
|
id: SwitchToNextModelAction.ID,
|
|
287
|
-
title: ( localize2(
|
|
295
|
+
title: ( localize2(4791, "Switch to Next Model")),
|
|
288
296
|
category: CHAT_CATEGORY,
|
|
289
297
|
f1: true,
|
|
290
298
|
precondition: ChatContextKeys.enabled
|
|
@@ -303,7 +311,7 @@ class OpenModelPickerAction extends Action2 {
|
|
|
303
311
|
constructor() {
|
|
304
312
|
super({
|
|
305
313
|
id: OpenModelPickerAction.ID,
|
|
306
|
-
title: ( localize2(
|
|
314
|
+
title: ( localize2(4792, "Open Model Picker")),
|
|
307
315
|
category: CHAT_CATEGORY,
|
|
308
316
|
f1: false,
|
|
309
317
|
keybinding: {
|
|
@@ -337,8 +345,8 @@ class OpenModePickerAction extends Action2 {
|
|
|
337
345
|
constructor() {
|
|
338
346
|
super({
|
|
339
347
|
id: OpenModePickerAction.ID,
|
|
340
|
-
title: ( localize2(
|
|
341
|
-
tooltip: ( localize(
|
|
348
|
+
title: ( localize2(4793, "Open Agent Picker")),
|
|
349
|
+
tooltip: ( localize(4794, "Set Agent")),
|
|
342
350
|
category: CHAT_CATEGORY,
|
|
343
351
|
f1: false,
|
|
344
352
|
precondition: ChatContextKeys.enabled,
|
|
@@ -371,8 +379,8 @@ class OpenSessionTargetPickerAction extends Action2 {
|
|
|
371
379
|
constructor() {
|
|
372
380
|
super({
|
|
373
381
|
id: OpenSessionTargetPickerAction.ID,
|
|
374
|
-
title: ( localize2(
|
|
375
|
-
tooltip: ( localize(
|
|
382
|
+
title: ( localize2(4795, "Open Session Target Picker")),
|
|
383
|
+
tooltip: ( localize(4796, "Set Session Target")),
|
|
376
384
|
category: CHAT_CATEGORY,
|
|
377
385
|
f1: false,
|
|
378
386
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.or(ChatContextKeys.chatSessionIsEmpty, ChatContextKeys.inAgentSessionsWelcome)), ( ChatContextKeys.currentlyEditingInput.negate()), ( ChatContextKeys.currentlyEditing.negate()))),
|
|
@@ -399,8 +407,8 @@ class OpenDelegationPickerAction extends Action2 {
|
|
|
399
407
|
constructor() {
|
|
400
408
|
super({
|
|
401
409
|
id: OpenDelegationPickerAction.ID,
|
|
402
|
-
title: ( localize2(
|
|
403
|
-
tooltip: ( localize(
|
|
410
|
+
title: ( localize2(4797, "Open Delegation Picker")),
|
|
411
|
+
tooltip: ( localize(4798, "Delegate Session")),
|
|
404
412
|
category: CHAT_CATEGORY,
|
|
405
413
|
f1: false,
|
|
406
414
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ChatContextKeys.chatSessionIsEmpty.negate()), ( ChatContextKeys.currentlyEditingInput.negate()), ( ChatContextKeys.currentlyEditing.negate()))),
|
|
@@ -427,8 +435,8 @@ class OpenWorkspacePickerAction extends Action2 {
|
|
|
427
435
|
constructor() {
|
|
428
436
|
super({
|
|
429
437
|
id: OpenWorkspacePickerAction.ID,
|
|
430
|
-
title: ( localize2(
|
|
431
|
-
tooltip: ( localize(
|
|
438
|
+
title: ( localize2(4799, "Open Workspace Picker")),
|
|
439
|
+
tooltip: ( localize(4800, "Select Target Workspace")),
|
|
432
440
|
category: CHAT_CATEGORY,
|
|
433
441
|
f1: false,
|
|
434
442
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ChatContextKeys.inAgentSessionsWelcome)),
|
|
@@ -449,7 +457,7 @@ class ChatSessionPrimaryPickerAction extends Action2 {
|
|
|
449
457
|
constructor() {
|
|
450
458
|
super({
|
|
451
459
|
id: ChatSessionPrimaryPickerAction.ID,
|
|
452
|
-
title: ( localize2(
|
|
460
|
+
title: ( localize2(4801, "Open Model Picker")),
|
|
453
461
|
category: CHAT_CATEGORY,
|
|
454
462
|
f1: false,
|
|
455
463
|
precondition: ChatContextKeys.enabled,
|
|
@@ -477,7 +485,7 @@ class ChangeChatModelAction extends Action2 {
|
|
|
477
485
|
constructor() {
|
|
478
486
|
super({
|
|
479
487
|
id: ChangeChatModelAction.ID,
|
|
480
|
-
title: ( localize2(
|
|
488
|
+
title: ( localize2(4802, "Change Model")),
|
|
481
489
|
category: CHAT_CATEGORY,
|
|
482
490
|
f1: false,
|
|
483
491
|
precondition: ChatContextKeys.enabled
|
|
@@ -500,15 +508,16 @@ class ChatEditingSessionSubmitAction extends SubmitAction {
|
|
|
500
508
|
this.ID = "workbench.action.edits.submit";
|
|
501
509
|
}
|
|
502
510
|
constructor() {
|
|
511
|
+
const notInProgressOrEditing = ( ContextKeyExpr.and(( ContextKeyExpr.or(whenNotInProgress, ( ChatContextKeys.editingRequestType.isEqualTo(ChatContextKeys.EditingRequestType.Sent)))), ( ChatContextKeys.editingRequestType.notEqualsTo(ChatContextKeys.EditingRequestType.QueueOrSteer))));
|
|
503
512
|
const menuCondition = ( ChatContextKeys.chatModeKind.notEqualsTo(ChatModeKind.Ask));
|
|
504
513
|
const precondition = ( ContextKeyExpr.and(
|
|
505
514
|
ChatContextKeys.inputHasText,
|
|
506
|
-
|
|
515
|
+
notInProgressOrEditing,
|
|
507
516
|
ChatContextKeys.chatSessionOptionsValid
|
|
508
517
|
));
|
|
509
518
|
super({
|
|
510
519
|
id: ChatEditingSessionSubmitAction.ID,
|
|
511
|
-
title: ( localize2(
|
|
520
|
+
title: ( localize2(4803, "Send")),
|
|
512
521
|
f1: false,
|
|
513
522
|
category: CHAT_CATEGORY,
|
|
514
523
|
icon: Codicon.send,
|
|
@@ -516,11 +525,11 @@ class ChatEditingSessionSubmitAction extends SubmitAction {
|
|
|
516
525
|
menu: [{
|
|
517
526
|
id: MenuId.ChatExecute,
|
|
518
527
|
order: 4,
|
|
519
|
-
when: ( ContextKeyExpr.and(
|
|
528
|
+
when: ( ContextKeyExpr.and(notInProgressOrEditing, menuCondition)),
|
|
520
529
|
group: "navigation",
|
|
521
530
|
alt: {
|
|
522
531
|
id: "workbench.action.chat.sendToNewChat",
|
|
523
|
-
title: ( localize2(
|
|
532
|
+
title: ( localize2(4789, "Send to New Chat")),
|
|
524
533
|
icon: Codicon.plus
|
|
525
534
|
}
|
|
526
535
|
}]
|
|
@@ -535,7 +544,7 @@ class SubmitWithoutDispatchingAction extends Action2 {
|
|
|
535
544
|
const precondition = ( ContextKeyExpr.and(ChatContextKeys.inputHasText, whenNotInProgress, ( ChatContextKeys.chatModeKind.isEqualTo(ChatModeKind.Ask))));
|
|
536
545
|
super({
|
|
537
546
|
id: SubmitWithoutDispatchingAction.ID,
|
|
538
|
-
title: ( localize2(
|
|
547
|
+
title: ( localize2(4804, "Send")),
|
|
539
548
|
f1: false,
|
|
540
549
|
category: CHAT_CATEGORY,
|
|
541
550
|
precondition,
|
|
@@ -563,7 +572,7 @@ class ChatSubmitWithCodebaseAction extends Action2 {
|
|
|
563
572
|
const precondition = ( ContextKeyExpr.and(ChatContextKeys.inputHasText, whenNotInProgress));
|
|
564
573
|
super({
|
|
565
574
|
id: ChatSubmitWithCodebaseAction.ID,
|
|
566
|
-
title: ( localize2(
|
|
575
|
+
title: ( localize2(4805, "Send with {0}", `${chatVariableLeader}codebase`)),
|
|
567
576
|
precondition,
|
|
568
577
|
keybinding: {
|
|
569
578
|
when: ChatContextKeys.inChatInput,
|
|
@@ -600,7 +609,7 @@ class SendToNewChatAction extends Action2 {
|
|
|
600
609
|
const precondition = ChatContextKeys.inputHasText;
|
|
601
610
|
super({
|
|
602
611
|
id: "workbench.action.chat.sendToNewChat",
|
|
603
|
-
title: ( localize2(
|
|
612
|
+
title: ( localize2(4789, "Send to New Chat")),
|
|
604
613
|
precondition,
|
|
605
614
|
category: CHAT_CATEGORY,
|
|
606
615
|
f1: false,
|
|
@@ -643,13 +652,13 @@ class CancelAction extends Action2 {
|
|
|
643
652
|
constructor() {
|
|
644
653
|
super({
|
|
645
654
|
id: CancelAction.ID,
|
|
646
|
-
title: ( localize2(
|
|
655
|
+
title: ( localize2(4806, "Cancel")),
|
|
647
656
|
f1: false,
|
|
648
657
|
category: CHAT_CATEGORY,
|
|
649
658
|
icon: Codicon.stopCircle,
|
|
650
659
|
menu: [{
|
|
651
660
|
id: MenuId.ChatExecute,
|
|
652
|
-
when: ( ContextKeyExpr.and(ChatContextKeys.
|
|
661
|
+
when: ( ContextKeyExpr.and(requestInProgressOrPendingToolCall, ( ChatContextKeys.remoteJobCreating.negate()), ( ChatContextKeys.currentlyEditing.negate()))),
|
|
653
662
|
order: 4,
|
|
654
663
|
group: "navigation"
|
|
655
664
|
}, {
|
|
@@ -661,7 +670,7 @@ class CancelAction extends Action2 {
|
|
|
661
670
|
keybinding: {
|
|
662
671
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
663
672
|
primary: KeyMod.CtrlCmd | KeyCode.Escape,
|
|
664
|
-
when: ( ContextKeyExpr.and(
|
|
673
|
+
when: ( ContextKeyExpr.and(requestInProgressOrPendingToolCall, ( ChatContextKeys.remoteJobCreating.negate()))),
|
|
665
674
|
win: {
|
|
666
675
|
primary: KeyMod.Alt | KeyCode.Backspace
|
|
667
676
|
}
|
|
@@ -689,7 +698,7 @@ class CancelEdit extends Action2 {
|
|
|
689
698
|
constructor() {
|
|
690
699
|
super({
|
|
691
700
|
id: CancelEdit.ID,
|
|
692
|
-
title: ( localize2(
|
|
701
|
+
title: ( localize2(4807, "Cancel Edit")),
|
|
693
702
|
f1: false,
|
|
694
703
|
category: CHAT_CATEGORY,
|
|
695
704
|
icon: Codicon.x,
|
|
@@ -29,7 +29,7 @@ function registerChatTitleActions() {
|
|
|
29
29
|
constructor() {
|
|
30
30
|
super({
|
|
31
31
|
id: "workbench.action.chat.markHelpful",
|
|
32
|
-
title: ( localize2(
|
|
32
|
+
title: ( localize2(4857, "Helpful")),
|
|
33
33
|
f1: false,
|
|
34
34
|
category: CHAT_CATEGORY,
|
|
35
35
|
icon: Codicon.thumbsup,
|
|
@@ -83,7 +83,7 @@ function registerChatTitleActions() {
|
|
|
83
83
|
constructor() {
|
|
84
84
|
super({
|
|
85
85
|
id: MarkUnhelpfulActionId,
|
|
86
|
-
title: ( localize2(
|
|
86
|
+
title: ( localize2(4858, "Unhelpful")),
|
|
87
87
|
f1: false,
|
|
88
88
|
category: CHAT_CATEGORY,
|
|
89
89
|
icon: Codicon.thumbsdown,
|
|
@@ -140,7 +140,7 @@ function registerChatTitleActions() {
|
|
|
140
140
|
constructor() {
|
|
141
141
|
super({
|
|
142
142
|
id: "workbench.action.chat.reportIssueForBug",
|
|
143
|
-
title: ( localize2(
|
|
143
|
+
title: ( localize2(4859, "Report Issue")),
|
|
144
144
|
f1: false,
|
|
145
145
|
category: CHAT_CATEGORY,
|
|
146
146
|
icon: Codicon.report,
|
|
@@ -187,7 +187,7 @@ function registerChatTitleActions() {
|
|
|
187
187
|
constructor() {
|
|
188
188
|
super({
|
|
189
189
|
id: "workbench.action.chat.retry",
|
|
190
|
-
title: ( localize2(
|
|
190
|
+
title: ( localize2(4860, "Retry")),
|
|
191
191
|
f1: false,
|
|
192
192
|
category: CHAT_CATEGORY,
|
|
193
193
|
icon: Codicon.refresh,
|
|
@@ -235,19 +235,19 @@ function registerChatTitleActions() {
|
|
|
235
235
|
const entriesModifiedInLastRequest = currentEditingSession.entries.get().filter(entry => entry.lastModifyingRequestId === item.requestId);
|
|
236
236
|
const shouldPrompt = entriesModifiedInLastRequest.length > 0 && configurationService.getValue("chat.editing.confirmEditRequestRetry") === true;
|
|
237
237
|
const confirmation = shouldPrompt ? await dialogService.confirm({
|
|
238
|
-
title: ( localize(
|
|
238
|
+
title: ( localize(4861, "Do you want to retry your last request?")),
|
|
239
239
|
message: entriesModifiedInLastRequest.length === 1 ? ( localize(
|
|
240
|
-
|
|
240
|
+
4862,
|
|
241
241
|
"This will undo edits made to {0} since this request.",
|
|
242
242
|
basename(entriesModifiedInLastRequest[0].modifiedURI)
|
|
243
243
|
)) : ( localize(
|
|
244
|
-
|
|
244
|
+
4863,
|
|
245
245
|
"This will undo edits made to {0} files in your working set since this request. Do you want to proceed?",
|
|
246
246
|
entriesModifiedInLastRequest.length
|
|
247
247
|
)),
|
|
248
|
-
primaryButton: ( localize(
|
|
248
|
+
primaryButton: ( localize(4864, "Yes")),
|
|
249
249
|
checkbox: {
|
|
250
|
-
label: ( localize(
|
|
250
|
+
label: ( localize(4865, "Don't ask again")),
|
|
251
251
|
checked: false
|
|
252
252
|
},
|
|
253
253
|
type: "info"
|
|
@@ -279,7 +279,7 @@ function registerChatTitleActions() {
|
|
|
279
279
|
constructor() {
|
|
280
280
|
super({
|
|
281
281
|
id: "workbench.action.chat.insertIntoNotebook",
|
|
282
|
-
title: ( localize2(
|
|
282
|
+
title: ( localize2(4866, "Insert into Notebook")),
|
|
283
283
|
f1: false,
|
|
284
284
|
category: CHAT_CATEGORY,
|
|
285
285
|
icon: Codicon.insert,
|
package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionHoverWidget.js
CHANGED
|
@@ -141,7 +141,7 @@ let AgentSessionHoverWidget = class AgentSessionHoverWidget extends Disposable {
|
|
|
141
141
|
append(detailsRow, $("span.separator", undefined, "•"));
|
|
142
142
|
const diffContainer = append(detailsRow, $(".agent-session-hover-diff"));
|
|
143
143
|
if (diff.files > 0) {
|
|
144
|
-
append(diffContainer, $("span", undefined, diff.files === 1 ? ( localize(
|
|
144
|
+
append(diffContainer, $("span", undefined, diff.files === 1 ? ( localize(4904, "1 file")) : ( localize(4905, "{0} files", diff.files))));
|
|
145
145
|
}
|
|
146
146
|
if (diff.insertions > 0) {
|
|
147
147
|
append(diffContainer, $("span.insertions", undefined, `+${diff.insertions}`));
|
|
@@ -157,7 +157,7 @@ let AgentSessionHoverWidget = class AgentSessionHoverWidget extends Disposable {
|
|
|
157
157
|
if (session.isArchived()) {
|
|
158
158
|
append(detailsRow, $("span.separator", undefined, "•"));
|
|
159
159
|
append(detailsRow, renderIcon(Codicon.archive));
|
|
160
|
-
append(detailsRow, $("span", undefined, ( localize(
|
|
160
|
+
append(detailsRow, $("span", undefined, ( localize(4906, "Archived"))));
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
buildFallbackTooltip(session) {
|
|
@@ -194,7 +194,7 @@ let AgentSessionHoverWidget = class AgentSessionHoverWidget extends Disposable {
|
|
|
194
194
|
if (diff && hasValidDiff(session.changes)) {
|
|
195
195
|
const diffParts = [];
|
|
196
196
|
if (diff.files > 0) {
|
|
197
|
-
diffParts.push(diff.files === 1 ? ( localize(
|
|
197
|
+
diffParts.push(diff.files === 1 ? ( localize(4904, "1 file")) : ( localize(4905, "{0} files", diff.files)));
|
|
198
198
|
}
|
|
199
199
|
if (diff.insertions > 0) {
|
|
200
200
|
diffParts.push(`+${diff.insertions}`);
|
|
@@ -211,7 +211,7 @@ let AgentSessionHoverWidget = class AgentSessionHoverWidget extends Disposable {
|
|
|
211
211
|
}
|
|
212
212
|
lines.push(details.join(" • "));
|
|
213
213
|
if (session.isArchived()) {
|
|
214
|
-
lines.push(`$(archive) ${( localize(
|
|
214
|
+
lines.push(`$(archive) ${( localize(4906, "Archived"))}`);
|
|
215
215
|
}
|
|
216
216
|
return ( new MarkdownString(lines.join("\n\n"), {
|
|
217
217
|
supportThemeIcons: true
|
|
@@ -228,16 +228,16 @@ let AgentSessionHoverWidget = class AgentSessionHoverWidget extends Disposable {
|
|
|
228
228
|
let statusLabel;
|
|
229
229
|
switch (status) {
|
|
230
230
|
case ChatSessionStatus.NeedsInput:
|
|
231
|
-
statusLabel = ( localize(
|
|
231
|
+
statusLabel = ( localize(4907, "Needs Input"));
|
|
232
232
|
break;
|
|
233
233
|
case ChatSessionStatus.InProgress:
|
|
234
|
-
statusLabel = ( localize(
|
|
234
|
+
statusLabel = ( localize(4908, "In Progress"));
|
|
235
235
|
break;
|
|
236
236
|
case ChatSessionStatus.Failed:
|
|
237
|
-
statusLabel = ( localize(
|
|
237
|
+
statusLabel = ( localize(4909, "Failed"));
|
|
238
238
|
break;
|
|
239
239
|
default:
|
|
240
|
-
statusLabel = ( localize(
|
|
240
|
+
statusLabel = ( localize(4910, "Completed"));
|
|
241
241
|
}
|
|
242
242
|
return statusLabel;
|
|
243
243
|
}
|
|
@@ -146,16 +146,16 @@ let AgentSessionsFilter = class AgentSessionsFilter extends Disposable {
|
|
|
146
146
|
registerStateActions(disposables) {
|
|
147
147
|
const states = [{
|
|
148
148
|
id: ChatSessionStatus.Completed,
|
|
149
|
-
label: ( localize(
|
|
149
|
+
label: ( localize(4975, "Completed"))
|
|
150
150
|
}, {
|
|
151
151
|
id: ChatSessionStatus.InProgress,
|
|
152
|
-
label: ( localize(
|
|
152
|
+
label: ( localize(4976, "In Progress"))
|
|
153
153
|
}, {
|
|
154
154
|
id: ChatSessionStatus.NeedsInput,
|
|
155
|
-
label: ( localize(
|
|
155
|
+
label: ( localize(4977, "Input Needed"))
|
|
156
156
|
}, {
|
|
157
157
|
id: ChatSessionStatus.Failed,
|
|
158
|
-
label: ( localize(
|
|
158
|
+
label: ( localize(4978, "Failed"))
|
|
159
159
|
}];
|
|
160
160
|
const that = this;
|
|
161
161
|
let counter = 0;
|
|
@@ -192,7 +192,7 @@ let AgentSessionsFilter = class AgentSessionsFilter extends Disposable {
|
|
|
192
192
|
constructor() {
|
|
193
193
|
super({
|
|
194
194
|
id: `agentSessions.filter.toggleExcludeArchived.${that.options.filterMenuId.id.toLowerCase()}`,
|
|
195
|
-
title: ( localize(
|
|
195
|
+
title: ( localize(4979, "Archived")),
|
|
196
196
|
menu: {
|
|
197
197
|
id: that.options.filterMenuId,
|
|
198
198
|
group: "3_props",
|
|
@@ -215,7 +215,7 @@ let AgentSessionsFilter = class AgentSessionsFilter extends Disposable {
|
|
|
215
215
|
constructor() {
|
|
216
216
|
super({
|
|
217
217
|
id: `agentSessions.filter.toggleExcludeRead.${that.options.filterMenuId.id.toLowerCase()}`,
|
|
218
|
-
title: ( localize(
|
|
218
|
+
title: ( localize(4980, "Read")),
|
|
219
219
|
menu: {
|
|
220
220
|
id: that.options.filterMenuId,
|
|
221
221
|
group: "3_props",
|
|
@@ -238,7 +238,7 @@ let AgentSessionsFilter = class AgentSessionsFilter extends Disposable {
|
|
|
238
238
|
constructor() {
|
|
239
239
|
super({
|
|
240
240
|
id: `agentSessions.filter.resetExcludes.${that.options.filterMenuId.id.toLowerCase()}`,
|
|
241
|
-
title: ( localize(
|
|
241
|
+
title: ( localize(4981, "Reset")),
|
|
242
242
|
menu: {
|
|
243
243
|
id: that.options.filterMenuId,
|
|
244
244
|
group: "4_reset",
|
|
@@ -81,7 +81,7 @@ async function openSessionDefault(accessor, session, openOptions) {
|
|
|
81
81
|
}
|
|
82
82
|
return await chatWidgetService.openSession(session.resource, target, options);
|
|
83
83
|
} catch (error) {
|
|
84
|
-
notificationService.error(( localize(
|
|
84
|
+
notificationService.error(( localize(4983, "Failed to open chat session: {0}", toErrorMessage(error))));
|
|
85
85
|
return undefined;
|
|
86
86
|
}
|
|
87
87
|
}
|