@@ -22,7 +22,7 @@ type clientFuncs struct {
2222 SessionUpdateFunc func (context.Context , SessionNotification ) error
2323 // Terminal-related handlers
2424 CreateTerminalFunc func (context.Context , CreateTerminalRequest ) (CreateTerminalResponse , error )
25- KillTerminalCommandFunc func (context.Context , KillTerminalCommandRequest ) (KillTerminalCommandResponse , error )
25+ KillTerminalFunc func (context.Context , KillTerminalRequest ) (KillTerminalResponse , error )
2626 ReleaseTerminalFunc func (context.Context , ReleaseTerminalRequest ) (ReleaseTerminalResponse , error )
2727 TerminalOutputFunc func (context.Context , TerminalOutputRequest ) (TerminalOutputResponse , error )
2828 WaitForTerminalExitFunc func (context.Context , WaitForTerminalExitRequest ) (WaitForTerminalExitResponse , error )
@@ -70,12 +70,12 @@ func (c *clientFuncs) CreateTerminal(ctx context.Context, params CreateTerminalR
7070 return CreateTerminalResponse {TerminalId : "test-terminal" }, nil
7171}
7272
73- // KillTerminalCommand implements Client.
74- func (c clientFuncs ) KillTerminalCommand (ctx context.Context , params KillTerminalCommandRequest ) (KillTerminalCommandResponse , error ) {
75- if c .KillTerminalCommandFunc != nil {
76- return c .KillTerminalCommandFunc (ctx , params )
73+ // KillTerminal implements Client.
74+ func (c clientFuncs ) KillTerminal (ctx context.Context , params KillTerminalRequest ) (KillTerminalResponse , error ) {
75+ if c .KillTerminalFunc != nil {
76+ return c .KillTerminalFunc (ctx , params )
7777 }
78- return KillTerminalCommandResponse {}, nil
78+ return KillTerminalResponse {}, nil
7979}
8080
8181// ReleaseTerminal implements Client.
@@ -110,19 +110,34 @@ func (c clientFuncs) HandleExtensionMethod(ctx context.Context, method string, p
110110}
111111
112112type agentFuncs struct {
113- InitializeFunc func (context.Context , InitializeRequest ) (InitializeResponse , error )
114- NewSessionFunc func (context.Context , NewSessionRequest ) (NewSessionResponse , error )
115- LoadSessionFunc func (context.Context , LoadSessionRequest ) (LoadSessionResponse , error )
116- AuthenticateFunc func (context.Context , AuthenticateRequest ) (AuthenticateResponse , error )
117- PromptFunc func (context.Context , PromptRequest ) (PromptResponse , error )
118- CancelFunc func (context.Context , CancelNotification ) error
119- SetSessionModeFunc func (ctx context.Context , params SetSessionModeRequest ) (SetSessionModeResponse , error )
113+ InitializeFunc func (context.Context , InitializeRequest ) (InitializeResponse , error )
114+ NewSessionFunc func (context.Context , NewSessionRequest ) (NewSessionResponse , error )
115+ LoadSessionFunc func (context.Context , LoadSessionRequest ) (LoadSessionResponse , error )
116+ AuthenticateFunc func (context.Context , AuthenticateRequest ) (AuthenticateResponse , error )
117+ PromptFunc func (context.Context , PromptRequest ) (PromptResponse , error )
118+ CancelFunc func (context.Context , CancelNotification ) error
119+ SetSessionModeFunc func (ctx context.Context , params SetSessionModeRequest ) (SetSessionModeResponse , error )
120+ ListSessionsFunc func (context.Context , ListSessionsRequest ) (ListSessionsResponse , error )
121+ SetSessionConfigOptionFunc func (context.Context , SetSessionConfigOptionRequest ) (SetSessionConfigOptionResponse , error )
120122 // Unstable (schema/meta.unstable.json)
121- UnstableForkSessionFunc func (context.Context , UnstableForkSessionRequest ) (UnstableForkSessionResponse , error )
122- UnstableListSessionsFunc func (context.Context , UnstableListSessionsRequest ) (UnstableListSessionsResponse , error )
123- UnstableResumeSessionFunc func (context.Context , UnstableResumeSessionRequest ) (UnstableResumeSessionResponse , error )
124- SetSessionConfigOptionFunc func (context.Context , SetSessionConfigOptionRequest ) (SetSessionConfigOptionResponse , error )
125- UnstableSetSessionModelFunc func (context.Context , UnstableSetSessionModelRequest ) (UnstableSetSessionModelResponse , error )
123+ UnstableDidChangeDocumentFunc func (context.Context , UnstableDidChangeDocumentNotification ) error
124+ UnstableDidCloseDocumentFunc func (context.Context , UnstableDidCloseDocumentNotification ) error
125+ UnstableDidFocusDocumentFunc func (context.Context , UnstableDidFocusDocumentNotification ) error
126+ UnstableDidOpenDocumentFunc func (context.Context , UnstableDidOpenDocumentNotification ) error
127+ UnstableDidSaveDocumentFunc func (context.Context , UnstableDidSaveDocumentNotification ) error
128+ UnstableLogoutFunc func (context.Context , UnstableLogoutRequest ) (UnstableLogoutResponse , error )
129+ UnstableAcceptNesFunc func (context.Context , UnstableAcceptNesNotification ) error
130+ UnstableCloseNesFunc func (context.Context , UnstableCloseNesRequest ) (UnstableCloseNesResponse , error )
131+ UnstableRejectNesFunc func (context.Context , UnstableRejectNesNotification ) error
132+ UnstableStartNesFunc func (context.Context , UnstableStartNesRequest ) (UnstableStartNesResponse , error )
133+ UnstableSuggestNesFunc func (context.Context , UnstableSuggestNesRequest ) (UnstableSuggestNesResponse , error )
134+ UnstableDisableProvidersFunc func (context.Context , UnstableDisableProvidersRequest ) (UnstableDisableProvidersResponse , error )
135+ UnstableListProvidersFunc func (context.Context , UnstableListProvidersRequest ) (UnstableListProvidersResponse , error )
136+ UnstableSetProvidersFunc func (context.Context , UnstableSetProvidersRequest ) (UnstableSetProvidersResponse , error )
137+ UnstableCloseSessionFunc func (context.Context , UnstableCloseSessionRequest ) (UnstableCloseSessionResponse , error )
138+ UnstableForkSessionFunc func (context.Context , UnstableForkSessionRequest ) (UnstableForkSessionResponse , error )
139+ UnstableResumeSessionFunc func (context.Context , UnstableResumeSessionRequest ) (UnstableResumeSessionResponse , error )
140+ UnstableSetSessionModelFunc func (context.Context , UnstableSetSessionModelRequest ) (UnstableSetSessionModelResponse , error )
126141
127142 HandleExtensionMethodFunc func (context.Context , string , json.RawMessage ) (any , error )
128143}
@@ -192,12 +207,12 @@ func (a agentFuncs) UnstableForkSession(ctx context.Context, params UnstableFork
192207 return UnstableForkSessionResponse {}, nil
193208}
194209
195- // UnstableListSessions implements AgentExperimental .
196- func (a agentFuncs ) UnstableListSessions (ctx context.Context , params UnstableListSessionsRequest ) (UnstableListSessionsResponse , error ) {
197- if a .UnstableListSessionsFunc != nil {
198- return a .UnstableListSessionsFunc (ctx , params )
210+ // ListSessions implements Agent .
211+ func (a agentFuncs ) ListSessions (ctx context.Context , params ListSessionsRequest ) (ListSessionsResponse , error ) {
212+ if a .ListSessionsFunc != nil {
213+ return a .ListSessionsFunc (ctx , params )
199214 }
200- return UnstableListSessionsResponse {}, nil
215+ return ListSessionsResponse {}, nil
201216}
202217
203218// UnstableResumeSession implements AgentExperimental.
@@ -224,6 +239,111 @@ func (a agentFuncs) UnstableSetSessionModel(ctx context.Context, params Unstable
224239 return UnstableSetSessionModelResponse {}, nil
225240}
226241
242+ func (a agentFuncs ) UnstableDidChangeDocument (ctx context.Context , params UnstableDidChangeDocumentNotification ) error {
243+ if a .UnstableDidChangeDocumentFunc != nil {
244+ return a .UnstableDidChangeDocumentFunc (ctx , params )
245+ }
246+ return nil
247+ }
248+
249+ func (a agentFuncs ) UnstableDidCloseDocument (ctx context.Context , params UnstableDidCloseDocumentNotification ) error {
250+ if a .UnstableDidCloseDocumentFunc != nil {
251+ return a .UnstableDidCloseDocumentFunc (ctx , params )
252+ }
253+ return nil
254+ }
255+
256+ func (a agentFuncs ) UnstableDidFocusDocument (ctx context.Context , params UnstableDidFocusDocumentNotification ) error {
257+ if a .UnstableDidFocusDocumentFunc != nil {
258+ return a .UnstableDidFocusDocumentFunc (ctx , params )
259+ }
260+ return nil
261+ }
262+
263+ func (a agentFuncs ) UnstableDidOpenDocument (ctx context.Context , params UnstableDidOpenDocumentNotification ) error {
264+ if a .UnstableDidOpenDocumentFunc != nil {
265+ return a .UnstableDidOpenDocumentFunc (ctx , params )
266+ }
267+ return nil
268+ }
269+
270+ func (a agentFuncs ) UnstableDidSaveDocument (ctx context.Context , params UnstableDidSaveDocumentNotification ) error {
271+ if a .UnstableDidSaveDocumentFunc != nil {
272+ return a .UnstableDidSaveDocumentFunc (ctx , params )
273+ }
274+ return nil
275+ }
276+
277+ func (a agentFuncs ) UnstableLogout (ctx context.Context , params UnstableLogoutRequest ) (UnstableLogoutResponse , error ) {
278+ if a .UnstableLogoutFunc != nil {
279+ return a .UnstableLogoutFunc (ctx , params )
280+ }
281+ return UnstableLogoutResponse {}, nil
282+ }
283+
284+ func (a agentFuncs ) UnstableAcceptNes (ctx context.Context , params UnstableAcceptNesNotification ) error {
285+ if a .UnstableAcceptNesFunc != nil {
286+ return a .UnstableAcceptNesFunc (ctx , params )
287+ }
288+ return nil
289+ }
290+
291+ func (a agentFuncs ) UnstableCloseNes (ctx context.Context , params UnstableCloseNesRequest ) (UnstableCloseNesResponse , error ) {
292+ if a .UnstableCloseNesFunc != nil {
293+ return a .UnstableCloseNesFunc (ctx , params )
294+ }
295+ return UnstableCloseNesResponse {}, nil
296+ }
297+
298+ func (a agentFuncs ) UnstableRejectNes (ctx context.Context , params UnstableRejectNesNotification ) error {
299+ if a .UnstableRejectNesFunc != nil {
300+ return a .UnstableRejectNesFunc (ctx , params )
301+ }
302+ return nil
303+ }
304+
305+ func (a agentFuncs ) UnstableStartNes (ctx context.Context , params UnstableStartNesRequest ) (UnstableStartNesResponse , error ) {
306+ if a .UnstableStartNesFunc != nil {
307+ return a .UnstableStartNesFunc (ctx , params )
308+ }
309+ return UnstableStartNesResponse {}, nil
310+ }
311+
312+ func (a agentFuncs ) UnstableSuggestNes (ctx context.Context , params UnstableSuggestNesRequest ) (UnstableSuggestNesResponse , error ) {
313+ if a .UnstableSuggestNesFunc != nil {
314+ return a .UnstableSuggestNesFunc (ctx , params )
315+ }
316+ return UnstableSuggestNesResponse {}, nil
317+ }
318+
319+ func (a agentFuncs ) UnstableDisableProviders (ctx context.Context , params UnstableDisableProvidersRequest ) (UnstableDisableProvidersResponse , error ) {
320+ if a .UnstableDisableProvidersFunc != nil {
321+ return a .UnstableDisableProvidersFunc (ctx , params )
322+ }
323+ return UnstableDisableProvidersResponse {}, nil
324+ }
325+
326+ func (a agentFuncs ) UnstableListProviders (ctx context.Context , params UnstableListProvidersRequest ) (UnstableListProvidersResponse , error ) {
327+ if a .UnstableListProvidersFunc != nil {
328+ return a .UnstableListProvidersFunc (ctx , params )
329+ }
330+ return UnstableListProvidersResponse {}, nil
331+ }
332+
333+ func (a agentFuncs ) UnstableSetProviders (ctx context.Context , params UnstableSetProvidersRequest ) (UnstableSetProvidersResponse , error ) {
334+ if a .UnstableSetProvidersFunc != nil {
335+ return a .UnstableSetProvidersFunc (ctx , params )
336+ }
337+ return UnstableSetProvidersResponse {}, nil
338+ }
339+
340+ func (a agentFuncs ) UnstableCloseSession (ctx context.Context , params UnstableCloseSessionRequest ) (UnstableCloseSessionResponse , error ) {
341+ if a .UnstableCloseSessionFunc != nil {
342+ return a .UnstableCloseSessionFunc (ctx , params )
343+ }
344+ return UnstableCloseSessionResponse {}, nil
345+ }
346+
227347func (a agentFuncs ) HandleExtensionMethod (ctx context.Context , method string , params json.RawMessage ) (any , error ) {
228348 if a .HandleExtensionMethodFunc != nil {
229349 return a .HandleExtensionMethodFunc (ctx , method , params )
@@ -259,6 +379,10 @@ func (a *forkOnlyUnstableAgent) SetSessionMode(context.Context, SetSessionModeRe
259379 return SetSessionModeResponse {}, nil
260380}
261381
382+ func (a * forkOnlyUnstableAgent ) ListSessions (context.Context , ListSessionsRequest ) (ListSessionsResponse , error ) {
383+ return ListSessionsResponse {}, nil
384+ }
385+
262386func (a * forkOnlyUnstableAgent ) SetSessionConfigOption (context.Context , SetSessionConfigOptionRequest ) (SetSessionConfigOptionResponse , error ) {
263387 return SetSessionConfigOptionResponse {}, nil
264388}
@@ -782,9 +906,11 @@ func TestConnectionHandlesInitialize(t *testing.T) {
782906 },
783907 AuthMethods : []AuthMethod {
784908 {
785- Id : "oauth" ,
786- Name : "OAuth" ,
787- Description : Ptr ("Authenticate with OAuth" ),
909+ Agent : & AuthMethodAgent {
910+ Id : "oauth" ,
911+ Name : "OAuth" ,
912+ Description : Ptr ("Authenticate with OAuth" ),
913+ },
788914 },
789915 },
790916 }, nil
@@ -806,7 +932,7 @@ func TestConnectionHandlesInitialize(t *testing.T) {
806932
807933 resp , err := agentConn .Initialize (context .Background (), InitializeRequest {
808934 ProtocolVersion : ProtocolVersionNumber ,
809- ClientCapabilities : ClientCapabilities {Fs : FileSystemCapability {ReadTextFile : false , WriteTextFile : false }},
935+ ClientCapabilities : ClientCapabilities {Fs : FileSystemCapabilities {ReadTextFile : false , WriteTextFile : false }},
810936 })
811937 if err != nil {
812938 t .Fatalf ("initialize error: %v" , err )
@@ -817,7 +943,7 @@ func TestConnectionHandlesInitialize(t *testing.T) {
817943 if ! resp .AgentCapabilities .LoadSession {
818944 t .Fatalf ("expected loadSession true" )
819945 }
820- if len (resp .AuthMethods ) != 1 || resp .AuthMethods [0 ].Id != "oauth" {
946+ if len (resp .AuthMethods ) != 1 || resp .AuthMethods [0 ].Agent == nil || resp . AuthMethods [ 0 ]. Agent . Id != "oauth" {
821947 t .Fatalf ("unexpected authMethods: %+v" , resp .AuthMethods )
822948 }
823949}
@@ -1141,6 +1267,10 @@ func (agentNoExtensions) SetSessionMode(ctx context.Context, params SetSessionMo
11411267 return SetSessionModeResponse {}, nil
11421268}
11431269
1270+ func (agentNoExtensions ) ListSessions (ctx context.Context , params ListSessionsRequest ) (ListSessionsResponse , error ) {
1271+ return ListSessionsResponse {}, nil
1272+ }
1273+
11441274func (agentNoExtensions ) SetSessionConfigOption (ctx context.Context , params SetSessionConfigOptionRequest ) (SetSessionConfigOptionResponse , error ) {
11451275 return SetSessionConfigOptionResponse {}, nil
11461276}
0 commit comments