letta-client 0.1.312__py3-none-any.whl → 0.1.314__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of letta-client might be problematic. Click here for more details.

letta_client/__init__.py CHANGED
@@ -215,6 +215,7 @@ from .types import (
215
215
  MessageCreateContent,
216
216
  MessageCreateRole,
217
217
  MessageRole,
218
+ MessageSearchResult,
218
219
  MessageType,
219
220
  ModalSandboxConfig,
220
221
  ModalSandboxConfigLanguage,
@@ -402,6 +403,8 @@ from .templates import (
402
403
  TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables,
403
404
  TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariablesDataItem,
404
405
  TemplatesGetTemplateSnapshotResponseAgentsItemProperties,
406
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort,
407
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel,
405
408
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem,
406
409
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemChildOutputMapping,
407
410
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemFive,
@@ -689,6 +692,7 @@ __all__ = [
689
692
  "MessageCreateContent",
690
693
  "MessageCreateRole",
691
694
  "MessageRole",
695
+ "MessageSearchResult",
692
696
  "MessageType",
693
697
  "ModalSandboxConfig",
694
698
  "ModalSandboxConfigLanguage",
@@ -776,6 +780,8 @@ __all__ = [
776
780
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables",
777
781
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariablesDataItem",
778
782
  "TemplatesGetTemplateSnapshotResponseAgentsItemProperties",
783
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort",
784
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel",
779
785
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem",
780
786
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemChildOutputMapping",
781
787
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemFive",
@@ -35,6 +35,7 @@ from .memory_variables import MemoryVariablesListResponse
35
35
  from .messages import (
36
36
  LettaAsyncRequestMessagesItem,
37
37
  LettaStreamingResponse,
38
+ MessageSearchRequestSearchMode,
38
39
  MessagesModifyRequest,
39
40
  MessagesModifyResponse,
40
41
  MessagesPreviewRawPayloadRequest,
@@ -57,6 +58,7 @@ __all__ = [
57
58
  "LettaAsyncRequestMessagesItem",
58
59
  "LettaStreamingResponse",
59
60
  "MemoryVariablesListResponse",
61
+ "MessageSearchRequestSearchMode",
60
62
  "MessagesModifyRequest",
61
63
  "MessagesModifyResponse",
62
64
  "MessagesPreviewRawPayloadRequest",
@@ -5,6 +5,7 @@
5
5
  from .types import (
6
6
  LettaAsyncRequestMessagesItem,
7
7
  LettaStreamingResponse,
8
+ MessageSearchRequestSearchMode,
8
9
  MessagesModifyRequest,
9
10
  MessagesModifyResponse,
10
11
  MessagesPreviewRawPayloadRequest,
@@ -13,6 +14,7 @@ from .types import (
13
14
  __all__ = [
14
15
  "LettaAsyncRequestMessagesItem",
15
16
  "LettaStreamingResponse",
17
+ "MessageSearchRequestSearchMode",
16
18
  "MessagesModifyRequest",
17
19
  "MessagesModifyResponse",
18
20
  "MessagesPreviewRawPayloadRequest",
@@ -1,5 +1,6 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
+ import datetime as dt
3
4
  import typing
4
5
 
5
6
  from ...core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
@@ -9,11 +10,14 @@ from ...types.letta_message_union import LettaMessageUnion
9
10
  from ...types.letta_request_messages_item import LettaRequestMessagesItem
10
11
  from ...types.letta_response import LettaResponse
11
12
  from ...types.letta_streaming_request_messages_item import LettaStreamingRequestMessagesItem
13
+ from ...types.message_role import MessageRole
14
+ from ...types.message_search_result import MessageSearchResult
12
15
  from ...types.message_type import MessageType
13
16
  from ...types.run import Run
14
17
  from .raw_client import AsyncRawMessagesClient, RawMessagesClient
15
18
  from .types.letta_async_request_messages_item import LettaAsyncRequestMessagesItem
16
19
  from .types.letta_streaming_response import LettaStreamingResponse
20
+ from .types.message_search_request_search_mode import MessageSearchRequestSearchMode
17
21
  from .types.messages_modify_request import MessagesModifyRequest
18
22
  from .types.messages_modify_response import MessagesModifyResponse
19
23
  from .types.messages_preview_raw_payload_request import MessagesPreviewRawPayloadRequest
@@ -392,6 +396,77 @@ class MessagesClient:
392
396
  _response = self._raw_client.cancel(agent_id, run_ids=run_ids, request_options=request_options)
393
397
  return _response.data
394
398
 
399
+ def search(
400
+ self,
401
+ *,
402
+ query_text: typing.Optional[str] = OMIT,
403
+ search_mode: typing.Optional[MessageSearchRequestSearchMode] = OMIT,
404
+ roles: typing.Optional[typing.Sequence[MessageRole]] = OMIT,
405
+ project_id: typing.Optional[str] = OMIT,
406
+ limit: typing.Optional[int] = OMIT,
407
+ start_date: typing.Optional[dt.datetime] = OMIT,
408
+ end_date: typing.Optional[dt.datetime] = OMIT,
409
+ request_options: typing.Optional[RequestOptions] = None,
410
+ ) -> typing.List[MessageSearchResult]:
411
+ """
412
+ Search messages across the entire organization with optional project filtering.
413
+ Returns messages with FTS/vector ranks and total RRF score.
414
+
415
+ Requires message embedding and Turbopuffer to be enabled.
416
+
417
+ Parameters
418
+ ----------
419
+ query_text : typing.Optional[str]
420
+ Text query for full-text search
421
+
422
+ search_mode : typing.Optional[MessageSearchRequestSearchMode]
423
+ Search mode to use
424
+
425
+ roles : typing.Optional[typing.Sequence[MessageRole]]
426
+ Filter messages by role
427
+
428
+ project_id : typing.Optional[str]
429
+ Filter messages by project ID
430
+
431
+ limit : typing.Optional[int]
432
+ Maximum number of results to return
433
+
434
+ start_date : typing.Optional[dt.datetime]
435
+ Filter messages created after this date
436
+
437
+ end_date : typing.Optional[dt.datetime]
438
+ Filter messages created on or before this date
439
+
440
+ request_options : typing.Optional[RequestOptions]
441
+ Request-specific configuration.
442
+
443
+ Returns
444
+ -------
445
+ typing.List[MessageSearchResult]
446
+ Successful Response
447
+
448
+ Examples
449
+ --------
450
+ from letta_client import Letta
451
+
452
+ client = Letta(
453
+ project="YOUR_PROJECT",
454
+ token="YOUR_TOKEN",
455
+ )
456
+ client.agents.messages.search()
457
+ """
458
+ _response = self._raw_client.search(
459
+ query_text=query_text,
460
+ search_mode=search_mode,
461
+ roles=roles,
462
+ project_id=project_id,
463
+ limit=limit,
464
+ start_date=start_date,
465
+ end_date=end_date,
466
+ request_options=request_options,
467
+ )
468
+ return _response.data
469
+
395
470
  def create_async(
396
471
  self,
397
472
  agent_id: str,
@@ -996,6 +1071,85 @@ class AsyncMessagesClient:
996
1071
  _response = await self._raw_client.cancel(agent_id, run_ids=run_ids, request_options=request_options)
997
1072
  return _response.data
998
1073
 
1074
+ async def search(
1075
+ self,
1076
+ *,
1077
+ query_text: typing.Optional[str] = OMIT,
1078
+ search_mode: typing.Optional[MessageSearchRequestSearchMode] = OMIT,
1079
+ roles: typing.Optional[typing.Sequence[MessageRole]] = OMIT,
1080
+ project_id: typing.Optional[str] = OMIT,
1081
+ limit: typing.Optional[int] = OMIT,
1082
+ start_date: typing.Optional[dt.datetime] = OMIT,
1083
+ end_date: typing.Optional[dt.datetime] = OMIT,
1084
+ request_options: typing.Optional[RequestOptions] = None,
1085
+ ) -> typing.List[MessageSearchResult]:
1086
+ """
1087
+ Search messages across the entire organization with optional project filtering.
1088
+ Returns messages with FTS/vector ranks and total RRF score.
1089
+
1090
+ Requires message embedding and Turbopuffer to be enabled.
1091
+
1092
+ Parameters
1093
+ ----------
1094
+ query_text : typing.Optional[str]
1095
+ Text query for full-text search
1096
+
1097
+ search_mode : typing.Optional[MessageSearchRequestSearchMode]
1098
+ Search mode to use
1099
+
1100
+ roles : typing.Optional[typing.Sequence[MessageRole]]
1101
+ Filter messages by role
1102
+
1103
+ project_id : typing.Optional[str]
1104
+ Filter messages by project ID
1105
+
1106
+ limit : typing.Optional[int]
1107
+ Maximum number of results to return
1108
+
1109
+ start_date : typing.Optional[dt.datetime]
1110
+ Filter messages created after this date
1111
+
1112
+ end_date : typing.Optional[dt.datetime]
1113
+ Filter messages created on or before this date
1114
+
1115
+ request_options : typing.Optional[RequestOptions]
1116
+ Request-specific configuration.
1117
+
1118
+ Returns
1119
+ -------
1120
+ typing.List[MessageSearchResult]
1121
+ Successful Response
1122
+
1123
+ Examples
1124
+ --------
1125
+ import asyncio
1126
+
1127
+ from letta_client import AsyncLetta
1128
+
1129
+ client = AsyncLetta(
1130
+ project="YOUR_PROJECT",
1131
+ token="YOUR_TOKEN",
1132
+ )
1133
+
1134
+
1135
+ async def main() -> None:
1136
+ await client.agents.messages.search()
1137
+
1138
+
1139
+ asyncio.run(main())
1140
+ """
1141
+ _response = await self._raw_client.search(
1142
+ query_text=query_text,
1143
+ search_mode=search_mode,
1144
+ roles=roles,
1145
+ project_id=project_id,
1146
+ limit=limit,
1147
+ start_date=start_date,
1148
+ end_date=end_date,
1149
+ request_options=request_options,
1150
+ )
1151
+ return _response.data
1152
+
999
1153
  async def create_async(
1000
1154
  self,
1001
1155
  agent_id: str,
@@ -1,6 +1,7 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  import contextlib
4
+ import datetime as dt
4
5
  import json
5
6
  import typing
6
7
  from json.decoder import JSONDecodeError
@@ -20,10 +21,13 @@ from ...types.letta_message_union import LettaMessageUnion
20
21
  from ...types.letta_request_messages_item import LettaRequestMessagesItem
21
22
  from ...types.letta_response import LettaResponse
22
23
  from ...types.letta_streaming_request_messages_item import LettaStreamingRequestMessagesItem
24
+ from ...types.message_role import MessageRole
25
+ from ...types.message_search_result import MessageSearchResult
23
26
  from ...types.message_type import MessageType
24
27
  from ...types.run import Run
25
28
  from .types.letta_async_request_messages_item import LettaAsyncRequestMessagesItem
26
29
  from .types.letta_streaming_response import LettaStreamingResponse
30
+ from .types.message_search_request_search_mode import MessageSearchRequestSearchMode
27
31
  from .types.messages_modify_request import MessagesModifyRequest
28
32
  from .types.messages_modify_response import MessagesModifyResponse
29
33
  from .types.messages_preview_raw_payload_request import MessagesPreviewRawPayloadRequest
@@ -487,6 +491,99 @@ class RawMessagesClient:
487
491
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
488
492
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
489
493
 
494
+ def search(
495
+ self,
496
+ *,
497
+ query_text: typing.Optional[str] = OMIT,
498
+ search_mode: typing.Optional[MessageSearchRequestSearchMode] = OMIT,
499
+ roles: typing.Optional[typing.Sequence[MessageRole]] = OMIT,
500
+ project_id: typing.Optional[str] = OMIT,
501
+ limit: typing.Optional[int] = OMIT,
502
+ start_date: typing.Optional[dt.datetime] = OMIT,
503
+ end_date: typing.Optional[dt.datetime] = OMIT,
504
+ request_options: typing.Optional[RequestOptions] = None,
505
+ ) -> HttpResponse[typing.List[MessageSearchResult]]:
506
+ """
507
+ Search messages across the entire organization with optional project filtering.
508
+ Returns messages with FTS/vector ranks and total RRF score.
509
+
510
+ Requires message embedding and Turbopuffer to be enabled.
511
+
512
+ Parameters
513
+ ----------
514
+ query_text : typing.Optional[str]
515
+ Text query for full-text search
516
+
517
+ search_mode : typing.Optional[MessageSearchRequestSearchMode]
518
+ Search mode to use
519
+
520
+ roles : typing.Optional[typing.Sequence[MessageRole]]
521
+ Filter messages by role
522
+
523
+ project_id : typing.Optional[str]
524
+ Filter messages by project ID
525
+
526
+ limit : typing.Optional[int]
527
+ Maximum number of results to return
528
+
529
+ start_date : typing.Optional[dt.datetime]
530
+ Filter messages created after this date
531
+
532
+ end_date : typing.Optional[dt.datetime]
533
+ Filter messages created on or before this date
534
+
535
+ request_options : typing.Optional[RequestOptions]
536
+ Request-specific configuration.
537
+
538
+ Returns
539
+ -------
540
+ HttpResponse[typing.List[MessageSearchResult]]
541
+ Successful Response
542
+ """
543
+ _response = self._client_wrapper.httpx_client.request(
544
+ "v1/agents/messages/search",
545
+ method="POST",
546
+ json={
547
+ "query_text": query_text,
548
+ "search_mode": search_mode,
549
+ "roles": roles,
550
+ "project_id": project_id,
551
+ "limit": limit,
552
+ "start_date": start_date,
553
+ "end_date": end_date,
554
+ },
555
+ headers={
556
+ "content-type": "application/json",
557
+ },
558
+ request_options=request_options,
559
+ omit=OMIT,
560
+ )
561
+ try:
562
+ if 200 <= _response.status_code < 300:
563
+ _data = typing.cast(
564
+ typing.List[MessageSearchResult],
565
+ construct_type(
566
+ type_=typing.List[MessageSearchResult], # type: ignore
567
+ object_=_response.json(),
568
+ ),
569
+ )
570
+ return HttpResponse(response=_response, data=_data)
571
+ if _response.status_code == 422:
572
+ raise UnprocessableEntityError(
573
+ headers=dict(_response.headers),
574
+ body=typing.cast(
575
+ HttpValidationError,
576
+ construct_type(
577
+ type_=HttpValidationError, # type: ignore
578
+ object_=_response.json(),
579
+ ),
580
+ ),
581
+ )
582
+ _response_json = _response.json()
583
+ except JSONDecodeError:
584
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
585
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
586
+
490
587
  def create_async(
491
588
  self,
492
589
  agent_id: str,
@@ -1172,6 +1269,99 @@ class AsyncRawMessagesClient:
1172
1269
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
1173
1270
  raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
1174
1271
 
1272
+ async def search(
1273
+ self,
1274
+ *,
1275
+ query_text: typing.Optional[str] = OMIT,
1276
+ search_mode: typing.Optional[MessageSearchRequestSearchMode] = OMIT,
1277
+ roles: typing.Optional[typing.Sequence[MessageRole]] = OMIT,
1278
+ project_id: typing.Optional[str] = OMIT,
1279
+ limit: typing.Optional[int] = OMIT,
1280
+ start_date: typing.Optional[dt.datetime] = OMIT,
1281
+ end_date: typing.Optional[dt.datetime] = OMIT,
1282
+ request_options: typing.Optional[RequestOptions] = None,
1283
+ ) -> AsyncHttpResponse[typing.List[MessageSearchResult]]:
1284
+ """
1285
+ Search messages across the entire organization with optional project filtering.
1286
+ Returns messages with FTS/vector ranks and total RRF score.
1287
+
1288
+ Requires message embedding and Turbopuffer to be enabled.
1289
+
1290
+ Parameters
1291
+ ----------
1292
+ query_text : typing.Optional[str]
1293
+ Text query for full-text search
1294
+
1295
+ search_mode : typing.Optional[MessageSearchRequestSearchMode]
1296
+ Search mode to use
1297
+
1298
+ roles : typing.Optional[typing.Sequence[MessageRole]]
1299
+ Filter messages by role
1300
+
1301
+ project_id : typing.Optional[str]
1302
+ Filter messages by project ID
1303
+
1304
+ limit : typing.Optional[int]
1305
+ Maximum number of results to return
1306
+
1307
+ start_date : typing.Optional[dt.datetime]
1308
+ Filter messages created after this date
1309
+
1310
+ end_date : typing.Optional[dt.datetime]
1311
+ Filter messages created on or before this date
1312
+
1313
+ request_options : typing.Optional[RequestOptions]
1314
+ Request-specific configuration.
1315
+
1316
+ Returns
1317
+ -------
1318
+ AsyncHttpResponse[typing.List[MessageSearchResult]]
1319
+ Successful Response
1320
+ """
1321
+ _response = await self._client_wrapper.httpx_client.request(
1322
+ "v1/agents/messages/search",
1323
+ method="POST",
1324
+ json={
1325
+ "query_text": query_text,
1326
+ "search_mode": search_mode,
1327
+ "roles": roles,
1328
+ "project_id": project_id,
1329
+ "limit": limit,
1330
+ "start_date": start_date,
1331
+ "end_date": end_date,
1332
+ },
1333
+ headers={
1334
+ "content-type": "application/json",
1335
+ },
1336
+ request_options=request_options,
1337
+ omit=OMIT,
1338
+ )
1339
+ try:
1340
+ if 200 <= _response.status_code < 300:
1341
+ _data = typing.cast(
1342
+ typing.List[MessageSearchResult],
1343
+ construct_type(
1344
+ type_=typing.List[MessageSearchResult], # type: ignore
1345
+ object_=_response.json(),
1346
+ ),
1347
+ )
1348
+ return AsyncHttpResponse(response=_response, data=_data)
1349
+ if _response.status_code == 422:
1350
+ raise UnprocessableEntityError(
1351
+ headers=dict(_response.headers),
1352
+ body=typing.cast(
1353
+ HttpValidationError,
1354
+ construct_type(
1355
+ type_=HttpValidationError, # type: ignore
1356
+ object_=_response.json(),
1357
+ ),
1358
+ ),
1359
+ )
1360
+ _response_json = _response.json()
1361
+ except JSONDecodeError:
1362
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
1363
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
1364
+
1175
1365
  async def create_async(
1176
1366
  self,
1177
1367
  agent_id: str,
@@ -4,6 +4,7 @@
4
4
 
5
5
  from .letta_async_request_messages_item import LettaAsyncRequestMessagesItem
6
6
  from .letta_streaming_response import LettaStreamingResponse
7
+ from .message_search_request_search_mode import MessageSearchRequestSearchMode
7
8
  from .messages_modify_request import MessagesModifyRequest
8
9
  from .messages_modify_response import MessagesModifyResponse
9
10
  from .messages_preview_raw_payload_request import MessagesPreviewRawPayloadRequest
@@ -11,6 +12,7 @@ from .messages_preview_raw_payload_request import MessagesPreviewRawPayloadReque
11
12
  __all__ = [
12
13
  "LettaAsyncRequestMessagesItem",
13
14
  "LettaStreamingResponse",
15
+ "MessageSearchRequestSearchMode",
14
16
  "MessagesModifyRequest",
15
17
  "MessagesModifyResponse",
16
18
  "MessagesPreviewRawPayloadRequest",
@@ -2,7 +2,10 @@
2
2
 
3
3
  import typing
4
4
 
5
+ from ....types.approval_request_message import ApprovalRequestMessage
6
+ from ....types.approval_response_message import ApprovalResponseMessage
5
7
  from ....types.assistant_message import AssistantMessage
8
+ from ....types.hidden_reasoning_message import HiddenReasoningMessage
6
9
  from ....types.letta_ping import LettaPing
7
10
  from ....types.letta_stop_reason import LettaStopReason
8
11
  from ....types.letta_usage_statistics import LettaUsageStatistics
@@ -16,9 +19,12 @@ LettaStreamingResponse = typing.Union[
16
19
  SystemMessage,
17
20
  UserMessage,
18
21
  ReasoningMessage,
22
+ HiddenReasoningMessage,
19
23
  ToolCallMessage,
20
24
  ToolReturnMessage,
21
25
  AssistantMessage,
26
+ ApprovalRequestMessage,
27
+ ApprovalResponseMessage,
22
28
  LettaPing,
23
29
  LettaStopReason,
24
30
  LettaUsageStatistics,
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ MessageSearchRequestSearchMode = typing.Union[typing.Literal["vector", "fts", "hybrid"], typing.Any]
@@ -24,10 +24,10 @@ class BaseClientWrapper:
24
24
 
25
25
  def get_headers(self) -> typing.Dict[str, str]:
26
26
  headers: typing.Dict[str, str] = {
27
- "User-Agent": "letta-client/0.1.312",
27
+ "User-Agent": "letta-client/0.1.314",
28
28
  "X-Fern-Language": "Python",
29
29
  "X-Fern-SDK-Name": "letta-client",
30
- "X-Fern-SDK-Version": "0.1.312",
30
+ "X-Fern-SDK-Version": "0.1.314",
31
31
  **(self.get_custom_headers() or {}),
32
32
  }
33
33
  if self._project is not None:
@@ -15,6 +15,8 @@ from .types import (
15
15
  TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables,
16
16
  TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariablesDataItem,
17
17
  TemplatesGetTemplateSnapshotResponseAgentsItemProperties,
18
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort,
19
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel,
18
20
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem,
19
21
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemChildOutputMapping,
20
22
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemFive,
@@ -62,6 +64,8 @@ __all__ = [
62
64
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables",
63
65
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariablesDataItem",
64
66
  "TemplatesGetTemplateSnapshotResponseAgentsItemProperties",
67
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort",
68
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel",
65
69
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem",
66
70
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemChildOutputMapping",
67
71
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemFive",
@@ -22,6 +22,12 @@ from .templates_get_template_snapshot_response_agents_item_memory_variables_data
22
22
  from .templates_get_template_snapshot_response_agents_item_properties import (
23
23
  TemplatesGetTemplateSnapshotResponseAgentsItemProperties,
24
24
  )
25
+ from .templates_get_template_snapshot_response_agents_item_properties_reasoning_effort import (
26
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort,
27
+ )
28
+ from .templates_get_template_snapshot_response_agents_item_properties_verbosity_level import (
29
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel,
30
+ )
25
31
  from .templates_get_template_snapshot_response_agents_item_tool_rules_item import (
26
32
  TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem,
27
33
  )
@@ -83,6 +89,8 @@ __all__ = [
83
89
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables",
84
90
  "TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariablesDataItem",
85
91
  "TemplatesGetTemplateSnapshotResponseAgentsItemProperties",
92
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort",
93
+ "TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel",
86
94
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItem",
87
95
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemChildOutputMapping",
88
96
  "TemplatesGetTemplateSnapshotResponseAgentsItemToolRulesItemFive",
@@ -29,7 +29,6 @@ class TemplatesGetTemplateSnapshotResponseAgentsItem(UncheckedBaseModel):
29
29
  system_prompt: typing_extensions.Annotated[str, FieldMetadata(alias="systemPrompt")]
30
30
  tool_ids: typing_extensions.Annotated[typing.Optional[typing.List[str]], FieldMetadata(alias="toolIds")] = None
31
31
  source_ids: typing_extensions.Annotated[typing.Optional[typing.List[str]], FieldMetadata(alias="sourceIds")] = None
32
- properties: typing.Optional[TemplatesGetTemplateSnapshotResponseAgentsItemProperties] = None
33
32
  memory_variables: typing_extensions.Annotated[
34
33
  typing.Optional[TemplatesGetTemplateSnapshotResponseAgentsItemMemoryVariables],
35
34
  FieldMetadata(alias="memoryVariables"),
@@ -49,6 +48,7 @@ class TemplatesGetTemplateSnapshotResponseAgentsItem(UncheckedBaseModel):
49
48
  agent_type: typing_extensions.Annotated[
50
49
  TemplatesGetTemplateSnapshotResponseAgentsItemAgentType, FieldMetadata(alias="agentType")
51
50
  ]
51
+ properties: typing.Optional[TemplatesGetTemplateSnapshotResponseAgentsItemProperties] = None
52
52
  entity_id: typing_extensions.Annotated[str, FieldMetadata(alias="entityId")]
53
53
  name: str
54
54
 
@@ -5,6 +5,12 @@ import typing
5
5
  import pydantic
6
6
  from ...core.pydantic_utilities import IS_PYDANTIC_V2
7
7
  from ...core.unchecked_base_model import UncheckedBaseModel
8
+ from .templates_get_template_snapshot_response_agents_item_properties_reasoning_effort import (
9
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort,
10
+ )
11
+ from .templates_get_template_snapshot_response_agents_item_properties_verbosity_level import (
12
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel,
13
+ )
8
14
 
9
15
 
10
16
  class TemplatesGetTemplateSnapshotResponseAgentsItemProperties(UncheckedBaseModel):
@@ -15,6 +21,8 @@ class TemplatesGetTemplateSnapshotResponseAgentsItemProperties(UncheckedBaseMode
15
21
  max_reasoning_tokens: typing.Optional[float] = None
16
22
  max_files_open: typing.Optional[float] = None
17
23
  message_buffer_autoclear: typing.Optional[bool] = None
24
+ verbosity_level: typing.Optional[TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel] = None
25
+ reasoning_effort: typing.Optional[TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort] = None
18
26
  per_file_view_window_char_limit: typing.Optional[float] = None
19
27
  temperature: typing.Optional[float] = None
20
28
 
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesReasoningEffort = typing.Union[
6
+ typing.Literal["minimal", "low", "medium", "high"], typing.Any
7
+ ]
@@ -0,0 +1,7 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ TemplatesGetTemplateSnapshotResponseAgentsItemPropertiesVerbosityLevel = typing.Union[
6
+ typing.Literal["low", "medium", "high"], typing.Any
7
+ ]
@@ -222,6 +222,7 @@ from .message_create import MessageCreate
222
222
  from .message_create_content import MessageCreateContent
223
223
  from .message_create_role import MessageCreateRole
224
224
  from .message_role import MessageRole
225
+ from .message_search_result import MessageSearchResult
225
226
  from .message_type import MessageType
226
227
  from .modal_sandbox_config import ModalSandboxConfig
227
228
  from .modal_sandbox_config_language import ModalSandboxConfigLanguage
@@ -564,6 +565,7 @@ __all__ = [
564
565
  "MessageCreateContent",
565
566
  "MessageCreateRole",
566
567
  "MessageRole",
568
+ "MessageSearchResult",
567
569
  "MessageType",
568
570
  "ModalSandboxConfig",
569
571
  "ModalSandboxConfigLanguage",
@@ -0,0 +1,53 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2
7
+ from ..core.unchecked_base_model import UncheckedBaseModel
8
+ from .message import Message
9
+
10
+
11
+ class MessageSearchResult(UncheckedBaseModel):
12
+ """
13
+ Result from a message search operation with scoring details.
14
+ """
15
+
16
+ message: Message = pydantic.Field()
17
+ """
18
+ The message content and metadata
19
+ """
20
+
21
+ fts_score: typing.Optional[float] = pydantic.Field(default=None)
22
+ """
23
+ Full-text search (BM25) score if FTS was used
24
+ """
25
+
26
+ fts_rank: typing.Optional[int] = pydantic.Field(default=None)
27
+ """
28
+ Full-text search rank position if FTS was used
29
+ """
30
+
31
+ vector_score: typing.Optional[float] = pydantic.Field(default=None)
32
+ """
33
+ Vector similarity score if vector search was used
34
+ """
35
+
36
+ vector_rank: typing.Optional[int] = pydantic.Field(default=None)
37
+ """
38
+ Vector search rank position if vector search was used
39
+ """
40
+
41
+ rrf_score: float = pydantic.Field()
42
+ """
43
+ Reciprocal Rank Fusion combined score
44
+ """
45
+
46
+ if IS_PYDANTIC_V2:
47
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
48
+ else:
49
+
50
+ class Config:
51
+ frozen = True
52
+ smart_union = True
53
+ extra = pydantic.Extra.allow
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: letta-client
3
- Version: 0.1.312
3
+ Version: 0.1.314
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -1,5 +1,5 @@
1
- letta_client/__init__.py,sha256=xc0nY1n5HLlX3pzH-xIvxHYTuY97N9uOrqb2E9Zo2hc,28359
2
- letta_client/agents/__init__.py,sha256=6U2CPqYOtgufFoEhev61AzE-oOqgAQPUBsN8H7YJDbg,2081
1
+ letta_client/__init__.py,sha256=xVk8XpgqmLkPJq28-9hbWxQWWUdZV_kzskon96aXL4U,28721
2
+ letta_client/agents/__init__.py,sha256=x8YVMGnw7j4xJbQzhAHXqqgXIPdCMEDUeLRh9rM58X0,2155
3
3
  letta_client/agents/blocks/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
4
4
  letta_client/agents/blocks/client.py,sha256=WAKaFGx76QqDG1Ygd2hlvyXHTjV-ObjnvQSMKK6h1SM,16143
5
5
  letta_client/agents/blocks/raw_client.py,sha256=sYWCzx2HRrBsCt4XUW3fVsoQodqzGyg1d_Atl6WxUqw,25918
@@ -24,12 +24,13 @@ letta_client/agents/memory_variables/client.py,sha256=VfK4O6mBEuA9mDb_sj5ed9e2Ng
24
24
  letta_client/agents/memory_variables/raw_client.py,sha256=lwWJQlKh4InQgrCH8iHPBwHweda7fxcNpXFWUhzg980,4887
25
25
  letta_client/agents/memory_variables/types/__init__.py,sha256=r_Wc0Jjyp1_Y2qC_eWsabWx1sTwoxAaV1s24y8Ep_Zg,200
26
26
  letta_client/agents/memory_variables/types/memory_variables_list_response.py,sha256=iAXAqp-J0fnyUK4MMa3PMrYwqQfbui3tiaWaWR9_O5M,600
27
- letta_client/agents/messages/__init__.py,sha256=QSgqQ3MhwsMPIMxD_xAKVK8zRrjb56LR33wTG_SVDIY,445
28
- letta_client/agents/messages/client.py,sha256=vBMNxqc43blNJursqzxewWxZMR-Su0bdIPhGUrEuB8o,40443
29
- letta_client/agents/messages/raw_client.py,sha256=PFmgjAHmMIWR761hmSKU-WlhbNs9X4DbuTYGwjF84HI,58434
30
- letta_client/agents/messages/types/__init__.py,sha256=h2f7Jwr7hrN7Bw6P5LZMl0MR5B5tMlSeLBJ3Ozh6uKg,607
27
+ letta_client/agents/messages/__init__.py,sha256=OWSbjQMJlLna4RpJoXxq4dKN2YJRH7NuEQxl0Sl-toU,519
28
+ letta_client/agents/messages/client.py,sha256=bAHEOfHKmnzjW6eR6qJh01lSQkGhGrEX5bPI2z1w04w,45349
29
+ letta_client/agents/messages/raw_client.py,sha256=nikcTfLZEKZNgflYGOUDWQI4Sr2eCna6InyRiamWZRI,65765
30
+ letta_client/agents/messages/types/__init__.py,sha256=itQ-0df1o88BKQcEHGQXfRXY1AWyxs8ozMft2rbRXfk,724
31
31
  letta_client/agents/messages/types/letta_async_request_messages_item.py,sha256=ENCLYOoBskZ23fPYAc5UKEa2CH9_k8UWWp-l-92PFIE,261
32
- letta_client/agents/messages/types/letta_streaming_response.py,sha256=TEqXH71L621ToSXJpmJk8QUJE71QhXuZOVk4AMeWgFc,801
32
+ letta_client/agents/messages/types/letta_streaming_response.py,sha256=iFM3SiYzMLSTzyZpxKZ0kUQdl3CcuVtiQZ5FzCCagQw,1098
33
+ letta_client/agents/messages/types/message_search_request_search_mode.py,sha256=cL7pBQFMvHN3WWZ7qF0lL7JUIHmdyOGXG7_JLo_2vus,181
33
34
  letta_client/agents/messages/types/messages_modify_request.py,sha256=0NT3pgbqQItc_p5cjBl4MaJ6bIMAlMhvdBJWm9zilpQ,476
34
35
  letta_client/agents/messages/types/messages_modify_response.py,sha256=0nbkp7q7iaM2esLkdmIe0CYpJWY6LYtR3V-WkKaAy-g,871
35
36
  letta_client/agents/messages/types/messages_preview_raw_payload_request.py,sha256=ncI14H-30FLJujezUyk2yS7Jfqf7TqqhcWejWXQ4pcE,283
@@ -92,7 +93,7 @@ letta_client/client_side_access_tokens/types/client_side_access_tokens_list_clie
92
93
  letta_client/client_side_access_tokens/types/client_side_access_tokens_list_client_side_access_tokens_response_tokens_item_policy_data_item_access_item.py,sha256=kNHfEWFl7u71Pu8NPqutod0a2NXfvq8il05Hqm0iBB4,284
93
94
  letta_client/core/__init__.py,sha256=tpn7rjb6C2UIkYZYIqdrNpI7Yax2jw88sXh2baxaxAI,1715
94
95
  letta_client/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
95
- letta_client/core/client_wrapper.py,sha256=zkros2oImaRFhnK1GCuFEv0NLLHvDujI-xPagf-jgK4,2776
96
+ letta_client/core/client_wrapper.py,sha256=p8qQUjt-zg_VGDZtN0eYhDucwVo9J_0p7_kmeNwM27A,2776
96
97
  letta_client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
97
98
  letta_client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
98
99
  letta_client/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
@@ -202,7 +203,7 @@ letta_client/tags/raw_client.py,sha256=DQXEgzOuCygBMbzX63Sc9UwfueALa5rUHH3c8jb4O
202
203
  letta_client/telemetry/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
203
204
  letta_client/telemetry/client.py,sha256=cHMxfLAFjbT-XLtG0o04tGMaRnabrPuixbfHV3HFitE,3042
204
205
  letta_client/telemetry/raw_client.py,sha256=Zxs3KkYCfs6M1b4vJbzHunZs7SzSiYAiy4Nb7tFAKC8,4962
205
- letta_client/templates/__init__.py,sha256=A-h3ZYJPXZsRGvUdk9UrSOir_NawVjkqLVXoeX_noxI,4372
206
+ letta_client/templates/__init__.py,sha256=7E76rDOImcC6BhfVl7ZwG_Oh9-WjqED7VPourui2h84,4682
206
207
  letta_client/templates/agents/__init__.py,sha256=Nb3AeDuJhSba_DbgHKuCUY1b3PT1jj3-YMJ7uW7RIAk,393
207
208
  letta_client/templates/agents/client.py,sha256=HCCEZZ3b0tGonxDNbiPuXadoZu_x1G_OtBdTHRBpG4M,7088
208
209
  letta_client/templates/agents/raw_client.py,sha256=RGf_8ZaBbkS3sE7qrKqirL8Mu-E7CDRZNEKFWCJ3v4E,9552
@@ -212,7 +213,7 @@ letta_client/templates/agents/types/agents_create_request_initial_message_sequen
212
213
  letta_client/templates/agents/types/agents_create_response.py,sha256=P5sppbD_qW7I9suv5Ykm7tlgnh5a3omYggA8JgLw2RY,637
213
214
  letta_client/templates/client.py,sha256=cUyfi2AqglBR8JvDzyV43znUmQnwyOdq3lrWPElTKsQ,30714
214
215
  letta_client/templates/raw_client.py,sha256=U9x3mGpgptDFm2sbHri4o4yB3pPLFCoCeVP9XK18IFk,50697
215
- letta_client/templates/types/__init__.py,sha256=Joib6wxgIzQ4cmKKD2In6Ts8iF8YuCtyrdX0pN0Izuo,6428
216
+ letta_client/templates/types/__init__.py,sha256=Aotx8x-ziOxUyuEsHOtZJDcZk2rQNQlObt2k0goEOTo,6933
216
217
  letta_client/templates/types/templates_create_template_request.py,sha256=8Po-a33Bdyosx-Y08cnbTmmHYog7GJC--ZcZse5Opkk,405
217
218
  letta_client/templates/types/templates_create_template_request_agent_file.py,sha256=LVlJq2JWT9Bgo3BPRcLaf5inWX034SvEOEd4fkM4gvg,1058
218
219
  letta_client/templates/types/templates_create_template_request_agent_id.py,sha256=M5MG3wNcbGHZR2Z-zxwgj9PA03VkKB8gTGmZQwuApuM,972
@@ -220,11 +221,13 @@ letta_client/templates/types/templates_create_template_response.py,sha256=UKaNiw
220
221
  letta_client/templates/types/templates_delete_template_response.py,sha256=_DUyWh9jtgw8u_U_JsV8N-RhPcY32QLAQZsUCSXDCTY,583
221
222
  letta_client/templates/types/templates_fork_template_response.py,sha256=zX8aCR5Z8sEgXJHHzxsPeYRNMW2HfD26EN5Mlwrt-ZI,1080
222
223
  letta_client/templates/types/templates_get_template_snapshot_response.py,sha256=75kEOy6l8d1uboqVYHbOWUHk6Ij8pzQ_TmmEe5wEf0c,1295
223
- letta_client/templates/types/templates_get_template_snapshot_response_agents_item.py,sha256=yRPXQ1XtubMo277RjQFhdD1oI1PqkOUaUfC8HIj_rJg,2858
224
+ letta_client/templates/types/templates_get_template_snapshot_response_agents_item.py,sha256=eW6CAfX5o1LfSLKSQTuUYhQ4k93noNp1m_2zFmUmGN8,2858
224
225
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_agent_type.py,sha256=CXbLqt2S21b9bg_wo8r__g-CchjLQ2FqZ7WN-cJAGm8,416
225
226
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_memory_variables.py,sha256=POh1PTstz0UC_rOnkpEyIQI0yHrANeM6Y5vuJlJAruU,877
226
227
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_memory_variables_data_item.py,sha256=TNgE_92wCm2MEGERb_q24_GKzvbh1z1I3pchuwowowA,816
227
- letta_client/templates/types/templates_get_template_snapshot_response_agents_item_properties.py,sha256=9s-Abzd4QfGjeOyzrdwrPLad4mZx7z4cvX7aOKbeyHs,1084
228
+ letta_client/templates/types/templates_get_template_snapshot_response_agents_item_properties.py,sha256=Z_1C30tZ5BC7RgMuBLI8ghD5CuBjrmH3OZZjcjwWcR0,1666
229
+ letta_client/templates/types/templates_get_template_snapshot_response_agents_item_properties_reasoning_effort.py,sha256=lSGLEnRRVLHD4l3TecUlLBylCcxSNOz4XDBta4EEflk,237
230
+ letta_client/templates/types/templates_get_template_snapshot_response_agents_item_properties_verbosity_level.py,sha256=k2dOi8RIfUpvYLNCulXbvQTQlJQy58E5-M6YlPZTFVw,225
228
231
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_tool_rules_item.py,sha256=_fQY5-2x_-A0v5hho_jRUeZrvowovjuzVy9ZHlGST0w,2321
229
232
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_tool_rules_item_child_output_mapping.py,sha256=LLnaNqnXFnoLRTZo2O9nCFlkLTkdj2Re1h6ItsM-_RQ,895
230
233
  letta_client/templates/types/templates_get_template_snapshot_response_agents_item_tool_rules_item_five.py,sha256=6yyJTWEoTy6UVFHqqzbvfY_i1VmWLuZVaRBWU8EbKx8,738
@@ -262,7 +265,7 @@ letta_client/tools/types/streaming_response.py,sha256=V1qT-XAqm-z7zffJ7W1JKPCaxZ
262
265
  letta_client/tools/types/test_mcp_server_request.py,sha256=3SqjEL3EYi7iV57TjTIzuBSKv8O3Y7qSUFrCiXEvSRk,373
263
266
  letta_client/tools/types/update_mcp_server_request.py,sha256=MHouV3iyZCTROguOQP5rOYvnmvDbBeXe5VtEejRvrEs,403
264
267
  letta_client/tools/types/update_mcp_server_response.py,sha256=BJTPHWkb8hwgd4FvftQ8eZjl2QzCQT-vZAUVnLft9hw,376
265
- letta_client/types/__init__.py,sha256=nWIk1pbnp4v0dKh4Bx2AeNmRBKnoXcC2DbCq0IUlrfI,31239
268
+ letta_client/types/__init__.py,sha256=WNTfaGQBg4c7sSq_ou-X4yADE2osm87D2v8gkf8683M,31321
266
269
  letta_client/types/action_model.py,sha256=VTXavHB6J2d4MjjTMEpkuEyVaiTHyj1FGfa4j8kN6hQ,1241
267
270
  letta_client/types/action_parameters_model.py,sha256=s1mJ4tycms8UmCFsxyjKr6RbghSuqv35xpa9mK42sjg,829
268
271
  letta_client/types/action_response_model.py,sha256=LcML150OvsKimVV3sP4jSFh8pVxQXn_r_ff8DADOr3c,825
@@ -475,6 +478,7 @@ letta_client/types/message_create.py,sha256=OCmj0ZZLk2v48I4w3vZOXAmt7tySBG6U0iYZ
475
478
  letta_client/types/message_create_content.py,sha256=pKppl-N8IdqR-ShWCZ0HN-3b13plPE2vSi6YcRM3w8o,227
476
479
  letta_client/types/message_create_role.py,sha256=PWbew2WtK-36P4d3Nuvq4QNLDAPntsGpasS_WzivyXg,172
477
480
  letta_client/types/message_role.py,sha256=Y9DhyB9tRNvRQvq2dvjrBzqDmM8SoWcK0mLpRUCCxmc,198
481
+ letta_client/types/message_search_result.py,sha256=KSWkG-9evo8IML5CKVQUU6A-0pfGICdRi6mMI7k4lTE,1411
478
482
  letta_client/types/message_type.py,sha256=QWldT6K922wmITVKdSbdIeGWZ6V-W5O2TdAsuRTHaBo,430
479
483
  letta_client/types/modal_sandbox_config.py,sha256=QBGbV1563_tr6Fep0uBy1oboERRQC-pl4mfZmyueIgc,1138
480
484
  letta_client/types/modal_sandbox_config_language.py,sha256=RHJmtMZwO-kcYqHIWFel0R2LwKZbAw19V-bhEUguDI0,174
@@ -593,6 +597,6 @@ letta_client/version.py,sha256=bttKLbIhO3UonCYQlqs600zzbQgfhCCMjeXR9WRzid4,79
593
597
  letta_client/voice/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
594
598
  letta_client/voice/client.py,sha256=EbIVOQh4HXqU9McATxwga08STk-HUwPEAUr_UHqyKHg,3748
595
599
  letta_client/voice/raw_client.py,sha256=KvM_3GXuSf51bubM0RVBnxvlf20qZTFMnaA_BzhXzjQ,5938
596
- letta_client-0.1.312.dist-info/METADATA,sha256=OLitUTP11ZbrDSrXK0Nfpw5b4_Et3vAK_B0SzDApXvg,5782
597
- letta_client-0.1.312.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
598
- letta_client-0.1.312.dist-info/RECORD,,
600
+ letta_client-0.1.314.dist-info/METADATA,sha256=nTThvx_pcSUWN4XMU_12lX6OXzEsz2XwTWG76VId4oQ,5782
601
+ letta_client-0.1.314.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
602
+ letta_client-0.1.314.dist-info/RECORD,,