@vscode/chat-lib 0.4.1-10 → 0.4.1-12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/src/_internal/extension/byok/node/openAIEndpoint.d.ts.map +1 -1
  2. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js +1 -4
  3. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js.map +1 -1
  4. package/dist/src/_internal/extension/common/constants.d.ts +0 -1
  5. package/dist/src/_internal/extension/common/constants.d.ts.map +1 -1
  6. package/dist/src/_internal/extension/common/constants.js.map +1 -1
  7. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  8. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +1 -7
  9. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  10. package/dist/src/_internal/platform/endpoint/common/capiClient.d.ts.map +1 -1
  11. package/dist/src/_internal/platform/endpoint/common/capiClient.js +1 -0
  12. package/dist/src/_internal/platform/endpoint/common/capiClient.js.map +1 -1
  13. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  14. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js +18 -7
  15. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  16. package/dist/src/_internal/platform/networking/common/networking.d.ts +2 -0
  17. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  18. package/dist/src/_internal/platform/networking/common/networking.js +4 -5
  19. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  20. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.d.ts +3 -1
  21. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.d.ts.map +1 -1
  22. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.js +176 -32
  23. package/dist/src/_internal/platform/networking/node/chatWebSocketManager.js.map +1 -1
  24. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.d.ts +82 -0
  25. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.d.ts.map +1 -0
  26. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.js +227 -0
  27. package/dist/src/_internal/platform/networking/node/chatWebSocketTelemetry.js.map +1 -0
  28. package/dist/src/package.json +4 -19
  29. package/package.json +3 -2
@@ -0,0 +1,227 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ChatWebSocketTelemetrySender = void 0;
8
+ class ChatWebSocketTelemetrySender {
9
+ static sendConnectedTelemetry(telemetryService, properties) {
10
+ /* __GDPR__
11
+ "websocket.connected" : {
12
+ "owner": "chrmarti",
13
+ "comment": "Report a successful WebSocket connection.",
14
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
15
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
16
+ "connectDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time to establish the WebSocket connection in milliseconds", "isMeasurement": true }
17
+ }
18
+ */
19
+ telemetryService.sendTelemetryEvent('websocket.connected', { github: true, microsoft: true }, {
20
+ conversationId: properties.conversationId,
21
+ turnId: properties.turnId,
22
+ }, {
23
+ connectDurationMs: properties.connectDurationMs,
24
+ });
25
+ }
26
+ static sendConnectErrorTelemetry(telemetryService, properties) {
27
+ /* __GDPR__
28
+ "websocket.connectError" : {
29
+ "owner": "chrmarti",
30
+ "comment": "Report a failed WebSocket connection attempt.",
31
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
32
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
33
+ "error": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Error message for the failed connection" },
34
+ "connectDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time until the connection error in milliseconds", "isMeasurement": true }
35
+ }
36
+ */
37
+ telemetryService.sendTelemetryErrorEvent('websocket.connectError', { github: true, microsoft: true }, {
38
+ conversationId: properties.conversationId,
39
+ turnId: properties.turnId,
40
+ error: properties.error,
41
+ }, {
42
+ connectDurationMs: properties.connectDurationMs,
43
+ });
44
+ }
45
+ static sendCloseTelemetry(telemetryService, properties) {
46
+ /* __GDPR__
47
+ "websocket.close" : {
48
+ "owner": "chrmarti",
49
+ "comment": "Report a WebSocket connection close event.",
50
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
51
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
52
+ "closeReason": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Human-readable description of the close code" },
53
+ "closeEventReason": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Close event reason string from server" },
54
+ "closeEventWasClean": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Whether the connection closed cleanly" },
55
+ "closeCode": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "WebSocket close code", "isMeasurement": true },
56
+ "totalSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent over this connection", "isMeasurement": true },
57
+ "totalReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received over this connection", "isMeasurement": true },
58
+ "totalSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters sent over this connection", "isMeasurement": true },
59
+ "totalReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters received over this connection", "isMeasurement": true },
60
+ "connectionDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the connection was open in milliseconds", "isMeasurement": true }
61
+ }
62
+ */
63
+ telemetryService.sendTelemetryEvent('websocket.close', { github: true, microsoft: true }, {
64
+ conversationId: properties.conversationId,
65
+ turnId: properties.turnId,
66
+ closeReason: properties.closeReason,
67
+ closeEventReason: properties.closeEventReason,
68
+ closeEventWasClean: properties.closeEventWasClean,
69
+ }, {
70
+ closeCode: properties.closeCode,
71
+ totalSentMessageCount: properties.totalSentMessageCount,
72
+ totalReceivedMessageCount: properties.totalReceivedMessageCount,
73
+ totalSentCharacters: properties.totalSentCharacters,
74
+ totalReceivedCharacters: properties.totalReceivedCharacters,
75
+ connectionDurationMs: properties.connectionDurationMs,
76
+ });
77
+ }
78
+ static sendErrorTelemetry(telemetryService, properties) {
79
+ /* __GDPR__
80
+ "websocket.error" : {
81
+ "owner": "chrmarti",
82
+ "comment": "Report a runtime error on an established WebSocket connection.",
83
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
84
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
85
+ "error": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Error message" },
86
+ "totalSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent over this connection", "isMeasurement": true },
87
+ "totalReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received over this connection", "isMeasurement": true },
88
+ "totalSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters sent over this connection", "isMeasurement": true },
89
+ "totalReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters received over this connection", "isMeasurement": true },
90
+ "connectionDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the connection was open before the error in milliseconds", "isMeasurement": true }
91
+ }
92
+ */
93
+ telemetryService.sendTelemetryErrorEvent('websocket.error', { github: true, microsoft: true }, {
94
+ conversationId: properties.conversationId,
95
+ turnId: properties.turnId,
96
+ error: properties.error,
97
+ }, {
98
+ totalSentMessageCount: properties.totalSentMessageCount,
99
+ totalReceivedMessageCount: properties.totalReceivedMessageCount,
100
+ totalSentCharacters: properties.totalSentCharacters,
101
+ totalReceivedCharacters: properties.totalReceivedCharacters,
102
+ connectionDurationMs: properties.connectionDurationMs,
103
+ });
104
+ }
105
+ static sendCloseDuringSetupTelemetry(telemetryService, properties) {
106
+ /* __GDPR__
107
+ "websocket.closeDuringSetup" : {
108
+ "owner": "chrmarti",
109
+ "comment": "Report when a WebSocket connection is closed during setup before fully opening.",
110
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
111
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
112
+ "closeReason": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Human-readable description of the close code" },
113
+ "closeEventReason": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Close event reason string from server" },
114
+ "closeEventWasClean": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Whether the connection closed cleanly" },
115
+ "closeCode": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "WebSocket close code", "isMeasurement": true },
116
+ "connectDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Time until the connection was closed during setup in milliseconds", "isMeasurement": true }
117
+ }
118
+ */
119
+ telemetryService.sendTelemetryErrorEvent('websocket.closeDuringSetup', { github: true, microsoft: true }, {
120
+ conversationId: properties.conversationId,
121
+ turnId: properties.turnId,
122
+ closeReason: properties.closeReason,
123
+ closeEventReason: properties.closeEventReason,
124
+ closeEventWasClean: properties.closeEventWasClean,
125
+ }, {
126
+ closeCode: properties.closeCode,
127
+ connectDurationMs: properties.connectDurationMs,
128
+ });
129
+ }
130
+ static sendRequestSentTelemetry(telemetryService, properties) {
131
+ /* __GDPR__
132
+ "websocket.requestSent" : {
133
+ "owner": "chrmarti",
134
+ "comment": "Report when a request is sent over the WebSocket connection.",
135
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
136
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
137
+ "totalSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent over this connection", "isMeasurement": true },
138
+ "totalReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received over this connection", "isMeasurement": true },
139
+ "sentMessageCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Character count of this sent message payload", "isMeasurement": true },
140
+ "totalSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters sent over this connection", "isMeasurement": true },
141
+ "totalReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters received over this connection", "isMeasurement": true },
142
+ "connectionDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the connection has been open when the request is sent in milliseconds", "isMeasurement": true }
143
+ }
144
+ */
145
+ telemetryService.sendTelemetryEvent('websocket.requestSent', { github: true, microsoft: true }, {
146
+ conversationId: properties.conversationId,
147
+ turnId: properties.turnId,
148
+ }, {
149
+ totalSentMessageCount: properties.totalSentMessageCount,
150
+ totalReceivedMessageCount: properties.totalReceivedMessageCount,
151
+ sentMessageCharacters: properties.sentMessageCharacters,
152
+ totalSentCharacters: properties.totalSentCharacters,
153
+ totalReceivedCharacters: properties.totalReceivedCharacters,
154
+ connectionDurationMs: properties.connectionDurationMs,
155
+ });
156
+ }
157
+ static sendMessageParseErrorTelemetry(telemetryService, properties) {
158
+ /* __GDPR__
159
+ "websocket.messageParseError" : {
160
+ "owner": "chrmarti",
161
+ "comment": "Report when a received websocket message fails JSON parsing.",
162
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
163
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
164
+ "error": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Parse error message" },
165
+ "totalSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent over this connection", "isMeasurement": true },
166
+ "totalReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received over this connection", "isMeasurement": true },
167
+ "receivedMessageCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Character count of the received message that failed parsing", "isMeasurement": true },
168
+ "totalSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters sent over this connection", "isMeasurement": true },
169
+ "totalReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters received over this connection", "isMeasurement": true },
170
+ "connectionDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the connection has been open when parsing fails in milliseconds", "isMeasurement": true }
171
+ }
172
+ */
173
+ telemetryService.sendTelemetryErrorEvent('websocket.messageParseError', { github: true, microsoft: true }, {
174
+ conversationId: properties.conversationId,
175
+ turnId: properties.turnId,
176
+ error: properties.error,
177
+ }, {
178
+ totalSentMessageCount: properties.totalSentMessageCount,
179
+ totalReceivedMessageCount: properties.totalReceivedMessageCount,
180
+ receivedMessageCharacters: properties.receivedMessageCharacters,
181
+ totalSentCharacters: properties.totalSentCharacters,
182
+ totalReceivedCharacters: properties.totalReceivedCharacters,
183
+ connectionDurationMs: properties.connectionDurationMs,
184
+ });
185
+ }
186
+ static sendRequestOutcomeTelemetry(telemetryService, properties) {
187
+ /* __GDPR__
188
+ "websocket.requestOutcome" : {
189
+ "owner": "chrmarti",
190
+ "comment": "Report terminal outcome for a websocket request.",
191
+ "conversationId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the conversation" },
192
+ "turnId": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Id of the turn" },
193
+ "requestOutcome": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Terminal outcome of the websocket request" },
194
+ "totalSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent over this connection", "isMeasurement": true },
195
+ "totalReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received over this connection", "isMeasurement": true },
196
+ "totalSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters sent over this connection", "isMeasurement": true },
197
+ "totalReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Total characters received over this connection", "isMeasurement": true },
198
+ "requestSentMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages sent during this request", "isMeasurement": true },
199
+ "requestReceivedMessageCount": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of messages received during this request", "isMeasurement": true },
200
+ "requestSentCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of characters sent during this request", "isMeasurement": true },
201
+ "requestReceivedCharacters": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "Number of characters received during this request", "isMeasurement": true },
202
+ "connectionDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the connection has been open when the request ended in milliseconds", "isMeasurement": true },
203
+ "requestDurationMs": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "How long the request took before terminal outcome in milliseconds", "isMeasurement": true },
204
+ "closeCode": { "classification": "SystemMetaData", "purpose": "PerformanceAndHealth", "comment": "WebSocket close code when outcome is connection_closed", "isMeasurement": true }
205
+ }
206
+ */
207
+ telemetryService.sendTelemetryEvent('websocket.requestOutcome', { github: true, microsoft: true }, {
208
+ conversationId: properties.conversationId,
209
+ turnId: properties.turnId,
210
+ requestOutcome: properties.requestOutcome,
211
+ }, {
212
+ totalSentMessageCount: properties.totalSentMessageCount,
213
+ totalReceivedMessageCount: properties.totalReceivedMessageCount,
214
+ totalSentCharacters: properties.totalSentCharacters,
215
+ totalReceivedCharacters: properties.totalReceivedCharacters,
216
+ requestSentMessageCount: properties.requestSentMessageCount,
217
+ requestReceivedMessageCount: properties.requestReceivedMessageCount,
218
+ requestSentCharacters: properties.requestSentCharacters,
219
+ requestReceivedCharacters: properties.requestReceivedCharacters,
220
+ connectionDurationMs: properties.connectionDurationMs,
221
+ requestDurationMs: properties.requestDurationMs,
222
+ closeCode: properties.closeCode,
223
+ });
224
+ }
225
+ }
226
+ exports.ChatWebSocketTelemetrySender = ChatWebSocketTelemetrySender;
227
+ //# sourceMappingURL=chatWebSocketTelemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chatWebSocketTelemetry.js","sourceRoot":"","sources":["../../../../../../src/_internal/platform/networking/node/chatWebSocketTelemetry.ts"],"names":[],"mappings":"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"}
@@ -180,7 +180,7 @@
180
180
  "displayName": "%copilot.tools.searchSubagent.name%",
181
181
  "icon": "$(search)",
182
182
  "userDescription": "%copilot.tools.searchSubagent.description%",
183
- "modelDescription": "Launch an iterative search-focused subagent that orchestrates semantic_search, grep_search, file_search and read_file tool calls to explore and gather relevant workspace code for a natural language query.\n CALL THIS FOR ANY TASK THAT REQUIRES CODEBASE EXPLORATION!\n\nRemember:\n1. Perform tool calls in parallel whenever possible\n2. Avoid redundant calls -- don't repeat identical searches.\n3. Stop once you have high-confidence, non-duplicative snippets covering the query scope.\n\nReturns: A list of relevant files/snippet locations in the workspace.\n\nInput fields:\n- query: Natural language description of what to search for.\n- description: Short user-visible invocation message. \n- details: 2-3 sentences detailing the objective of the search agent.",
183
+ "modelDescription": "Launch a fast agent specialized for exploring codebases. Use this when you need to quickly find files by patterns (eg. \"src/components/**/*.tsx\"), search code for keywords (eg. \"API endpoints\"), or answer questions about the codebase (eg. \"how do API endpoints work?\").\nReturns: A list of relevant files/snippet locations in the workspace.\n\nInput fields:\n- query: Natural language description of what to search for.\n- description: Short user-visible invocation message. \n- details: 2-3 sentences detailing the objective of the search agent.",
184
184
  "when": "config.github.copilot.chat.searchSubagent.enabled",
185
185
  "tags": [
186
186
  "vscode_codesearch"
@@ -1351,8 +1351,7 @@
1351
1351
  ],
1352
1352
  "modes": [
1353
1353
  "edit"
1354
- ],
1355
- "when": "!config.chat.edits2.enabled"
1354
+ ]
1356
1355
  },
1357
1356
  {
1358
1357
  "id": "github.copilot.editingSessionEditor",
@@ -1436,20 +1435,6 @@
1436
1435
  }
1437
1436
  ]
1438
1437
  },
1439
- {
1440
- "id": "github.copilot.editingSession2",
1441
- "name": "GitHubCopilot",
1442
- "fullName": "GitHub Copilot",
1443
- "description": "%copilot.edits.description%",
1444
- "isDefault": true,
1445
- "locations": [
1446
- "panel"
1447
- ],
1448
- "modes": [
1449
- "edit"
1450
- ],
1451
- "when": "config.chat.edits2.enabled"
1452
- },
1453
1438
  {
1454
1439
  "id": "github.copilot.editsAgent",
1455
1440
  "name": "agent",
@@ -5934,7 +5919,7 @@
5934
5919
  "@microsoft/tiktokenizer": "^1.0.10",
5935
5920
  "@modelcontextprotocol/sdk": "^1.25.2",
5936
5921
  "@sinclair/typebox": "^0.34.41",
5937
- "@vscode/copilot-api": "^0.2.12",
5922
+ "@vscode/copilot-api": "^0.2.13",
5938
5923
  "@vscode/extension-telemetry": "^1.5.1",
5939
5924
  "@vscode/l10n": "^0.0.18",
5940
5925
  "@vscode/prompt-tsx": "^0.4.0-alpha.6",
@@ -5963,5 +5948,5 @@
5963
5948
  "node-gyp": "npm:node-gyp@10.3.1",
5964
5949
  "zod": "3.25.76"
5965
5950
  },
5966
- "vscodeCommit": "37d89378138178bd2847f275082f1875f17c1f4a"
5951
+ "vscodeCommit": "ff740b1cefad130c3477aa75a1e0ec744d516ac1"
5967
5952
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vscode/chat-lib",
3
- "version": "0.4.1-10",
3
+ "version": "0.4.1-12",
4
4
  "description": "Chat and inline editing SDK extracted from VS Code Copilot Chat",
5
5
  "main": "dist/src/main.js",
6
6
  "types": "dist/src/main.d.ts",
@@ -16,7 +16,7 @@
16
16
  "dependencies": {
17
17
  "@microsoft/tiktokenizer": "^1.0.10",
18
18
  "@sinclair/typebox": "^0.34.41",
19
- "@vscode/copilot-api": "^0.2.12",
19
+ "@vscode/copilot-api": "^0.2.13",
20
20
  "@vscode/l10n": "^0.0.18",
21
21
  "@vscode/prompt-tsx": "^0.4.0-alpha.6",
22
22
  "@vscode/tree-sitter-wasm": "0.0.5-php.2",
@@ -24,6 +24,7 @@
24
24
  "jsonc-parser": "^3.3.1",
25
25
  "monaco-editor": "0.44.0",
26
26
  "openai": "^6.7.0",
27
+ "undici": "^7.18.2",
27
28
  "vscode-languageserver-protocol": "^3.17.5",
28
29
  "vscode-languageserver-textdocument": "^1.0.12",
29
30
  "web-tree-sitter": "^0.23.0",