diff --git a/src/agent-client-protocol-core/Cargo.toml b/src/agent-client-protocol-core/Cargo.toml index df7705e..376bb6a 100644 --- a/src/agent-client-protocol-core/Cargo.toml +++ b/src/agent-client-protocol-core/Cargo.toml @@ -18,6 +18,7 @@ default = [] unstable = [ "unstable_auth_methods", "unstable_boolean_config", + "unstable_logout", "unstable_message_id", "unstable_session_additional_directories", "unstable_session_close", @@ -28,6 +29,7 @@ unstable = [ ] unstable_auth_methods = ["agent-client-protocol-schema/unstable_auth_methods"] unstable_boolean_config = ["agent-client-protocol-schema/unstable_boolean_config"] +unstable_logout = ["agent-client-protocol-schema/unstable_logout"] unstable_message_id = ["agent-client-protocol-schema/unstable_message_id"] unstable_session_additional_directories = ["agent-client-protocol-schema/unstable_session_additional_directories"] unstable_session_close = ["agent-client-protocol-schema/unstable_session_close"] diff --git a/src/agent-client-protocol-core/src/schema/client_to_agent/requests.rs b/src/agent-client-protocol-core/src/schema/client_to_agent/requests.rs index 5215391..7c2520d 100644 --- a/src/agent-client-protocol-core/src/schema/client_to_agent/requests.rs +++ b/src/agent-client-protocol-core/src/schema/client_to_agent/requests.rs @@ -9,6 +9,8 @@ use crate::schema::{ use crate::schema::{CloseSessionRequest, CloseSessionResponse}; #[cfg(feature = "unstable_session_fork")] use crate::schema::{ForkSessionRequest, ForkSessionResponse}; +#[cfg(feature = "unstable_logout")] +use crate::schema::{LogoutRequest, LogoutResponse}; #[cfg(feature = "unstable_session_resume")] use crate::schema::{ResumeSessionRequest, ResumeSessionResponse}; #[cfg(feature = "unstable_session_model")] @@ -16,6 +18,8 @@ use crate::schema::{SetSessionModelRequest, SetSessionModelResponse}; impl_jsonrpc_request!(InitializeRequest, InitializeResponse, "initialize"); impl_jsonrpc_request!(AuthenticateRequest, AuthenticateResponse, "authenticate"); +#[cfg(feature = "unstable_logout")] +impl_jsonrpc_request!(LogoutRequest, LogoutResponse, "logout"); impl_jsonrpc_request!(LoadSessionRequest, LoadSessionResponse, "session/load"); impl_jsonrpc_request!(ListSessionsRequest, ListSessionsResponse, "session/list"); impl_jsonrpc_request!(NewSessionRequest, NewSessionResponse, "session/new"); diff --git a/src/agent-client-protocol-core/src/schema/enum_impls.rs b/src/agent-client-protocol-core/src/schema/enum_impls.rs index c7fb06c..5729410 100644 --- a/src/agent-client-protocol-core/src/schema/enum_impls.rs +++ b/src/agent-client-protocol-core/src/schema/enum_impls.rs @@ -10,6 +10,8 @@ use crate::schema::{AgentNotification, AgentRequest, ClientNotification, ClientR impl_jsonrpc_request_enum!(ClientRequest { InitializeRequest => "initialize", AuthenticateRequest => "authenticate", + #[cfg(feature = "unstable_logout")] + LogoutRequest => "logout", NewSessionRequest => "session/new", LoadSessionRequest => "session/load", ListSessionsRequest => "session/list",