jl-ecms-client 0.2.5__py3-none-any.whl → 0.2.19__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jl-ecms-client
3
- Version: 0.2.5
3
+ Version: 0.2.19
4
4
  Summary: Intuit ECMS Client - Lightweight Python client for Intuit ECMS server
5
5
  Home-page: https://github.com/Mirix-AI/MIRIX
6
6
  Author: Mirix AI
@@ -31,8 +31,13 @@ Requires-Dist: pydantic>=2.0.0
31
31
  Requires-Dist: pydantic-settings>=2.0.0
32
32
  Requires-Dist: python-dotenv>=1.0.0
33
33
  Requires-Dist: httpx>=0.25.0
34
+ Requires-Dist: jinja2>=3.1.0
35
+ Requires-Dist: demjson3>=3.0.0
36
+ Requires-Dist: json-repair>=0.25.0
34
37
  Requires-Dist: rich<14.0.0,>=13.7.1
35
38
  Requires-Dist: pytz>=2024.1
39
+ Requires-Dist: docstring-parser>=0.15
40
+ Requires-Dist: pyhumps>=3.8.0
36
41
  Provides-Extra: dev
37
42
  Requires-Dist: pytest>=6.0.0; extra == "dev"
38
43
  Requires-Dist: pytest-asyncio; extra == "dev"
@@ -1,24 +1,31 @@
1
- jl_ecms_client-0.2.5.dist-info/licenses/LICENSE,sha256=8fOrt8t-9Lb_RKUa_xmj1_bVzbbluGEXERWSfM7rXfY,10758
2
- mirix/client/__init__.py,sha256=QOjO6HJdl5CBK9QrSvAILmlCWfoobt8CNBnRWsoZFBs,2383
3
- mirix/client/client.py,sha256=PCD5NAglP9rV8aWaKBvJ0X1G0vs_FHqBDvVEhvJJM8k,88722
1
+ jl_ecms_client-0.2.19.dist-info/licenses/LICENSE,sha256=8fOrt8t-9Lb_RKUa_xmj1_bVzbbluGEXERWSfM7rXfY,10758
2
+ mirix/__init__.py,sha256=-HuzjJD5w0kHATr8ZhyR_hakLc3KIYnWPpId6iItLK4,1483
3
+ mirix/constants.py,sha256=ekqrVAjR8dccbLtw6ZAmXoCHc11At-OeIeE_my54FIs,8949
4
+ mirix/errors.py,sha256=1ey4Ze4kKMO0Os_c8mSAQWvawa_srFkIsPZBt_Phb3o,6642
5
+ mirix/log.py,sha256=Jl_Gr6xigdGwRL-z-k2pp8WW2ahfTgwGStEIt6Y6WuY,5768
6
+ mirix/settings.py,sha256=SjZrsiNn6_fTi4cCEiK6PneS23XGzwjdVN6Apmg3d0w,10446
7
+ mirix/system.py,sha256=dmSz0SC4IZcJGHVMwtuKrZr27swB-h2uUl2BQXM_6Uo,8378
8
+ mirix/client/__init__.py,sha256=IMgb1FqBcVVcqrK_zWoCDPkb8x1AK4PBtTj5PyhnyWI,433
9
+ mirix/client/client.py,sha256=yVvA_mCX-8B7Mlm4yyHACTtwFosgHMm-01NgbhhywcU,13223
4
10
  mirix/client/remote_client.py,sha256=P0sTbGlqeuT_cIvGh243NK1Uf4a2JgNkQLdLvN950HQ,42646
11
+ mirix/client/utils.py,sha256=xPAvR3slBQ5srOFLtYTqpL3PeD5n0YsxBRR1sLgKBdY,786
5
12
  mirix/helpers/__init__.py,sha256=2QXDAywb0wF3JNLC7GgMDJb_kQpwvlb6ZCnjuLmOfPw,78
6
13
  mirix/helpers/converters.py,sha256=WuYkra4c9-JRC2lRo7LmmFMH42qf3k6ox3OGOYlDQLk,13504
7
14
  mirix/helpers/datetime_helpers.py,sha256=7U5ZJkE0cLki4sG8ukIHZSAoFfQpLWQu2kFekETy6Zg,2633
8
- mirix/helpers/json_helpers.py,sha256=2iq1Lyxa8Ofes38QHAOBZHE7I2jS65h-zkAXWJzpm3k,1222
15
+ mirix/helpers/json_helpers.py,sha256=FL6ACXaoOCwwJq4ccygI5XbNLE4-BESa8SRGoAsxXCg,1219
9
16
  mirix/helpers/message_helpers.py,sha256=xOn2Uwx5XK4C1ahYKmFe9ak7QjE5vcPVuZBcLDYxkZA,2571
10
17
  mirix/helpers/tool_rule_solver.py,sha256=LM9YuugmYtxxtcrD7GakbCNvmnuLK4Zp5KV8vA-UNSA,6542
11
18
  mirix/schemas/__init__.py,sha256=HPrtil4I9_KC2u6eJZpBJ2dbl_YxOj_ZeYnKYq3RSGM,24
12
- mirix/schemas/agent.py,sha256=kcG2VEJZQIFIapwvYXjcuvf8MU8jlIHoVswYUQra7Xc,15802
19
+ mirix/schemas/agent.py,sha256=3JjicV_7VX5JZk7cKORAsod6Dh6Z-14OjUKq8mJH9o8,15847
13
20
  mirix/schemas/block.py,sha256=F8G8pOO-dQuYQK7X7DNRdbRo5cTkfOp-vcDIora_VV8,5138
14
- mirix/schemas/cloud_file_mapping.py,sha256=RF3AvGWORULxxpykq4nL4PdZUJZqDah3k0JWmgAIxLo,970
15
- mirix/schemas/embedding_config.py,sha256=aHySSdkn5BeL_i6UQLuyDmjo40FCWvKW1Yfc01hQYak,4050
16
- mirix/schemas/enums.py,sha256=7Z4Wotyndp_eghhIvSdjFA3nMp_Vh_pcK1A_MrkBFRA,1357
21
+ mirix/schemas/cloud_file_mapping.py,sha256=i_5N41hNt0rEl-fvnGoPggLMbFdEk97wI71qQTjHKIg,977
22
+ mirix/schemas/embedding_config.py,sha256=-wCLpCv0ohxZAjAjr-gZqq5oGIIZBevfKd_Er8oHqYA,3986
23
+ mirix/schemas/enums.py,sha256=Rdlm0HPKAQQgZFjo_DI_DrkbHVAtNqsnbxHhJPlDlD8,1706
17
24
  mirix/schemas/environment_variables.py,sha256=mSL5U2NYxJHO4fb2dF3YgPyINgYgelsSzMqQ6nsjzng,2573
18
- mirix/schemas/episodic_memory.py,sha256=SNguRpOY6tGm9yKUtlej6CGSgK1zdKeqeFUdwihzeUY,6316
25
+ mirix/schemas/episodic_memory.py,sha256=MG7CxQoFmQd30kO8OMNQyyDAtodMJPfAw-icGuKz5OA,6323
19
26
  mirix/schemas/file.py,sha256=J92aWus84jPoF71wRtKIvoAPSdIDt4McEM6yDWzHiqg,2064
20
27
  mirix/schemas/health.py,sha256=zT6mYovvD17iJRuu2rcaQQzbEEYrkwvAE9TB7iU824c,139
21
- mirix/schemas/knowledge_vault.py,sha256=S-q271_qomQwsmk5oukVRlf2DAbj2OjyUFimVmC6F-0,6302
28
+ mirix/schemas/knowledge_vault.py,sha256=9jwwVVKVClr6yMK-suj0uxgWBYJg5W3gHSaPxvPDV84,6309
22
29
  mirix/schemas/llm_config.py,sha256=ZTJtqlD-J8wsEx4_aAMbqHaL0vxDrDjsgwD5RK07zcs,7256
23
30
  mirix/schemas/memory.py,sha256=CEVmCf0Ez3pxyee3YlsLrxXXwEzpmlXNQQKOvNZIRos,11984
24
31
  mirix/schemas/message.py,sha256=X-rpz4ylmKyJFrCmHHjXm-cG2jArOxunubJ_833zn34,53983
@@ -26,26 +33,26 @@ mirix/schemas/mirix_base.py,sha256=DMkOMZw1mw8Vte8yCGK9xAhqgY2O2CO6uYD9pgf9e6A,3
26
33
  mirix/schemas/mirix_message.py,sha256=WQHdA1dhLiwh0I3y710JMZx42fFmFkXBKdQdl1XdiDY,15334
27
34
  mirix/schemas/mirix_message_content.py,sha256=xdgTM5AkkONe4mjgcZNuKkbKk_fEY4rqzobD7cvy5cA,6815
28
35
  mirix/schemas/mirix_request.py,sha256=dyCcH7RHGL8P962QcDgd6EH9pE__dfMIUa94y5vX5V0,1392
29
- mirix/schemas/mirix_response.py,sha256=q0csTjlwLKWhWKFdQpTtXqdYGGc9Nnapx5tTuvQVipg,7437
30
- mirix/schemas/organization.py,sha256=RRwoWq4Y1DzNsuKta_rNKI9K75MeuiS836mzrCh-akE,1109
31
- mirix/schemas/procedural_memory.py,sha256=tG5VOih3MsY04Hj1UtNJQPy2556AyODjz43frieeiro,5495
36
+ mirix/schemas/mirix_response.py,sha256=w_hTYJs_cpBdx1mWfezzbiV49U4MWHKEfwFrYSMAVR0,7444
37
+ mirix/schemas/organization.py,sha256=tHjE4CmboPJV8OMZ1BfGuFanMJKCED5rh1IBpNQhGTc,1120
38
+ mirix/schemas/procedural_memory.py,sha256=dfKhyTQuR54ghmTIewCdLY6-kzJoC8iI-oTNjeTyGCc,5502
32
39
  mirix/schemas/providers.py,sha256=kZmC2-RTb8Hzhd7LXvwg0yyL2-d4JVFoYIZ7l04DPWs,30545
33
- mirix/schemas/resource_memory.py,sha256=Jm70q5hD_R_SnpG1SW46L1Qe8KBleNIXD1ni1W32epk,4893
34
- mirix/schemas/sandbox_config.py,sha256=X89bm-6QCE7n-ugQ7GyNfan6ZxKXU1UOwdWP0_PXnc4,4460
35
- mirix/schemas/semantic_memory.py,sha256=S8NWt-U6VjJhNpKkj_H4hFZuWKK-0KaPP4MOlKgI8v0,5979
40
+ mirix/schemas/resource_memory.py,sha256=_SurGWLEmVsEfl_1s7-V74uW7wi3eEMwh1RgijfTp1g,4900
41
+ mirix/schemas/sandbox_config.py,sha256=VhHM2DwqfL4OzsgprWEQMw_oLwdI7_sa2h-eeNSpaqI,4447
42
+ mirix/schemas/semantic_memory.py,sha256=duAuVDrStUEA1FbE_v_i8TWwC7DjerMkiM-MG-3K-fM,5986
36
43
  mirix/schemas/source.py,sha256=9Qe-E15sDXcopd3UPW0-sC3lFHIjlV44t_lV7KxkCWY,3050
37
44
  mirix/schemas/step.py,sha256=msWn5uBdaR3dYmjTuCwmvq3Mm-kP0Ha8e3-2sfCvG1Y,1826
38
- mirix/schemas/tool.py,sha256=ryC1klcdVwKZUwThCZOjwzRHSLWBsag7OzEnZR2ZCBM,10480
45
+ mirix/schemas/tool.py,sha256=payIHfE8xwqpx3fgTor_8PaV1KkNp1hecDZDBEA8dwY,10243
39
46
  mirix/schemas/tool_rule.py,sha256=uwyrOX38Vtp-6V1CbHnvBI3DzmWpW2zy7UPtYPmewus,6877
40
47
  mirix/schemas/usage.py,sha256=QX7uIaK7-GgrZDMgeot-1ae2n-ol0yif3E7JsLF0Sxk,1166
41
- mirix/schemas/user.py,sha256=9ywAkPX__q3Ja4lfs-YIiCKQkFmE3-poIimt0owGz_E,2476
48
+ mirix/schemas/user.py,sha256=sr7Rv4tIBWWaf1MJs-Qukie9YpMjfa5G5k8NSfvEyXo,2431
42
49
  mirix/schemas/openai/__init__.py,sha256=u3PhqJOMwv1fPfMOD6TNZ6zsWvEBpmur4Ypwj733UB0,24
43
50
  mirix/schemas/openai/chat_completion_request.py,sha256=eC4fMMJRucHtXfCUVPZu7ZeSt_LUPAsZtu_Z-hzfW6c,3395
44
51
  mirix/schemas/openai/chat_completion_response.py,sha256=1hF0Gaxvd03oBdKupz37qk_2LVFoev0T8GVEHHyVLfo,4054
45
52
  mirix/schemas/openai/chat_completions.py,sha256=PfC4MOiADLW_BfgmUohqK033VB4IO5fLIR1416C1DCE,3616
46
53
  mirix/schemas/openai/embedding_response.py,sha256=WKIZpXab1Av7v6sxKG8feW3ZtpQUNosmLVSuhXYa_xU,357
47
54
  mirix/schemas/openai/openai.py,sha256=gXfYwdGRJ-co15zVKw3lua0iZL_lJBBo03XMWsw1uTI,8394
48
- jl_ecms_client-0.2.5.dist-info/METADATA,sha256=DF3d2ZO0QsZtIHsGt3WCr2kjrNFWHdtZm_p9Cxbh9ME,10843
49
- jl_ecms_client-0.2.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
50
- jl_ecms_client-0.2.5.dist-info/top_level.txt,sha256=hQ_Eh5KYzEGkhtEyWHdBYJ5iCom6_nlj0zQ6-v0WDIY,6
51
- jl_ecms_client-0.2.5.dist-info/RECORD,,
55
+ jl_ecms_client-0.2.19.dist-info/METADATA,sha256=q6cbVkJyTDddIrgwjeygKOuJt9TfsGax8Ry291jcDRs,11007
56
+ jl_ecms_client-0.2.19.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
57
+ jl_ecms_client-0.2.19.dist-info/top_level.txt,sha256=hQ_Eh5KYzEGkhtEyWHdBYJ5iCom6_nlj0zQ6-v0WDIY,6
58
+ jl_ecms_client-0.2.19.dist-info/RECORD,,
mirix/__init__.py ADDED
@@ -0,0 +1,32 @@
1
+ __version__ = "0.2.19"
2
+
3
+
4
+ # import clients
5
+ from mirix.client import MirixClient as MirixClient
6
+ from mirix.local_client import LocalClient as LocalClient
7
+ from mirix.local_client import create_client as create_client
8
+
9
+ # # imports for easier access
10
+ from mirix.schemas.agent import AgentState as AgentState
11
+ from mirix.schemas.block import Block as Block
12
+ from mirix.schemas.embedding_config import EmbeddingConfig as EmbeddingConfig
13
+ from mirix.schemas.enums import JobStatus as JobStatus
14
+ from mirix.schemas.llm_config import LLMConfig as LLMConfig
15
+ from mirix.schemas.memory import ArchivalMemorySummary as ArchivalMemorySummary
16
+ from mirix.schemas.memory import BasicBlockMemory as BasicBlockMemory
17
+ from mirix.schemas.memory import ChatMemory as ChatMemory
18
+ from mirix.schemas.memory import Memory as Memory
19
+ from mirix.schemas.memory import RecallMemorySummary as RecallMemorySummary
20
+ from mirix.schemas.message import Message as Message
21
+ from mirix.schemas.mirix_message import MirixMessage as MirixMessage
22
+ from mirix.schemas.openai.chat_completion_response import (
23
+ UsageStatistics as UsageStatistics,
24
+ )
25
+ from mirix.schemas.organization import Organization as Organization
26
+ from mirix.schemas.tool import Tool as Tool
27
+ from mirix.schemas.usage import MirixUsageStatistics as MirixUsageStatistics
28
+ from mirix.schemas.user import User as User
29
+
30
+ # Import the new SDK interface
31
+ from mirix.sdk import Mirix as Mirix
32
+ from mirix.sdk import load_config as load_config
mirix/client/__init__.py CHANGED
@@ -2,71 +2,13 @@
2
2
  Mirix Client Module
3
3
 
4
4
  This module provides client implementations for interacting with Mirix agents:
5
- - LocalClient: For embedded/local deployments (server runs in-process)
5
+ - AbstractClient: Base interface for all clients
6
6
  - MirixClient: For cloud deployments (server accessed via REST API)
7
+
8
+ For embedded/local deployments, use mirix.LocalClient instead.
7
9
  """
8
10
 
9
- from mirix.client.client import AbstractClient, LocalClient
11
+ from mirix.client.client import AbstractClient
10
12
  from mirix.client.remote_client import MirixClient
11
13
 
12
- __all__ = ["AbstractClient", "LocalClient", "MirixClient", "create_client"]
13
-
14
-
15
- def create_client(
16
- mode: str = "local",
17
- **kwargs,
18
- ):
19
- """
20
- Factory function to create a Mirix client.
21
-
22
- Args:
23
- mode: Client mode - "local" or "remote"
24
- **kwargs: Additional arguments passed to the client constructor
25
-
26
- For LocalClient (mode="local"):
27
- - user_id: Optional user ID
28
- - org_id: Optional organization ID
29
- - debug: Enable debug logging
30
- - default_llm_config: Default LLM configuration
31
- - default_embedding_config: Default embedding configuration
32
-
33
- For MirixClient (mode="remote"):
34
- - base_url: API server URL (required)
35
- - api_key: API key for authentication
36
- - user_id: Optional user ID
37
- - org_id: Optional organization ID
38
- - debug: Enable debug logging
39
- - timeout: Request timeout in seconds (default: 60)
40
- - max_retries: Max number of retries (default: 3)
41
-
42
- Returns:
43
- AbstractClient: A LocalClient or MirixClient instance
44
-
45
- Examples:
46
- >>> # Create a local client (embedded server)
47
- >>> client = create_client(mode="local")
48
-
49
- >>> # Create a remote client (cloud deployment)
50
- >>> client = create_client(
51
- ... mode="remote",
52
- ... base_url="https://api.mirix.ai",
53
- ... api_key="sk-..."
54
- ... )
55
-
56
- >>> # Both clients have the same interface
57
- >>> agent = client.create_agent(name="my_agent")
58
- >>> response = client.send_message(
59
- ... agent_id=agent.id,
60
- ... message="Hello!",
61
- ... role="user"
62
- ... )
63
- """
64
- if mode == "local":
65
- return LocalClient(**kwargs)
66
- elif mode == "remote":
67
- if "base_url" not in kwargs:
68
- raise ValueError("base_url is required for remote mode")
69
- return MirixClient(**kwargs)
70
- else:
71
- raise ValueError(f"Invalid mode: {mode}. Must be 'local' or 'remote'")
72
-
14
+ __all__ = ["AbstractClient", "MirixClient"]