letta-client 0.1.299__py3-none-any.whl → 0.1.301__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/agents/client.py +0 -100
- letta_client/agents/raw_client.py +0 -122
- letta_client/agents/tools/client.py +38 -12
- letta_client/agents/tools/raw_client.py +74 -12
- letta_client/client.py +45 -0
- letta_client/core/client_wrapper.py +2 -2
- {letta_client-0.1.299.dist-info → letta_client-0.1.301.dist-info}/METADATA +1 -1
- {letta_client-0.1.299.dist-info → letta_client-0.1.301.dist-info}/RECORD +9 -9
- {letta_client-0.1.299.dist-info → letta_client-0.1.301.dist-info}/WHEEL +0 -0
letta_client/agents/client.py
CHANGED
|
@@ -844,52 +844,6 @@ class AgentsClient:
|
|
|
844
844
|
)
|
|
845
845
|
return _response.data
|
|
846
846
|
|
|
847
|
-
def modify_approval(
|
|
848
|
-
self,
|
|
849
|
-
agent_id: str,
|
|
850
|
-
tool_name: str,
|
|
851
|
-
*,
|
|
852
|
-
requires_approval: bool,
|
|
853
|
-
request_options: typing.Optional[RequestOptions] = None,
|
|
854
|
-
) -> AgentState:
|
|
855
|
-
"""
|
|
856
|
-
Attach a tool to an agent.
|
|
857
|
-
|
|
858
|
-
Parameters
|
|
859
|
-
----------
|
|
860
|
-
agent_id : str
|
|
861
|
-
|
|
862
|
-
tool_name : str
|
|
863
|
-
|
|
864
|
-
requires_approval : bool
|
|
865
|
-
|
|
866
|
-
request_options : typing.Optional[RequestOptions]
|
|
867
|
-
Request-specific configuration.
|
|
868
|
-
|
|
869
|
-
Returns
|
|
870
|
-
-------
|
|
871
|
-
AgentState
|
|
872
|
-
Successful Response
|
|
873
|
-
|
|
874
|
-
Examples
|
|
875
|
-
--------
|
|
876
|
-
from letta_client import Letta
|
|
877
|
-
|
|
878
|
-
client = Letta(
|
|
879
|
-
project="YOUR_PROJECT",
|
|
880
|
-
token="YOUR_TOKEN",
|
|
881
|
-
)
|
|
882
|
-
client.agents.modify_approval(
|
|
883
|
-
agent_id="agent_id",
|
|
884
|
-
tool_name="tool_name",
|
|
885
|
-
requires_approval=True,
|
|
886
|
-
)
|
|
887
|
-
"""
|
|
888
|
-
_response = self._raw_client.modify_approval(
|
|
889
|
-
agent_id, tool_name, requires_approval=requires_approval, request_options=request_options
|
|
890
|
-
)
|
|
891
|
-
return _response.data
|
|
892
|
-
|
|
893
847
|
def list_agent_files(
|
|
894
848
|
self,
|
|
895
849
|
agent_id: str,
|
|
@@ -1914,60 +1868,6 @@ class AsyncAgentsClient:
|
|
|
1914
1868
|
)
|
|
1915
1869
|
return _response.data
|
|
1916
1870
|
|
|
1917
|
-
async def modify_approval(
|
|
1918
|
-
self,
|
|
1919
|
-
agent_id: str,
|
|
1920
|
-
tool_name: str,
|
|
1921
|
-
*,
|
|
1922
|
-
requires_approval: bool,
|
|
1923
|
-
request_options: typing.Optional[RequestOptions] = None,
|
|
1924
|
-
) -> AgentState:
|
|
1925
|
-
"""
|
|
1926
|
-
Attach a tool to an agent.
|
|
1927
|
-
|
|
1928
|
-
Parameters
|
|
1929
|
-
----------
|
|
1930
|
-
agent_id : str
|
|
1931
|
-
|
|
1932
|
-
tool_name : str
|
|
1933
|
-
|
|
1934
|
-
requires_approval : bool
|
|
1935
|
-
|
|
1936
|
-
request_options : typing.Optional[RequestOptions]
|
|
1937
|
-
Request-specific configuration.
|
|
1938
|
-
|
|
1939
|
-
Returns
|
|
1940
|
-
-------
|
|
1941
|
-
AgentState
|
|
1942
|
-
Successful Response
|
|
1943
|
-
|
|
1944
|
-
Examples
|
|
1945
|
-
--------
|
|
1946
|
-
import asyncio
|
|
1947
|
-
|
|
1948
|
-
from letta_client import AsyncLetta
|
|
1949
|
-
|
|
1950
|
-
client = AsyncLetta(
|
|
1951
|
-
project="YOUR_PROJECT",
|
|
1952
|
-
token="YOUR_TOKEN",
|
|
1953
|
-
)
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
async def main() -> None:
|
|
1957
|
-
await client.agents.modify_approval(
|
|
1958
|
-
agent_id="agent_id",
|
|
1959
|
-
tool_name="tool_name",
|
|
1960
|
-
requires_approval=True,
|
|
1961
|
-
)
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
asyncio.run(main())
|
|
1965
|
-
"""
|
|
1966
|
-
_response = await self._raw_client.modify_approval(
|
|
1967
|
-
agent_id, tool_name, requires_approval=requires_approval, request_options=request_options
|
|
1968
|
-
)
|
|
1969
|
-
return _response.data
|
|
1970
|
-
|
|
1971
1871
|
async def list_agent_files(
|
|
1972
1872
|
self,
|
|
1973
1873
|
agent_id: str,
|
|
@@ -981,67 +981,6 @@ class RawAgentsClient:
|
|
|
981
981
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
982
982
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
983
983
|
|
|
984
|
-
def modify_approval(
|
|
985
|
-
self,
|
|
986
|
-
agent_id: str,
|
|
987
|
-
tool_name: str,
|
|
988
|
-
*,
|
|
989
|
-
requires_approval: bool,
|
|
990
|
-
request_options: typing.Optional[RequestOptions] = None,
|
|
991
|
-
) -> HttpResponse[AgentState]:
|
|
992
|
-
"""
|
|
993
|
-
Attach a tool to an agent.
|
|
994
|
-
|
|
995
|
-
Parameters
|
|
996
|
-
----------
|
|
997
|
-
agent_id : str
|
|
998
|
-
|
|
999
|
-
tool_name : str
|
|
1000
|
-
|
|
1001
|
-
requires_approval : bool
|
|
1002
|
-
|
|
1003
|
-
request_options : typing.Optional[RequestOptions]
|
|
1004
|
-
Request-specific configuration.
|
|
1005
|
-
|
|
1006
|
-
Returns
|
|
1007
|
-
-------
|
|
1008
|
-
HttpResponse[AgentState]
|
|
1009
|
-
Successful Response
|
|
1010
|
-
"""
|
|
1011
|
-
_response = self._client_wrapper.httpx_client.request(
|
|
1012
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(tool_name)}",
|
|
1013
|
-
method="PATCH",
|
|
1014
|
-
params={
|
|
1015
|
-
"requires_approval": requires_approval,
|
|
1016
|
-
},
|
|
1017
|
-
request_options=request_options,
|
|
1018
|
-
)
|
|
1019
|
-
try:
|
|
1020
|
-
if 200 <= _response.status_code < 300:
|
|
1021
|
-
_data = typing.cast(
|
|
1022
|
-
AgentState,
|
|
1023
|
-
construct_type(
|
|
1024
|
-
type_=AgentState, # type: ignore
|
|
1025
|
-
object_=_response.json(),
|
|
1026
|
-
),
|
|
1027
|
-
)
|
|
1028
|
-
return HttpResponse(response=_response, data=_data)
|
|
1029
|
-
if _response.status_code == 422:
|
|
1030
|
-
raise UnprocessableEntityError(
|
|
1031
|
-
headers=dict(_response.headers),
|
|
1032
|
-
body=typing.cast(
|
|
1033
|
-
HttpValidationError,
|
|
1034
|
-
construct_type(
|
|
1035
|
-
type_=HttpValidationError, # type: ignore
|
|
1036
|
-
object_=_response.json(),
|
|
1037
|
-
),
|
|
1038
|
-
),
|
|
1039
|
-
)
|
|
1040
|
-
_response_json = _response.json()
|
|
1041
|
-
except JSONDecodeError:
|
|
1042
|
-
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1043
|
-
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1044
|
-
|
|
1045
984
|
def list_agent_files(
|
|
1046
985
|
self,
|
|
1047
986
|
agent_id: str,
|
|
@@ -2185,67 +2124,6 @@ class AsyncRawAgentsClient:
|
|
|
2185
2124
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2186
2125
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2187
2126
|
|
|
2188
|
-
async def modify_approval(
|
|
2189
|
-
self,
|
|
2190
|
-
agent_id: str,
|
|
2191
|
-
tool_name: str,
|
|
2192
|
-
*,
|
|
2193
|
-
requires_approval: bool,
|
|
2194
|
-
request_options: typing.Optional[RequestOptions] = None,
|
|
2195
|
-
) -> AsyncHttpResponse[AgentState]:
|
|
2196
|
-
"""
|
|
2197
|
-
Attach a tool to an agent.
|
|
2198
|
-
|
|
2199
|
-
Parameters
|
|
2200
|
-
----------
|
|
2201
|
-
agent_id : str
|
|
2202
|
-
|
|
2203
|
-
tool_name : str
|
|
2204
|
-
|
|
2205
|
-
requires_approval : bool
|
|
2206
|
-
|
|
2207
|
-
request_options : typing.Optional[RequestOptions]
|
|
2208
|
-
Request-specific configuration.
|
|
2209
|
-
|
|
2210
|
-
Returns
|
|
2211
|
-
-------
|
|
2212
|
-
AsyncHttpResponse[AgentState]
|
|
2213
|
-
Successful Response
|
|
2214
|
-
"""
|
|
2215
|
-
_response = await self._client_wrapper.httpx_client.request(
|
|
2216
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(tool_name)}",
|
|
2217
|
-
method="PATCH",
|
|
2218
|
-
params={
|
|
2219
|
-
"requires_approval": requires_approval,
|
|
2220
|
-
},
|
|
2221
|
-
request_options=request_options,
|
|
2222
|
-
)
|
|
2223
|
-
try:
|
|
2224
|
-
if 200 <= _response.status_code < 300:
|
|
2225
|
-
_data = typing.cast(
|
|
2226
|
-
AgentState,
|
|
2227
|
-
construct_type(
|
|
2228
|
-
type_=AgentState, # type: ignore
|
|
2229
|
-
object_=_response.json(),
|
|
2230
|
-
),
|
|
2231
|
-
)
|
|
2232
|
-
return AsyncHttpResponse(response=_response, data=_data)
|
|
2233
|
-
if _response.status_code == 422:
|
|
2234
|
-
raise UnprocessableEntityError(
|
|
2235
|
-
headers=dict(_response.headers),
|
|
2236
|
-
body=typing.cast(
|
|
2237
|
-
HttpValidationError,
|
|
2238
|
-
construct_type(
|
|
2239
|
-
type_=HttpValidationError, # type: ignore
|
|
2240
|
-
object_=_response.json(),
|
|
2241
|
-
),
|
|
2242
|
-
),
|
|
2243
|
-
)
|
|
2244
|
-
_response_json = _response.json()
|
|
2245
|
-
except JSONDecodeError:
|
|
2246
|
-
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2247
|
-
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2248
|
-
|
|
2249
2127
|
async def list_agent_files(
|
|
2250
2128
|
self,
|
|
2251
2129
|
agent_id: str,
|
|
@@ -128,21 +128,31 @@ class ToolsClient:
|
|
|
128
128
|
return _response.data
|
|
129
129
|
|
|
130
130
|
def modify_approval(
|
|
131
|
-
self,
|
|
132
|
-
|
|
131
|
+
self,
|
|
132
|
+
agent_id: str,
|
|
133
|
+
tool_name: str,
|
|
134
|
+
*,
|
|
135
|
+
requires_approval: bool,
|
|
136
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
137
|
+
) -> AgentState:
|
|
133
138
|
"""
|
|
139
|
+
Attach a tool to an agent.
|
|
140
|
+
|
|
134
141
|
Parameters
|
|
135
142
|
----------
|
|
136
143
|
agent_id : str
|
|
137
144
|
|
|
138
|
-
|
|
145
|
+
tool_name : str
|
|
146
|
+
|
|
147
|
+
requires_approval : bool
|
|
139
148
|
|
|
140
149
|
request_options : typing.Optional[RequestOptions]
|
|
141
150
|
Request-specific configuration.
|
|
142
151
|
|
|
143
152
|
Returns
|
|
144
153
|
-------
|
|
145
|
-
|
|
154
|
+
AgentState
|
|
155
|
+
Successful Response
|
|
146
156
|
|
|
147
157
|
Examples
|
|
148
158
|
--------
|
|
@@ -154,10 +164,13 @@ class ToolsClient:
|
|
|
154
164
|
)
|
|
155
165
|
client.agents.tools.modify_approval(
|
|
156
166
|
agent_id="agent_id",
|
|
157
|
-
|
|
167
|
+
tool_name="tool_name",
|
|
168
|
+
requires_approval=True,
|
|
158
169
|
)
|
|
159
170
|
"""
|
|
160
|
-
_response = self._raw_client.modify_approval(
|
|
171
|
+
_response = self._raw_client.modify_approval(
|
|
172
|
+
agent_id, tool_name, requires_approval=requires_approval, request_options=request_options
|
|
173
|
+
)
|
|
161
174
|
return _response.data
|
|
162
175
|
|
|
163
176
|
|
|
@@ -306,21 +319,31 @@ class AsyncToolsClient:
|
|
|
306
319
|
return _response.data
|
|
307
320
|
|
|
308
321
|
async def modify_approval(
|
|
309
|
-
self,
|
|
310
|
-
|
|
322
|
+
self,
|
|
323
|
+
agent_id: str,
|
|
324
|
+
tool_name: str,
|
|
325
|
+
*,
|
|
326
|
+
requires_approval: bool,
|
|
327
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
328
|
+
) -> AgentState:
|
|
311
329
|
"""
|
|
330
|
+
Attach a tool to an agent.
|
|
331
|
+
|
|
312
332
|
Parameters
|
|
313
333
|
----------
|
|
314
334
|
agent_id : str
|
|
315
335
|
|
|
316
|
-
|
|
336
|
+
tool_name : str
|
|
337
|
+
|
|
338
|
+
requires_approval : bool
|
|
317
339
|
|
|
318
340
|
request_options : typing.Optional[RequestOptions]
|
|
319
341
|
Request-specific configuration.
|
|
320
342
|
|
|
321
343
|
Returns
|
|
322
344
|
-------
|
|
323
|
-
|
|
345
|
+
AgentState
|
|
346
|
+
Successful Response
|
|
324
347
|
|
|
325
348
|
Examples
|
|
326
349
|
--------
|
|
@@ -337,11 +360,14 @@ class AsyncToolsClient:
|
|
|
337
360
|
async def main() -> None:
|
|
338
361
|
await client.agents.tools.modify_approval(
|
|
339
362
|
agent_id="agent_id",
|
|
340
|
-
|
|
363
|
+
tool_name="tool_name",
|
|
364
|
+
requires_approval=True,
|
|
341
365
|
)
|
|
342
366
|
|
|
343
367
|
|
|
344
368
|
asyncio.run(main())
|
|
345
369
|
"""
|
|
346
|
-
_response = await self._raw_client.modify_approval(
|
|
370
|
+
_response = await self._raw_client.modify_approval(
|
|
371
|
+
agent_id, tool_name, requires_approval=requires_approval, request_options=request_options
|
|
372
|
+
)
|
|
347
373
|
return _response.data
|
|
@@ -171,30 +171,61 @@ class RawToolsClient:
|
|
|
171
171
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
172
172
|
|
|
173
173
|
def modify_approval(
|
|
174
|
-
self,
|
|
175
|
-
|
|
174
|
+
self,
|
|
175
|
+
agent_id: str,
|
|
176
|
+
tool_name: str,
|
|
177
|
+
*,
|
|
178
|
+
requires_approval: bool,
|
|
179
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
180
|
+
) -> HttpResponse[AgentState]:
|
|
176
181
|
"""
|
|
182
|
+
Attach a tool to an agent.
|
|
183
|
+
|
|
177
184
|
Parameters
|
|
178
185
|
----------
|
|
179
186
|
agent_id : str
|
|
180
187
|
|
|
181
|
-
|
|
188
|
+
tool_name : str
|
|
189
|
+
|
|
190
|
+
requires_approval : bool
|
|
182
191
|
|
|
183
192
|
request_options : typing.Optional[RequestOptions]
|
|
184
193
|
Request-specific configuration.
|
|
185
194
|
|
|
186
195
|
Returns
|
|
187
196
|
-------
|
|
188
|
-
HttpResponse[
|
|
197
|
+
HttpResponse[AgentState]
|
|
198
|
+
Successful Response
|
|
189
199
|
"""
|
|
190
200
|
_response = self._client_wrapper.httpx_client.request(
|
|
191
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(
|
|
201
|
+
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(tool_name)}",
|
|
192
202
|
method="PATCH",
|
|
203
|
+
params={
|
|
204
|
+
"requires_approval": requires_approval,
|
|
205
|
+
},
|
|
193
206
|
request_options=request_options,
|
|
194
207
|
)
|
|
195
208
|
try:
|
|
196
209
|
if 200 <= _response.status_code < 300:
|
|
197
|
-
|
|
210
|
+
_data = typing.cast(
|
|
211
|
+
AgentState,
|
|
212
|
+
construct_type(
|
|
213
|
+
type_=AgentState, # type: ignore
|
|
214
|
+
object_=_response.json(),
|
|
215
|
+
),
|
|
216
|
+
)
|
|
217
|
+
return HttpResponse(response=_response, data=_data)
|
|
218
|
+
if _response.status_code == 422:
|
|
219
|
+
raise UnprocessableEntityError(
|
|
220
|
+
headers=dict(_response.headers),
|
|
221
|
+
body=typing.cast(
|
|
222
|
+
HttpValidationError,
|
|
223
|
+
construct_type(
|
|
224
|
+
type_=HttpValidationError, # type: ignore
|
|
225
|
+
object_=_response.json(),
|
|
226
|
+
),
|
|
227
|
+
),
|
|
228
|
+
)
|
|
198
229
|
_response_json = _response.json()
|
|
199
230
|
except JSONDecodeError:
|
|
200
231
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
@@ -357,30 +388,61 @@ class AsyncRawToolsClient:
|
|
|
357
388
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
358
389
|
|
|
359
390
|
async def modify_approval(
|
|
360
|
-
self,
|
|
361
|
-
|
|
391
|
+
self,
|
|
392
|
+
agent_id: str,
|
|
393
|
+
tool_name: str,
|
|
394
|
+
*,
|
|
395
|
+
requires_approval: bool,
|
|
396
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
397
|
+
) -> AsyncHttpResponse[AgentState]:
|
|
362
398
|
"""
|
|
399
|
+
Attach a tool to an agent.
|
|
400
|
+
|
|
363
401
|
Parameters
|
|
364
402
|
----------
|
|
365
403
|
agent_id : str
|
|
366
404
|
|
|
367
|
-
|
|
405
|
+
tool_name : str
|
|
406
|
+
|
|
407
|
+
requires_approval : bool
|
|
368
408
|
|
|
369
409
|
request_options : typing.Optional[RequestOptions]
|
|
370
410
|
Request-specific configuration.
|
|
371
411
|
|
|
372
412
|
Returns
|
|
373
413
|
-------
|
|
374
|
-
AsyncHttpResponse[
|
|
414
|
+
AsyncHttpResponse[AgentState]
|
|
415
|
+
Successful Response
|
|
375
416
|
"""
|
|
376
417
|
_response = await self._client_wrapper.httpx_client.request(
|
|
377
|
-
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(
|
|
418
|
+
f"v1/agents/{jsonable_encoder(agent_id)}/tools/approval/{jsonable_encoder(tool_name)}",
|
|
378
419
|
method="PATCH",
|
|
420
|
+
params={
|
|
421
|
+
"requires_approval": requires_approval,
|
|
422
|
+
},
|
|
379
423
|
request_options=request_options,
|
|
380
424
|
)
|
|
381
425
|
try:
|
|
382
426
|
if 200 <= _response.status_code < 300:
|
|
383
|
-
|
|
427
|
+
_data = typing.cast(
|
|
428
|
+
AgentState,
|
|
429
|
+
construct_type(
|
|
430
|
+
type_=AgentState, # type: ignore
|
|
431
|
+
object_=_response.json(),
|
|
432
|
+
),
|
|
433
|
+
)
|
|
434
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
435
|
+
if _response.status_code == 422:
|
|
436
|
+
raise UnprocessableEntityError(
|
|
437
|
+
headers=dict(_response.headers),
|
|
438
|
+
body=typing.cast(
|
|
439
|
+
HttpValidationError,
|
|
440
|
+
construct_type(
|
|
441
|
+
type_=HttpValidationError, # type: ignore
|
|
442
|
+
object_=_response.json(),
|
|
443
|
+
),
|
|
444
|
+
),
|
|
445
|
+
)
|
|
384
446
|
_response_json = _response.json()
|
|
385
447
|
except JSONDecodeError:
|
|
386
448
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
letta_client/client.py
CHANGED
|
@@ -8,6 +8,7 @@ from .base_client import AsyncLettaBase, LettaBase
|
|
|
8
8
|
from .core.request_options import RequestOptions
|
|
9
9
|
from .tools.client import ToolsClient as ToolsClientBase
|
|
10
10
|
from .tools.client import AsyncToolsClient as AsyncToolsClientBase
|
|
11
|
+
from .types.npm_requirement import NpmRequirement
|
|
11
12
|
from .types.pip_requirement import PipRequirement
|
|
12
13
|
from .types.tool import Tool
|
|
13
14
|
|
|
@@ -144,6 +145,8 @@ class ToolsClient(ToolsClientBase):
|
|
|
144
145
|
] = OMIT,
|
|
145
146
|
return_char_limit: typing.Optional[int] = OMIT,
|
|
146
147
|
pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
|
|
148
|
+
npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
|
|
149
|
+
default_requires_approval: typing.Optional[bool] = OMIT,
|
|
147
150
|
request_options: typing.Optional[RequestOptions] = None,
|
|
148
151
|
) -> Tool:
|
|
149
152
|
"""
|
|
@@ -175,6 +178,12 @@ class ToolsClient(ToolsClientBase):
|
|
|
175
178
|
pip_requirements : typing.Optional[typing.Sequence[PipRequirement]]
|
|
176
179
|
Optional list of pip packages required by this tool.
|
|
177
180
|
|
|
181
|
+
npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
|
|
182
|
+
Optional list of npm packages required by this tool.
|
|
183
|
+
|
|
184
|
+
default_requires_approval : typing.Optional[bool]
|
|
185
|
+
Whether or not to require approval before executing this tool.
|
|
186
|
+
|
|
178
187
|
request_options : typing.Optional[RequestOptions]
|
|
179
188
|
Request-specific configuration.
|
|
180
189
|
|
|
@@ -221,6 +230,8 @@ class ToolsClient(ToolsClientBase):
|
|
|
221
230
|
json_schema=json_schema,
|
|
222
231
|
return_char_limit=return_char_limit,
|
|
223
232
|
pip_requirements=pip_requirements,
|
|
233
|
+
npm_requirements=npm_requirements,
|
|
234
|
+
default_requires_approval=default_requires_approval,
|
|
224
235
|
request_options=request_options,
|
|
225
236
|
)
|
|
226
237
|
|
|
@@ -238,6 +249,8 @@ class ToolsClient(ToolsClientBase):
|
|
|
238
249
|
] = OMIT,
|
|
239
250
|
return_char_limit: typing.Optional[int] = OMIT,
|
|
240
251
|
pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
|
|
252
|
+
npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
|
|
253
|
+
default_requires_approval: typing.Optional[bool] = OMIT,
|
|
241
254
|
request_options: typing.Optional[RequestOptions] = None,
|
|
242
255
|
) -> Tool:
|
|
243
256
|
"""
|
|
@@ -269,6 +282,12 @@ class ToolsClient(ToolsClientBase):
|
|
|
269
282
|
pip_requirements : typing.Optional[typing.Sequence[PipRequirement]]
|
|
270
283
|
Optional list of pip packages required by this tool.
|
|
271
284
|
|
|
285
|
+
npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
|
|
286
|
+
Optional list of npm packages required by this tool.
|
|
287
|
+
|
|
288
|
+
default_requires_approval : typing.Optional[bool]
|
|
289
|
+
Whether or not to require approval before executing this tool.
|
|
290
|
+
|
|
272
291
|
request_options : typing.Optional[RequestOptions]
|
|
273
292
|
Request-specific configuration.
|
|
274
293
|
|
|
@@ -315,6 +334,8 @@ class ToolsClient(ToolsClientBase):
|
|
|
315
334
|
json_schema=json_schema,
|
|
316
335
|
return_char_limit=return_char_limit,
|
|
317
336
|
pip_requirements=pip_requirements,
|
|
337
|
+
npm_requirements=npm_requirements,
|
|
338
|
+
default_requires_approval=default_requires_approval,
|
|
318
339
|
request_options=request_options,
|
|
319
340
|
)
|
|
320
341
|
|
|
@@ -391,6 +412,8 @@ class ToolsClient(ToolsClientBase):
|
|
|
391
412
|
json_schema=tool.json_schema or OMIT,
|
|
392
413
|
return_char_limit=tool.return_char_limit or OMIT,
|
|
393
414
|
pip_requirements=tool.pip_requirements or OMIT,
|
|
415
|
+
npm_requirements=tool.npm_requirements or OMIT,
|
|
416
|
+
default_requires_approval=tool.default_requires_approval or OMIT,
|
|
394
417
|
request_options=request_options,
|
|
395
418
|
)
|
|
396
419
|
|
|
@@ -410,6 +433,8 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
410
433
|
] = OMIT,
|
|
411
434
|
return_char_limit: typing.Optional[int] = OMIT,
|
|
412
435
|
pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
|
|
436
|
+
npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
|
|
437
|
+
default_requires_approval: typing.Optional[bool] = OMIT,
|
|
413
438
|
request_options: typing.Optional[RequestOptions] = None,
|
|
414
439
|
) -> Tool:
|
|
415
440
|
"""
|
|
@@ -441,6 +466,12 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
441
466
|
pip_requirements : typing.Optional[typing.Sequence[PipRequirement]]
|
|
442
467
|
Optional list of pip packages required by this tool.
|
|
443
468
|
|
|
469
|
+
npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
|
|
470
|
+
Optional list of npm packages required by this tool.
|
|
471
|
+
|
|
472
|
+
default_requires_approval : typing.Optional[bool]
|
|
473
|
+
Whether or not to require approval before executing this tool.
|
|
474
|
+
|
|
444
475
|
request_options : typing.Optional[RequestOptions]
|
|
445
476
|
Request-specific configuration.
|
|
446
477
|
|
|
@@ -487,6 +518,8 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
487
518
|
json_schema=json_schema,
|
|
488
519
|
return_char_limit=return_char_limit,
|
|
489
520
|
pip_requirements=pip_requirements,
|
|
521
|
+
npm_requirements=npm_requirements,
|
|
522
|
+
default_requires_approval=default_requires_approval,
|
|
490
523
|
request_options=request_options,
|
|
491
524
|
)
|
|
492
525
|
|
|
@@ -504,6 +537,8 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
504
537
|
] = OMIT,
|
|
505
538
|
return_char_limit: typing.Optional[int] = OMIT,
|
|
506
539
|
pip_requirements: typing.Optional[typing.Sequence[PipRequirement]] = OMIT,
|
|
540
|
+
npm_requirements: typing.Optional[typing.Sequence[NpmRequirement]] = OMIT,
|
|
541
|
+
default_requires_approval: typing.Optional[bool] = OMIT,
|
|
507
542
|
request_options: typing.Optional[RequestOptions] = None,
|
|
508
543
|
) -> Tool:
|
|
509
544
|
"""
|
|
@@ -535,6 +570,12 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
535
570
|
pip_requirements : typing.Optional[typing.Sequence[PipRequirement]]
|
|
536
571
|
Optional list of pip packages required by this tool.
|
|
537
572
|
|
|
573
|
+
npm_requirements : typing.Optional[typing.Sequence[NpmRequirement]]
|
|
574
|
+
Optional list of npm packages required by this tool.
|
|
575
|
+
|
|
576
|
+
default_requires_approval : typing.Optional[bool]
|
|
577
|
+
Whether or not to require approval before executing this tool.
|
|
578
|
+
|
|
538
579
|
request_options : typing.Optional[RequestOptions]
|
|
539
580
|
Request-specific configuration.
|
|
540
581
|
|
|
@@ -581,6 +622,8 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
581
622
|
json_schema=json_schema,
|
|
582
623
|
return_char_limit=return_char_limit,
|
|
583
624
|
pip_requirements=pip_requirements,
|
|
625
|
+
npm_requirements=npm_requirements,
|
|
626
|
+
default_requires_approval=default_requires_approval,
|
|
584
627
|
request_options=request_options,
|
|
585
628
|
)
|
|
586
629
|
|
|
@@ -657,5 +700,7 @@ class AsyncToolsClient(AsyncToolsClientBase):
|
|
|
657
700
|
json_schema=tool.json_schema or OMIT,
|
|
658
701
|
return_char_limit=tool.return_char_limit or OMIT,
|
|
659
702
|
pip_requirements=tool.pip_requirements or OMIT,
|
|
703
|
+
npm_requirements=tool.npm_requirements or OMIT,
|
|
704
|
+
default_requires_approval=tool.default_requires_approval or OMIT,
|
|
660
705
|
request_options=request_options,
|
|
661
706
|
)
|
|
@@ -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.
|
|
27
|
+
"User-Agent": "letta-client/0.1.301",
|
|
28
28
|
"X-Fern-Language": "Python",
|
|
29
29
|
"X-Fern-SDK-Name": "letta-client",
|
|
30
|
-
"X-Fern-SDK-Version": "0.1.
|
|
30
|
+
"X-Fern-SDK-Version": "0.1.301",
|
|
31
31
|
**(self.get_custom_headers() or {}),
|
|
32
32
|
}
|
|
33
33
|
if self._project is not None:
|
|
@@ -3,7 +3,7 @@ letta_client/agents/__init__.py,sha256=_Pbfo96Sq78LfmkAYzx3nnkcobGfEKOx95AL1JswR
|
|
|
3
3
|
letta_client/agents/blocks/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
4
4
|
letta_client/agents/blocks/client.py,sha256=CUwVh5FHgD0YP3VNhUrWdkedMWk49yH3IiDD589AWEM,15809
|
|
5
5
|
letta_client/agents/blocks/raw_client.py,sha256=Cx_85c78oqIOPZIPfCOsIa8WOL2EUNRwXJRGbOqn2AA,25570
|
|
6
|
-
letta_client/agents/client.py,sha256=
|
|
6
|
+
letta_client/agents/client.py,sha256=Vbp6YR8VGA47BZdPx-sB3TP8ziFqCcR97_NBK54jiF0,74128
|
|
7
7
|
letta_client/agents/context/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
8
8
|
letta_client/agents/context/client.py,sha256=fhpJFWRs6INGreRyEw9gsFnlUWR48vIHbN_jVIHIBrw,3052
|
|
9
9
|
letta_client/agents/context/raw_client.py,sha256=j2gko-oEFWuCgPkcX9jCv31OWvR6sTOtAYcSWllXYDs,4747
|
|
@@ -36,7 +36,7 @@ letta_client/agents/messages/types/messages_preview_raw_payload_request.py,sha25
|
|
|
36
36
|
letta_client/agents/passages/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
37
37
|
letta_client/agents/passages/client.py,sha256=AJvkZDBFHBxPxP0acxcZ7ugfv-y32y7wyyJiK-uQch4,11839
|
|
38
38
|
letta_client/agents/passages/raw_client.py,sha256=_LCdUryyZrLYRdZeCmHChcS3nqwUKG4X4369YF3Cops,18644
|
|
39
|
-
letta_client/agents/raw_client.py,sha256=
|
|
39
|
+
letta_client/agents/raw_client.py,sha256=h3USsoctFijFNYUQDi6OdgvpJBtj7a8ekrL58EtsV7A,97954
|
|
40
40
|
letta_client/agents/sources/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
41
41
|
letta_client/agents/sources/client.py,sha256=lCqB6FF9svrwf0oZSFs41WKlMXc-YRhUeb4FZkHbicM,6868
|
|
42
42
|
letta_client/agents/sources/raw_client.py,sha256=ts4c5UBuXzrHU-lFWWrYniQqrMEc8SN0rfiqNXJLP5Y,12399
|
|
@@ -46,8 +46,8 @@ letta_client/agents/templates/raw_client.py,sha256=31Octb_klpQJ61Kkv7Xvl3euF4oaS
|
|
|
46
46
|
letta_client/agents/templates/types/__init__.py,sha256=kalMrvEN0SnhXNKN1gMIVMp5MICLlEz1XK-ZksOatXQ,190
|
|
47
47
|
letta_client/agents/templates/types/templates_migrate_response.py,sha256=hxcCvKw08iV7vaHFFm3ti9qlwDmiUtRl30A8DShu99Y,578
|
|
48
48
|
letta_client/agents/tools/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
49
|
-
letta_client/agents/tools/client.py,sha256=
|
|
50
|
-
letta_client/agents/tools/raw_client.py,sha256=
|
|
49
|
+
letta_client/agents/tools/client.py,sha256=gQliJHx3wgNhu0Ig49HCXsBthoHANsTXNRnAvUoNqac,9128
|
|
50
|
+
letta_client/agents/tools/raw_client.py,sha256=2LUc8u4f_0lXzCkYFp38ExLOIGyb-BTXDolK7MadJC8,16548
|
|
51
51
|
letta_client/agents/types/__init__.py,sha256=9Ex37_4WN3YYNiCnShrT5NSwCe5IUzOLcnn_l7glJPI,1629
|
|
52
52
|
letta_client/agents/types/agents_search_request_search_item.py,sha256=0Nr_B-Ngq3ixrggAIf_iBRAvK6ZEbVCugUJOJeZcYjM,754
|
|
53
53
|
letta_client/agents/types/agents_search_request_search_item_field.py,sha256=DxejFdgU5OCBJ43u6WZPTVfAhSPmPh8E2QnrIfL30RA,684
|
|
@@ -72,7 +72,7 @@ letta_client/blocks/agents/client.py,sha256=b03IICHfrBToWFjSsfp_ZUN0RBJIAZh0zkV2
|
|
|
72
72
|
letta_client/blocks/agents/raw_client.py,sha256=aiatfKp8iVtXRL1aSpxoCW_JhWljqLRRQtRz964vGMA,5936
|
|
73
73
|
letta_client/blocks/client.py,sha256=8Oqr5Hj97ZIlLIy86NctYECMJHlltvflfcB3EafLJRY,27366
|
|
74
74
|
letta_client/blocks/raw_client.py,sha256=P-cTr0gKJjZLHKJyV3ndg7OsAq66_folZ0L7is7OOKs,39881
|
|
75
|
-
letta_client/client.py,sha256=
|
|
75
|
+
letta_client/client.py,sha256=tW5VYkenZUTQ77Z9gyMWEswEYZpyO3jAaacFk5FfXos,24940
|
|
76
76
|
letta_client/client_side_access_tokens/__init__.py,sha256=28nrPumub-n2rjse3XCDcwjN6gRZveEh-8CC1PQsdo8,1581
|
|
77
77
|
letta_client/client_side_access_tokens/client.py,sha256=8JRdcMMSWVFpf6dd54tX7wSSBkjpejzveqiGGRddz40,11051
|
|
78
78
|
letta_client/client_side_access_tokens/raw_client.py,sha256=gAWVz0uHvtBMN4-D_MDBmIi1mMZm2M1yPtwUxvrUf24,17364
|
|
@@ -90,7 +90,7 @@ letta_client/client_side_access_tokens/types/client_side_access_tokens_list_clie
|
|
|
90
90
|
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
|
|
91
91
|
letta_client/core/__init__.py,sha256=tpn7rjb6C2UIkYZYIqdrNpI7Yax2jw88sXh2baxaxAI,1715
|
|
92
92
|
letta_client/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
|
|
93
|
-
letta_client/core/client_wrapper.py,sha256=
|
|
93
|
+
letta_client/core/client_wrapper.py,sha256=6P73rmaBkBgQbqvspwSFKnYqYLzwo_wjb-eZdTREf0g,2776
|
|
94
94
|
letta_client/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
|
95
95
|
letta_client/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
|
|
96
96
|
letta_client/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
|
|
@@ -575,6 +575,6 @@ letta_client/version.py,sha256=bttKLbIhO3UonCYQlqs600zzbQgfhCCMjeXR9WRzid4,79
|
|
|
575
575
|
letta_client/voice/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
576
576
|
letta_client/voice/client.py,sha256=EbIVOQh4HXqU9McATxwga08STk-HUwPEAUr_UHqyKHg,3748
|
|
577
577
|
letta_client/voice/raw_client.py,sha256=KvM_3GXuSf51bubM0RVBnxvlf20qZTFMnaA_BzhXzjQ,5938
|
|
578
|
-
letta_client-0.1.
|
|
579
|
-
letta_client-0.1.
|
|
580
|
-
letta_client-0.1.
|
|
578
|
+
letta_client-0.1.301.dist-info/METADATA,sha256=LhHUYqhMPvL0LaLLrMhyG43znjI889kKUxeKN8ajMtM,5782
|
|
579
|
+
letta_client-0.1.301.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
|
580
|
+
letta_client-0.1.301.dist-info/RECORD,,
|
|
File without changes
|