Skip to content

Commit 05bf957

Browse files
authored
Rename the chat agent API to "participant" (microsoft#205477)
* Start renaming chat API from "agent" to "participant" * Rename the rest of the API * Rename in integration test * Update integration test api proposals * Bump distro
1 parent b2b60ac commit 05bf957

16 files changed

+273
-275
lines changed

extensions/vscode-api-tests/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77
"enabledApiProposals": [
88
"activeComment",
99
"authSession",
10-
"chatAgents2",
10+
"chatParticipant",
1111
"languageModels",
12-
"defaultChatAgent",
12+
"defaultChatParticipant",
1313
"contribViewsRemote",
1414
"contribStatusBarItems",
1515
"createFileSystemWatcher",

extensions/vscode-api-tests/src/singlefolder-tests/chat.test.ts

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
import * as assert from 'assert';
77
import 'mocha';
8-
import { CancellationToken, ChatAgentContext, ChatAgentRequest, ChatAgentResult2, ChatVariableLevel, Disposable, Event, EventEmitter, InteractiveSession, ProviderResult, chat, interactive } from 'vscode';
8+
import { CancellationToken, ChatContext, ChatRequest, ChatResult, ChatVariableLevel, Disposable, Event, EventEmitter, InteractiveSession, ProviderResult, chat, interactive } from 'vscode';
99
import { DeferredPromise, assertNoRpc, closeAllEditors, disposeAll } from '../utils';
1010

1111
suite('chat', () => {
@@ -21,15 +21,15 @@ suite('chat', () => {
2121
disposeAll(disposables);
2222
});
2323

24-
function getDeferredForRequest(): DeferredPromise<ChatAgentRequest> {
25-
const deferred = new DeferredPromise<ChatAgentRequest>();
26-
disposables.push(setupAgent()(request => deferred.complete(request.request)));
24+
function getDeferredForRequest(): DeferredPromise<ChatRequest> {
25+
const deferred = new DeferredPromise<ChatRequest>();
26+
disposables.push(setupParticipant()(request => deferred.complete(request.request)));
2727

2828
return deferred;
2929
}
3030

31-
function setupAgent(): Event<{ request: ChatAgentRequest; context: ChatAgentContext }> {
32-
const emitter = new EventEmitter<{ request: ChatAgentRequest; context: ChatAgentContext }>();
31+
function setupParticipant(): Event<{ request: ChatRequest; context: ChatContext }> {
32+
const emitter = new EventEmitter<{ request: ChatRequest; context: ChatContext }>();
3333
disposables.push();
3434
disposables.push(interactive.registerInteractiveSessionProvider('provider', {
3535
prepareSession: (_token: CancellationToken): ProviderResult<InteractiveSession> => {
@@ -40,48 +40,48 @@ suite('chat', () => {
4040
},
4141
}));
4242

43-
const agent = chat.createChatAgent('agent', (request, context, _progress, _token) => {
43+
const participant = chat.createChatParticipant('participant', (request, context, _progress, _token) => {
4444
emitter.fire({ request, context });
4545
return null;
4646
});
47-
agent.isDefault = true;
48-
agent.commandProvider = {
47+
participant.isDefault = true;
48+
participant.commandProvider = {
4949
provideCommands: (_token) => {
5050
return [{ name: 'hello', description: 'Hello' }];
5151
}
5252
};
53-
disposables.push(agent);
53+
disposables.push(participant);
5454
return emitter.event;
5555
}
5656

57-
test('agent and slash command', async () => {
58-
const onRequest = setupAgent();
59-
interactive.sendInteractiveRequestToProvider('provider', { message: '@agent /hello friend' });
57+
test('participant and slash command', async () => {
58+
const onRequest = setupParticipant();
59+
interactive.sendInteractiveRequestToProvider('provider', { message: '@participant /hello friend' });
6060

6161
let i = 0;
6262
onRequest(request => {
6363
if (i === 0) {
6464
assert.deepStrictEqual(request.request.command, 'hello');
6565
assert.strictEqual(request.request.prompt, 'friend');
6666
i++;
67-
interactive.sendInteractiveRequestToProvider('provider', { message: '@agent /hello friend' });
67+
interactive.sendInteractiveRequestToProvider('provider', { message: '@participant /hello friend' });
6868
} else {
6969
assert.strictEqual(request.context.history.length, 1);
70-
assert.strictEqual(request.context.history[0].agent.agent, 'agent');
70+
assert.strictEqual(request.context.history[0].participant.participant, 'participant');
7171
assert.strictEqual(request.context.history[0].command, 'hello');
7272
}
7373
});
7474
});
7575

76-
test('agent and variable', async () => {
76+
test('participant and variable', async () => {
7777
disposables.push(chat.registerVariable('myVar', 'My variable', {
7878
resolve(_name, _context, _token) {
7979
return [{ level: ChatVariableLevel.Full, value: 'myValue' }];
8080
}
8181
}));
8282

8383
const deferred = getDeferredForRequest();
84-
interactive.sendInteractiveRequestToProvider('provider', { message: '@agent hi #myVar' });
84+
interactive.sendInteractiveRequestToProvider('provider', { message: '@participant hi #myVar' });
8585
const request = await deferred.p;
8686
assert.strictEqual(request.prompt, 'hi #myVar');
8787
assert.strictEqual(request.variables[0].values[0].value, 'myValue');
@@ -97,25 +97,25 @@ suite('chat', () => {
9797
},
9898
}));
9999

100-
const deferred = new DeferredPromise<ChatAgentResult2>();
101-
const agent = chat.createChatAgent('agent', (_request, _context, _progress, _token) => {
100+
const deferred = new DeferredPromise<ChatResult>();
101+
const participant = chat.createChatParticipant('participant', (_request, _context, _progress, _token) => {
102102
return { metadata: { key: 'value' } };
103103
});
104-
agent.isDefault = true;
105-
agent.commandProvider = {
104+
participant.isDefault = true;
105+
participant.commandProvider = {
106106
provideCommands: (_token) => {
107107
return [{ name: 'hello', description: 'Hello' }];
108108
}
109109
};
110-
agent.followupProvider = {
110+
participant.followupProvider = {
111111
provideFollowups(result, _token) {
112112
deferred.complete(result);
113113
return [];
114114
},
115115
};
116-
disposables.push(agent);
116+
disposables.push(participant);
117117

118-
interactive.sendInteractiveRequestToProvider('provider', { message: '@agent /hello friend' });
118+
interactive.sendInteractiveRequestToProvider('provider', { message: '@participant /hello friend' });
119119
const result = await deferred.p;
120120
assert.deepStrictEqual(result.metadata, { key: 'value' });
121121
});

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "code-oss-dev",
33
"version": "1.87.0",
4-
"distro": "664b4b796ea2343e71889a507e125feb14390bdf",
4+
"distro": "af73a537ea203329debad3df7ca7b42b4799473f",
55
"author": {
66
"name": "Microsoft Corporation"
77
},

src/vs/workbench/api/common/extHost.api.impl.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1410,15 +1410,15 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
14101410
return extHostChatProvider.registerLanguageModel(extension, id, provider, metadata);
14111411
},
14121412
registerVariable(name: string, description: string, resolver: vscode.ChatVariableResolver) {
1413-
checkProposedApiEnabled(extension, 'chatAgents2');
1413+
checkProposedApiEnabled(extension, 'chatParticipant');
14141414
return extHostChatVariables.registerVariableResolver(extension, name, description, resolver);
14151415
},
14161416
registerMappedEditsProvider(selector: vscode.DocumentSelector, provider: vscode.MappedEditsProvider) {
14171417
checkProposedApiEnabled(extension, 'mappedEditsProvider');
14181418
return extHostLanguageFeatures.registerMappedEditsProvider(extension, selector, provider);
14191419
},
1420-
createChatAgent(name: string, handler: vscode.ChatAgentExtendedRequestHandler) {
1421-
checkProposedApiEnabled(extension, 'chatAgents2');
1420+
createChatParticipant(name: string, handler: vscode.ChatExtendedRequestHandler) {
1421+
checkProposedApiEnabled(extension, 'chatParticipant');
14221422
return extHostChatAgents2.createChatAgent(extension, name, handler);
14231423
},
14241424
};
@@ -1472,9 +1472,9 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
14721472
// types
14731473
Breakpoint: extHostTypes.Breakpoint,
14741474
TerminalOutputAnchor: extHostTypes.TerminalOutputAnchor,
1475-
ChatAgentResultFeedbackKind: extHostTypes.ChatAgentResultFeedbackKind,
1475+
ChatResultFeedbackKind: extHostTypes.ChatResultFeedbackKind,
14761476
ChatVariableLevel: extHostTypes.ChatVariableLevel,
1477-
ChatAgentCompletionItem: extHostTypes.ChatAgentCompletionItem,
1477+
ChatCompletionItem: extHostTypes.ChatCompletionItem,
14781478
CallHierarchyIncomingCall: extHostTypes.CallHierarchyIncomingCall,
14791479
CallHierarchyItem: extHostTypes.CallHierarchyItem,
14801480
CallHierarchyOutgoingCall: extHostTypes.CallHierarchyOutgoingCall,
@@ -1664,7 +1664,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
16641664
LogLevel: LogLevel,
16651665
EditSessionIdentityMatch: EditSessionIdentityMatch,
16661666
InteractiveSessionVoteDirection: extHostTypes.InteractiveSessionVoteDirection,
1667-
ChatAgentCopyKind: extHostTypes.ChatAgentCopyKind,
1667+
ChatCopyKind: extHostTypes.ChatCopyKind,
16681668
InteractiveEditorResponseFeedbackKind: extHostTypes.InteractiveEditorResponseFeedbackKind,
16691669
StackFrameFocus: extHostTypes.StackFrameFocus,
16701670
ThreadFocus: extHostTypes.ThreadFocus,
@@ -1678,8 +1678,8 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
16781678
ChatResponseProgressPart: extHostTypes.ChatResponseProgressPart,
16791679
ChatResponseReferencePart: extHostTypes.ChatResponseReferencePart,
16801680
ChatResponseCommandButtonPart: extHostTypes.ChatResponseCommandButtonPart,
1681-
ChatAgentRequestTurn: extHostTypes.ChatAgentRequestTurn,
1682-
ChatAgentResponseTurn: extHostTypes.ChatAgentResponseTurn,
1681+
ChatRequestTurn: extHostTypes.ChatRequestTurn,
1682+
ChatResponseTurn: extHostTypes.ChatResponseTurn,
16831683
LanguageModelSystemMessage: extHostTypes.LanguageModelSystemMessage,
16841684
LanguageModelUserMessage: extHostTypes.LanguageModelUserMessage,
16851685
LanguageModelAssistantMessage: extHostTypes.LanguageModelAssistantMessage,

0 commit comments

Comments
 (0)