Skip to main content

agent_client_protocol/schema/client_to_agent/
requests.rs

1use crate::schema::{
2    AuthenticateRequest, AuthenticateResponse, CloseSessionRequest, CloseSessionResponse,
3    InitializeRequest, InitializeResponse, ListSessionsRequest, ListSessionsResponse,
4    LoadSessionRequest, LoadSessionResponse, NewSessionRequest, NewSessionResponse, PromptRequest,
5    PromptResponse, ResumeSessionRequest, ResumeSessionResponse, SetSessionConfigOptionRequest,
6    SetSessionConfigOptionResponse, SetSessionModeRequest, SetSessionModeResponse,
7};
8#[cfg(feature = "unstable_session_delete")]
9use crate::schema::{DeleteSessionRequest, DeleteSessionResponse};
10#[cfg(feature = "unstable_session_fork")]
11use crate::schema::{ForkSessionRequest, ForkSessionResponse};
12#[cfg(feature = "unstable_logout")]
13use crate::schema::{LogoutRequest, LogoutResponse};
14#[cfg(feature = "unstable_session_model")]
15use crate::schema::{SetSessionModelRequest, SetSessionModelResponse};
16
17impl_jsonrpc_request!(InitializeRequest, InitializeResponse, "initialize");
18impl_jsonrpc_request!(AuthenticateRequest, AuthenticateResponse, "authenticate");
19#[cfg(feature = "unstable_logout")]
20impl_jsonrpc_request!(LogoutRequest, LogoutResponse, "logout");
21impl_jsonrpc_request!(LoadSessionRequest, LoadSessionResponse, "session/load");
22impl_jsonrpc_request!(ListSessionsRequest, ListSessionsResponse, "session/list");
23#[cfg(feature = "unstable_session_delete")]
24impl_jsonrpc_request!(
25    DeleteSessionRequest,
26    DeleteSessionResponse,
27    "session/delete"
28);
29impl_jsonrpc_request!(NewSessionRequest, NewSessionResponse, "session/new");
30impl_jsonrpc_request!(PromptRequest, PromptResponse, "session/prompt");
31impl_jsonrpc_request!(
32    SetSessionModeRequest,
33    SetSessionModeResponse,
34    "session/set_mode"
35);
36impl_jsonrpc_request!(
37    SetSessionConfigOptionRequest,
38    SetSessionConfigOptionResponse,
39    "session/set_config_option"
40);
41
42#[cfg(feature = "unstable_session_model")]
43impl_jsonrpc_request!(
44    SetSessionModelRequest,
45    SetSessionModelResponse,
46    "session/set_model"
47);
48#[cfg(feature = "unstable_session_fork")]
49impl_jsonrpc_request!(ForkSessionRequest, ForkSessionResponse, "session/fork");
50impl_jsonrpc_request!(
51    ResumeSessionRequest,
52    ResumeSessionResponse,
53    "session/resume"
54);
55impl_jsonrpc_request!(CloseSessionRequest, CloseSessionResponse, "session/close");