letta-client 0.1.68__py3-none-any.whl → 0.1.70__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 +31 -3
- letta_client/agents/client.py +25 -24
- letta_client/core/client_wrapper.py +1 -1
- letta_client/tools/__init__.py +12 -2
- letta_client/tools/client.py +270 -2
- letta_client/tools/types/__init__.py +9 -1
- letta_client/tools/types/add_mcp_server_request.py +7 -0
- letta_client/tools/types/add_mcp_server_response_item.py +7 -0
- letta_client/tools/types/delete_mcp_server_response_item.py +7 -0
- letta_client/tools/types/list_mcp_servers_response_value.py +2 -2
- letta_client/types/__init__.py +22 -2
- letta_client/types/agent_schema.py +51 -0
- letta_client/types/core_memory_block_schema.py +33 -0
- letta_client/types/mcp_server_type.py +1 -1
- letta_client/types/message_schema.py +29 -0
- letta_client/types/parameter_properties.py +20 -0
- letta_client/types/parameters_schema.py +22 -0
- letta_client/types/{local_server_config.py → stdio_server_config.py} +6 -1
- letta_client/types/tag_schema.py +19 -0
- letta_client/types/tool_env_var_schema.py +24 -0
- letta_client/types/tool_json_schema.py +24 -0
- letta_client/types/tool_rule_schema.py +20 -0
- letta_client/types/tool_schema.py +31 -0
- {letta_client-0.1.68.dist-info → letta_client-0.1.70.dist-info}/METADATA +1 -1
- {letta_client-0.1.68.dist-info → letta_client-0.1.70.dist-info}/RECORD +26 -13
- {letta_client-0.1.68.dist-info → letta_client-0.1.70.dist-info}/WHEEL +0 -0
letta_client/__init__.py
CHANGED
|
@@ -5,6 +5,7 @@ from .types import (
|
|
|
5
5
|
ActionParametersModel,
|
|
6
6
|
ActionResponseModel,
|
|
7
7
|
AgentEnvironmentVariable,
|
|
8
|
+
AgentSchema,
|
|
8
9
|
AgentState,
|
|
9
10
|
AgentStateToolRulesItem,
|
|
10
11
|
AgentType,
|
|
@@ -73,6 +74,7 @@ from .types import (
|
|
|
73
74
|
ConflictErrorBody,
|
|
74
75
|
ContextWindowOverview,
|
|
75
76
|
ContinueToolRule,
|
|
77
|
+
CoreMemoryBlockSchema,
|
|
76
78
|
CreateBlock,
|
|
77
79
|
DynamicManager,
|
|
78
80
|
E2BSandboxConfig,
|
|
@@ -116,7 +118,6 @@ from .types import (
|
|
|
116
118
|
LlmConfig,
|
|
117
119
|
LlmConfigModelEndpointType,
|
|
118
120
|
LocalSandboxConfig,
|
|
119
|
-
LocalServerConfig,
|
|
120
121
|
ManagerType,
|
|
121
122
|
McpServerType,
|
|
122
123
|
McpTool,
|
|
@@ -126,6 +127,7 @@ from .types import (
|
|
|
126
127
|
MessageCreateContent,
|
|
127
128
|
MessageCreateRole,
|
|
128
129
|
MessageRole,
|
|
130
|
+
MessageSchema,
|
|
129
131
|
NotFoundErrorBody,
|
|
130
132
|
NotFoundErrorBodyMessage,
|
|
131
133
|
OpenaiTypesChatChatCompletionMessageToolCallParamFunction,
|
|
@@ -133,6 +135,8 @@ from .types import (
|
|
|
133
135
|
OpenaiTypesChatCompletionCreateParamsFunction,
|
|
134
136
|
Organization,
|
|
135
137
|
OrganizationCreate,
|
|
138
|
+
ParameterProperties,
|
|
139
|
+
ParametersSchema,
|
|
136
140
|
Passage,
|
|
137
141
|
PipRequirement,
|
|
138
142
|
Provider,
|
|
@@ -153,10 +157,12 @@ from .types import (
|
|
|
153
157
|
SandboxType,
|
|
154
158
|
Source,
|
|
155
159
|
SseServerConfig,
|
|
160
|
+
StdioServerConfig,
|
|
156
161
|
Step,
|
|
157
162
|
SupervisorManager,
|
|
158
163
|
SystemMessage,
|
|
159
164
|
SystemMessageContent,
|
|
165
|
+
TagSchema,
|
|
160
166
|
TerminalToolRule,
|
|
161
167
|
TextContent,
|
|
162
168
|
Tool,
|
|
@@ -165,10 +171,14 @@ from .types import (
|
|
|
165
171
|
ToolCallMessage,
|
|
166
172
|
ToolCallMessageToolCall,
|
|
167
173
|
ToolCreate,
|
|
174
|
+
ToolEnvVarSchema,
|
|
175
|
+
ToolJsonSchema,
|
|
168
176
|
ToolReturn,
|
|
169
177
|
ToolReturnMessage,
|
|
170
178
|
ToolReturnMessageStatus,
|
|
171
179
|
ToolReturnStatus,
|
|
180
|
+
ToolRuleSchema,
|
|
181
|
+
ToolSchema,
|
|
172
182
|
ToolType,
|
|
173
183
|
UpdateAssistantMessage,
|
|
174
184
|
UpdateAssistantMessageContent,
|
|
@@ -593,7 +603,12 @@ from .templates import (
|
|
|
593
603
|
TemplatesCreateAgentsResponseAgentsItemUpdatedAt,
|
|
594
604
|
TemplatesCreateAgentsResponseAgentsItemUpdatedAtItem,
|
|
595
605
|
)
|
|
596
|
-
from .tools import
|
|
606
|
+
from .tools import (
|
|
607
|
+
AddMcpServerRequest,
|
|
608
|
+
AddMcpServerResponseItem,
|
|
609
|
+
DeleteMcpServerResponseItem,
|
|
610
|
+
ListMcpServersResponseValue,
|
|
611
|
+
)
|
|
597
612
|
from .version import __version__
|
|
598
613
|
from .voice import CreateVoiceChatCompletionsRequest
|
|
599
614
|
|
|
@@ -601,7 +616,10 @@ __all__ = [
|
|
|
601
616
|
"ActionModel",
|
|
602
617
|
"ActionParametersModel",
|
|
603
618
|
"ActionResponseModel",
|
|
619
|
+
"AddMcpServerRequest",
|
|
620
|
+
"AddMcpServerResponseItem",
|
|
604
621
|
"AgentEnvironmentVariable",
|
|
622
|
+
"AgentSchema",
|
|
605
623
|
"AgentState",
|
|
606
624
|
"AgentStateToolRulesItem",
|
|
607
625
|
"AgentType",
|
|
@@ -863,9 +881,11 @@ __all__ = [
|
|
|
863
881
|
"ConflictErrorBody",
|
|
864
882
|
"ContextWindowOverview",
|
|
865
883
|
"ContinueToolRule",
|
|
884
|
+
"CoreMemoryBlockSchema",
|
|
866
885
|
"CreateAgentRequestToolRulesItem",
|
|
867
886
|
"CreateBlock",
|
|
868
887
|
"CreateVoiceChatCompletionsRequest",
|
|
888
|
+
"DeleteMcpServerResponseItem",
|
|
869
889
|
"DynamicManager",
|
|
870
890
|
"E2BSandboxConfig",
|
|
871
891
|
"EmbeddingConfig",
|
|
@@ -912,7 +932,6 @@ __all__ = [
|
|
|
912
932
|
"LlmConfig",
|
|
913
933
|
"LlmConfigModelEndpointType",
|
|
914
934
|
"LocalSandboxConfig",
|
|
915
|
-
"LocalServerConfig",
|
|
916
935
|
"ManagerType",
|
|
917
936
|
"McpServerType",
|
|
918
937
|
"McpTool",
|
|
@@ -922,6 +941,7 @@ __all__ = [
|
|
|
922
941
|
"MessageCreateContent",
|
|
923
942
|
"MessageCreateRole",
|
|
924
943
|
"MessageRole",
|
|
944
|
+
"MessageSchema",
|
|
925
945
|
"NotFoundError",
|
|
926
946
|
"NotFoundErrorBody",
|
|
927
947
|
"NotFoundErrorBodyMessage",
|
|
@@ -930,6 +950,8 @@ __all__ = [
|
|
|
930
950
|
"OpenaiTypesChatCompletionCreateParamsFunction",
|
|
931
951
|
"Organization",
|
|
932
952
|
"OrganizationCreate",
|
|
953
|
+
"ParameterProperties",
|
|
954
|
+
"ParametersSchema",
|
|
933
955
|
"Passage",
|
|
934
956
|
"PipRequirement",
|
|
935
957
|
"Provider",
|
|
@@ -950,10 +972,12 @@ __all__ = [
|
|
|
950
972
|
"SandboxType",
|
|
951
973
|
"Source",
|
|
952
974
|
"SseServerConfig",
|
|
975
|
+
"StdioServerConfig",
|
|
953
976
|
"Step",
|
|
954
977
|
"SupervisorManager",
|
|
955
978
|
"SystemMessage",
|
|
956
979
|
"SystemMessageContent",
|
|
980
|
+
"TagSchema",
|
|
957
981
|
"TemplatesCreateAgentsResponse",
|
|
958
982
|
"TemplatesCreateAgentsResponseAgentsItem",
|
|
959
983
|
"TemplatesCreateAgentsResponseAgentsItemAgentType",
|
|
@@ -1148,10 +1172,14 @@ __all__ = [
|
|
|
1148
1172
|
"ToolCallMessage",
|
|
1149
1173
|
"ToolCallMessageToolCall",
|
|
1150
1174
|
"ToolCreate",
|
|
1175
|
+
"ToolEnvVarSchema",
|
|
1176
|
+
"ToolJsonSchema",
|
|
1151
1177
|
"ToolReturn",
|
|
1152
1178
|
"ToolReturnMessage",
|
|
1153
1179
|
"ToolReturnMessageStatus",
|
|
1154
1180
|
"ToolReturnStatus",
|
|
1181
|
+
"ToolRuleSchema",
|
|
1182
|
+
"ToolSchema",
|
|
1155
1183
|
"ToolType",
|
|
1156
1184
|
"UnprocessableEntityError",
|
|
1157
1185
|
"UpdateAgentToolRulesItem",
|
letta_client/agents/client.py
CHANGED
|
@@ -25,6 +25,7 @@ from ..types.llm_config import LlmConfig
|
|
|
25
25
|
from ..types.embedding_config import EmbeddingConfig
|
|
26
26
|
from ..types.message_create import MessageCreate
|
|
27
27
|
from ..core.serialization import convert_and_respect_annotation_metadata
|
|
28
|
+
from ..types.agent_schema import AgentSchema
|
|
28
29
|
from ..core.jsonable_encoder import jsonable_encoder
|
|
29
30
|
from .. import core
|
|
30
31
|
from .types.update_agent_tool_rules_item import UpdateAgentToolRulesItem
|
|
@@ -422,11 +423,11 @@ class AgentsClient:
|
|
|
422
423
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
423
424
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
424
425
|
|
|
425
|
-
def
|
|
426
|
+
def export_agent_serialized(
|
|
426
427
|
self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
427
|
-
) ->
|
|
428
|
+
) -> AgentSchema:
|
|
428
429
|
"""
|
|
429
|
-
|
|
430
|
+
Export the serialized JSON representation of an agent.
|
|
430
431
|
|
|
431
432
|
Parameters
|
|
432
433
|
----------
|
|
@@ -437,7 +438,7 @@ class AgentsClient:
|
|
|
437
438
|
|
|
438
439
|
Returns
|
|
439
440
|
-------
|
|
440
|
-
|
|
441
|
+
AgentSchema
|
|
441
442
|
Successful Response
|
|
442
443
|
|
|
443
444
|
Examples
|
|
@@ -447,21 +448,21 @@ class AgentsClient:
|
|
|
447
448
|
client = Letta(
|
|
448
449
|
token="YOUR_TOKEN",
|
|
449
450
|
)
|
|
450
|
-
client.agents.
|
|
451
|
+
client.agents.export_agent_serialized(
|
|
451
452
|
agent_id="agent_id",
|
|
452
453
|
)
|
|
453
454
|
"""
|
|
454
455
|
_response = self._client_wrapper.httpx_client.request(
|
|
455
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/
|
|
456
|
+
f"v1/agents/{jsonable_encoder(agent_id)}/export",
|
|
456
457
|
method="GET",
|
|
457
458
|
request_options=request_options,
|
|
458
459
|
)
|
|
459
460
|
try:
|
|
460
461
|
if 200 <= _response.status_code < 300:
|
|
461
462
|
return typing.cast(
|
|
462
|
-
|
|
463
|
+
AgentSchema,
|
|
463
464
|
construct_type(
|
|
464
|
-
type_=
|
|
465
|
+
type_=AgentSchema, # type: ignore
|
|
465
466
|
object_=_response.json(),
|
|
466
467
|
),
|
|
467
468
|
)
|
|
@@ -480,7 +481,7 @@ class AgentsClient:
|
|
|
480
481
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
481
482
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
482
483
|
|
|
483
|
-
def
|
|
484
|
+
def import_agent_serialized(
|
|
484
485
|
self,
|
|
485
486
|
*,
|
|
486
487
|
file: core.File,
|
|
@@ -490,7 +491,7 @@ class AgentsClient:
|
|
|
490
491
|
request_options: typing.Optional[RequestOptions] = None,
|
|
491
492
|
) -> AgentState:
|
|
492
493
|
"""
|
|
493
|
-
|
|
494
|
+
Import a serialized agent file and recreate the agent in the system.
|
|
494
495
|
|
|
495
496
|
Parameters
|
|
496
497
|
----------
|
|
@@ -521,10 +522,10 @@ class AgentsClient:
|
|
|
521
522
|
client = Letta(
|
|
522
523
|
token="YOUR_TOKEN",
|
|
523
524
|
)
|
|
524
|
-
client.agents.
|
|
525
|
+
client.agents.import_agent_serialized()
|
|
525
526
|
"""
|
|
526
527
|
_response = self._client_wrapper.httpx_client.request(
|
|
527
|
-
"v1/agents/
|
|
528
|
+
"v1/agents/import",
|
|
528
529
|
method="POST",
|
|
529
530
|
params={
|
|
530
531
|
"append_copy_suffix": append_copy_suffix,
|
|
@@ -1514,11 +1515,11 @@ class AsyncAgentsClient:
|
|
|
1514
1515
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
1515
1516
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
1516
1517
|
|
|
1517
|
-
async def
|
|
1518
|
+
async def export_agent_serialized(
|
|
1518
1519
|
self, agent_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
1519
|
-
) ->
|
|
1520
|
+
) -> AgentSchema:
|
|
1520
1521
|
"""
|
|
1521
|
-
|
|
1522
|
+
Export the serialized JSON representation of an agent.
|
|
1522
1523
|
|
|
1523
1524
|
Parameters
|
|
1524
1525
|
----------
|
|
@@ -1529,7 +1530,7 @@ class AsyncAgentsClient:
|
|
|
1529
1530
|
|
|
1530
1531
|
Returns
|
|
1531
1532
|
-------
|
|
1532
|
-
|
|
1533
|
+
AgentSchema
|
|
1533
1534
|
Successful Response
|
|
1534
1535
|
|
|
1535
1536
|
Examples
|
|
@@ -1544,7 +1545,7 @@ class AsyncAgentsClient:
|
|
|
1544
1545
|
|
|
1545
1546
|
|
|
1546
1547
|
async def main() -> None:
|
|
1547
|
-
await client.agents.
|
|
1548
|
+
await client.agents.export_agent_serialized(
|
|
1548
1549
|
agent_id="agent_id",
|
|
1549
1550
|
)
|
|
1550
1551
|
|
|
@@ -1552,16 +1553,16 @@ class AsyncAgentsClient:
|
|
|
1552
1553
|
asyncio.run(main())
|
|
1553
1554
|
"""
|
|
1554
1555
|
_response = await self._client_wrapper.httpx_client.request(
|
|
1555
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/
|
|
1556
|
+
f"v1/agents/{jsonable_encoder(agent_id)}/export",
|
|
1556
1557
|
method="GET",
|
|
1557
1558
|
request_options=request_options,
|
|
1558
1559
|
)
|
|
1559
1560
|
try:
|
|
1560
1561
|
if 200 <= _response.status_code < 300:
|
|
1561
1562
|
return typing.cast(
|
|
1562
|
-
|
|
1563
|
+
AgentSchema,
|
|
1563
1564
|
construct_type(
|
|
1564
|
-
type_=
|
|
1565
|
+
type_=AgentSchema, # type: ignore
|
|
1565
1566
|
object_=_response.json(),
|
|
1566
1567
|
),
|
|
1567
1568
|
)
|
|
@@ -1580,7 +1581,7 @@ class AsyncAgentsClient:
|
|
|
1580
1581
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
1581
1582
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
1582
1583
|
|
|
1583
|
-
async def
|
|
1584
|
+
async def import_agent_serialized(
|
|
1584
1585
|
self,
|
|
1585
1586
|
*,
|
|
1586
1587
|
file: core.File,
|
|
@@ -1590,7 +1591,7 @@ class AsyncAgentsClient:
|
|
|
1590
1591
|
request_options: typing.Optional[RequestOptions] = None,
|
|
1591
1592
|
) -> AgentState:
|
|
1592
1593
|
"""
|
|
1593
|
-
|
|
1594
|
+
Import a serialized agent file and recreate the agent in the system.
|
|
1594
1595
|
|
|
1595
1596
|
Parameters
|
|
1596
1597
|
----------
|
|
@@ -1626,13 +1627,13 @@ class AsyncAgentsClient:
|
|
|
1626
1627
|
|
|
1627
1628
|
|
|
1628
1629
|
async def main() -> None:
|
|
1629
|
-
await client.agents.
|
|
1630
|
+
await client.agents.import_agent_serialized()
|
|
1630
1631
|
|
|
1631
1632
|
|
|
1632
1633
|
asyncio.run(main())
|
|
1633
1634
|
"""
|
|
1634
1635
|
_response = await self._client_wrapper.httpx_client.request(
|
|
1635
|
-
"v1/agents/
|
|
1636
|
+
"v1/agents/import",
|
|
1636
1637
|
method="POST",
|
|
1637
1638
|
params={
|
|
1638
1639
|
"append_copy_suffix": append_copy_suffix,
|
|
@@ -16,7 +16,7 @@ class BaseClientWrapper:
|
|
|
16
16
|
headers: typing.Dict[str, str] = {
|
|
17
17
|
"X-Fern-Language": "Python",
|
|
18
18
|
"X-Fern-SDK-Name": "letta-client",
|
|
19
|
-
"X-Fern-SDK-Version": "0.1.
|
|
19
|
+
"X-Fern-SDK-Version": "0.1.70",
|
|
20
20
|
}
|
|
21
21
|
if self.token is not None:
|
|
22
22
|
headers["Authorization"] = f"Bearer {self.token}"
|
letta_client/tools/__init__.py
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
-
from .types import
|
|
3
|
+
from .types import (
|
|
4
|
+
AddMcpServerRequest,
|
|
5
|
+
AddMcpServerResponseItem,
|
|
6
|
+
DeleteMcpServerResponseItem,
|
|
7
|
+
ListMcpServersResponseValue,
|
|
8
|
+
)
|
|
4
9
|
|
|
5
|
-
__all__ = [
|
|
10
|
+
__all__ = [
|
|
11
|
+
"AddMcpServerRequest",
|
|
12
|
+
"AddMcpServerResponseItem",
|
|
13
|
+
"DeleteMcpServerResponseItem",
|
|
14
|
+
"ListMcpServersResponseValue",
|
|
15
|
+
]
|
letta_client/tools/client.py
CHANGED
|
@@ -14,7 +14,11 @@ from ..types.tool_return_message import ToolReturnMessage
|
|
|
14
14
|
from ..types.app_model import AppModel
|
|
15
15
|
from ..types.action_model import ActionModel
|
|
16
16
|
from .types.list_mcp_servers_response_value import ListMcpServersResponseValue
|
|
17
|
+
from .types.add_mcp_server_request import AddMcpServerRequest
|
|
18
|
+
from .types.add_mcp_server_response_item import AddMcpServerResponseItem
|
|
19
|
+
from ..core.serialization import convert_and_respect_annotation_metadata
|
|
17
20
|
from ..types.mcp_tool import McpTool
|
|
21
|
+
from .types.delete_mcp_server_response_item import DeleteMcpServerResponseItem
|
|
18
22
|
from ..core.client_wrapper import AsyncClientWrapper
|
|
19
23
|
|
|
20
24
|
# this is used as the default value for optional parameters
|
|
@@ -872,6 +876,72 @@ class ToolsClient:
|
|
|
872
876
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
873
877
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
874
878
|
|
|
879
|
+
def add_mcp_server(
|
|
880
|
+
self, *, request: AddMcpServerRequest, request_options: typing.Optional[RequestOptions] = None
|
|
881
|
+
) -> typing.List[AddMcpServerResponseItem]:
|
|
882
|
+
"""
|
|
883
|
+
Add a new MCP server to the Letta MCP server config
|
|
884
|
+
|
|
885
|
+
Parameters
|
|
886
|
+
----------
|
|
887
|
+
request : AddMcpServerRequest
|
|
888
|
+
|
|
889
|
+
request_options : typing.Optional[RequestOptions]
|
|
890
|
+
Request-specific configuration.
|
|
891
|
+
|
|
892
|
+
Returns
|
|
893
|
+
-------
|
|
894
|
+
typing.List[AddMcpServerResponseItem]
|
|
895
|
+
Successful Response
|
|
896
|
+
|
|
897
|
+
Examples
|
|
898
|
+
--------
|
|
899
|
+
from letta_client import Letta, StdioServerConfig
|
|
900
|
+
|
|
901
|
+
client = Letta(
|
|
902
|
+
token="YOUR_TOKEN",
|
|
903
|
+
)
|
|
904
|
+
client.tools.add_mcp_server(
|
|
905
|
+
request=StdioServerConfig(
|
|
906
|
+
server_name="server_name",
|
|
907
|
+
command="command",
|
|
908
|
+
args=["args"],
|
|
909
|
+
),
|
|
910
|
+
)
|
|
911
|
+
"""
|
|
912
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
913
|
+
"v1/tools/mcp/servers",
|
|
914
|
+
method="PUT",
|
|
915
|
+
json=convert_and_respect_annotation_metadata(
|
|
916
|
+
object_=request, annotation=AddMcpServerRequest, direction="write"
|
|
917
|
+
),
|
|
918
|
+
request_options=request_options,
|
|
919
|
+
omit=OMIT,
|
|
920
|
+
)
|
|
921
|
+
try:
|
|
922
|
+
if 200 <= _response.status_code < 300:
|
|
923
|
+
return typing.cast(
|
|
924
|
+
typing.List[AddMcpServerResponseItem],
|
|
925
|
+
construct_type(
|
|
926
|
+
type_=typing.List[AddMcpServerResponseItem], # type: ignore
|
|
927
|
+
object_=_response.json(),
|
|
928
|
+
),
|
|
929
|
+
)
|
|
930
|
+
if _response.status_code == 422:
|
|
931
|
+
raise UnprocessableEntityError(
|
|
932
|
+
typing.cast(
|
|
933
|
+
HttpValidationError,
|
|
934
|
+
construct_type(
|
|
935
|
+
type_=HttpValidationError, # type: ignore
|
|
936
|
+
object_=_response.json(),
|
|
937
|
+
),
|
|
938
|
+
)
|
|
939
|
+
)
|
|
940
|
+
_response_json = _response.json()
|
|
941
|
+
except JSONDecodeError:
|
|
942
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
943
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
944
|
+
|
|
875
945
|
def list_mcp_tools_by_server(
|
|
876
946
|
self, mcp_server_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
877
947
|
) -> typing.List[McpTool]:
|
|
@@ -934,7 +1004,7 @@ class ToolsClient:
|
|
|
934
1004
|
self, mcp_server_name: str, mcp_tool_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
935
1005
|
) -> Tool:
|
|
936
1006
|
"""
|
|
937
|
-
|
|
1007
|
+
Register a new MCP tool as a Letta server by MCP server + tool name
|
|
938
1008
|
|
|
939
1009
|
Parameters
|
|
940
1010
|
----------
|
|
@@ -991,6 +1061,64 @@ class ToolsClient:
|
|
|
991
1061
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
992
1062
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
993
1063
|
|
|
1064
|
+
def delete_mcp_server(
|
|
1065
|
+
self, mcp_server_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
1066
|
+
) -> typing.List[DeleteMcpServerResponseItem]:
|
|
1067
|
+
"""
|
|
1068
|
+
Add a new MCP server to the Letta MCP server config
|
|
1069
|
+
|
|
1070
|
+
Parameters
|
|
1071
|
+
----------
|
|
1072
|
+
mcp_server_name : str
|
|
1073
|
+
|
|
1074
|
+
request_options : typing.Optional[RequestOptions]
|
|
1075
|
+
Request-specific configuration.
|
|
1076
|
+
|
|
1077
|
+
Returns
|
|
1078
|
+
-------
|
|
1079
|
+
typing.List[DeleteMcpServerResponseItem]
|
|
1080
|
+
Successful Response
|
|
1081
|
+
|
|
1082
|
+
Examples
|
|
1083
|
+
--------
|
|
1084
|
+
from letta_client import Letta
|
|
1085
|
+
|
|
1086
|
+
client = Letta(
|
|
1087
|
+
token="YOUR_TOKEN",
|
|
1088
|
+
)
|
|
1089
|
+
client.tools.delete_mcp_server(
|
|
1090
|
+
mcp_server_name="mcp_server_name",
|
|
1091
|
+
)
|
|
1092
|
+
"""
|
|
1093
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
1094
|
+
f"v1/tools/mcp/servers/{jsonable_encoder(mcp_server_name)}",
|
|
1095
|
+
method="DELETE",
|
|
1096
|
+
request_options=request_options,
|
|
1097
|
+
)
|
|
1098
|
+
try:
|
|
1099
|
+
if 200 <= _response.status_code < 300:
|
|
1100
|
+
return typing.cast(
|
|
1101
|
+
typing.List[DeleteMcpServerResponseItem],
|
|
1102
|
+
construct_type(
|
|
1103
|
+
type_=typing.List[DeleteMcpServerResponseItem], # type: ignore
|
|
1104
|
+
object_=_response.json(),
|
|
1105
|
+
),
|
|
1106
|
+
)
|
|
1107
|
+
if _response.status_code == 422:
|
|
1108
|
+
raise UnprocessableEntityError(
|
|
1109
|
+
typing.cast(
|
|
1110
|
+
HttpValidationError,
|
|
1111
|
+
construct_type(
|
|
1112
|
+
type_=HttpValidationError, # type: ignore
|
|
1113
|
+
object_=_response.json(),
|
|
1114
|
+
),
|
|
1115
|
+
)
|
|
1116
|
+
)
|
|
1117
|
+
_response_json = _response.json()
|
|
1118
|
+
except JSONDecodeError:
|
|
1119
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
1120
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
1121
|
+
|
|
994
1122
|
|
|
995
1123
|
class AsyncToolsClient:
|
|
996
1124
|
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
@@ -1941,6 +2069,80 @@ class AsyncToolsClient:
|
|
|
1941
2069
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
1942
2070
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
1943
2071
|
|
|
2072
|
+
async def add_mcp_server(
|
|
2073
|
+
self, *, request: AddMcpServerRequest, request_options: typing.Optional[RequestOptions] = None
|
|
2074
|
+
) -> typing.List[AddMcpServerResponseItem]:
|
|
2075
|
+
"""
|
|
2076
|
+
Add a new MCP server to the Letta MCP server config
|
|
2077
|
+
|
|
2078
|
+
Parameters
|
|
2079
|
+
----------
|
|
2080
|
+
request : AddMcpServerRequest
|
|
2081
|
+
|
|
2082
|
+
request_options : typing.Optional[RequestOptions]
|
|
2083
|
+
Request-specific configuration.
|
|
2084
|
+
|
|
2085
|
+
Returns
|
|
2086
|
+
-------
|
|
2087
|
+
typing.List[AddMcpServerResponseItem]
|
|
2088
|
+
Successful Response
|
|
2089
|
+
|
|
2090
|
+
Examples
|
|
2091
|
+
--------
|
|
2092
|
+
import asyncio
|
|
2093
|
+
|
|
2094
|
+
from letta_client import AsyncLetta, StdioServerConfig
|
|
2095
|
+
|
|
2096
|
+
client = AsyncLetta(
|
|
2097
|
+
token="YOUR_TOKEN",
|
|
2098
|
+
)
|
|
2099
|
+
|
|
2100
|
+
|
|
2101
|
+
async def main() -> None:
|
|
2102
|
+
await client.tools.add_mcp_server(
|
|
2103
|
+
request=StdioServerConfig(
|
|
2104
|
+
server_name="server_name",
|
|
2105
|
+
command="command",
|
|
2106
|
+
args=["args"],
|
|
2107
|
+
),
|
|
2108
|
+
)
|
|
2109
|
+
|
|
2110
|
+
|
|
2111
|
+
asyncio.run(main())
|
|
2112
|
+
"""
|
|
2113
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
2114
|
+
"v1/tools/mcp/servers",
|
|
2115
|
+
method="PUT",
|
|
2116
|
+
json=convert_and_respect_annotation_metadata(
|
|
2117
|
+
object_=request, annotation=AddMcpServerRequest, direction="write"
|
|
2118
|
+
),
|
|
2119
|
+
request_options=request_options,
|
|
2120
|
+
omit=OMIT,
|
|
2121
|
+
)
|
|
2122
|
+
try:
|
|
2123
|
+
if 200 <= _response.status_code < 300:
|
|
2124
|
+
return typing.cast(
|
|
2125
|
+
typing.List[AddMcpServerResponseItem],
|
|
2126
|
+
construct_type(
|
|
2127
|
+
type_=typing.List[AddMcpServerResponseItem], # type: ignore
|
|
2128
|
+
object_=_response.json(),
|
|
2129
|
+
),
|
|
2130
|
+
)
|
|
2131
|
+
if _response.status_code == 422:
|
|
2132
|
+
raise UnprocessableEntityError(
|
|
2133
|
+
typing.cast(
|
|
2134
|
+
HttpValidationError,
|
|
2135
|
+
construct_type(
|
|
2136
|
+
type_=HttpValidationError, # type: ignore
|
|
2137
|
+
object_=_response.json(),
|
|
2138
|
+
),
|
|
2139
|
+
)
|
|
2140
|
+
)
|
|
2141
|
+
_response_json = _response.json()
|
|
2142
|
+
except JSONDecodeError:
|
|
2143
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
2144
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
2145
|
+
|
|
1944
2146
|
async def list_mcp_tools_by_server(
|
|
1945
2147
|
self, mcp_server_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
1946
2148
|
) -> typing.List[McpTool]:
|
|
@@ -2011,7 +2213,7 @@ class AsyncToolsClient:
|
|
|
2011
2213
|
self, mcp_server_name: str, mcp_tool_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
2012
2214
|
) -> Tool:
|
|
2013
2215
|
"""
|
|
2014
|
-
|
|
2216
|
+
Register a new MCP tool as a Letta server by MCP server + tool name
|
|
2015
2217
|
|
|
2016
2218
|
Parameters
|
|
2017
2219
|
----------
|
|
@@ -2075,3 +2277,69 @@ class AsyncToolsClient:
|
|
|
2075
2277
|
except JSONDecodeError:
|
|
2076
2278
|
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
2077
2279
|
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
2280
|
+
|
|
2281
|
+
async def delete_mcp_server(
|
|
2282
|
+
self, mcp_server_name: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
2283
|
+
) -> typing.List[DeleteMcpServerResponseItem]:
|
|
2284
|
+
"""
|
|
2285
|
+
Add a new MCP server to the Letta MCP server config
|
|
2286
|
+
|
|
2287
|
+
Parameters
|
|
2288
|
+
----------
|
|
2289
|
+
mcp_server_name : str
|
|
2290
|
+
|
|
2291
|
+
request_options : typing.Optional[RequestOptions]
|
|
2292
|
+
Request-specific configuration.
|
|
2293
|
+
|
|
2294
|
+
Returns
|
|
2295
|
+
-------
|
|
2296
|
+
typing.List[DeleteMcpServerResponseItem]
|
|
2297
|
+
Successful Response
|
|
2298
|
+
|
|
2299
|
+
Examples
|
|
2300
|
+
--------
|
|
2301
|
+
import asyncio
|
|
2302
|
+
|
|
2303
|
+
from letta_client import AsyncLetta
|
|
2304
|
+
|
|
2305
|
+
client = AsyncLetta(
|
|
2306
|
+
token="YOUR_TOKEN",
|
|
2307
|
+
)
|
|
2308
|
+
|
|
2309
|
+
|
|
2310
|
+
async def main() -> None:
|
|
2311
|
+
await client.tools.delete_mcp_server(
|
|
2312
|
+
mcp_server_name="mcp_server_name",
|
|
2313
|
+
)
|
|
2314
|
+
|
|
2315
|
+
|
|
2316
|
+
asyncio.run(main())
|
|
2317
|
+
"""
|
|
2318
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
2319
|
+
f"v1/tools/mcp/servers/{jsonable_encoder(mcp_server_name)}",
|
|
2320
|
+
method="DELETE",
|
|
2321
|
+
request_options=request_options,
|
|
2322
|
+
)
|
|
2323
|
+
try:
|
|
2324
|
+
if 200 <= _response.status_code < 300:
|
|
2325
|
+
return typing.cast(
|
|
2326
|
+
typing.List[DeleteMcpServerResponseItem],
|
|
2327
|
+
construct_type(
|
|
2328
|
+
type_=typing.List[DeleteMcpServerResponseItem], # type: ignore
|
|
2329
|
+
object_=_response.json(),
|
|
2330
|
+
),
|
|
2331
|
+
)
|
|
2332
|
+
if _response.status_code == 422:
|
|
2333
|
+
raise UnprocessableEntityError(
|
|
2334
|
+
typing.cast(
|
|
2335
|
+
HttpValidationError,
|
|
2336
|
+
construct_type(
|
|
2337
|
+
type_=HttpValidationError, # type: ignore
|
|
2338
|
+
object_=_response.json(),
|
|
2339
|
+
),
|
|
2340
|
+
)
|
|
2341
|
+
)
|
|
2342
|
+
_response_json = _response.json()
|
|
2343
|
+
except JSONDecodeError:
|
|
2344
|
+
raise ApiError(status_code=_response.status_code, body=_response.text)
|
|
2345
|
+
raise ApiError(status_code=_response.status_code, body=_response_json)
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
+
from .add_mcp_server_request import AddMcpServerRequest
|
|
4
|
+
from .add_mcp_server_response_item import AddMcpServerResponseItem
|
|
5
|
+
from .delete_mcp_server_response_item import DeleteMcpServerResponseItem
|
|
3
6
|
from .list_mcp_servers_response_value import ListMcpServersResponseValue
|
|
4
7
|
|
|
5
|
-
__all__ = [
|
|
8
|
+
__all__ = [
|
|
9
|
+
"AddMcpServerRequest",
|
|
10
|
+
"AddMcpServerResponseItem",
|
|
11
|
+
"DeleteMcpServerResponseItem",
|
|
12
|
+
"ListMcpServersResponseValue",
|
|
13
|
+
]
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from ...types.stdio_server_config import StdioServerConfig
|
|
5
|
+
from ...types.sse_server_config import SseServerConfig
|
|
6
|
+
|
|
7
|
+
AddMcpServerRequest = typing.Union[StdioServerConfig, SseServerConfig]
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from ...types.stdio_server_config import StdioServerConfig
|
|
5
|
+
from ...types.sse_server_config import SseServerConfig
|
|
6
|
+
|
|
7
|
+
AddMcpServerResponseItem = typing.Union[StdioServerConfig, SseServerConfig]
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import typing
|
|
4
|
+
from ...types.stdio_server_config import StdioServerConfig
|
|
5
|
+
from ...types.sse_server_config import SseServerConfig
|
|
6
|
+
|
|
7
|
+
DeleteMcpServerResponseItem = typing.Union[StdioServerConfig, SseServerConfig]
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import typing
|
|
4
4
|
from ...types.sse_server_config import SseServerConfig
|
|
5
|
-
from ...types.
|
|
5
|
+
from ...types.stdio_server_config import StdioServerConfig
|
|
6
6
|
|
|
7
|
-
ListMcpServersResponseValue = typing.Union[SseServerConfig,
|
|
7
|
+
ListMcpServersResponseValue = typing.Union[SseServerConfig, StdioServerConfig]
|
letta_client/types/__init__.py
CHANGED
|
@@ -4,6 +4,7 @@ from .action_model import ActionModel
|
|
|
4
4
|
from .action_parameters_model import ActionParametersModel
|
|
5
5
|
from .action_response_model import ActionResponseModel
|
|
6
6
|
from .agent_environment_variable import AgentEnvironmentVariable
|
|
7
|
+
from .agent_schema import AgentSchema
|
|
7
8
|
from .agent_state import AgentState
|
|
8
9
|
from .agent_state_tool_rules_item import AgentStateToolRulesItem
|
|
9
10
|
from .agent_type import AgentType
|
|
@@ -72,6 +73,7 @@ from .conditional_tool_rule import ConditionalToolRule
|
|
|
72
73
|
from .conflict_error_body import ConflictErrorBody
|
|
73
74
|
from .context_window_overview import ContextWindowOverview
|
|
74
75
|
from .continue_tool_rule import ContinueToolRule
|
|
76
|
+
from .core_memory_block_schema import CoreMemoryBlockSchema
|
|
75
77
|
from .create_block import CreateBlock
|
|
76
78
|
from .dynamic_manager import DynamicManager
|
|
77
79
|
from .e_2_b_sandbox_config import E2BSandboxConfig
|
|
@@ -115,7 +117,6 @@ from .letta_usage_statistics import LettaUsageStatistics
|
|
|
115
117
|
from .llm_config import LlmConfig
|
|
116
118
|
from .llm_config_model_endpoint_type import LlmConfigModelEndpointType
|
|
117
119
|
from .local_sandbox_config import LocalSandboxConfig
|
|
118
|
-
from .local_server_config import LocalServerConfig
|
|
119
120
|
from .manager_type import ManagerType
|
|
120
121
|
from .mcp_server_type import McpServerType
|
|
121
122
|
from .mcp_tool import McpTool
|
|
@@ -125,6 +126,7 @@ from .message_create import MessageCreate
|
|
|
125
126
|
from .message_create_content import MessageCreateContent
|
|
126
127
|
from .message_create_role import MessageCreateRole
|
|
127
128
|
from .message_role import MessageRole
|
|
129
|
+
from .message_schema import MessageSchema
|
|
128
130
|
from .not_found_error_body import NotFoundErrorBody
|
|
129
131
|
from .not_found_error_body_message import NotFoundErrorBodyMessage
|
|
130
132
|
from .openai_types_chat_chat_completion_message_tool_call_param_function import (
|
|
@@ -136,6 +138,8 @@ from .openai_types_chat_chat_completion_named_tool_choice_param_function import
|
|
|
136
138
|
from .openai_types_chat_completion_create_params_function import OpenaiTypesChatCompletionCreateParamsFunction
|
|
137
139
|
from .organization import Organization
|
|
138
140
|
from .organization_create import OrganizationCreate
|
|
141
|
+
from .parameter_properties import ParameterProperties
|
|
142
|
+
from .parameters_schema import ParametersSchema
|
|
139
143
|
from .passage import Passage
|
|
140
144
|
from .pip_requirement import PipRequirement
|
|
141
145
|
from .provider import Provider
|
|
@@ -156,10 +160,12 @@ from .sandbox_environment_variable_update import SandboxEnvironmentVariableUpdat
|
|
|
156
160
|
from .sandbox_type import SandboxType
|
|
157
161
|
from .source import Source
|
|
158
162
|
from .sse_server_config import SseServerConfig
|
|
163
|
+
from .stdio_server_config import StdioServerConfig
|
|
159
164
|
from .step import Step
|
|
160
165
|
from .supervisor_manager import SupervisorManager
|
|
161
166
|
from .system_message import SystemMessage
|
|
162
167
|
from .system_message_content import SystemMessageContent
|
|
168
|
+
from .tag_schema import TagSchema
|
|
163
169
|
from .terminal_tool_rule import TerminalToolRule
|
|
164
170
|
from .text_content import TextContent
|
|
165
171
|
from .tool import Tool
|
|
@@ -168,10 +174,14 @@ from .tool_call_delta import ToolCallDelta
|
|
|
168
174
|
from .tool_call_message import ToolCallMessage
|
|
169
175
|
from .tool_call_message_tool_call import ToolCallMessageToolCall
|
|
170
176
|
from .tool_create import ToolCreate
|
|
177
|
+
from .tool_env_var_schema import ToolEnvVarSchema
|
|
178
|
+
from .tool_json_schema import ToolJsonSchema
|
|
171
179
|
from .tool_return import ToolReturn
|
|
172
180
|
from .tool_return_message import ToolReturnMessage
|
|
173
181
|
from .tool_return_message_status import ToolReturnMessageStatus
|
|
174
182
|
from .tool_return_status import ToolReturnStatus
|
|
183
|
+
from .tool_rule_schema import ToolRuleSchema
|
|
184
|
+
from .tool_schema import ToolSchema
|
|
175
185
|
from .tool_type import ToolType
|
|
176
186
|
from .update_assistant_message import UpdateAssistantMessage
|
|
177
187
|
from .update_assistant_message_content import UpdateAssistantMessageContent
|
|
@@ -198,6 +208,7 @@ __all__ = [
|
|
|
198
208
|
"ActionParametersModel",
|
|
199
209
|
"ActionResponseModel",
|
|
200
210
|
"AgentEnvironmentVariable",
|
|
211
|
+
"AgentSchema",
|
|
201
212
|
"AgentState",
|
|
202
213
|
"AgentStateToolRulesItem",
|
|
203
214
|
"AgentType",
|
|
@@ -266,6 +277,7 @@ __all__ = [
|
|
|
266
277
|
"ConflictErrorBody",
|
|
267
278
|
"ContextWindowOverview",
|
|
268
279
|
"ContinueToolRule",
|
|
280
|
+
"CoreMemoryBlockSchema",
|
|
269
281
|
"CreateBlock",
|
|
270
282
|
"DynamicManager",
|
|
271
283
|
"E2BSandboxConfig",
|
|
@@ -309,7 +321,6 @@ __all__ = [
|
|
|
309
321
|
"LlmConfig",
|
|
310
322
|
"LlmConfigModelEndpointType",
|
|
311
323
|
"LocalSandboxConfig",
|
|
312
|
-
"LocalServerConfig",
|
|
313
324
|
"ManagerType",
|
|
314
325
|
"McpServerType",
|
|
315
326
|
"McpTool",
|
|
@@ -319,6 +330,7 @@ __all__ = [
|
|
|
319
330
|
"MessageCreateContent",
|
|
320
331
|
"MessageCreateRole",
|
|
321
332
|
"MessageRole",
|
|
333
|
+
"MessageSchema",
|
|
322
334
|
"NotFoundErrorBody",
|
|
323
335
|
"NotFoundErrorBodyMessage",
|
|
324
336
|
"OpenaiTypesChatChatCompletionMessageToolCallParamFunction",
|
|
@@ -326,6 +338,8 @@ __all__ = [
|
|
|
326
338
|
"OpenaiTypesChatCompletionCreateParamsFunction",
|
|
327
339
|
"Organization",
|
|
328
340
|
"OrganizationCreate",
|
|
341
|
+
"ParameterProperties",
|
|
342
|
+
"ParametersSchema",
|
|
329
343
|
"Passage",
|
|
330
344
|
"PipRequirement",
|
|
331
345
|
"Provider",
|
|
@@ -346,10 +360,12 @@ __all__ = [
|
|
|
346
360
|
"SandboxType",
|
|
347
361
|
"Source",
|
|
348
362
|
"SseServerConfig",
|
|
363
|
+
"StdioServerConfig",
|
|
349
364
|
"Step",
|
|
350
365
|
"SupervisorManager",
|
|
351
366
|
"SystemMessage",
|
|
352
367
|
"SystemMessageContent",
|
|
368
|
+
"TagSchema",
|
|
353
369
|
"TerminalToolRule",
|
|
354
370
|
"TextContent",
|
|
355
371
|
"Tool",
|
|
@@ -358,10 +374,14 @@ __all__ = [
|
|
|
358
374
|
"ToolCallMessage",
|
|
359
375
|
"ToolCallMessageToolCall",
|
|
360
376
|
"ToolCreate",
|
|
377
|
+
"ToolEnvVarSchema",
|
|
378
|
+
"ToolJsonSchema",
|
|
361
379
|
"ToolReturn",
|
|
362
380
|
"ToolReturnMessage",
|
|
363
381
|
"ToolReturnMessageStatus",
|
|
364
382
|
"ToolReturnStatus",
|
|
383
|
+
"ToolRuleSchema",
|
|
384
|
+
"ToolSchema",
|
|
365
385
|
"ToolType",
|
|
366
386
|
"UpdateAssistantMessage",
|
|
367
387
|
"UpdateAssistantMessageContent",
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from .core_memory_block_schema import CoreMemoryBlockSchema
|
|
6
|
+
from .embedding_config import EmbeddingConfig
|
|
7
|
+
from .llm_config import LlmConfig
|
|
8
|
+
from .message_schema import MessageSchema
|
|
9
|
+
import typing_extensions
|
|
10
|
+
from ..core.serialization import FieldMetadata
|
|
11
|
+
from .tag_schema import TagSchema
|
|
12
|
+
from .tool_env_var_schema import ToolEnvVarSchema
|
|
13
|
+
from .tool_rule_schema import ToolRuleSchema
|
|
14
|
+
from .tool_schema import ToolSchema
|
|
15
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
16
|
+
import pydantic
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class AgentSchema(UncheckedBaseModel):
|
|
20
|
+
agent_type: str
|
|
21
|
+
core_memory: typing.List[CoreMemoryBlockSchema]
|
|
22
|
+
created_at: str
|
|
23
|
+
description: str
|
|
24
|
+
embedding_config: EmbeddingConfig
|
|
25
|
+
groups: typing.List[typing.Optional[typing.Any]]
|
|
26
|
+
identities: typing.List[typing.Optional[typing.Any]]
|
|
27
|
+
is_deleted: bool
|
|
28
|
+
llm_config: LlmConfig
|
|
29
|
+
message_buffer_autoclear: bool
|
|
30
|
+
messages: typing.List[MessageSchema]
|
|
31
|
+
metadata: typing_extensions.Annotated[
|
|
32
|
+
typing.Dict[str, typing.Optional[typing.Any]], FieldMetadata(alias="metadata_")
|
|
33
|
+
]
|
|
34
|
+
multi_agent_group: typing.Optional[typing.Any] = None
|
|
35
|
+
name: str
|
|
36
|
+
system: str
|
|
37
|
+
tags: typing.List[TagSchema]
|
|
38
|
+
tool_exec_environment_variables: typing.List[ToolEnvVarSchema]
|
|
39
|
+
tool_rules: typing.List[ToolRuleSchema]
|
|
40
|
+
tools: typing.List[ToolSchema]
|
|
41
|
+
updated_at: str
|
|
42
|
+
version: str
|
|
43
|
+
|
|
44
|
+
if IS_PYDANTIC_V2:
|
|
45
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
46
|
+
else:
|
|
47
|
+
|
|
48
|
+
class Config:
|
|
49
|
+
frozen = True
|
|
50
|
+
smart_union = True
|
|
51
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
import typing_extensions
|
|
6
|
+
from ..core.serialization import FieldMetadata
|
|
7
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
|
+
import pydantic
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class CoreMemoryBlockSchema(UncheckedBaseModel):
|
|
12
|
+
created_at: str
|
|
13
|
+
description: typing.Optional[str] = None
|
|
14
|
+
identities: typing.List[typing.Optional[typing.Any]]
|
|
15
|
+
is_deleted: bool
|
|
16
|
+
is_template: bool
|
|
17
|
+
label: str
|
|
18
|
+
limit: int
|
|
19
|
+
metadata: typing_extensions.Annotated[
|
|
20
|
+
typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]], FieldMetadata(alias="metadata_")
|
|
21
|
+
] = None
|
|
22
|
+
template_name: typing.Optional[str] = None
|
|
23
|
+
updated_at: str
|
|
24
|
+
value: str
|
|
25
|
+
|
|
26
|
+
if IS_PYDANTIC_V2:
|
|
27
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
28
|
+
else:
|
|
29
|
+
|
|
30
|
+
class Config:
|
|
31
|
+
frozen = True
|
|
32
|
+
smart_union = True
|
|
33
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class MessageSchema(UncheckedBaseModel):
|
|
10
|
+
created_at: str
|
|
11
|
+
group_id: typing.Optional[str] = None
|
|
12
|
+
in_context: bool
|
|
13
|
+
model: typing.Optional[str] = None
|
|
14
|
+
name: typing.Optional[str] = None
|
|
15
|
+
role: str
|
|
16
|
+
text: str
|
|
17
|
+
tool_call_id: typing.Optional[str] = None
|
|
18
|
+
tool_calls: typing.List[typing.Optional[typing.Any]]
|
|
19
|
+
tool_returns: typing.List[typing.Optional[typing.Any]]
|
|
20
|
+
updated_at: str
|
|
21
|
+
|
|
22
|
+
if IS_PYDANTIC_V2:
|
|
23
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
24
|
+
else:
|
|
25
|
+
|
|
26
|
+
class Config:
|
|
27
|
+
frozen = True
|
|
28
|
+
smart_union = True
|
|
29
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ParameterProperties(UncheckedBaseModel):
|
|
10
|
+
type: str
|
|
11
|
+
description: typing.Optional[str] = None
|
|
12
|
+
|
|
13
|
+
if IS_PYDANTIC_V2:
|
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
15
|
+
else:
|
|
16
|
+
|
|
17
|
+
class Config:
|
|
18
|
+
frozen = True
|
|
19
|
+
smart_union = True
|
|
20
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from .parameter_properties import ParameterProperties
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ParametersSchema(UncheckedBaseModel):
|
|
11
|
+
type: typing.Optional[str] = None
|
|
12
|
+
properties: typing.Dict[str, ParameterProperties]
|
|
13
|
+
required: typing.Optional[typing.List[str]] = None
|
|
14
|
+
|
|
15
|
+
if IS_PYDANTIC_V2:
|
|
16
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
17
|
+
else:
|
|
18
|
+
|
|
19
|
+
class Config:
|
|
20
|
+
frozen = True
|
|
21
|
+
smart_union = True
|
|
22
|
+
extra = pydantic.Extra.allow
|
|
@@ -7,7 +7,7 @@ from .mcp_server_type import McpServerType
|
|
|
7
7
|
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class StdioServerConfig(UncheckedBaseModel):
|
|
11
11
|
server_name: str = pydantic.Field()
|
|
12
12
|
"""
|
|
13
13
|
The name of the server
|
|
@@ -24,6 +24,11 @@ class LocalServerConfig(UncheckedBaseModel):
|
|
|
24
24
|
The arguments to pass to the command
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
|
+
env: typing.Optional[typing.Dict[str, typing.Optional[str]]] = pydantic.Field(default=None)
|
|
28
|
+
"""
|
|
29
|
+
Environment variables to set
|
|
30
|
+
"""
|
|
31
|
+
|
|
27
32
|
if IS_PYDANTIC_V2:
|
|
28
33
|
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
29
34
|
else:
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class TagSchema(UncheckedBaseModel):
|
|
10
|
+
tag: str
|
|
11
|
+
|
|
12
|
+
if IS_PYDANTIC_V2:
|
|
13
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
14
|
+
else:
|
|
15
|
+
|
|
16
|
+
class Config:
|
|
17
|
+
frozen = True
|
|
18
|
+
smart_union = True
|
|
19
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ToolEnvVarSchema(UncheckedBaseModel):
|
|
10
|
+
created_at: str
|
|
11
|
+
description: typing.Optional[str] = None
|
|
12
|
+
is_deleted: bool
|
|
13
|
+
key: str
|
|
14
|
+
updated_at: str
|
|
15
|
+
value: str
|
|
16
|
+
|
|
17
|
+
if IS_PYDANTIC_V2:
|
|
18
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
19
|
+
else:
|
|
20
|
+
|
|
21
|
+
class Config:
|
|
22
|
+
frozen = True
|
|
23
|
+
smart_union = True
|
|
24
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from .parameters_schema import ParametersSchema
|
|
5
|
+
import typing
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ToolJsonSchema(UncheckedBaseModel):
|
|
11
|
+
name: str
|
|
12
|
+
description: str
|
|
13
|
+
parameters: ParametersSchema
|
|
14
|
+
type: typing.Optional[str] = None
|
|
15
|
+
required: typing.Optional[typing.List[str]] = None
|
|
16
|
+
|
|
17
|
+
if IS_PYDANTIC_V2:
|
|
18
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
19
|
+
else:
|
|
20
|
+
|
|
21
|
+
class Config:
|
|
22
|
+
frozen = True
|
|
23
|
+
smart_union = True
|
|
24
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
5
|
+
import typing
|
|
6
|
+
import pydantic
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class ToolRuleSchema(UncheckedBaseModel):
|
|
10
|
+
tool_name: str
|
|
11
|
+
type: str
|
|
12
|
+
|
|
13
|
+
if IS_PYDANTIC_V2:
|
|
14
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
15
|
+
else:
|
|
16
|
+
|
|
17
|
+
class Config:
|
|
18
|
+
frozen = True
|
|
19
|
+
smart_union = True
|
|
20
|
+
extra = pydantic.Extra.allow
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
from ..core.unchecked_base_model import UncheckedBaseModel
|
|
4
|
+
import typing
|
|
5
|
+
from .tool_json_schema import ToolJsonSchema
|
|
6
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2
|
|
7
|
+
import pydantic
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class ToolSchema(UncheckedBaseModel):
|
|
11
|
+
args_json_schema: typing.Optional[typing.Any] = None
|
|
12
|
+
created_at: str
|
|
13
|
+
description: str
|
|
14
|
+
is_deleted: bool
|
|
15
|
+
json_schema: ToolJsonSchema
|
|
16
|
+
name: str
|
|
17
|
+
return_char_limit: int
|
|
18
|
+
source_code: typing.Optional[str] = None
|
|
19
|
+
source_type: str
|
|
20
|
+
tags: typing.List[str]
|
|
21
|
+
tool_type: str
|
|
22
|
+
updated_at: str
|
|
23
|
+
|
|
24
|
+
if IS_PYDANTIC_V2:
|
|
25
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
26
|
+
else:
|
|
27
|
+
|
|
28
|
+
class Config:
|
|
29
|
+
frozen = True
|
|
30
|
+
smart_union = True
|
|
31
|
+
extra = pydantic.Extra.allow
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
letta_client/__init__.py,sha256=
|
|
1
|
+
letta_client/__init__.py,sha256=z0xhs3OI6QvwwA3zmsYmnhfPfvRTvGJ3UqVdEAhu4lc,63967
|
|
2
2
|
letta_client/agents/__init__.py,sha256=HMLlMwIDoMSMsE99OMGYmDQbdZcYWScYF2L1bW_2zKA,25036
|
|
3
3
|
letta_client/agents/blocks/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
|
4
4
|
letta_client/agents/blocks/client.py,sha256=u5zvutxoH_DqfSLWhRtNSRBC9_ezQDx682cxkxDz3JA,23822
|
|
5
|
-
letta_client/agents/client.py,sha256=
|
|
5
|
+
letta_client/agents/client.py,sha256=RCq2N7aO8gk_-dVwt5tP4ppKgiZ_i7hy4rPASyx2f5o,84696
|
|
6
6
|
letta_client/agents/context/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
|
7
7
|
letta_client/agents/context/client.py,sha256=GKKvoG4N_K8Biz9yDjeIHpFG0C8Cwc7tHmEX3pTL_9U,4815
|
|
8
8
|
letta_client/agents/core_memory/__init__.py,sha256=FTtvy8EDg9nNNg9WCatVgKTRYV8-_v1roeGPAKoa_pw,65
|
|
@@ -228,7 +228,7 @@ letta_client/blocks/client.py,sha256=LE9dsHaBxFLC3G035f0VpNDG7XKWRK8y9OXpeFCMvUw
|
|
|
228
228
|
letta_client/client.py,sha256=xdSrD4IkWokZHujowd1r7zESBoVgKGNvo6RqgZ3f0Fg,12808
|
|
229
229
|
letta_client/core/__init__.py,sha256=OKbX2aCZXgHCDUsCouqv-OiX32xA6eFFCKIUH9M5Vzk,1591
|
|
230
230
|
letta_client/core/api_error.py,sha256=RE8LELok2QCjABadECTvtDp7qejA1VmINCh6TbqPwSE,426
|
|
231
|
-
letta_client/core/client_wrapper.py,sha256=
|
|
231
|
+
letta_client/core/client_wrapper.py,sha256=uXelTu3YeqatjFoXGj1r-hO9jpxEJio3bejiqYRj00s,1997
|
|
232
232
|
letta_client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
|
233
233
|
letta_client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
|
|
234
234
|
letta_client/core/http_client.py,sha256=Z77OIxIbL4OAB2IDqjRq_sYa5yNYAWfmdhdCSSvh6Y4,19552
|
|
@@ -459,15 +459,19 @@ letta_client/templates/types/templates_create_agents_response_agents_item_tools_
|
|
|
459
459
|
letta_client/templates/types/templates_create_agents_response_agents_item_tools_item_tool_type.py,sha256=41qFb26ocOiXdzlnoef44J-fpZ1f9PUQFbBPwsoz6Ms,384
|
|
460
460
|
letta_client/templates/types/templates_create_agents_response_agents_item_updated_at.py,sha256=Md7WfCTT1_AGvyd24EeWzUibPvnrun9rhyxqCLeAURg,439
|
|
461
461
|
letta_client/templates/types/templates_create_agents_response_agents_item_updated_at_item.py,sha256=T3rYnv5m_cBAEPBnEjUkkHJLYtFZfXNMbb7a9FrIwKY,175
|
|
462
|
-
letta_client/tools/__init__.py,sha256=
|
|
463
|
-
letta_client/tools/client.py,sha256=
|
|
464
|
-
letta_client/tools/types/__init__.py,sha256=
|
|
465
|
-
letta_client/tools/types/
|
|
466
|
-
letta_client/types/
|
|
462
|
+
letta_client/tools/__init__.py,sha256=XsuAkxHDA-Z98gLNNW_fiEwFP3fP4XQipflrK2bHl8k,353
|
|
463
|
+
letta_client/tools/client.py,sha256=m_GRTYbqESVr21FuQ3WtpRcShqDPt8nupQu06aIJCLY,76942
|
|
464
|
+
letta_client/tools/types/__init__.py,sha256=R11LYBi6lxkud_DRyaHFUHtlnbfnEI93-SEo7FL4tzs,478
|
|
465
|
+
letta_client/tools/types/add_mcp_server_request.py,sha256=EieZjfOT95sjkpxXdqy7glpxF4J4J3fm6tlaHFnYk84,265
|
|
466
|
+
letta_client/tools/types/add_mcp_server_response_item.py,sha256=pb3A4IoP7Qpen0UDDniXrASYEJZWnYnnrZThtPkvZt4,270
|
|
467
|
+
letta_client/tools/types/delete_mcp_server_response_item.py,sha256=hKc4uehqcubO8BzpgMlvk2jJAjHXOWRM_zmWsCz_vZE,273
|
|
468
|
+
letta_client/tools/types/list_mcp_servers_response_value.py,sha256=AIoXu4bO8QNSU7zjL1jj0Rg4313wVtPaTt13W0aevLQ,273
|
|
469
|
+
letta_client/types/__init__.py,sha256=a1DEK3g5GnoJhHxV4Kxjj07gDYmjlYut0x9dyt1cyY4,17966
|
|
467
470
|
letta_client/types/action_model.py,sha256=y1e2XMv3skFaNJIBdYoBKgiORzGh05aOVvu-qVR9uHg,1240
|
|
468
471
|
letta_client/types/action_parameters_model.py,sha256=LgKf5aPZG3-OHGxFdXiSokIDgce8c02xPYIAY05VgW8,828
|
|
469
472
|
letta_client/types/action_response_model.py,sha256=yq2Fd9UU8j7vvtE3VqXUoRRvDzWcfJPj_95ynGdeHCs,824
|
|
470
473
|
letta_client/types/agent_environment_variable.py,sha256=vutZLcR0yETltgOZ7E_o9kR4vOdBxybVL9lzXSux75w,1698
|
|
474
|
+
letta_client/types/agent_schema.py,sha256=qo2okN6LjB65jpN-RmFYemi50aWV4DOOaWyB_Qz7z8Y,1786
|
|
471
475
|
letta_client/types/agent_state.py,sha256=hogE7T9E56HzOycCGuv-jmPVsmcA3w7sGsoMnWMW3IY,5196
|
|
472
476
|
letta_client/types/agent_state_tool_rules_item.py,sha256=qWQIVi8G-ulUjHJqkUDOZQdSN7aajyOxwg3Y7rBBrOs,448
|
|
473
477
|
letta_client/types/agent_type.py,sha256=BvztKbFTW_Acvc3QPIvzK7JGwSLie1V407byu-VZHz0,195
|
|
@@ -536,6 +540,7 @@ letta_client/types/conditional_tool_rule.py,sha256=R0nzgjpqedSPUWdBQuv-doiIgYTAZ
|
|
|
536
540
|
letta_client/types/conflict_error_body.py,sha256=Mena-q1jti6nv_7-xrp6sDb_5MXNKPGobHrhpnz9kpY,787
|
|
537
541
|
letta_client/types/context_window_overview.py,sha256=9pwiObSxu-SFyQ1pxSTlQiRatVAyFgqa6t0_qrrsGfU,2815
|
|
538
542
|
letta_client/types/continue_tool_rule.py,sha256=AIKTGsQrJdSNsMCqdSqMqjKS7s610vDO8taVEbSJ6Yc,867
|
|
543
|
+
letta_client/types/core_memory_block_schema.py,sha256=FAKcmH4B8EiJ6vltX6-dVstVzgznYUU4sOPUVnlFBOY,1062
|
|
539
544
|
letta_client/types/create_block.py,sha256=V57mbqUkh5c-HcDxmIiFVr3tNfoqx-WJ1GRQZPobbxI,1277
|
|
540
545
|
letta_client/types/dynamic_manager.py,sha256=5DRNqtUnjeTwOe5mkNB-SXItqLOfEX0avSrwsrJt1Aw,853
|
|
541
546
|
letta_client/types/e_2_b_sandbox_config.py,sha256=w3R4QpPjeie5aKw8sb_eKhl78J0k5vLCcATNS3Qaeyw,957
|
|
@@ -579,9 +584,8 @@ letta_client/types/letta_usage_statistics.py,sha256=0BHM3ArfwH6WVJNHYja7LI2k3BZ3
|
|
|
579
584
|
letta_client/types/llm_config.py,sha256=B-LJpzPB5RNSPG-cag65yTIWc0mbD7iKg77N6ejPL64,3045
|
|
580
585
|
letta_client/types/llm_config_model_endpoint_type.py,sha256=HOSM5kIZDCNAVCWmASvAk52K819plqGlD66yKQ1xFkI,620
|
|
581
586
|
letta_client/types/local_sandbox_config.py,sha256=jfe7akG_YrJJ8csLaLdev04Zg1x-PTN0XCAL4KifaZI,1387
|
|
582
|
-
letta_client/types/local_server_config.py,sha256=0tkHCooFWb0ciwCoUPkBbUiDnaFRvL8wiJc_ncM17Eg,945
|
|
583
587
|
letta_client/types/manager_type.py,sha256=hV271989JpEhJQH02MzLpJ34EsbGnyMlckbz2TXBc-E,184
|
|
584
|
-
letta_client/types/mcp_server_type.py,sha256=
|
|
588
|
+
letta_client/types/mcp_server_type.py,sha256=Hv45mKMPzmey2UVjwrTAvWXP1sDd13UwAtvtogBloLo,153
|
|
585
589
|
letta_client/types/mcp_tool.py,sha256=_GSTb0k8l-IUEflRkQ6-v45UnbTcA4Nv1N8sgmExJQ0,912
|
|
586
590
|
letta_client/types/memory.py,sha256=KD5MkDQB-vbRPT9f_-yFBWY1WUW_NWxYEI0IiflG6P8,1035
|
|
587
591
|
letta_client/types/message.py,sha256=dOue5njUr5YaxdGIsyBv1JZk_230v5XZXAgCYFtbz3U,3595
|
|
@@ -589,6 +593,7 @@ letta_client/types/message_create.py,sha256=x80xQYxC3IUHs7PKCqHfeJkHRh02dx0oOc0P
|
|
|
589
593
|
letta_client/types/message_create_content.py,sha256=N3W7IzbUk2RqEbL88noLCu4Bmbli5-yq35d0nfscGl8,185
|
|
590
594
|
letta_client/types/message_create_role.py,sha256=atjQEZ8iT4gTAmrFTFnRaM66f0MGsgfGq6hpx1Q-i44,159
|
|
591
595
|
letta_client/types/message_role.py,sha256=HKatrA1jt02oTObExloTY3rW8Urzn37kBTg0Z6MbwkQ,186
|
|
596
|
+
letta_client/types/message_schema.py,sha256=wnfvzbABcNlsmNNGTAaizPPbbPIQ7lxzRalTavl_TFw,914
|
|
592
597
|
letta_client/types/not_found_error_body.py,sha256=_1esSlUdkBx6CRs6aAIJrxzh3VZKEG0xzeLbxebBuy0,615
|
|
593
598
|
letta_client/types/not_found_error_body_message.py,sha256=Kc9xrVghgDATdPAGpTPnzyKe6ds5q8Vr6zcBU5lLcH4,309
|
|
594
599
|
letta_client/types/openai_types_chat_chat_completion_message_tool_call_param_function.py,sha256=glG5tG6g2uxP4R5jwsChkf3F0sb208uEbR-25dnrTiM,621
|
|
@@ -596,6 +601,8 @@ letta_client/types/openai_types_chat_chat_completion_named_tool_choice_param_fun
|
|
|
596
601
|
letta_client/types/openai_types_chat_completion_create_params_function.py,sha256=oTjYqRv8z6SMSdFgTl4W9oI-QUQxz8Unf4yn90sByss,721
|
|
597
602
|
letta_client/types/organization.py,sha256=vSXwqYTpxGZgpMTv8rw5jzklZnUYjS6yBTkEFNPNSrU,927
|
|
598
603
|
letta_client/types/organization_create.py,sha256=xlF1FgDRa7zpv49kVGWYchcSEUjPEsjF5_m2xHWb9VM,661
|
|
604
|
+
letta_client/types/parameter_properties.py,sha256=KVQGp_csoiNzyf9XsL083fwlX_a2Tc8GsCKyWB323C8,609
|
|
605
|
+
letta_client/types/parameters_schema.py,sha256=ptXcwjuaCwqRhfizeiWAsu3pqT87Jcj_P3YaEkL4asM,748
|
|
599
606
|
letta_client/types/passage.py,sha256=1OM19TyVCQEL1P3BC58hmzWfawZM4vejiKr0P11dOUk,3034
|
|
600
607
|
letta_client/types/pip_requirement.py,sha256=Hmh7VpJhdSfFkafh6QwAehCp0MQUBXv1YAoYP-2wV2M,773
|
|
601
608
|
letta_client/types/provider.py,sha256=RvdE9dzGFJ4hcmyvk2xeO7RNpxQvXhB_S9DNy8t_z-E,1053
|
|
@@ -616,10 +623,12 @@ letta_client/types/sandbox_environment_variable_update.py,sha256=JMkX6nzvcBNEemj
|
|
|
616
623
|
letta_client/types/sandbox_type.py,sha256=XSWmX3JIFFrDPQ4i89E8LauXY8kjmJEtaz6e_JheGm4,151
|
|
617
624
|
letta_client/types/source.py,sha256=7tLptZ4AZrvRPF6NqToM4Vf9i7TosS2_Ydks4zfvZx4,2239
|
|
618
625
|
letta_client/types/sse_server_config.py,sha256=b-h5FLm5MELZ5A9bwZt-02Zx_f3UbfKAQS--yHQVOQU,844
|
|
626
|
+
letta_client/types/stdio_server_config.py,sha256=dEQ7bguiLikGemLxYZJ3JCmmEQgAMsSPO_P52oHZSl0,1091
|
|
619
627
|
letta_client/types/step.py,sha256=XE98vMiU34dgUxLPvmJLdp9iWFPjg6E2Pb8xNSURMMg,2988
|
|
620
628
|
letta_client/types/supervisor_manager.py,sha256=VdR1ySp4k43apxM8Bb5uNoBvADsvz8oMEEtDy2F5K6M,676
|
|
621
629
|
letta_client/types/system_message.py,sha256=E7ExEVt5Y1p3g-fq1t--Zxr0148v_PRs8DIfsSDcXzE,1281
|
|
622
630
|
letta_client/types/system_message_content.py,sha256=fePw_p7NZclJLdnZWCG392knGx2XemMrtWexZqoyYkA,238
|
|
631
|
+
letta_client/types/tag_schema.py,sha256=FEszKlRD2FqezKlX99OLqTqf46dONlcGPo1m43osdNo,553
|
|
623
632
|
letta_client/types/terminal_tool_rule.py,sha256=82a7AnohOqCFBSOt7OwsKeh7gHgq8KTlgojxlm3t76E,863
|
|
624
633
|
letta_client/types/text_content.py,sha256=Z8UL4Sqqq2qClKU_nCgR9XFCj3dwYyhZMmvnnz1F0AE,670
|
|
625
634
|
letta_client/types/tool.py,sha256=xXKWpxfzUtw7OjLcjnil6GeFiVrFvk9gtaYHWUM-7AU,2510
|
|
@@ -628,10 +637,14 @@ letta_client/types/tool_call_delta.py,sha256=wGeZwJ9pwYHD5-f4Unf5-vJqefK40eHw9i0
|
|
|
628
637
|
letta_client/types/tool_call_message.py,sha256=vc-Bv_H1eNLAIJqyCI4glj964h87iosTLKFgxWpA2wM,1090
|
|
629
638
|
letta_client/types/tool_call_message_tool_call.py,sha256=twtq5-vZIeh1nShqm8iTCN9YFtY7LUIL-bFYuUfhF1o,219
|
|
630
639
|
letta_client/types/tool_create.py,sha256=VSMd23Kkd77SPbLv2oRHEzXqR2Eexc0ervjxXYLHiqc,1522
|
|
640
|
+
letta_client/types/tool_env_var_schema.py,sha256=TgH1mM9rkfY3ci__at0tZDJpn7G6G92tzussSoviZ7Y,681
|
|
641
|
+
letta_client/types/tool_json_schema.py,sha256=EgCxNOxeoF4y_-BDLAp6z_qcxTc87w_uSuZdjZpn3Gk,754
|
|
631
642
|
letta_client/types/tool_return.py,sha256=f-6zaRo8Bwl0i0Q0rHl8vKOfzymFHN_tVRoC2lMWksI,984
|
|
632
643
|
letta_client/types/tool_return_message.py,sha256=MeCDV12wej629vX9opp7htj0fXE02Ord5fvp68X2vpU,1585
|
|
633
644
|
letta_client/types/tool_return_message_status.py,sha256=FvFOMaG9mnmgnHi2UBQVQQMtHFabbWnQnHTxGUDgVl0,167
|
|
634
645
|
letta_client/types/tool_return_status.py,sha256=TQjwYprn5F_jU9kIbrtiyk7Gw2SjcmFFZLjFbGDpBM0,160
|
|
646
|
+
letta_client/types/tool_rule_schema.py,sha256=cuOWIHHG63nG-EVYz4qV9psQ8MH0ujmLGjHiPVV-3Kk,578
|
|
647
|
+
letta_client/types/tool_schema.py,sha256=WNDalV7aeaEzJH5TND5TvZ48zTAqwZ-8MEAzYbgvjW0,910
|
|
635
648
|
letta_client/types/tool_type.py,sha256=v6DX7qGAbg9t4HZTa9GBuzehNDCW3NkD6Zi3Z1teEKI,336
|
|
636
649
|
letta_client/types/update_assistant_message.py,sha256=D-51o8uXk3X_2Fb2zJ4KoMeRxPiDWaCb3ugRfjBMCTI,878
|
|
637
650
|
letta_client/types/update_assistant_message_content.py,sha256=rh3DP_SpxyBNnf0EDtoaKmPIPV-cXRSFju33NbHgeF0,247
|
|
@@ -657,6 +670,6 @@ letta_client/voice/__init__.py,sha256=ZrZEuXIukVGhsfM-i0dIFfqjeSOBMPeEgDva7Vvnip
|
|
|
657
670
|
letta_client/voice/client.py,sha256=O38dLq__WTwLPlFTtvw1hgqaPYK9alds_ft12Bnp5fs,6475
|
|
658
671
|
letta_client/voice/types/__init__.py,sha256=hBLJcrom99DkDxxsVRU2ni8kPx6SsCy8gtAJvNOz26w,199
|
|
659
672
|
letta_client/voice/types/create_voice_chat_completions_request.py,sha256=K4__83rXRCshfdobyAmH-5fUDJQ_PeSQetTUeC4Abk0,381
|
|
660
|
-
letta_client-0.1.
|
|
661
|
-
letta_client-0.1.
|
|
662
|
-
letta_client-0.1.
|
|
673
|
+
letta_client-0.1.70.dist-info/METADATA,sha256=ps10hxkh5MC80-Pu9sjm4US1CBQXL7OdOkzz_S2mRmA,4942
|
|
674
|
+
letta_client-0.1.70.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
|
675
|
+
letta_client-0.1.70.dist-info/RECORD,,
|
|
File without changes
|