From 629ce520aa98cc0bed1cf3afed9dac8593f8d93e Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Mon, 24 Jun 2024 11:34:10 -0700 Subject: [PATCH 01/21] first draft --- libs/sdk-py/langgraph_sdk/client.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index bfdf9a28a..ec6ab8a13 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -379,6 +379,7 @@ async def get_history( self, thread_id: str, limit: int = 10, + *, before: Optional[str] = None, metadata: Optional[dict] = None, ) -> list[ThreadState]: @@ -687,6 +688,17 @@ async def create( async def delete(self, cron_id: str) -> None: """Delete a cron.""" await self.http.delete(f"/runs/crons/{cron_id}") + + async def list( + self, assistant_id: Optional[str], thread_id: Optional[str] = None + ) -> ThreadState: + """Get a list of all the cron jobs.""" + if thread_id: + return await self.http.get(f"/threads/{thread_id}/runs/crons") + elif assistant_id: + return await self.http.get(f"/assistants/{assistant_id}/runs/crons") + else: + return await self.http.get(f"runs/crons") def _get_api_key(api_key: Optional[str] = None) -> Optional[str]: From e6b6c8d727ae730113ff7f0b709c8d6478cc6d6a Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 09:56:46 -0700 Subject: [PATCH 02/21] minor fix --- libs/sdk-py/langgraph_sdk/client.py | 1 - 1 file changed, 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index ec6ab8a13..4cfd19ca8 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -379,7 +379,6 @@ async def get_history( self, thread_id: str, limit: int = 10, - *, before: Optional[str] = None, metadata: Optional[dict] = None, ) -> list[ThreadState]: From bc41152b7f4cded938e6c796f5f01d7db900976f Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 10:22:55 -0700 Subject: [PATCH 03/21] second draft --- libs/sdk-py/langgraph_sdk/client.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 4cfd19ca8..009b60cae 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -689,15 +689,16 @@ async def delete(self, cron_id: str) -> None: await self.http.delete(f"/runs/crons/{cron_id}") async def list( - self, assistant_id: Optional[str], thread_id: Optional[str] = None + self, + assistant_id: str, + *, + thread_id: Optional[str] = None ) -> ThreadState: """Get a list of all the cron jobs.""" if thread_id: return await self.http.get(f"/threads/{thread_id}/runs/crons") - elif assistant_id: - return await self.http.get(f"/assistants/{assistant_id}/runs/crons") else: - return await self.http.get(f"runs/crons") + return await self.http.get(f"/assistants/{assistant_id}/runs/crons") def _get_api_key(api_key: Optional[str] = None) -> Optional[str]: From 91e517f6e0632362f2efae8cb314491376f15813 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 10:47:41 -0700 Subject: [PATCH 04/21] reformat --- libs/sdk-py/langgraph_sdk/client.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 009b60cae..c1f9eb556 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -690,15 +690,17 @@ async def delete(self, cron_id: str) -> None: async def list( self, - assistant_id: str, *, + assistant_id: Optional[str] = None, thread_id: Optional[str] = None ) -> ThreadState: """Get a list of all the cron jobs.""" - if thread_id: - return await self.http.get(f"/threads/{thread_id}/runs/crons") - else: - return await self.http.get(f"/assistants/{assistant_id}/runs/crons") + payload = { + "assistant_id" : assistant_id, + "thread_id": thread_id, + } + payload = {k: v for k, v in payload.items() if v is not None} + return await self.http.post(f"/runs/crons/search", json=payload) def _get_api_key(api_key: Optional[str] = None) -> Optional[str]: From 388112f3f6d07314268c54d8c025bdf15c12505e Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 13:13:16 -0700 Subject: [PATCH 05/21] rename --- libs/sdk-py/langgraph_sdk/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index c1f9eb556..599530098 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -688,7 +688,7 @@ async def delete(self, cron_id: str) -> None: """Delete a cron.""" await self.http.delete(f"/runs/crons/{cron_id}") - async def list( + async def search( self, *, assistant_id: Optional[str] = None, From 608331f2d561df6661e32b4781b9058f1fd2090f Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 17:17:12 -0700 Subject: [PATCH 06/21] remove f-string --- libs/sdk-py/langgraph_sdk/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 599530098..6f0c4c2b2 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -700,7 +700,7 @@ async def search( "thread_id": thread_id, } payload = {k: v for k, v in payload.items() if v is not None} - return await self.http.post(f"/runs/crons/search", json=payload) + return await self.http.post("/runs/crons/search", json=payload) def _get_api_key(api_key: Optional[str] = None) -> Optional[str]: From bcd0c02d996778c8d27e405e2a043e82e38f79ab Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 19:24:21 -0700 Subject: [PATCH 07/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 6f0c4c2b2..16fe118e5 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -412,8 +412,7 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... @overload def stream( @@ -428,8 +427,7 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... def stream( self, @@ -480,8 +478,7 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: - ... + ) -> Run: ... @overload async def create( @@ -497,8 +494,7 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: - ... + ) -> Run: ... async def create( self, @@ -545,8 +541,7 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... @overload async def wait( @@ -559,8 +554,7 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... async def wait( self, @@ -687,16 +681,13 @@ async def create( async def delete(self, cron_id: str) -> None: """Delete a cron.""" await self.http.delete(f"/runs/crons/{cron_id}") - + async def search( - self, - *, - assistant_id: Optional[str] = None, - thread_id: Optional[str] = None + self, *, assistant_id: Optional[str] = None, thread_id: Optional[str] = None ) -> ThreadState: """Get a list of all the cron jobs.""" payload = { - "assistant_id" : assistant_id, + "assistant_id": assistant_id, "thread_id": thread_id, } payload = {k: v for k, v in payload.items() if v is not None} From 1c28acb8076a684367b74b41a351525d6283e00a Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 19:37:08 -0700 Subject: [PATCH 08/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 16fe118e5..5f0bd5fbd 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -412,7 +412,8 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... @overload def stream( @@ -427,7 +428,8 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... def stream( self, @@ -478,7 +480,8 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: ... + ) -> Run: + ... @overload async def create( @@ -494,7 +497,8 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: ... + ) -> Run: + ... async def create( self, @@ -541,7 +545,8 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... @overload async def wait( @@ -554,7 +559,8 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... async def wait( self, From 60d7ea62a12bf85ff62cdbde456e8162a7839981 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Tue, 25 Jun 2024 19:41:16 -0700 Subject: [PATCH 09/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 5f0bd5fbd..16fe118e5 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -412,8 +412,7 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... @overload def stream( @@ -428,8 +427,7 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... def stream( self, @@ -480,8 +478,7 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: - ... + ) -> Run: ... @overload async def create( @@ -497,8 +494,7 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: - ... + ) -> Run: ... async def create( self, @@ -545,8 +541,7 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... @overload async def wait( @@ -559,8 +554,7 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... async def wait( self, From 11e5c0ecf0101d9bf46ac42e816c5e2bd91717f0 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Wed, 26 Jun 2024 20:29:34 -0700 Subject: [PATCH 10/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 16fe118e5..5f0bd5fbd 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -412,7 +412,8 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... @overload def stream( @@ -427,7 +428,8 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... def stream( self, @@ -478,7 +480,8 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: ... + ) -> Run: + ... @overload async def create( @@ -494,7 +497,8 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: ... + ) -> Run: + ... async def create( self, @@ -541,7 +545,8 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... @overload async def wait( @@ -554,7 +559,8 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... async def wait( self, From 86412d61b018310cc74b2df9fdb644f4a0610b59 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Wed, 26 Jun 2024 20:47:27 -0700 Subject: [PATCH 11/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 5f0bd5fbd..0b9310e91 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -412,7 +412,7 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: + ) -> AsyncIterator[StreamPart]: ... @overload @@ -428,7 +428,7 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: + ) -> AsyncIterator[StreamPart]: ... def stream( @@ -480,7 +480,7 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: + ) -> Run: ... @overload @@ -497,7 +497,7 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: + ) -> Run: ... async def create( @@ -545,7 +545,7 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: + ) -> Union[list[dict], dict[str, Any]]: ... @overload @@ -559,7 +559,7 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: + ) -> Union[list[dict], dict[str, Any]]: ... async def wait( From cdf3302df0764414a0cb6236b4c89a0de20c4a66 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Wed, 26 Jun 2024 21:04:34 -0700 Subject: [PATCH 12/21] typing --- libs/sdk-py/langgraph_sdk/client.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 0b9310e91..bc19f14cf 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -22,6 +22,7 @@ StreamMode, Thread, ThreadState, + Cron ) logger = logging.getLogger(__name__) @@ -690,7 +691,7 @@ async def delete(self, cron_id: str) -> None: async def search( self, *, assistant_id: Optional[str] = None, thread_id: Optional[str] = None - ) -> ThreadState: + ) -> list[Cron]: """Get a list of all the cron jobs.""" payload = { "assistant_id": assistant_id, From 83184aaad67b5ea8d390eebdb798ade86102c74f Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 08:59:10 -0700 Subject: [PATCH 13/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index bc19f14cf..860d23217 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -15,6 +15,7 @@ from langgraph_sdk.schema import ( Assistant, Config, + Cron, GraphSchema, Metadata, MultitaskStrategy, @@ -22,7 +23,6 @@ StreamMode, Thread, ThreadState, - Cron ) logger = logging.getLogger(__name__) @@ -413,8 +413,7 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... @overload def stream( @@ -429,8 +428,7 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... def stream( self, @@ -481,8 +479,7 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: - ... + ) -> Run: ... @overload async def create( @@ -498,8 +495,7 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: - ... + ) -> Run: ... async def create( self, @@ -546,8 +542,7 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... @overload async def wait( @@ -560,8 +555,7 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... async def wait( self, From a043e6fb702f36f07aa163f71d828e79d133380c Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 09:00:37 -0700 Subject: [PATCH 14/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 1 - 1 file changed, 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index d48046ae6..101979826 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -23,7 +23,6 @@ StreamMode, Thread, ThreadState, - Cron, ThreadStatus, ) From 778ed17d1dee8365ed9a7ffc2561710dfbd7348f Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 09:33:13 -0700 Subject: [PATCH 15/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 101979826..7d20bb930 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -428,7 +428,8 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... @overload def stream( @@ -443,7 +444,8 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... def stream( self, @@ -496,7 +498,8 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: ... + ) -> Run: + ... @overload async def create( @@ -512,7 +515,8 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: ... + ) -> Run: + ... async def create( self, @@ -559,7 +563,8 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... @overload async def wait( @@ -572,7 +577,8 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... async def wait( self, From 95e5ae49984ef433c31d6357802e20405f7bb8d0 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 11:33:53 -0700 Subject: [PATCH 16/21] pagination --- libs/sdk-py/langgraph_sdk/client.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 7d20bb930..aec34ac39 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -709,12 +709,19 @@ async def delete(self, cron_id: str) -> None: await self.http.delete(f"/runs/crons/{cron_id}") async def search( - self, *, assistant_id: Optional[str] = None, thread_id: Optional[str] = None + self, + *, + assistant_id: Optional[str] = None, + thread_id: Optional[str] = None, + limit: int = 10, + offset: int = 0, ) -> list[Cron]: """Get a list of all the cron jobs.""" payload = { "assistant_id": assistant_id, "thread_id": thread_id, + "limit": limit, + "offset": offset, } payload = {k: v for k, v in payload.items() if v is not None} return await self.http.post("/runs/crons/search", json=payload) From f302670931523fb633545e413714db2046a814a8 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 12:30:35 -0700 Subject: [PATCH 17/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index aec34ac39..2e0ea5baf 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -709,7 +709,7 @@ async def delete(self, cron_id: str) -> None: await self.http.delete(f"/runs/crons/{cron_id}") async def search( - self, + self, *, assistant_id: Optional[str] = None, thread_id: Optional[str] = None, From 49d13df7ec587b0bab3498c6917d05e5da0534b2 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 12:33:14 -0700 Subject: [PATCH 18/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 2e0ea5baf..1ac8267e1 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -716,7 +716,7 @@ async def search( limit: int = 10, offset: int = 0, ) -> list[Cron]: - """Get a list of all the cron jobs.""" + """Get a list of cron jobs.""" payload = { "assistant_id": assistant_id, "thread_id": thread_id, From d93f7bc6f64a5b055eeec53e3acd4af465103d39 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 13:17:40 -0700 Subject: [PATCH 19/21] schema --- libs/sdk-py/langgraph_sdk/schema.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/libs/sdk-py/langgraph_sdk/schema.py b/libs/sdk-py/langgraph_sdk/schema.py index 9f6d10137..c06e8103d 100644 --- a/libs/sdk-py/langgraph_sdk/schema.py +++ b/libs/sdk-py/langgraph_sdk/schema.py @@ -109,3 +109,21 @@ class Run(TypedDict): """The run metadata.""" multitask_strategy: MultitaskStrategy """Strategy to handle concurrent runs on the same thread.""" + +class Cron(TypedDict): + """Cron model.""" + + cron_id: str + """The ID of the cron.""" + thread_id: Optional[str] + """The ID of the thread.""" + end_time: Optional[datetime] + """The end date to stop running the cron.""" + schedule: str + """The schedule to run, cron format.""" + created_at: datetime + """The time the cron was created.""" + updated_at: datetime + """The last time the cron was updated.""" + payload: dict + """The run payload to use for creating new run.""" \ No newline at end of file From 7a532f18f1a21ff291473382c86c8b4a1e9c52ed Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 13:20:39 -0700 Subject: [PATCH 20/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++------------ libs/sdk-py/langgraph_sdk/schema.py | 5 ++--- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 12e5febb5..98396c5a0 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -439,8 +439,7 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... @overload def stream( @@ -455,8 +454,7 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: - ... + ) -> AsyncIterator[StreamPart]: ... def stream( self, @@ -509,8 +507,7 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: - ... + ) -> Run: ... @overload async def create( @@ -526,8 +523,7 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: - ... + ) -> Run: ... async def create( self, @@ -574,8 +570,7 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... @overload async def wait( @@ -588,8 +583,7 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: - ... + ) -> Union[list[dict], dict[str, Any]]: ... async def wait( self, diff --git a/libs/sdk-py/langgraph_sdk/schema.py b/libs/sdk-py/langgraph_sdk/schema.py index c06e8103d..e40fc71cd 100644 --- a/libs/sdk-py/langgraph_sdk/schema.py +++ b/libs/sdk-py/langgraph_sdk/schema.py @@ -110,9 +110,8 @@ class Run(TypedDict): multitask_strategy: MultitaskStrategy """Strategy to handle concurrent runs on the same thread.""" -class Cron(TypedDict): - """Cron model.""" +class Cron(TypedDict): cron_id: str """The ID of the cron.""" thread_id: Optional[str] @@ -126,4 +125,4 @@ class Cron(TypedDict): updated_at: datetime """The last time the cron was updated.""" payload: dict - """The run payload to use for creating new run.""" \ No newline at end of file + """The run payload to use for creating new run.""" From 30759decfed45fd0938760c0b0b1cfe8a5d36566 Mon Sep 17 00:00:00 2001 From: isaac hershenson Date: Thu, 27 Jun 2024 13:29:47 -0700 Subject: [PATCH 21/21] fmt --- libs/sdk-py/langgraph_sdk/client.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/libs/sdk-py/langgraph_sdk/client.py b/libs/sdk-py/langgraph_sdk/client.py index 98396c5a0..12e5febb5 100644 --- a/libs/sdk-py/langgraph_sdk/client.py +++ b/libs/sdk-py/langgraph_sdk/client.py @@ -439,7 +439,8 @@ def stream( interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... @overload def stream( @@ -454,7 +455,8 @@ def stream( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, feedback_keys: Optional[list[str]] = None, - ) -> AsyncIterator[StreamPart]: ... + ) -> AsyncIterator[StreamPart]: + ... def stream( self, @@ -507,7 +509,8 @@ async def create( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, - ) -> Run: ... + ) -> Run: + ... @overload async def create( @@ -523,7 +526,8 @@ async def create( interrupt_after: Optional[list[str]] = None, webhook: Optional[str] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Run: ... + ) -> Run: + ... async def create( self, @@ -570,7 +574,8 @@ async def wait( interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, multitask_strategy: Optional[MultitaskStrategy] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... @overload async def wait( @@ -583,7 +588,8 @@ async def wait( config: Optional[Config] = None, interrupt_before: Optional[list[str]] = None, interrupt_after: Optional[list[str]] = None, - ) -> Union[list[dict], dict[str, Any]]: ... + ) -> Union[list[dict], dict[str, Any]]: + ... async def wait( self,