@codingame/monaco-vscode-extensions-service-override 25.1.2 → 26.0.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/index.js +7 -0
- package/package.json +3 -3
- package/vscode/src/vs/base/common/console.js +24 -15
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.d.ts +4 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +149 -84
- package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +20 -12
- package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +38 -21
- package/vscode/src/vs/platform/remote/common/managedSocket.js +7 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadAiEmbeddingVector.js +5 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadAiRelatedInformation.js +5 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadAiSettingsSearch.js +4 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +200 -143
- package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +10 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadCLICommands.js +41 -31
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.d.ts +9 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +168 -115
- package/vscode/src/vs/workbench/api/browser/mainThreadChatCodeMapper.js +11 -13
- package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.d.ts +5 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadChatContext.js +42 -15
- package/vscode/src/vs/workbench/api/browser/mainThreadChatOutputRenderer.js +8 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.d.ts +4 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadChatSessions.js +170 -99
- package/vscode/src/vs/workbench/api/browser/mainThreadChatStatus.js +2 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadClipboard.js +4 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadCodeInsets.js +13 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadCommands.js +16 -19
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +127 -70
- package/vscode/src/vs/workbench/api/browser/mainThreadConfiguration.js +80 -26
- package/vscode/src/vs/workbench/api/browser/mainThreadConsole.js +5 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +199 -97
- package/vscode/src/vs/workbench/api/browser/mainThreadDataChannels.js +1 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +88 -73
- package/vscode/src/vs/workbench/api/browser/mainThreadDecorations.js +5 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadDiagnostics.js +16 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadDialogs.js +10 -8
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentContentProviders.js +14 -6
- package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +52 -37
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +78 -58
- package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +5 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +75 -63
- package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +99 -91
- package/vscode/src/vs/workbench/api/browser/mainThreadEditors.js +93 -55
- package/vscode/src/vs/workbench/api/browser/mainThreadEmbeddings.js +3 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +85 -60
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +49 -45
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +114 -72
- package/vscode/src/vs/workbench/api/browser/mainThreadInteractive.js +4 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadLabelService.js +1 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.d.ts +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +381 -238
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.d.ts +7 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModelTools.js +90 -13
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +81 -58
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguages.js +9 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadLocalization.js +2 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadLogService.js +6 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +12 -10
- package/vscode/src/vs/workbench/api/browser/mainThreadMcp.d.ts +3 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadMcp.js +162 -97
- package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +32 -26
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebook.js +38 -32
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocuments.js +48 -46
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDocumentsAndEditors.js +22 -18
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +5 -8
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookEditors.js +35 -21
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookKernels.js +31 -28
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +5 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadOutputService.js +47 -23
- package/vscode/src/vs/workbench/api/browser/mainThreadProfileContentHandlers.js +15 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +17 -18
- package/vscode/src/vs/workbench/api/browser/mainThreadQuickDiff.js +6 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadQuickOpen.js +83 -66
- package/vscode/src/vs/workbench/api/browser/mainThreadRemoteConnectionData.js +1 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +250 -92
- package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +6 -8
- package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +37 -26
- package/vscode/src/vs/workbench/api/browser/mainThreadSecretState.js +34 -21
- package/vscode/src/vs/workbench/api/browser/mainThreadShare.js +3 -6
- package/vscode/src/vs/workbench/api/browser/mainThreadSpeech.js +19 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +41 -16
- package/vscode/src/vs/workbench/api/browser/mainThreadStorage.js +18 -17
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +145 -145
- package/vscode/src/vs/workbench/api/browser/mainThreadTelemetry.js +19 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +176 -80
- package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +52 -21
- package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +26 -24
- package/vscode/src/vs/workbench/api/browser/mainThreadTheming.js +1 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadTimeline.js +5 -8
- package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.d.ts +4 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTreeViews.js +106 -46
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +83 -65
- package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +20 -20
- package/vscode/src/vs/workbench/api/browser/mainThreadUrls.js +14 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewManager.js +17 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +49 -38
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewViews.js +10 -13
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +38 -27
- package/vscode/src/vs/workbench/api/browser/mainThreadWindow.js +5 -11
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.d.ts +4 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +73 -43
- package/vscode/src/vs/workbench/api/common/shared/dataTransferCache.js +2 -2
- package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +17 -10
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/contributedOpeners.js +17 -11
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +107 -80
- package/vscode/src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.js +336 -175
- package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +126 -71
- package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +76 -54
- package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +1 -2
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -0
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +343 -192
- package/vscode/src/vs/workbench/services/extensions/common/extHostCustomers.js +5 -3
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.d.ts +0 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +75 -68
- package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +135 -36
- package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.js +22 -18
- package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +14 -12
- package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +21 -9
- package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +48 -25
- package/vscode/src/vs/workbench/services/themes/browser/cssExtensionPoint.d.ts +24 -0
- package/vscode/src/vs/workbench/services/themes/browser/cssExtensionPoint.js +300 -0
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
|
|
2
2
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
3
|
+
import { ExtensionIdentifier } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions";
|
|
4
|
+
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
3
5
|
import { IToolInvocation, IToolProgressStep, IToolResult } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService";
|
|
4
6
|
import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service";
|
|
5
7
|
import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
|
|
6
8
|
import { Dto, SerializableObjectWithBuffers } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/proxyIdentifier";
|
|
7
|
-
import { IToolDataDto, MainThreadLanguageModelToolsShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
|
|
9
|
+
import { IToolDataDto, IToolDefinitionDto, MainThreadLanguageModelToolsShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
|
|
8
10
|
export declare class MainThreadLanguageModelTools extends Disposable implements MainThreadLanguageModelToolsShape {
|
|
9
11
|
private readonly _languageModelToolsService;
|
|
12
|
+
private readonly _logService;
|
|
10
13
|
private readonly _proxy;
|
|
11
14
|
private readonly _tools;
|
|
12
15
|
private readonly _runningToolCalls;
|
|
13
|
-
constructor(extHostContext: IExtHostContext, _languageModelToolsService: ILanguageModelToolsService);
|
|
16
|
+
constructor(extHostContext: IExtHostContext, _languageModelToolsService: ILanguageModelToolsService, _logService: ILogService);
|
|
14
17
|
private getToolDtos;
|
|
15
18
|
$getTools(): Promise<IToolDataDto[]>;
|
|
16
19
|
$invokeTool(dto: Dto<IToolInvocation>, token?: CancellationToken): Promise<Dto<IToolResult> | SerializableObjectWithBuffers<Dto<IToolResult>>>;
|
|
17
20
|
$acceptToolProgress(callId: string, progress: IToolProgressStep): void;
|
|
18
21
|
$countTokensForInvocation(callId: string, input: string, token: CancellationToken): Promise<number>;
|
|
19
|
-
$registerTool(id: string): void;
|
|
22
|
+
$registerTool(id: string, hasHandleToolStream: boolean): void;
|
|
23
|
+
$registerToolWithDefinition(extensionId: ExtensionIdentifier, definition: IToolDefinitionDto, hasHandleToolStream: boolean): void;
|
|
20
24
|
$unregisterTool(name: string): void;
|
|
21
25
|
}
|
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
4
|
-
import { Disposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
4
|
+
import { Disposable, DisposableMap, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
5
5
|
import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshalling';
|
|
6
|
-
import {
|
|
6
|
+
import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
7
|
+
import { isUriComponents, URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
8
|
+
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
9
|
+
import { toToolSetKey } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution';
|
|
10
|
+
import { toolResultHasBuffers, ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService';
|
|
7
11
|
import { ILanguageModelToolsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service';
|
|
8
12
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
9
13
|
import { SerializableObjectWithBuffers } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/proxyIdentifier';
|
|
10
14
|
import { ExtHostContext, MainContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol';
|
|
11
15
|
|
|
12
16
|
let MainThreadLanguageModelTools = class MainThreadLanguageModelTools extends Disposable {
|
|
13
|
-
constructor(extHostContext, _languageModelToolsService) {
|
|
17
|
+
constructor(extHostContext, _languageModelToolsService, _logService) {
|
|
14
18
|
super();
|
|
15
19
|
this._languageModelToolsService = _languageModelToolsService;
|
|
20
|
+
this._logService = _logService;
|
|
16
21
|
this._tools = this._register(( new DisposableMap()));
|
|
17
22
|
this._runningToolCalls = ( new Map());
|
|
18
23
|
this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostLanguageModelTools));
|
|
19
|
-
this._register(
|
|
24
|
+
this._register(
|
|
25
|
+
this._languageModelToolsService.onDidChangeTools(e => this._proxy.$onDidChangeTools(this.getToolDtos()))
|
|
26
|
+
);
|
|
20
27
|
}
|
|
21
28
|
getToolDtos() {
|
|
22
|
-
return ( Array.from(this._languageModelToolsService.
|
|
23
|
-
.map(tool => ({
|
|
29
|
+
return ( Array.from(this._languageModelToolsService.getAllToolsIncludingDisabled()).map(tool => ({
|
|
24
30
|
id: tool.id,
|
|
25
31
|
displayName: tool.displayName,
|
|
26
32
|
toolReferenceName: tool.toolReferenceName,
|
|
@@ -29,14 +35,18 @@ let MainThreadLanguageModelTools = class MainThreadLanguageModelTools extends Di
|
|
|
29
35
|
userDescription: tool.userDescription,
|
|
30
36
|
modelDescription: tool.modelDescription,
|
|
31
37
|
inputSchema: tool.inputSchema,
|
|
32
|
-
source: tool.source
|
|
38
|
+
source: tool.source
|
|
33
39
|
})));
|
|
34
40
|
}
|
|
35
41
|
async $getTools() {
|
|
36
42
|
return this.getToolDtos();
|
|
37
43
|
}
|
|
38
44
|
async $invokeTool(dto, token) {
|
|
39
|
-
const result = await this._languageModelToolsService.invokeTool(
|
|
45
|
+
const result = await this._languageModelToolsService.invokeTool(
|
|
46
|
+
revive(dto),
|
|
47
|
+
(input, token) => this._proxy.$countTokensForInvocation(dto.callId, input, token),
|
|
48
|
+
token ?? CancellationToken.None
|
|
49
|
+
);
|
|
40
50
|
const out = {
|
|
41
51
|
content: result.content,
|
|
42
52
|
toolMetadata: result.toolMetadata
|
|
@@ -53,30 +63,97 @@ let MainThreadLanguageModelTools = class MainThreadLanguageModelTools extends Di
|
|
|
53
63
|
}
|
|
54
64
|
return fn.countTokens(input, token);
|
|
55
65
|
}
|
|
56
|
-
$registerTool(id) {
|
|
66
|
+
$registerTool(id, hasHandleToolStream) {
|
|
57
67
|
const disposable = this._languageModelToolsService.registerToolImplementation(id, {
|
|
58
68
|
invoke: async (dto, countTokens, progress, token) => {
|
|
59
69
|
try {
|
|
60
|
-
this._runningToolCalls.set(dto.callId, {
|
|
70
|
+
this._runningToolCalls.set(dto.callId, {
|
|
71
|
+
countTokens,
|
|
72
|
+
progress
|
|
73
|
+
});
|
|
61
74
|
const resultSerialized = await this._proxy.$invokeTool(dto, token);
|
|
62
75
|
const resultDto = resultSerialized instanceof SerializableObjectWithBuffers ? resultSerialized.value : resultSerialized;
|
|
63
76
|
return revive(resultDto);
|
|
64
|
-
}
|
|
65
|
-
finally {
|
|
77
|
+
} finally {
|
|
66
78
|
this._runningToolCalls.delete(dto.callId);
|
|
67
79
|
}
|
|
68
80
|
},
|
|
69
81
|
prepareToolInvocation: (context, token) => this._proxy.$prepareToolInvocation(id, context, token),
|
|
82
|
+
handleToolStream: hasHandleToolStream ? (context, token) => this._proxy.$handleToolStream(id, context, token) : undefined
|
|
70
83
|
});
|
|
71
84
|
this._tools.set(id, disposable);
|
|
72
85
|
}
|
|
86
|
+
$registerToolWithDefinition(extensionId, definition, hasHandleToolStream) {
|
|
87
|
+
let icon;
|
|
88
|
+
if (definition.icon) {
|
|
89
|
+
if (ThemeIcon.isThemeIcon(definition.icon)) {
|
|
90
|
+
icon = definition.icon;
|
|
91
|
+
} else if (typeof definition.icon === "object" && definition.icon !== null && isUriComponents(definition.icon)) {
|
|
92
|
+
icon = {
|
|
93
|
+
dark: URI.revive(definition.icon)
|
|
94
|
+
};
|
|
95
|
+
} else {
|
|
96
|
+
const iconObj = definition.icon;
|
|
97
|
+
icon = {
|
|
98
|
+
dark: URI.revive(iconObj.dark),
|
|
99
|
+
light: iconObj.light ? URI.revive(iconObj.light) : undefined
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const source = revive(definition.source);
|
|
104
|
+
const toolData = {
|
|
105
|
+
id: definition.id,
|
|
106
|
+
displayName: definition.displayName,
|
|
107
|
+
toolReferenceName: definition.toolReferenceName,
|
|
108
|
+
legacyToolReferenceFullNames: definition.legacyToolReferenceFullNames,
|
|
109
|
+
tags: definition.tags,
|
|
110
|
+
userDescription: definition.userDescription,
|
|
111
|
+
modelDescription: definition.modelDescription,
|
|
112
|
+
inputSchema: definition.inputSchema,
|
|
113
|
+
source,
|
|
114
|
+
icon,
|
|
115
|
+
models: definition.models,
|
|
116
|
+
canBeReferencedInPrompt: !!definition.userDescription && !definition.toolSet
|
|
117
|
+
};
|
|
118
|
+
const id = definition.id;
|
|
119
|
+
const store = ( new DisposableStore());
|
|
120
|
+
store.add(this._languageModelToolsService.registerTool(toolData, {
|
|
121
|
+
invoke: async (dto, countTokens, progress, token) => {
|
|
122
|
+
try {
|
|
123
|
+
this._runningToolCalls.set(dto.callId, {
|
|
124
|
+
countTokens,
|
|
125
|
+
progress
|
|
126
|
+
});
|
|
127
|
+
const resultSerialized = await this._proxy.$invokeTool(dto, token);
|
|
128
|
+
const resultDto = resultSerialized instanceof SerializableObjectWithBuffers ? resultSerialized.value : resultSerialized;
|
|
129
|
+
return revive(resultDto);
|
|
130
|
+
} finally {
|
|
131
|
+
this._runningToolCalls.delete(dto.callId);
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
handleToolStream: hasHandleToolStream ? (context, token) => this._proxy.$handleToolStream(id, context, token) : undefined,
|
|
135
|
+
prepareToolInvocation: (context, token) => this._proxy.$prepareToolInvocation(id, context, token)
|
|
136
|
+
}));
|
|
137
|
+
if (definition.toolSet) {
|
|
138
|
+
const ts = this._languageModelToolsService.getToolSet(toToolSetKey(extensionId, definition.toolSet)) || this._languageModelToolsService.getToolSet(definition.toolSet);
|
|
139
|
+
if (!ts || !(ts instanceof ToolSet)) {
|
|
140
|
+
this._logService.warn(
|
|
141
|
+
`ToolSet ${definition.toolSet} not found for tool ${definition.id} from extension ${extensionId.value}`
|
|
142
|
+
);
|
|
143
|
+
} else {
|
|
144
|
+
store.add(ts.addTool(toolData));
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
this._tools.set(id, store);
|
|
148
|
+
}
|
|
73
149
|
$unregisterTool(name) {
|
|
74
150
|
this._tools.deleteAndDispose(name);
|
|
75
151
|
}
|
|
76
152
|
};
|
|
77
153
|
MainThreadLanguageModelTools = __decorate([
|
|
78
154
|
extHostNamedCustomer(MainContext.MainThreadLanguageModelTools),
|
|
79
|
-
( __param(1, ILanguageModelToolsService))
|
|
155
|
+
( __param(1, ILanguageModelToolsService)),
|
|
156
|
+
( __param(2, ILogService))
|
|
80
157
|
], MainThreadLanguageModelTools);
|
|
81
158
|
|
|
82
159
|
export { MainThreadLanguageModelTools };
|
|
@@ -22,7 +22,15 @@ import { ExtHostContext, MainContext } from '@codingame/monaco-vscode-api/vscode
|
|
|
22
22
|
import { LanguageModelError } from '@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHostTypes';
|
|
23
23
|
|
|
24
24
|
let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
25
|
-
constructor(
|
|
25
|
+
constructor(
|
|
26
|
+
extHostContext,
|
|
27
|
+
_chatProviderService,
|
|
28
|
+
_logService,
|
|
29
|
+
_authenticationService,
|
|
30
|
+
_authenticationAccessService,
|
|
31
|
+
_extensionService,
|
|
32
|
+
_ignoredFilesService
|
|
33
|
+
) {
|
|
26
34
|
this._chatProviderService = _chatProviderService;
|
|
27
35
|
this._logService = _logService;
|
|
28
36
|
this._authenticationService = _authenticationService;
|
|
@@ -51,7 +59,9 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
51
59
|
const modelsAndIdentifiers = await this._proxy.$provideLanguageModelChatInfo(vendor, options, token);
|
|
52
60
|
modelsAndIdentifiers.forEach(m => {
|
|
53
61
|
if (m.metadata.auth) {
|
|
54
|
-
disposables.add(
|
|
62
|
+
disposables.add(
|
|
63
|
+
this._registerAuthenticationProvider(m.metadata.extension, m.metadata.auth)
|
|
64
|
+
);
|
|
55
65
|
}
|
|
56
66
|
});
|
|
57
67
|
return modelsAndIdentifiers;
|
|
@@ -61,15 +71,15 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
61
71
|
const defer = ( new DeferredPromise());
|
|
62
72
|
const stream = ( new AsyncIterableSource());
|
|
63
73
|
try {
|
|
64
|
-
this._pendingProgress.set(requestId, {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
74
|
+
this._pendingProgress.set(requestId, {
|
|
75
|
+
defer,
|
|
76
|
+
stream
|
|
77
|
+
});
|
|
78
|
+
await Promise.all(( messages.flatMap(msg => msg.content).filter(part => part.type === "image_url").map(async part => {
|
|
68
79
|
part.value.data = VSBuffer.wrap(await resizeImage(part.value.data.buffer));
|
|
69
80
|
})));
|
|
70
81
|
await this._proxy.$startChatRequest(modelId, requestId, from, ( new SerializableObjectWithBuffers(messages)), options, token);
|
|
71
|
-
}
|
|
72
|
-
catch (err) {
|
|
82
|
+
} catch (err) {
|
|
73
83
|
this._pendingProgress.delete(requestId);
|
|
74
84
|
throw err;
|
|
75
85
|
}
|
|
@@ -80,36 +90,36 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
80
90
|
},
|
|
81
91
|
provideTokenCount: (modelId, str, token) => {
|
|
82
92
|
return this._proxy.$provideTokenLength(modelId, str, token);
|
|
83
|
-
}
|
|
93
|
+
}
|
|
84
94
|
}));
|
|
85
95
|
this._providerRegistrations.set(vendor, disposables);
|
|
86
|
-
}
|
|
87
|
-
catch (err) {
|
|
96
|
+
} catch (err) {
|
|
88
97
|
disposables.dispose();
|
|
89
98
|
throw err;
|
|
90
99
|
}
|
|
91
100
|
}
|
|
92
101
|
$onLMProviderChange(vendor) {
|
|
93
|
-
this._lmProviderChange.fire({
|
|
102
|
+
this._lmProviderChange.fire({
|
|
103
|
+
vendor
|
|
104
|
+
});
|
|
94
105
|
}
|
|
95
106
|
async $reportResponsePart(requestId, chunk) {
|
|
96
107
|
const data = this._pendingProgress.get(requestId);
|
|
97
|
-
this._logService.trace(
|
|
108
|
+
this._logService.trace("[LM] report response PART", Boolean(data), requestId, chunk);
|
|
98
109
|
if (data) {
|
|
99
110
|
data.stream.emitOne(chunk.value);
|
|
100
111
|
}
|
|
101
112
|
}
|
|
102
113
|
async $reportResponseDone(requestId, err) {
|
|
103
114
|
const data = this._pendingProgress.get(requestId);
|
|
104
|
-
this._logService.trace(
|
|
115
|
+
this._logService.trace("[LM] report response DONE", Boolean(data), requestId, err);
|
|
105
116
|
if (data) {
|
|
106
117
|
this._pendingProgress.delete(requestId);
|
|
107
118
|
if (err) {
|
|
108
119
|
const error = LanguageModelError.tryDeserialize(err) ?? transformErrorFromSerialization(err);
|
|
109
120
|
data.stream.reject(error);
|
|
110
121
|
data.defer.error(error);
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
122
|
+
} else {
|
|
113
123
|
data.stream.resolve();
|
|
114
124
|
data.defer.complete(undefined);
|
|
115
125
|
}
|
|
@@ -122,33 +132,41 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
122
132
|
return this._chatProviderService.selectLanguageModels(selector);
|
|
123
133
|
}
|
|
124
134
|
async $tryStartChatRequest(extension, modelIdentifier, requestId, messages, options, token) {
|
|
125
|
-
this._logService.trace(
|
|
135
|
+
this._logService.trace("[CHAT] request STARTED", extension.value, requestId);
|
|
126
136
|
let response;
|
|
127
137
|
try {
|
|
128
138
|
response = await this._chatProviderService.sendChatRequest(modelIdentifier, extension, messages.value, options, token);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
this._logService.error('[CHAT] request FAILED', extension.value, requestId, err);
|
|
139
|
+
} catch (err) {
|
|
140
|
+
this._logService.error("[CHAT] request FAILED", extension.value, requestId, err);
|
|
132
141
|
throw err;
|
|
133
142
|
}
|
|
134
143
|
const streaming = (async () => {
|
|
135
144
|
try {
|
|
136
145
|
for await (const part of response.stream) {
|
|
137
|
-
this._logService.trace(
|
|
146
|
+
this._logService.trace("[CHAT] request PART", extension.value, requestId, part);
|
|
138
147
|
await this._proxy.$acceptResponsePart(requestId, ( new SerializableObjectWithBuffers(part)));
|
|
139
148
|
}
|
|
140
|
-
this._logService.trace(
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
|
|
149
|
+
this._logService.trace("[CHAT] request DONE", extension.value, requestId);
|
|
150
|
+
} catch (err) {
|
|
151
|
+
this._logService.error(
|
|
152
|
+
"[CHAT] extension request ERRORED in STREAM",
|
|
153
|
+
toErrorMessage(err, true),
|
|
154
|
+
extension.value,
|
|
155
|
+
requestId
|
|
156
|
+
);
|
|
144
157
|
this._proxy.$acceptResponseDone(requestId, transformErrorForSerialization(err));
|
|
145
158
|
}
|
|
146
159
|
})();
|
|
147
160
|
Promise.allSettled([response.result, streaming]).then(() => {
|
|
148
|
-
this._logService.debug(
|
|
161
|
+
this._logService.debug("[CHAT] extension request DONE", extension.value, requestId);
|
|
149
162
|
this._proxy.$acceptResponseDone(requestId, undefined);
|
|
150
163
|
}, err => {
|
|
151
|
-
this._logService.error(
|
|
164
|
+
this._logService.error(
|
|
165
|
+
"[CHAT] extension request ERRORED",
|
|
166
|
+
toErrorMessage(err, true),
|
|
167
|
+
extension.value,
|
|
168
|
+
requestId
|
|
169
|
+
);
|
|
152
170
|
this._proxy.$acceptResponseDone(requestId, transformErrorForSerialization(err));
|
|
153
171
|
});
|
|
154
172
|
}
|
|
@@ -160,27 +178,29 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
160
178
|
if (this._authenticationService.getProviderIds().includes(authProviderId)) {
|
|
161
179
|
return Disposable.None;
|
|
162
180
|
}
|
|
163
|
-
const accountLabel = auth.accountLabel ?? ( localize(
|
|
181
|
+
const accountLabel = auth.accountLabel ?? ( localize(2536, "Language Models"));
|
|
164
182
|
const disposables = ( new DisposableStore());
|
|
165
183
|
this._authenticationService.registerAuthenticationProvider(authProviderId, ( new LanguageModelAccessAuthProvider(authProviderId, auth.providerLabel, accountLabel)));
|
|
166
184
|
disposables.add(toDisposable(() => {
|
|
167
185
|
this._authenticationService.unregisterAuthenticationProvider(authProviderId);
|
|
168
186
|
}));
|
|
169
|
-
disposables.add(
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
const
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
187
|
+
disposables.add(
|
|
188
|
+
this._authenticationAccessService.onDidChangeExtensionSessionAccess(async e => {
|
|
189
|
+
const allowedExtensions = this._authenticationAccessService.readAllowedExtensions(authProviderId, accountLabel);
|
|
190
|
+
const accessList = [];
|
|
191
|
+
for (const allowedExtension of allowedExtensions) {
|
|
192
|
+
const from = await this._extensionService.getExtension(allowedExtension.id);
|
|
193
|
+
if (from) {
|
|
194
|
+
accessList.push({
|
|
195
|
+
from: from.identifier,
|
|
196
|
+
to: extension,
|
|
197
|
+
enabled: allowedExtension.allowed ?? true
|
|
198
|
+
});
|
|
199
|
+
}
|
|
180
200
|
}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
201
|
+
this._proxy.$updateModelAccesslist(accessList);
|
|
202
|
+
})
|
|
203
|
+
);
|
|
184
204
|
return disposables;
|
|
185
205
|
}
|
|
186
206
|
$fileIsIgnored(uri, token) {
|
|
@@ -195,15 +215,10 @@ let MainThreadLanguageModels = class MainThreadLanguageModels {
|
|
|
195
215
|
this._ignoredFileProviderRegistrations.deleteAndDispose(handle);
|
|
196
216
|
}
|
|
197
217
|
};
|
|
198
|
-
MainThreadLanguageModels = __decorate(
|
|
199
|
-
extHostNamedCustomer(MainContext.MainThreadLanguageModels),
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
( __param(3, IAuthenticationService)),
|
|
203
|
-
( __param(4, IAuthenticationAccessService)),
|
|
204
|
-
( __param(5, IExtensionService)),
|
|
205
|
-
( __param(6, ILanguageModelIgnoredFilesService))
|
|
206
|
-
], MainThreadLanguageModels);
|
|
218
|
+
MainThreadLanguageModels = __decorate(
|
|
219
|
+
[extHostNamedCustomer(MainContext.MainThreadLanguageModels), ( __param(1, ILanguageModelsService)), ( __param(2, ILogService)), ( __param(3, IAuthenticationService)), ( __param(4, IAuthenticationAccessService)), ( __param(5, IExtensionService)), ( __param(6, ILanguageModelIgnoredFilesService))],
|
|
220
|
+
MainThreadLanguageModels
|
|
221
|
+
);
|
|
207
222
|
class LanguageModelAccessAuthProvider {
|
|
208
223
|
constructor(id, label, _accountLabel) {
|
|
209
224
|
this.id = id;
|
|
@@ -224,19 +239,27 @@ class LanguageModelAccessAuthProvider {
|
|
|
224
239
|
}
|
|
225
240
|
async createSession(scopes) {
|
|
226
241
|
this._session = this._createFakeSession(scopes);
|
|
227
|
-
this._onDidChangeSessions.fire({
|
|
242
|
+
this._onDidChangeSessions.fire({
|
|
243
|
+
added: [this._session],
|
|
244
|
+
changed: [],
|
|
245
|
+
removed: []
|
|
246
|
+
});
|
|
228
247
|
return this._session;
|
|
229
248
|
}
|
|
230
249
|
removeSession(sessionId) {
|
|
231
250
|
if (this._session) {
|
|
232
|
-
this._onDidChangeSessions.fire({
|
|
251
|
+
this._onDidChangeSessions.fire({
|
|
252
|
+
added: [],
|
|
253
|
+
changed: [],
|
|
254
|
+
removed: [this._session]
|
|
255
|
+
});
|
|
233
256
|
this._session = undefined;
|
|
234
257
|
}
|
|
235
258
|
return Promise.resolve();
|
|
236
259
|
}
|
|
237
260
|
confirmation(extensionName, _recreatingSession) {
|
|
238
261
|
return localize(
|
|
239
|
-
|
|
262
|
+
2537,
|
|
240
263
|
"The extension '{0}' wants to access the language models provided by {1}.",
|
|
241
264
|
extensionName,
|
|
242
265
|
this.label
|
|
@@ -244,13 +267,13 @@ class LanguageModelAccessAuthProvider {
|
|
|
244
267
|
}
|
|
245
268
|
_createFakeSession(scopes) {
|
|
246
269
|
return {
|
|
247
|
-
id:
|
|
270
|
+
id: "fake-session",
|
|
248
271
|
account: {
|
|
249
272
|
id: this.id,
|
|
250
|
-
label: this._accountLabel
|
|
273
|
+
label: this._accountLabel
|
|
251
274
|
},
|
|
252
|
-
accessToken:
|
|
253
|
-
scopes
|
|
275
|
+
accessToken: "fake-access-token",
|
|
276
|
+
scopes
|
|
254
277
|
};
|
|
255
278
|
}
|
|
256
279
|
}
|
|
@@ -11,7 +11,13 @@ import { ILanguageStatusService } from '@codingame/monaco-vscode-api/vscode/vs/w
|
|
|
11
11
|
import { Disposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
12
12
|
|
|
13
13
|
let MainThreadLanguages = class MainThreadLanguages extends Disposable {
|
|
14
|
-
constructor(
|
|
14
|
+
constructor(
|
|
15
|
+
_extHostContext,
|
|
16
|
+
_languageService,
|
|
17
|
+
_modelService,
|
|
18
|
+
_resolverService,
|
|
19
|
+
_languageStatusService
|
|
20
|
+
) {
|
|
15
21
|
super();
|
|
16
22
|
this._languageService = _languageService;
|
|
17
23
|
this._modelService = _modelService;
|
|
@@ -32,8 +38,7 @@ let MainThreadLanguages = class MainThreadLanguages extends Disposable {
|
|
|
32
38
|
const ref = await this._resolverService.createModelReference(uri);
|
|
33
39
|
try {
|
|
34
40
|
ref.object.textEditorModel.setLanguage(this._languageService.createById(languageId));
|
|
35
|
-
}
|
|
36
|
-
finally {
|
|
41
|
+
} finally {
|
|
37
42
|
ref.dispose();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -63,12 +68,6 @@ let MainThreadLanguages = class MainThreadLanguages extends Disposable {
|
|
|
63
68
|
this._status.deleteAndDispose(handle);
|
|
64
69
|
}
|
|
65
70
|
};
|
|
66
|
-
MainThreadLanguages = __decorate([
|
|
67
|
-
extHostNamedCustomer(MainContext.MainThreadLanguages),
|
|
68
|
-
( __param(1, ILanguageService)),
|
|
69
|
-
( __param(2, IModelService)),
|
|
70
|
-
( __param(3, ITextModelService)),
|
|
71
|
-
( __param(4, ILanguageStatusService))
|
|
72
|
-
], MainThreadLanguages);
|
|
71
|
+
MainThreadLanguages = __decorate([extHostNamedCustomer(MainContext.MainThreadLanguages), ( __param(1, ILanguageService)), ( __param(2, IModelService)), ( __param(3, ITextModelService)), ( __param(4, ILanguageStatusService))], MainThreadLanguages);
|
|
73
72
|
|
|
74
73
|
export { MainThreadLanguages };
|
|
@@ -17,8 +17,7 @@ let MainThreadLocalization = class MainThreadLocalization extends Disposable {
|
|
|
17
17
|
try {
|
|
18
18
|
const uri = await this.languagePackService.getBuiltInExtensionTranslationsUri(id, language);
|
|
19
19
|
return uri;
|
|
20
|
-
}
|
|
21
|
-
catch (e) {
|
|
20
|
+
} catch (e) {
|
|
22
21
|
return undefined;
|
|
23
22
|
}
|
|
24
23
|
}
|
|
@@ -27,10 +26,6 @@ let MainThreadLocalization = class MainThreadLocalization extends Disposable {
|
|
|
27
26
|
return ( contents.value.toString());
|
|
28
27
|
}
|
|
29
28
|
};
|
|
30
|
-
MainThreadLocalization = __decorate([
|
|
31
|
-
extHostNamedCustomer(MainContext.MainThreadLocalization),
|
|
32
|
-
( __param(1, IFileService)),
|
|
33
|
-
( __param(2, ILanguagePackService))
|
|
34
|
-
], MainThreadLocalization);
|
|
29
|
+
MainThreadLocalization = __decorate([extHostNamedCustomer(MainContext.MainThreadLocalization), ( __param(1, IFileService)), ( __param(2, ILanguagePackService))], MainThreadLocalization);
|
|
35
30
|
|
|
36
31
|
export { MainThreadLocalization };
|
|
@@ -17,8 +17,7 @@ let MainThreadLoggerService = class MainThreadLoggerService {
|
|
|
17
17
|
this.disposables.add(loggerService.onDidChangeLogLevel(arg => {
|
|
18
18
|
if (isLogLevel(arg)) {
|
|
19
19
|
proxy.$setLogLevel(arg);
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
20
|
+
} else {
|
|
22
21
|
proxy.$setLogLevel(arg[1], arg[0]);
|
|
23
22
|
}
|
|
24
23
|
}));
|
|
@@ -26,7 +25,7 @@ let MainThreadLoggerService = class MainThreadLoggerService {
|
|
|
26
25
|
$log(file, messages) {
|
|
27
26
|
const logger = this.loggerService.getLogger(URI.revive(file));
|
|
28
27
|
if (!logger) {
|
|
29
|
-
throw ( new Error(
|
|
28
|
+
throw ( new Error("Create the logger before logging"));
|
|
30
29
|
}
|
|
31
30
|
for (const [level, message] of messages) {
|
|
32
31
|
log(logger, level, message);
|
|
@@ -50,7 +49,7 @@ let MainThreadLoggerService = class MainThreadLoggerService {
|
|
|
50
49
|
$flush(file) {
|
|
51
50
|
const logger = this.loggerService.getLogger(URI.revive(file));
|
|
52
51
|
if (!logger) {
|
|
53
|
-
throw ( new Error(
|
|
52
|
+
throw ( new Error("Create the logger before flushing"));
|
|
54
53
|
}
|
|
55
54
|
logger.flush();
|
|
56
55
|
}
|
|
@@ -58,11 +57,8 @@ let MainThreadLoggerService = class MainThreadLoggerService {
|
|
|
58
57
|
this.disposables.dispose();
|
|
59
58
|
}
|
|
60
59
|
};
|
|
61
|
-
MainThreadLoggerService = __decorate([
|
|
62
|
-
|
|
63
|
-
( __param(1, ILoggerService))
|
|
64
|
-
], MainThreadLoggerService);
|
|
65
|
-
CommandsRegistry.registerCommand('_extensionTests.setLogLevel', function (accessor, level) {
|
|
60
|
+
MainThreadLoggerService = __decorate([extHostNamedCustomer(MainContext.MainThreadLogger), ( __param(1, ILoggerService))], MainThreadLoggerService);
|
|
61
|
+
CommandsRegistry.registerCommand("_extensionTests.setLogLevel", function(accessor, level) {
|
|
66
62
|
const loggerService = accessor.get(ILoggerService);
|
|
67
63
|
const environmentService = accessor.get(IEnvironmentService);
|
|
68
64
|
if (environmentService.isExtensionDevelopment && !!environmentService.extensionTestsLocationURI) {
|
|
@@ -72,7 +68,7 @@ CommandsRegistry.registerCommand('_extensionTests.setLogLevel', function (access
|
|
|
72
68
|
}
|
|
73
69
|
}
|
|
74
70
|
});
|
|
75
|
-
CommandsRegistry.registerCommand(
|
|
71
|
+
CommandsRegistry.registerCommand("_extensionTests.getLogLevel", function(accessor) {
|
|
76
72
|
const logService = accessor.get(ILogService);
|
|
77
73
|
return LogLevelToString(logService.getLevel());
|
|
78
74
|
});
|
|
@@ -26,18 +26,17 @@ let MainThreadManagedSockets = class MainThreadManagedSockets extends Disposable
|
|
|
26
26
|
connect(connectTo, path, query, debugLabel) {
|
|
27
27
|
return ( new Promise((resolve, reject) => {
|
|
28
28
|
if (connectTo.id !== socketFactoryId) {
|
|
29
|
-
return reject(( new Error(
|
|
29
|
+
return reject(( new Error("Invalid connectTo")));
|
|
30
30
|
}
|
|
31
31
|
const factoryId = connectTo.id;
|
|
32
32
|
that._proxy.$openRemoteSocket(factoryId).then(socketId => {
|
|
33
33
|
const half = {
|
|
34
34
|
onClose: ( new Emitter()),
|
|
35
35
|
onData: ( new Emitter()),
|
|
36
|
-
onEnd: ( new Emitter())
|
|
36
|
+
onEnd: ( new Emitter())
|
|
37
37
|
};
|
|
38
38
|
that._remoteSockets.set(socketId, half);
|
|
39
|
-
MainThreadManagedSocket.connect(socketId, that._proxy, path, query, debugLabel, half)
|
|
40
|
-
.then(socket => {
|
|
39
|
+
MainThreadManagedSocket.connect(socketId, that._proxy, path, query, debugLabel, half).then(socket => {
|
|
41
40
|
socket.onDidDispose(() => that._remoteSockets.delete(socketId));
|
|
42
41
|
resolve(socket);
|
|
43
42
|
}, err => {
|
|
@@ -47,8 +46,11 @@ let MainThreadManagedSockets = class MainThreadManagedSockets extends Disposable
|
|
|
47
46
|
}).catch(reject);
|
|
48
47
|
}));
|
|
49
48
|
}
|
|
50
|
-
});
|
|
51
|
-
this._registrations.set(
|
|
49
|
+
})();
|
|
50
|
+
this._registrations.set(
|
|
51
|
+
socketFactoryId,
|
|
52
|
+
this._remoteSocketFactoryService.register(RemoteConnectionType.Managed, socketFactory)
|
|
53
|
+
);
|
|
52
54
|
}
|
|
53
55
|
async $unregisterSocketFactory(socketFactoryId) {
|
|
54
56
|
this._registrations.get(socketFactoryId)?.dispose();
|
|
@@ -68,10 +70,10 @@ let MainThreadManagedSockets = class MainThreadManagedSockets extends Disposable
|
|
|
68
70
|
this._remoteSockets.get(socketId)?.onEnd.fire();
|
|
69
71
|
}
|
|
70
72
|
};
|
|
71
|
-
MainThreadManagedSockets = __decorate(
|
|
72
|
-
extHostNamedCustomer(MainContext.MainThreadManagedSockets),
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
MainThreadManagedSockets = __decorate(
|
|
74
|
+
[extHostNamedCustomer(MainContext.MainThreadManagedSockets), ( __param(1, IRemoteSocketFactoryService))],
|
|
75
|
+
MainThreadManagedSockets
|
|
76
|
+
);
|
|
75
77
|
class MainThreadManagedSocket extends ManagedSocket {
|
|
76
78
|
static connect(socketId, proxy, path, query, debugLabel, half) {
|
|
77
79
|
const socket = ( new MainThreadManagedSocket(socketId, proxy, debugLabel, half));
|
|
@@ -12,7 +12,7 @@ import { IAuthenticationService } from "@codingame/monaco-vscode-api/vscode/vs/w
|
|
|
12
12
|
import { IDynamicAuthenticationProviderStorageService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service";
|
|
13
13
|
import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service";
|
|
14
14
|
import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
|
|
15
|
-
import { IMcpAuthenticationDetails, IMcpAuthenticationOptions,
|
|
15
|
+
import { IMcpAuthenticationDetails, IMcpAuthenticationOptions, IAuthMetadataSource, MainThreadMcpShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
|
|
16
16
|
export declare class MainThreadMcp extends Disposable implements MainThreadMcpShape {
|
|
17
17
|
private readonly _extHostContext;
|
|
18
18
|
private readonly _mcpRegistry;
|
|
@@ -32,6 +32,7 @@ export declare class MainThreadMcp extends Disposable implements MainThreadMcpSh
|
|
|
32
32
|
private readonly _proxy;
|
|
33
33
|
private readonly _collectionDefinitions;
|
|
34
34
|
constructor(_extHostContext: IExtHostContext, _mcpRegistry: IMcpRegistry, dialogService: IDialogService, _authenticationService: IAuthenticationService, authenticationMcpServersService: IAuthenticationMcpService, authenticationMCPServerAccessService: IAuthenticationMcpAccessService, authenticationMCPServerUsageService: IAuthenticationMcpUsageService, _dynamicAuthenticationProviderStorageService: IDynamicAuthenticationProviderStorageService, _extensionService: IExtensionService, _contextKeyService: IContextKeyService, _telemetryService: ITelemetryService);
|
|
35
|
+
private _publishServerDefinitions;
|
|
35
36
|
$upsertMcpCollection(collection: McpCollectionDefinition.FromExtHost, serversDto: McpServerDefinition.Serialized[]): void;
|
|
36
37
|
$deleteMcpCollection(collectionId: string): void;
|
|
37
38
|
$onDidChangeState(id: number, update: McpConnectionState): void;
|
|
@@ -42,7 +43,7 @@ export declare class MainThreadMcp extends Disposable implements MainThreadMcpSh
|
|
|
42
43
|
private _getSessionForProvider;
|
|
43
44
|
private continueWithIncorrectAccountPrompt;
|
|
44
45
|
private _onDidChangeAuthSessions;
|
|
45
|
-
$logMcpAuthSetup(data:
|
|
46
|
+
$logMcpAuthSetup(data: IAuthMetadataSource): void;
|
|
46
47
|
private loginPrompt;
|
|
47
48
|
dispose(): void;
|
|
48
49
|
}
|