cheshirecat-python-sdk 1.7.10__py3-none-any.whl → 1.8.0__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.
@@ -18,6 +18,7 @@ from cheshirecat_python_sdk.endpoints import (
18
18
  UtilsEndpoint,
19
19
  VectorDatabaseEndpoint,
20
20
  HealthCheckEndpoint,
21
+ AgenticWorkflowEndpoint,
21
22
  )
22
23
 
23
24
 
@@ -64,6 +65,10 @@ class CheshireCatClient:
64
65
  def auth_handler(self):
65
66
  return AuthHandlerEndpoint(self)
66
67
 
68
+ @property
69
+ def agentic_workflow(self):
70
+ return AgenticWorkflowEndpoint(self)
71
+
67
72
  @property
68
73
  def chunker(self):
69
74
  return ChunkerEndpoint(self)
@@ -1,4 +1,5 @@
1
1
  from cheshirecat_python_sdk.endpoints.admins import AdminsEndpoint
2
+ from cheshirecat_python_sdk.endpoints.agentic_workflow import AgenticWorkflowEndpoint
2
3
  from cheshirecat_python_sdk.endpoints.auth import AuthEndpoint
3
4
  from cheshirecat_python_sdk.endpoints.auth_handler import AuthHandlerEndpoint
4
5
  from cheshirecat_python_sdk.endpoints.chunker import ChunkerEndpoint
@@ -0,0 +1,52 @@
1
+ from typing import Dict, Any
2
+
3
+ from cheshirecat_python_sdk.endpoints.base import AbstractEndpoint
4
+ from cheshirecat_python_sdk.models.api.factories import FactoryObjectSettingsOutput, FactoryObjectSettingOutput
5
+
6
+
7
+ class AgenticWorkflowEndpoint(AbstractEndpoint):
8
+ def __init__(self, client: "CheshireCatClient"):
9
+ super().__init__(client)
10
+ self.prefix = "/agentic_workflow"
11
+
12
+ def get_agentic_workflows_settings(self, agent_id: str) -> FactoryObjectSettingsOutput:
13
+ """
14
+ Get all agentic workflow settings for the agent with the given ID.
15
+ :param agent_id: The ID of the agent.
16
+ :return: FactoryObjectSettingsOutput, containing the settings for all agentic workflows.
17
+ """
18
+ return self.get(
19
+ self.format_url("/settings"),
20
+ agent_id,
21
+ output_class=FactoryObjectSettingsOutput,
22
+ )
23
+
24
+ def get_agentic_workflow_settings(self, agentic_workflow: str, agent_id: str) -> FactoryObjectSettingOutput:
25
+ """
26
+ Get the settings for the agentic workflow with the given name.
27
+ :param agentic_workflow: The name of the agentic workflow.
28
+ :param agent_id: The ID of the agent.
29
+ :return: FactoryObjectSettingOutput, containing the settings for the agentic workflow.
30
+ """
31
+ return self.get(
32
+ self.format_url(f"/settings/{agentic_workflow}"),
33
+ agent_id,
34
+ output_class=FactoryObjectSettingOutput,
35
+ )
36
+
37
+ def put_agentic_workflow_settings(
38
+ self, agentic_workflow: str, agent_id: str, values: Dict[str, Any]
39
+ ) -> FactoryObjectSettingOutput:
40
+ """
41
+ Update the settings for the agentic workflow with the given name.
42
+ :param agentic_workflow: The name of the agentic workflow.
43
+ :param agent_id: The ID of the agent.
44
+ :param values: The new settings for the agentic workflow.
45
+ :return: FactoryObjectSettingOutput, containing the updated settings for the agentic workflow.
46
+ """
47
+ return self.put(
48
+ self.format_url(f"/settings/{agentic_workflow}"),
49
+ agent_id,
50
+ output_class=FactoryObjectSettingOutput,
51
+ payload=values,
52
+ )
@@ -11,7 +11,12 @@ class UsersEndpoint(AbstractEndpoint):
11
11
  self.prefix = "/users"
12
12
 
13
13
  def post_user(
14
- self, agent_id: str, username: str, password: str, permissions: dict[str, Any] | None = None
14
+ self,
15
+ agent_id: str,
16
+ username: str,
17
+ password: str,
18
+ permissions: dict[str, Any] | None = None,
19
+ metadata: dict[str, Any] | None = None,
15
20
  ) -> UserOutput:
16
21
  """
17
22
  This endpoint is used to create a new user in the system. The user is created with the specified username and
@@ -22,6 +27,7 @@ class UsersEndpoint(AbstractEndpoint):
22
27
  :param username: The username of the user to create
23
28
  :param password: The password of the user to create
24
29
  :param permissions: The permissions of the user to create (optional)
30
+ :param metadata: The metadata of the user to create (optional)
25
31
  :return UserOutput, the created user
26
32
  """
27
33
  payload = {
@@ -31,6 +37,9 @@ class UsersEndpoint(AbstractEndpoint):
31
37
  if permissions is not None:
32
38
  payload["permissions"] = permissions # type: ignore
33
39
 
40
+ if metadata is not None:
41
+ payload["metadata"] = metadata # type: ignore
42
+
34
43
  return self.post_json(
35
44
  self.prefix,
36
45
  agent_id,
@@ -75,6 +84,7 @@ class UsersEndpoint(AbstractEndpoint):
75
84
  username: str | None = None,
76
85
  password: str | None = None,
77
86
  permissions: Dict[str, Any] | None = None,
87
+ metadata: Dict[str, Any] | None = None,
78
88
  ) -> UserOutput:
79
89
  """
80
90
  The endpoint is used to update the user in the system. The user is identified by the userId parameter, previously
@@ -87,6 +97,7 @@ class UsersEndpoint(AbstractEndpoint):
87
97
  :param username: The new username of the user (optional)
88
98
  :param password: The new password of the user (optional)
89
99
  :param permissions: The new permissions of the user (optional)
100
+ :param metadata: The new metadata of the user (optional)
90
101
  :return UserOutput, the updated user
91
102
  """
92
103
  payload = {}
@@ -96,6 +107,8 @@ class UsersEndpoint(AbstractEndpoint):
96
107
  payload["password"] = password
97
108
  if permissions is not None:
98
109
  payload["permissions"] = permissions
110
+ if metadata is not None:
111
+ payload["metadata"] = metadata
99
112
 
100
113
  return self.put(self.format_url(user_id), agent_id, output_class=UserOutput, payload=payload)
101
114
 
@@ -1,10 +1,11 @@
1
- from typing import Dict, List
1
+ from typing import Dict, List, Any
2
2
  from pydantic import BaseModel
3
3
 
4
4
 
5
5
  class UserOutput(BaseModel):
6
6
  username: str
7
7
  permissions: Dict[str, List[str]]
8
+ metadata: Dict[str, Any] | None = None
8
9
  id: str
9
10
  created_at: float | None = None
10
11
  updated_at: float | None = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cheshirecat-python-sdk
3
- Version: 1.7.10
3
+ Version: 1.8.0
4
4
  Summary: Python SDK for the Cloud-ready fork of the Cheshire Cat
5
5
  Project-URL: Repository, https://github.com/matteocacciola/cheshirecat-python-sdk
6
6
  Project-URL: Documentation, https://github.com/matteocacciola/cheshirecat-python-sdk#README
@@ -1,5 +1,5 @@
1
1
  cheshirecat_python_sdk/__init__.py,sha256=59esRUsh_6xPlfoCz-gQYQdDgp2xbaINYWyDcTJlvys,284
2
- cheshirecat_python_sdk/client.py,sha256=J8C8j9q-Lz3cGKyYbd9w19Ayh9muMa8s3N_gYpmLI-E,2839
2
+ cheshirecat_python_sdk/client.py,sha256=J9sX8FxtE6bkwshDq5AHycG1bqHEOeqZlfr9g1mb13I,2960
3
3
  cheshirecat_python_sdk/configuration.py,sha256=7uXebZGzCuJdpgOeN5l1YXkWVIrTk4apxvjPKZFcJTE,283
4
4
  cheshirecat_python_sdk/enums.py,sha256=qJyhl5D_oDMHqNcIivr9pTxNrZY6XkX7lGgGydk22TY,665
5
5
  cheshirecat_python_sdk/utils.py,sha256=2pcSCREOuIAUi5El5ou2rCm-VtmzyGVd3YHcKrFHgBM,458
@@ -11,8 +11,9 @@ cheshirecat_python_sdk/builders/why.py,sha256=liwellCzZ6EyzWcL3lNgBy9SU76zAqGufx
11
11
  cheshirecat_python_sdk/clients/__init__.py,sha256=i4Hqux9vihFRbXVK48yJ1k9gm4JeCHnfPgosizQZv-g,135
12
12
  cheshirecat_python_sdk/clients/http_client.py,sha256=LnP0kr-kHRCwC-BZiysj1Zg-T3b3yuLd81wOctfcBTg,2319
13
13
  cheshirecat_python_sdk/clients/websocket_client.py,sha256=xNjkLSEZhpHzRqIZL21V0oG3srAGFaqYveMqlma2gvI,1932
14
- cheshirecat_python_sdk/endpoints/__init__.py,sha256=uQPclok3DdKTibR7ywDVM67eqtxEMwx_iuza37Wqkr8,1247
14
+ cheshirecat_python_sdk/endpoints/__init__.py,sha256=N8_vA7D304QCcaP-nhz039xkykRsBc-79COL_Ge19AY,1333
15
15
  cheshirecat_python_sdk/endpoints/admins.py,sha256=b4YpHO-Xqkd-PQxvQcXYAUmQkrTLTvEjf5R9pals-50,4116
16
+ cheshirecat_python_sdk/endpoints/agentic_workflow.py,sha256=u0D9t7nGWcSPXUOeTmu1-madnWLlB7dlLP8hlP9yTJ4,2197
16
17
  cheshirecat_python_sdk/endpoints/auth.py,sha256=_22fLGznoxo2pybcQGgcsHCpLoq76P6RplmSMMgajEQ,2031
17
18
  cheshirecat_python_sdk/endpoints/auth_handler.py,sha256=Jfi7E7L3SIzJyECbJnUenIyl6xxkJlyC31AHpAlmqSs,2117
18
19
  cheshirecat_python_sdk/endpoints/base.py,sha256=W_ynJur_cbT31KLp6F4pJ212tMaAa1BxnG75YS1UgNU,4075
@@ -27,7 +28,7 @@ cheshirecat_python_sdk/endpoints/memory.py,sha256=dEnQ2Hb_VG907p7T9oQgPCWWFHAUwk
27
28
  cheshirecat_python_sdk/endpoints/message.py,sha256=QTUSUJcj52VhfnX9hdjsD2aLeFC43O4eU8ld5lRvITU,2607
28
29
  cheshirecat_python_sdk/endpoints/plugins.py,sha256=FasjwNY2UVv7zfg9lvXEj2ATefPDOPQpJXzQ2BbQIYI,3474
29
30
  cheshirecat_python_sdk/endpoints/rabbit_hole.py,sha256=DH5KGpk0Ur8RPi1fZIO9D925mc2D0GHQpsOeIKIa1G0,7213
30
- cheshirecat_python_sdk/endpoints/users.py,sha256=PXlPPobLoWpiuAzi0k89YUyqSp24Sc5DEcDQYGRXRBA,5369
31
+ cheshirecat_python_sdk/endpoints/users.py,sha256=ySpFi9ILyoT44fnAz8p4LSGTaEAMWv3RBWq72Hv73mI,5803
31
32
  cheshirecat_python_sdk/endpoints/utils.py,sha256=yKGrFRpu6ItLnBEuc98093LbXqGYaGdgCLiWuLQJVno,2551
32
33
  cheshirecat_python_sdk/endpoints/vector_database.py,sha256=Xu6zcopjZgcFVVmyN547piiqFcaTUtF35X0QxQHycXQ,2149
33
34
  cheshirecat_python_sdk/models/dtos.py,sha256=yK6CfCGdwLvZtYFPoImDEgpV5eyHB2iwji2t6dh6gxc,668
@@ -40,10 +41,10 @@ cheshirecat_python_sdk/models/api/messages.py,sha256=PDojYuXUDXSek8nkg8QKoVdAJ2N
40
41
  cheshirecat_python_sdk/models/api/plugins.py,sha256=uX8SYbcTxQSxv1IaVChEBd3rr6kc83rwq3IILnmq5EE,1996
41
42
  cheshirecat_python_sdk/models/api/rabbit_holes.py,sha256=01FcPSIG6nq9WJhL_rQopLMSD81CU9lfP-t0xtf35Gw,285
42
43
  cheshirecat_python_sdk/models/api/tokens.py,sha256=GavSaCq0-SRWjvLtDgrYBOdUELd7VoVXlykmIBT23ds,455
43
- cheshirecat_python_sdk/models/api/users.py,sha256=WR6m_V_jn5YiWYSC_H4ybpooEtdMRQAbReakT4WJgWE,232
44
+ cheshirecat_python_sdk/models/api/users.py,sha256=_T3-8hfmlZK9cZcqBTbNMYS74yEnDrRACRQn9PNCEiQ,280
44
45
  cheshirecat_python_sdk/models/api/nested/memories.py,sha256=ddGDsmZa2refElM0sGz9QfKHGk50wsTpkwN5qDC5bF4,946
45
46
  cheshirecat_python_sdk/models/api/nested/plugins.py,sha256=7vrwgXh0csaUn11YKY_OWnGEnD8Fu_ewKxt024VOBEs,738
46
- cheshirecat_python_sdk-1.7.10.dist-info/METADATA,sha256=5BeA62kQ9doDPdbEQPXBufjkN9rhME7AvZh3jk_ce34,44137
47
- cheshirecat_python_sdk-1.7.10.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
48
- cheshirecat_python_sdk-1.7.10.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
49
- cheshirecat_python_sdk-1.7.10.dist-info/RECORD,,
47
+ cheshirecat_python_sdk-1.8.0.dist-info/METADATA,sha256=sFNa9Mr3Z_nkYTnzydEWPKw40csJ3A8zOdusfQnPL40,44136
48
+ cheshirecat_python_sdk-1.8.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
49
+ cheshirecat_python_sdk-1.8.0.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
50
+ cheshirecat_python_sdk-1.8.0.dist-info/RECORD,,