@@ -1149,29 +1149,36 @@ def session_compaction_compact_result_to_dict(x: SessionCompactionCompactResult)
11491149 return to_class (SessionCompactionCompactResult , x )
11501150
11511151
1152+ def _timeout_kwargs (timeout : float | None ) -> dict :
1153+ """Build keyword arguments for optional timeout forwarding."""
1154+ if timeout is not None :
1155+ return {"timeout" : timeout }
1156+ return {}
1157+
1158+
11521159class ModelsApi :
11531160 def __init__ (self , client : "JsonRpcClient" ):
11541161 self ._client = client
11551162
1156- async def list (self ) -> ModelsListResult :
1157- return ModelsListResult .from_dict (await self ._client .request ("models.list" , {}))
1163+ async def list (self , * , timeout : float | None = None ) -> ModelsListResult :
1164+ return ModelsListResult .from_dict (await self ._client .request ("models.list" , {}, ** _timeout_kwargs ( timeout ) ))
11581165
11591166
11601167class ToolsApi :
11611168 def __init__ (self , client : "JsonRpcClient" ):
11621169 self ._client = client
11631170
1164- async def list (self , params : ToolsListParams ) -> ToolsListResult :
1171+ async def list (self , params : ToolsListParams , * , timeout : float | None = None ) -> ToolsListResult :
11651172 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
1166- return ToolsListResult .from_dict (await self ._client .request ("tools.list" , params_dict ))
1173+ return ToolsListResult .from_dict (await self ._client .request ("tools.list" , params_dict , ** _timeout_kwargs ( timeout ) ))
11671174
11681175
11691176class AccountApi :
11701177 def __init__ (self , client : "JsonRpcClient" ):
11711178 self ._client = client
11721179
1173- async def get_quota (self ) -> AccountGetQuotaResult :
1174- return AccountGetQuotaResult .from_dict (await self ._client .request ("account.getQuota" , {}))
1180+ async def get_quota (self , * , timeout : float | None = None ) -> AccountGetQuotaResult :
1181+ return AccountGetQuotaResult .from_dict (await self ._client .request ("account.getQuota" , {}, ** _timeout_kwargs ( timeout ) ))
11751182
11761183
11771184class ServerRpc :
@@ -1182,113 +1189,113 @@ def __init__(self, client: "JsonRpcClient"):
11821189 self .tools = ToolsApi (client )
11831190 self .account = AccountApi (client )
11841191
1185- async def ping (self , params : PingParams ) -> PingResult :
1192+ async def ping (self , params : PingParams , * , timeout : float | None = None ) -> PingResult :
11861193 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
1187- return PingResult .from_dict (await self ._client .request ("ping" , params_dict ))
1194+ return PingResult .from_dict (await self ._client .request ("ping" , params_dict , ** _timeout_kwargs ( timeout ) ))
11881195
11891196
11901197class ModelApi :
11911198 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
11921199 self ._client = client
11931200 self ._session_id = session_id
11941201
1195- async def get_current (self ) -> SessionModelGetCurrentResult :
1196- return SessionModelGetCurrentResult .from_dict (await self ._client .request ("session.model.getCurrent" , {"sessionId" : self ._session_id }))
1202+ async def get_current (self , * , timeout : float | None = None ) -> SessionModelGetCurrentResult :
1203+ return SessionModelGetCurrentResult .from_dict (await self ._client .request ("session.model.getCurrent" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
11971204
1198- async def switch_to (self , params : SessionModelSwitchToParams ) -> SessionModelSwitchToResult :
1205+ async def switch_to (self , params : SessionModelSwitchToParams , * , timeout : float | None = None ) -> SessionModelSwitchToResult :
11991206 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12001207 params_dict ["sessionId" ] = self ._session_id
1201- return SessionModelSwitchToResult .from_dict (await self ._client .request ("session.model.switchTo" , params_dict ))
1208+ return SessionModelSwitchToResult .from_dict (await self ._client .request ("session.model.switchTo" , params_dict , ** _timeout_kwargs ( timeout ) ))
12021209
12031210
12041211class ModeApi :
12051212 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12061213 self ._client = client
12071214 self ._session_id = session_id
12081215
1209- async def get (self ) -> SessionModeGetResult :
1210- return SessionModeGetResult .from_dict (await self ._client .request ("session.mode.get" , {"sessionId" : self ._session_id }))
1216+ async def get (self , * , timeout : float | None = None ) -> SessionModeGetResult :
1217+ return SessionModeGetResult .from_dict (await self ._client .request ("session.mode.get" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12111218
1212- async def set (self , params : SessionModeSetParams ) -> SessionModeSetResult :
1219+ async def set (self , params : SessionModeSetParams , * , timeout : float | None = None ) -> SessionModeSetResult :
12131220 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12141221 params_dict ["sessionId" ] = self ._session_id
1215- return SessionModeSetResult .from_dict (await self ._client .request ("session.mode.set" , params_dict ))
1222+ return SessionModeSetResult .from_dict (await self ._client .request ("session.mode.set" , params_dict , ** _timeout_kwargs ( timeout ) ))
12161223
12171224
12181225class PlanApi :
12191226 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12201227 self ._client = client
12211228 self ._session_id = session_id
12221229
1223- async def read (self ) -> SessionPlanReadResult :
1224- return SessionPlanReadResult .from_dict (await self ._client .request ("session.plan.read" , {"sessionId" : self ._session_id }))
1230+ async def read (self , * , timeout : float | None = None ) -> SessionPlanReadResult :
1231+ return SessionPlanReadResult .from_dict (await self ._client .request ("session.plan.read" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12251232
1226- async def update (self , params : SessionPlanUpdateParams ) -> SessionPlanUpdateResult :
1233+ async def update (self , params : SessionPlanUpdateParams , * , timeout : float | None = None ) -> SessionPlanUpdateResult :
12271234 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12281235 params_dict ["sessionId" ] = self ._session_id
1229- return SessionPlanUpdateResult .from_dict (await self ._client .request ("session.plan.update" , params_dict ))
1236+ return SessionPlanUpdateResult .from_dict (await self ._client .request ("session.plan.update" , params_dict , ** _timeout_kwargs ( timeout ) ))
12301237
1231- async def delete (self ) -> SessionPlanDeleteResult :
1232- return SessionPlanDeleteResult .from_dict (await self ._client .request ("session.plan.delete" , {"sessionId" : self ._session_id }))
1238+ async def delete (self , * , timeout : float | None = None ) -> SessionPlanDeleteResult :
1239+ return SessionPlanDeleteResult .from_dict (await self ._client .request ("session.plan.delete" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12331240
12341241
12351242class WorkspaceApi :
12361243 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12371244 self ._client = client
12381245 self ._session_id = session_id
12391246
1240- async def list_files (self ) -> SessionWorkspaceListFilesResult :
1241- return SessionWorkspaceListFilesResult .from_dict (await self ._client .request ("session.workspace.listFiles" , {"sessionId" : self ._session_id }))
1247+ async def list_files (self , * , timeout : float | None = None ) -> SessionWorkspaceListFilesResult :
1248+ return SessionWorkspaceListFilesResult .from_dict (await self ._client .request ("session.workspace.listFiles" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12421249
1243- async def read_file (self , params : SessionWorkspaceReadFileParams ) -> SessionWorkspaceReadFileResult :
1250+ async def read_file (self , params : SessionWorkspaceReadFileParams , * , timeout : float | None = None ) -> SessionWorkspaceReadFileResult :
12441251 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12451252 params_dict ["sessionId" ] = self ._session_id
1246- return SessionWorkspaceReadFileResult .from_dict (await self ._client .request ("session.workspace.readFile" , params_dict ))
1253+ return SessionWorkspaceReadFileResult .from_dict (await self ._client .request ("session.workspace.readFile" , params_dict , ** _timeout_kwargs ( timeout ) ))
12471254
1248- async def create_file (self , params : SessionWorkspaceCreateFileParams ) -> SessionWorkspaceCreateFileResult :
1255+ async def create_file (self , params : SessionWorkspaceCreateFileParams , * , timeout : float | None = None ) -> SessionWorkspaceCreateFileResult :
12491256 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12501257 params_dict ["sessionId" ] = self ._session_id
1251- return SessionWorkspaceCreateFileResult .from_dict (await self ._client .request ("session.workspace.createFile" , params_dict ))
1258+ return SessionWorkspaceCreateFileResult .from_dict (await self ._client .request ("session.workspace.createFile" , params_dict , ** _timeout_kwargs ( timeout ) ))
12521259
12531260
12541261class FleetApi :
12551262 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12561263 self ._client = client
12571264 self ._session_id = session_id
12581265
1259- async def start (self , params : SessionFleetStartParams ) -> SessionFleetStartResult :
1266+ async def start (self , params : SessionFleetStartParams , * , timeout : float | None = None ) -> SessionFleetStartResult :
12601267 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12611268 params_dict ["sessionId" ] = self ._session_id
1262- return SessionFleetStartResult .from_dict (await self ._client .request ("session.fleet.start" , params_dict ))
1269+ return SessionFleetStartResult .from_dict (await self ._client .request ("session.fleet.start" , params_dict , ** _timeout_kwargs ( timeout ) ))
12631270
12641271
12651272class AgentApi :
12661273 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12671274 self ._client = client
12681275 self ._session_id = session_id
12691276
1270- async def list (self ) -> SessionAgentListResult :
1271- return SessionAgentListResult .from_dict (await self ._client .request ("session.agent.list" , {"sessionId" : self ._session_id }))
1277+ async def list (self , * , timeout : float | None = None ) -> SessionAgentListResult :
1278+ return SessionAgentListResult .from_dict (await self ._client .request ("session.agent.list" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12721279
1273- async def get_current (self ) -> SessionAgentGetCurrentResult :
1274- return SessionAgentGetCurrentResult .from_dict (await self ._client .request ("session.agent.getCurrent" , {"sessionId" : self ._session_id }))
1280+ async def get_current (self , * , timeout : float | None = None ) -> SessionAgentGetCurrentResult :
1281+ return SessionAgentGetCurrentResult .from_dict (await self ._client .request ("session.agent.getCurrent" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12751282
1276- async def select (self , params : SessionAgentSelectParams ) -> SessionAgentSelectResult :
1283+ async def select (self , params : SessionAgentSelectParams , * , timeout : float | None = None ) -> SessionAgentSelectResult :
12771284 params_dict = {k : v for k , v in params .to_dict ().items () if v is not None }
12781285 params_dict ["sessionId" ] = self ._session_id
1279- return SessionAgentSelectResult .from_dict (await self ._client .request ("session.agent.select" , params_dict ))
1286+ return SessionAgentSelectResult .from_dict (await self ._client .request ("session.agent.select" , params_dict , ** _timeout_kwargs ( timeout ) ))
12801287
1281- async def deselect (self ) -> SessionAgentDeselectResult :
1282- return SessionAgentDeselectResult .from_dict (await self ._client .request ("session.agent.deselect" , {"sessionId" : self ._session_id }))
1288+ async def deselect (self , * , timeout : float | None = None ) -> SessionAgentDeselectResult :
1289+ return SessionAgentDeselectResult .from_dict (await self ._client .request ("session.agent.deselect" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12831290
12841291
12851292class CompactionApi :
12861293 def __init__ (self , client : "JsonRpcClient" , session_id : str ):
12871294 self ._client = client
12881295 self ._session_id = session_id
12891296
1290- async def compact (self ) -> SessionCompactionCompactResult :
1291- return SessionCompactionCompactResult .from_dict (await self ._client .request ("session.compaction.compact" , {"sessionId" : self ._session_id }))
1297+ async def compact (self , * , timeout : float | None = None ) -> SessionCompactionCompactResult :
1298+ return SessionCompactionCompactResult .from_dict (await self ._client .request ("session.compaction.compact" , {"sessionId" : self ._session_id }, ** _timeout_kwargs ( timeout ) ))
12921299
12931300
12941301class SessionRpc :
0 commit comments