blaxel 0.1.9rc37__py3-none-any.whl → 0.1.10__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.
Files changed (80) hide show
  1. blaxel/authentication/__init__.py +11 -2
  2. blaxel/client/api/compute/create_sandbox_preview.py +179 -0
  3. blaxel/client/api/compute/create_sandbox_preview_token.py +192 -0
  4. blaxel/client/api/compute/delete_sandbox_preview.py +167 -0
  5. blaxel/client/api/compute/delete_sandbox_preview_token.py +180 -0
  6. blaxel/client/api/compute/get_sandbox_preview.py +167 -0
  7. blaxel/client/api/compute/list_sandbox_preview_tokens.py +172 -0
  8. blaxel/client/api/compute/list_sandbox_previews.py +159 -0
  9. blaxel/client/api/compute/update_sandbox_preview.py +192 -0
  10. blaxel/client/api/integrations/get_integration.py +64 -7
  11. blaxel/client/api/workspaces/check_workspace_availability.py +165 -0
  12. blaxel/client/models/__init__.py +32 -2
  13. blaxel/client/models/check_workspace_availability_body.py +60 -0
  14. blaxel/client/models/delete_sandbox_preview_token_response_200.py +60 -0
  15. blaxel/client/models/integration.py +197 -0
  16. blaxel/client/models/integration_additional_infos.py +45 -0
  17. blaxel/client/models/integration_endpoint.py +143 -0
  18. blaxel/client/models/integration_endpoint_token.py +79 -0
  19. blaxel/client/models/integration_endpoints.py +61 -0
  20. blaxel/client/models/integration_headers.py +45 -0
  21. blaxel/client/models/integration_organization.py +88 -0
  22. blaxel/client/models/integration_query_params.py +45 -0
  23. blaxel/client/models/metrics.py +9 -0
  24. blaxel/client/models/preview.py +96 -0
  25. blaxel/client/models/preview_metadata.py +133 -0
  26. blaxel/client/models/preview_spec.py +79 -0
  27. blaxel/client/models/preview_token.py +96 -0
  28. blaxel/client/models/preview_token_metadata.py +97 -0
  29. blaxel/client/models/preview_token_spec.py +88 -0
  30. blaxel/common/autoload.py +1 -0
  31. blaxel/common/internal.py +5 -5
  32. blaxel/sandbox/base.py +68 -0
  33. blaxel/sandbox/client/__init__.py +8 -0
  34. blaxel/sandbox/client/api/__init__.py +1 -0
  35. blaxel/sandbox/client/api/filesystem/__init__.py +0 -0
  36. blaxel/sandbox/client/api/filesystem/delete_filesystem_path.py +184 -0
  37. blaxel/sandbox/client/api/filesystem/get_filesystem_path.py +184 -0
  38. blaxel/sandbox/client/api/filesystem/put_filesystem_path.py +189 -0
  39. blaxel/sandbox/client/api/network/__init__.py +0 -0
  40. blaxel/sandbox/client/api/network/delete_network_process_pid_monitor.py +169 -0
  41. blaxel/sandbox/client/api/network/get_network_process_pid_ports.py +169 -0
  42. blaxel/sandbox/client/api/network/post_network_process_pid_monitor.py +195 -0
  43. blaxel/sandbox/client/api/process/__init__.py +0 -0
  44. blaxel/sandbox/client/api/process/delete_process_identifier.py +163 -0
  45. blaxel/sandbox/client/api/process/delete_process_identifier_kill.py +189 -0
  46. blaxel/sandbox/client/api/process/get_process.py +135 -0
  47. blaxel/sandbox/client/api/process/get_process_identifier.py +159 -0
  48. blaxel/sandbox/client/api/process/get_process_identifier_logs.py +188 -0
  49. blaxel/sandbox/client/api/process/get_process_identifier_logs_stream.py +190 -0
  50. blaxel/sandbox/client/api/process/post_process.py +176 -0
  51. blaxel/sandbox/client/client.py +162 -0
  52. blaxel/sandbox/client/errors.py +16 -0
  53. blaxel/sandbox/client/models/__init__.py +41 -0
  54. blaxel/sandbox/client/models/delete_network_process_pid_monitor_response_200.py +45 -0
  55. blaxel/sandbox/client/models/directory.py +112 -0
  56. blaxel/sandbox/client/models/error_response.py +60 -0
  57. blaxel/sandbox/client/models/file.py +105 -0
  58. blaxel/sandbox/client/models/file_request.py +78 -0
  59. blaxel/sandbox/client/models/file_with_content.py +114 -0
  60. blaxel/sandbox/client/models/get_network_process_pid_ports_response_200.py +45 -0
  61. blaxel/sandbox/client/models/get_process_identifier_logs_response_200.py +45 -0
  62. blaxel/sandbox/client/models/get_process_identifier_logs_stream_response_200.py +45 -0
  63. blaxel/sandbox/client/models/port_monitor_request.py +60 -0
  64. blaxel/sandbox/client/models/post_network_process_pid_monitor_response_200.py +45 -0
  65. blaxel/sandbox/client/models/process_kill_request.py +60 -0
  66. blaxel/sandbox/client/models/process_request.py +118 -0
  67. blaxel/sandbox/client/models/process_response.py +123 -0
  68. blaxel/sandbox/client/models/subdirectory.py +60 -0
  69. blaxel/sandbox/client/models/success_response.py +69 -0
  70. blaxel/sandbox/client/py.typed +1 -0
  71. blaxel/sandbox/client/types.py +46 -0
  72. blaxel/sandbox/filesystem.py +104 -0
  73. blaxel/sandbox/process.py +57 -0
  74. blaxel/sandbox/sandbox.py +92 -0
  75. blaxel/tools/__init__.py +1 -1
  76. {blaxel-0.1.9rc37.dist-info → blaxel-0.1.10.dist-info}/METADATA +1 -1
  77. {blaxel-0.1.9rc37.dist-info → blaxel-0.1.10.dist-info}/RECORD +79 -12
  78. blaxel/client/models/sandboxes.py +0 -129
  79. {blaxel-0.1.9rc37.dist-info → blaxel-0.1.10.dist-info}/WHEEL +0 -0
  80. {blaxel-0.1.9rc37.dist-info → blaxel-0.1.10.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,92 @@
1
+ import asyncio
2
+ import logging
3
+ import time
4
+ from typing import List
5
+
6
+ from ..client.api.compute.create_sandbox import asyncio as create_sandbox
7
+ from ..client.api.compute.delete_sandbox import asyncio as delete_sandbox
8
+ from ..client.api.compute.get_sandbox import asyncio as get_sandbox
9
+ from ..client.api.compute.list_sandboxes import asyncio as list_sandboxes
10
+ from ..client.client import client
11
+ from ..client.models import Sandbox
12
+ from .filesystem import SandboxFileSystem
13
+ from .process import SandboxProcess
14
+
15
+ logger = logging.getLogger(__name__)
16
+
17
+ class SandboxInstance:
18
+ def __init__(self, sandbox: Sandbox):
19
+ self.sandbox = sandbox
20
+ self.fs = SandboxFileSystem(sandbox)
21
+ self.process = SandboxProcess(sandbox)
22
+
23
+ @property
24
+ def metadata(self):
25
+ return self.sandbox.metadata
26
+
27
+ @property
28
+ def status(self):
29
+ return self.sandbox.status
30
+
31
+ @property
32
+ def events(self):
33
+ return self.sandbox.events
34
+
35
+ @property
36
+ def spec(self):
37
+ return self.sandbox.spec
38
+
39
+ async def wait(self, max_wait: int = 60000, interval: int = 1000) -> None:
40
+ start_time = time.time() * 1000 # Convert to milliseconds
41
+ while self.sandbox.status != "DEPLOYED":
42
+ await asyncio.sleep(interval / 1000) # Convert to seconds
43
+ try:
44
+ response = await get_sandbox(
45
+ self.sandbox.metadata.name,
46
+ client=client,
47
+ )
48
+ logger.info(f"Waiting for sandbox to be deployed, status: {response.status}")
49
+ self.sandbox = response
50
+ except Exception as e:
51
+ logger.error("Could not retrieve sandbox", exc_info=e)
52
+
53
+ if self.sandbox.status == "FAILED":
54
+ raise Exception("Sandbox failed to deploy")
55
+
56
+ if (time.time() * 1000) - start_time > max_wait:
57
+ raise Exception("Sandbox did not deploy in time")
58
+
59
+ @classmethod
60
+ async def create(cls, sandbox: Sandbox) -> "SandboxInstance":
61
+ if not sandbox.spec:
62
+ raise Exception("Sandbox spec is required")
63
+ if not sandbox.spec.runtime:
64
+ raise Exception("Sandbox runtime is required")
65
+ sandbox.spec.runtime.generation = sandbox.spec.runtime.generation or "mk3"
66
+
67
+ response = await create_sandbox(
68
+ client=client,
69
+ body=sandbox,
70
+ )
71
+ return cls(response)
72
+
73
+ @classmethod
74
+ async def get(cls, sandbox_name: str) -> "SandboxInstance":
75
+ response = await get_sandbox(
76
+ sandbox_name,
77
+ client=client,
78
+ )
79
+ return cls(response)
80
+
81
+ @classmethod
82
+ async def list(cls) -> List["SandboxInstance"]:
83
+ response = await list_sandboxes()
84
+ return [cls(sandbox) for sandbox in response]
85
+
86
+ @classmethod
87
+ async def delete(cls, sandbox_name: str) -> Sandbox:
88
+ response = await delete_sandbox(
89
+ sandbox_name,
90
+ client=client,
91
+ )
92
+ return response
blaxel/tools/__init__.py CHANGED
@@ -1,10 +1,10 @@
1
1
  import asyncio
2
2
  import json
3
3
  import os
4
+ import traceback
4
5
  from contextlib import AsyncExitStack
5
6
  from logging import getLogger
6
7
  from typing import Any, cast
7
- import traceback
8
8
 
9
9
  from mcp import ClientSession
10
10
  from mcp.types import CallToolResult
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blaxel
3
- Version: 0.1.9rc37
3
+ Version: 0.1.10
4
4
  Summary: Add your description here
5
5
  Author-email: cploujoux <cploujoux@blaxel.ai>
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  blaxel/__init__.py,sha256=qmuJKjl5oGnjj4TbqHcJqUkKoxk4PvCsMb6-8rp67pE,159
2
2
  blaxel/agents/__init__.py,sha256=RDWkvfICIXXaQxJuuSu63jsFj_F8NBAL4U752hfN4AE,5262
3
- blaxel/authentication/__init__.py,sha256=WInBOiziLiEbBcrE0QXF10Ue2HJkL8aCIXjNcF5OvTA,2942
3
+ blaxel/authentication/__init__.py,sha256=tL9XKNCek5ixszTqjlKRBvidXMg4Nj6ODlBKlxxA9uk,3283
4
4
  blaxel/authentication/apikey.py,sha256=nOgLVba7EfVk3V-qm7cj-30LAL-BT7NOMIlGL9Ni1jY,1249
5
5
  blaxel/authentication/clientcredentials.py,sha256=SfWNuZVHZw6jjMqoBMMB4ZawmpyKbVPbOpv-JDFqzw8,3080
6
6
  blaxel/authentication/devicemode.py,sha256=kWbArs4okIIDqW-ql5oV2eQRE_LpRwfadCB6LG83irw,5986
@@ -23,12 +23,20 @@ blaxel/client/api/agents/list_agents.py,sha256=YtuJCp_1q07VMJ0NtQijphJEWanMF3l-p
23
23
  blaxel/client/api/agents/update_agent.py,sha256=JK8lb3Vh3vuWy8mn75EmZ3plfdNFb1SOCcdDX-QKs1s,3898
24
24
  blaxel/client/api/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
25
  blaxel/client/api/compute/create_sandbox.py,sha256=59_VNsoAd1XiyJpjN-O3TcfrvvFI-gSLng6sbQ5gnvk,3787
26
+ blaxel/client/api/compute/create_sandbox_preview.py,sha256=1Hn4CZV7JzcN0ZuO4ypYpcrn6G4jqOkFfegM2WtWjXQ,4155
27
+ blaxel/client/api/compute/create_sandbox_preview_token.py,sha256=f30DzGy8WTGtvNWo1lvJJcN75qJQsQslwk_ZcVB5Rls,4779
26
28
  blaxel/client/api/compute/delete_sandbox.py,sha256=1Dm_c_G2VHSBMbbTLMWyY8K0-LYwG-Il8d9e0SLj9kY,3555
29
+ blaxel/client/api/compute/delete_sandbox_preview.py,sha256=U4qopP03F0rLKT3eCuNewlJ8-KEFMS3gLnvormE5TAo,4014
30
+ blaxel/client/api/compute/delete_sandbox_preview_token.py,sha256=SXpnOMa8OURamEawJhIWLQc9tFSnjeeG3TSy6qrQ1iM,4841
27
31
  blaxel/client/api/compute/get_sandbox.py,sha256=M1Bu-01hh36dJCvI3mMSuuJ2Y3qkyRPEtv5IcD6LK48,3540
32
+ blaxel/client/api/compute/get_sandbox_preview.py,sha256=79gqiklfJF0OaZwNsn3EGurBlTZChsXMd6Bqz_QgVGQ,3999
33
+ blaxel/client/api/compute/list_sandbox_preview_tokens.py,sha256=OKGvaRylvv5AhCfll_muDzvwjtD7Y2-jJxzIl6YhzNY,4383
34
+ blaxel/client/api/compute/list_sandbox_previews.py,sha256=TQrU5g0JuOP6RvErremwjUMus9Mn1gUpaeWhphH1F7I,3932
28
35
  blaxel/client/api/compute/list_sandboxes.py,sha256=E_Y6PxnH_okG-5hR_BTxY6-MIqKVJUztBG-XBae2UIo,3469
29
36
  blaxel/client/api/compute/start_sandbox.py,sha256=zDZOfPtJ09S8pmwMyFRKrN4ju1XpfMrmsjTQCKRSbvc,3845
30
37
  blaxel/client/api/compute/stop_sandbox.py,sha256=IOvnmpQSYDGt09kXb7ijmYUO3YHY8Kn6bksEOHbxB2Y,3823
31
38
  blaxel/client/api/compute/update_sandbox.py,sha256=efKbl6GRsDXH6UNIq9_TPf06k1Yy-nkoVYs3RuVMxco,4201
39
+ blaxel/client/api/compute/update_sandbox_preview.py,sha256=LLf3l3c92ggKVO5Roy0G43N_CkLWjXG_4-x8s_tqfOg,4612
32
40
  blaxel/client/api/configurations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
41
  blaxel/client/api/configurations/get_configuration.py,sha256=3RVFsuSGg0Vpr3ov54zHqMdc_a6XisT3dxpifNRajJc,3096
34
42
  blaxel/client/api/default/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -47,7 +55,7 @@ blaxel/client/api/functions/update_function.py,sha256=_6FbRnYKwRpVjICXJua2ku59xx
47
55
  blaxel/client/api/integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
56
  blaxel/client/api/integrations/create_integration_connection.py,sha256=iViAGZh1TGg0bdKbMpJnoqgZNudBbzC-RZkxFwwLVIY,4163
49
57
  blaxel/client/api/integrations/delete_integration_connection.py,sha256=6ERiCNGfEj0NkXhCiaf6I1ZO-n-QYPGjPjPHCuorYx8,4015
50
- blaxel/client/api/integrations/get_integration.py,sha256=B5al3esJgjibHHsjhB-DbLttpIJDP7WSkJjkbYOaZjM,2384
58
+ blaxel/client/api/integrations/get_integration.py,sha256=w5V47wK5fQlLhICREcQrlT27wbCAV2hkuWQq5F3xtpw,3795
51
59
  blaxel/client/api/integrations/get_integration_connection.py,sha256=gLw_xLrUrHKlwn6M46gO8-gpEwrDz2pK2gE9PJbMn6E,4000
52
60
  blaxel/client/api/integrations/get_integration_connection_model.py,sha256=JJvKXQ9AGgPmcfHorLC6Ow6k_ZPBXeyqQXb5uApMDoA,2619
53
61
  blaxel/client/api/integrations/get_integration_connection_model_endpoint_configurations.py,sha256=p7G7t_l5W2MAPok7d6-7XYFYEBFzRhZjH-9MIrVtnE4,2499
@@ -98,6 +106,7 @@ blaxel/client/api/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMp
98
106
  blaxel/client/api/templates/list_templates.py,sha256=Im9cZFy37FLBqPer_FJQ7zKNYUsuas2enJK5ouQtEqM,3414
99
107
  blaxel/client/api/workspaces/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
100
108
  blaxel/client/api/workspaces/accept_workspace_invitation.py,sha256=zSYDXrG78l0zRb2BZMHCZW13ZocZQSolgeWVCCrdh_E,4142
109
+ blaxel/client/api/workspaces/check_workspace_availability.py,sha256=rYsBY72YjqGuWVP54Gqo76FAQ7z6XPnGEcHwGMUsxA0,4005
101
110
  blaxel/client/api/workspaces/create_worspace.py,sha256=YFjDjaunD6NDdTTlyj0che5Mo27gp5oQvzuyGy6x148,3744
102
111
  blaxel/client/api/workspaces/decline_workspace_invitation.py,sha256=zJtdDgb1qwWGAeUI-ybLrCfktiyyfxTo0gfYK33ClR8,3845
103
112
  blaxel/client/api/workspaces/delete_workspace.py,sha256=mEuQCQ-DHXpGymgAIUK0MSFrdaA6JQJuKNLRG7AE1gU,3634
@@ -109,11 +118,12 @@ blaxel/client/api/workspaces/list_workspaces.py,sha256=MuVb4Ubp4e8KZZyIpukiMHoLQ
109
118
  blaxel/client/api/workspaces/remove_workspace_user.py,sha256=OZ_Q5zvV3eUSxsmSmbkJ05r3tJgaAZEE3FrsdOpAOYE,2578
110
119
  blaxel/client/api/workspaces/update_workspace.py,sha256=GJZBydA4AzUOREpQ630b_S2-3zGLkVVhU364BH1luyY,4202
111
120
  blaxel/client/api/workspaces/update_workspace_user_role.py,sha256=MU4Rp_yE07wvhFcYoLV7fx_trsk-TcTYSNs59siO_W4,4866
112
- blaxel/client/models/__init__.py,sha256=7D2xg28cjcBFXP5xhMxR98g3ZNWVKRH2-5-uX5e6cRw,10083
121
+ blaxel/client/models/__init__.py,sha256=kTMY6DiU5A97a9PqWd81MVXWOpdMqXfqN1TNXd92jMQ,11356
113
122
  blaxel/client/models/acl.py,sha256=tH67gsl_BMaviSbTaaIkO1g9cWZgJ6VgAnYVjQSzGZY,3952
114
123
  blaxel/client/models/agent.py,sha256=VN2GMWsd7LSoWhthbezLIAqPZjQhsvMN6bqM09jZSuU,4359
115
124
  blaxel/client/models/agent_spec.py,sha256=YzBpVhagqSqrEBG5oh9xO5F4nvzlZgaV3xieGRtaQDg,12260
116
125
  blaxel/client/models/api_key.py,sha256=9k7XvNfdssY18CkNSVgE2pnmilMNjz-GpeyqkM_vP1s,4277
126
+ blaxel/client/models/check_workspace_availability_body.py,sha256=fGW874LWTPUC-Os12Fbo4vRkDWSPOqKPdsb4alpzHDA,1549
117
127
  blaxel/client/models/configuration.py,sha256=kBRcw-KrajLGyUcevHkMJkUJP-JtYjmbKHWBKQpbVk0,2760
118
128
  blaxel/client/models/continent.py,sha256=_gQJci2_MUmCiGGG4iCMnUDTww9OqcTsNVqwPVigy3U,1880
119
129
  blaxel/client/models/core_event.py,sha256=KGIlp-C1K0Qq0_A7featcQohUwVfI7-H_coQZJ0AzXE,2618
@@ -123,6 +133,7 @@ blaxel/client/models/country.py,sha256=IYUZ6ErVduc3vmB01UEN8nIi6h5htupqFvyhRqEmK
123
133
  blaxel/client/models/create_api_key_for_service_account_body.py,sha256=_D6aHXfZP8ksJeFlP-vEd5kEUuQAvofkaq5_N8ej_XM,2005
124
134
  blaxel/client/models/create_workspace_service_account_body.py,sha256=UHKYL3MSfVGMj4CNw0CzCsjnxdOxdnw6D8ujPrc76Xw,1958
125
135
  blaxel/client/models/create_workspace_service_account_response_200.py,sha256=qYHg4tbUWJWpFrSFS1pKFeBNidgwfRb2QoP_gV99dMM,3349
136
+ blaxel/client/models/delete_sandbox_preview_token_response_200.py,sha256=VZd8-qe3zvJ-Dtr4Na6DIFIkHk7eIXU1i-az2capq8o,1721
126
137
  blaxel/client/models/delete_workspace_service_account_response_200.py,sha256=wJt9T1kkoiDpMq5pE9uTZhXgeTqC0ZaTB51YBPBKo0M,2968
127
138
  blaxel/client/models/entrypoint.py,sha256=TZ8DyP2337SJzO77377Q4XuYuLxJTOKv2twFWphaEDI,2796
128
139
  blaxel/client/models/entrypoint_env.py,sha256=vX34kBBjOkcNbisOzquU-1c9X77Ieji2AVOTKxVD_Dw,1241
@@ -141,11 +152,19 @@ blaxel/client/models/function_spec.py,sha256=vjvvpz4THUW05q5nYvnMxvZ5BA6cvh7e0ji
141
152
  blaxel/client/models/get_workspace_service_accounts_response_200_item.py,sha256=ATEojS0VhRmL6a9JPWT3-fl3plosONbIWa5Jpoe4Pag,2981
142
153
  blaxel/client/models/histogram_bucket.py,sha256=d80wa8ksfi4bwPQiEN9s5IArkgc8jSfZwOAEFDZOTBk,2055
143
154
  blaxel/client/models/histogram_stats.py,sha256=CJMkvEhzeF8YuxQu9ZF3Ft8qoMIDyWB7fXEej6z4SXY,2342
155
+ blaxel/client/models/integration.py,sha256=XfxuUyJnVc8GiaUZWnjGYPnQmKiyGEBEa-v7AcO7w4c,8068
156
+ blaxel/client/models/integration_additional_infos.py,sha256=2Rq6IdGxoZCu7vGWEjJN6AlpqnOFOREyy8JXVlXU_Wo,1316
144
157
  blaxel/client/models/integration_connection.py,sha256=w3FZOQTDFqPVMEiXcL5NeLVp_uvIFpa72TijZbdqLkw,3162
145
158
  blaxel/client/models/integration_connection_spec.py,sha256=p0YvnqdAXNDg4mR5hiT8WYr4kCJkMnOG8EokVw2ERMU,4047
146
159
  blaxel/client/models/integration_connection_spec_config.py,sha256=B-EEdfSSyTfm7zFTpmoz_9mbOSu3S5UCIELLD8x6OU8,1360
147
160
  blaxel/client/models/integration_connection_spec_secret.py,sha256=j3haJQTt_uOO2ihzWJLrWS2rM8sOr6pJ0ckaHFRuHhE,1334
161
+ blaxel/client/models/integration_endpoint.py,sha256=ylAdTs4tYIXvNMnzkYTxppK40CNILnNXNMjUl5s6w7Q,4992
162
+ blaxel/client/models/integration_endpoint_token.py,sha256=FMVB0omPwHeFT7pGivERlVMWMUIQbuq8Cx9aGt5DXk8,2234
163
+ blaxel/client/models/integration_endpoints.py,sha256=qElM9HCQ5EsFM295TxW1Q11NP_DNXsNP7ADJi0gnEuQ,1914
164
+ blaxel/client/models/integration_headers.py,sha256=f7XQ2PFtgYXWxGaP-s6O9uK06thQYOlOi6gmlmAKVEA,1264
148
165
  blaxel/client/models/integration_model.py,sha256=-2_UVeP_5xWqYfP42gU2tckirN43LKTqUyRapwke090,5086
166
+ blaxel/client/models/integration_organization.py,sha256=nabwlixDnJyaGiOGyaVVR719yP_y59ewhMgZ_cjNOiE,2542
167
+ blaxel/client/models/integration_query_params.py,sha256=TV5nepXLqsDw2ww7bv1g2AOPDYKScyY4BqvLi38s3gw,1292
149
168
  blaxel/client/models/integration_repository.py,sha256=d1jn1UgTKYFfIEvpWwR20jkC2OuNx0ZIkv8iWXLxVns,2674
150
169
  blaxel/client/models/invite_workspace_user_body.py,sha256=ITmKPCuOGKTHn4VjnZ2EjIj6PGPoGh-M_rzgo0VMgNM,1612
151
170
  blaxel/client/models/knowledgebase.py,sha256=BJRBRvsdA50TVfIGEN1zUtOtjf25LVrdx5efPW0toCw,4487
@@ -161,7 +180,7 @@ blaxel/client/models/memory_allocation_metric.py,sha256=MOEUPZsXiCCepBv0nIJmKA97
161
180
  blaxel/client/models/metadata.py,sha256=kUrFB-DMTb7eRMDANjBvzJeQ67GjqQ2yN6J4gGN34rA,4385
162
181
  blaxel/client/models/metadata_labels.py,sha256=HA_fKLmJBlJlPfQKmWqZvckUpQhmMSBW9X7F4KZJ4-8,1231
163
182
  blaxel/client/models/metric.py,sha256=-XUIUtDu4OTH55kJuNVPBiNsp3F-iQRM1Nv5d0QxPP4,2157
164
- blaxel/client/models/metrics.py,sha256=P4WCH2s27Lii3eBY4wXDIAfmfReNPUKPU4oz0fzgIak,7210
183
+ blaxel/client/models/metrics.py,sha256=aUy1o4o6nLJwPtFTRzW1VGwP2Xodoe8rBVQfOunPYHw,7511
165
184
  blaxel/client/models/metrics_models.py,sha256=efxsNsedpUR8sywmcGwf89zSeF9Nctd0Qt6FPwKQdqU,1238
166
185
  blaxel/client/models/metrics_request_total_per_code.py,sha256=PT5Zfn4CPXpP-mGtJMzDQ0LIVnVZVehWf6lER8IxG2Q,1348
167
186
  blaxel/client/models/metrics_rps_per_code.py,sha256=CBhe8-hqpsK3lS4KepgqveAlnJRtjANoYnfXFU2lulE,1311
@@ -182,6 +201,12 @@ blaxel/client/models/policy_location.py,sha256=MSNHIcfK2v3FVICy1r6sJwlkJ7ClASt_5
182
201
  blaxel/client/models/policy_max_tokens.py,sha256=KFAKKJ8yG3Nfqg6r6HsANKrkivQI2KCKLgQGVGzOQYI,3138
183
202
  blaxel/client/models/policy_spec.py,sha256=A6LX0Q4HbealhZP6O0mtT6SrhfnvQHBf_3bNHt2g0uk,6066
184
203
  blaxel/client/models/port.py,sha256=3mMRcMnQsrDWA07O6DmeOPzHY4z-knugDcMd0wZtYgw,2107
204
+ blaxel/client/models/preview.py,sha256=CF493_n0Gwgd3HDwI7c4fKeZmywY0fLp-J_JCzU06LQ,3024
205
+ blaxel/client/models/preview_metadata.py,sha256=vka-rLcyn7XHQfcz0HWSg7sVD4EzP340iBeLHwQCt08,4231
206
+ blaxel/client/models/preview_spec.py,sha256=B3R5VoYNEhA4UBEBJ1WtaOMgSzK3PU6t6jBBh6evOak,2087
207
+ blaxel/client/models/preview_token.py,sha256=eSJ5ZmR-_Pu8CDNhz67KBpHiGkMeKDQsUQEqrYUTg4A,3142
208
+ blaxel/client/models/preview_token_metadata.py,sha256=x7Enkor1L96AoTwrzHMTBh2PdlI1K07iOHA_Nd8t1R8,2902
209
+ blaxel/client/models/preview_token_spec.py,sha256=0ifGZoeQVUZi-qFHA-gLvC34c6GLIMkj-Tnt77v3SZo,2486
185
210
  blaxel/client/models/private_cluster.py,sha256=7n5GIgiCBbD9HDNlnZNHuIIf5-nr6wZb2DSi-25O9v0,6519
186
211
  blaxel/client/models/private_location.py,sha256=EhXB6EcQMnMbe4-RMBNlawJhx9a0T5i0xebrbVFjlrE,1609
187
212
  blaxel/client/models/repository.py,sha256=y179VzQivkOSXq2zW-z0mGxVwIG-rZWSs_JRxxfSBhE,1791
@@ -208,7 +233,6 @@ blaxel/client/models/runtime_startup_probe.py,sha256=5FUuyl3eUW_pceopzrSGO9iZeNL
208
233
  blaxel/client/models/sandbox.py,sha256=8IVAthkCUzWDkC2-D-2qze3s8FXD74JN4x9yNdxalcg,4418
209
234
  blaxel/client/models/sandbox_definition.py,sha256=H0yTvcZ6kz2EnnAqmXkMZr6k0N6k9slsHprEc8qqSlg,5962
210
235
  blaxel/client/models/sandbox_spec.py,sha256=Z3bj-qrW8B1lcIZ8cgg72I2-Kx8YGRnAwX4B362DS0o,8269
211
- blaxel/client/models/sandboxes.py,sha256=rBN9RxDvPhTsSb4jyPzeR0x0TDLymWVVF0jW4fromNM,4428
212
236
  blaxel/client/models/serverless_config.py,sha256=vaEFezvBUevm6hTRfC3Z_yWVZDhZnbTO0FqlqbzZYNc,3673
213
237
  blaxel/client/models/serverless_config_configuration.py,sha256=bKx1mGHbBjlPyxn34lttSo_h3PdjOMriazPfPen9Y7I,1339
214
238
  blaxel/client/models/spec_configuration.py,sha256=oGmMqoZSVEGedarAou-102vfw16bFevHUp4C_OW6h1k,1970
@@ -236,9 +260,9 @@ blaxel/client/models/workspace.py,sha256=K_xs5Z6qFVgw6ShzaSBtTLIdltcpfu1Op422IA2
236
260
  blaxel/client/models/workspace_labels.py,sha256=WbnUY6eCTkUNdY7hhhSF-KQCl8fWFfkCf7hzCTiNp4A,1246
237
261
  blaxel/client/models/workspace_runtime.py,sha256=dxEpmwCFPOCRKHRKhY-iW7j6TbtL5qUsbjzSn00uTXU,1665
238
262
  blaxel/client/models/workspace_user.py,sha256=70CcifQWYbeWG7TDui4pblTzUe5sVK0AS19vNCzKE8g,3423
239
- blaxel/common/autoload.py,sha256=gPDNZrVzh28iYUwUbwKudf5y0SvcJ9zBgWibVXEN3fM,262
263
+ blaxel/common/autoload.py,sha256=NFuK71-IHOY2JQyEBSjDCVfUaQ8D8PJsEUEryIdG4AU,263
240
264
  blaxel/common/env.py,sha256=wTbzPDdNgz4HMJiS2NCZmQlN0qpxy1PQEYBaZgtvhoc,1247
241
- blaxel/common/internal.py,sha256=3jIr8wDbi5ErR_N8jebaqize6SEnImq0XcGXnc7EPN8,2406
265
+ blaxel/common/internal.py,sha256=J-etgnBzelb-ln8uBR9WIWzrEUyDds8rdT9FImjes9g,2390
242
266
  blaxel/common/logger.py,sha256=emqgonfZMBIaQPowpngWOOZxWQieKP-yj_OzGZT8Oe8,1918
243
267
  blaxel/common/settings.py,sha256=X0g0_hIR19qfjSeWNf8qraxb_UTSbYukVHJeRHKLTn8,2138
244
268
  blaxel/instrumentation/exporters.py,sha256=EoX3uaBVku1Rg49pSNXKFyHhgY5OV3Ih6UlqgjF5epw,1670
@@ -260,7 +284,50 @@ blaxel/models/pydantic.py,sha256=4_z2KtaeEiRMt_Zz6Ghy6il-QiaXzE3yizDJnCBcWO8,332
260
284
  blaxel/models/custom/langchain/gemini.py,sha256=AkhpuVMXnh1CyJ0zR2NMTtxQFPPHtAdHf_cyNzV3EsA,55421
261
285
  blaxel/models/custom/llamaindex/cohere.py,sha256=Igj5Y1ozf1V4feIXfBHDdaTFU7od_wuOhm0yChZNxMY,19109
262
286
  blaxel/models/custom/pydantic/gemini.py,sha256=rbsunh-M7EEKlD5ir3GlA-8a12JzPFcvsf6NISjzE5I,1052
263
- blaxel/tools/__init__.py,sha256=Ihxy3AHgh4eUK4hbVf01w6jemjZynbZ4xxK9vTd0l-k,11520
287
+ blaxel/sandbox/base.py,sha256=Ps1RvasF1MB8h0-XRz3Sxz7UGjpAPaI6pvrfonUckHo,2106
288
+ blaxel/sandbox/filesystem.py,sha256=3dvg92owjHypv0aFmBdx6i9QfMSfp6z9Z0D93yKfeiQ,4653
289
+ blaxel/sandbox/process.py,sha256=EWI6UctxdWo4Vd4VUSilABJME3g3x3ceuSuBN2mDfhM,2519
290
+ blaxel/sandbox/sandbox.py,sha256=meRE_iUx1dvlav-RIBdzQLrrHE_efBTtcbq-u9_mId4,2992
291
+ blaxel/sandbox/client/__init__.py,sha256=N26bD5o1jsTb48oExow6Rgivd8ylaU9jaWZfZsVilP8,128
292
+ blaxel/sandbox/client/client.py,sha256=tcP8cJ4Q3dV9aB3yQ01dDXO-ekfsa3WGGFz4DQAEf8I,7079
293
+ blaxel/sandbox/client/errors.py,sha256=gO8GBmKqmSNgAg-E5oT-oOyxztvp7V_6XG7OUTT15q0,546
294
+ blaxel/sandbox/client/py.typed,sha256=8ZJUsxZiuOy1oJeVhsTWQhTG_6pTVHVXk5hJL79ebTk,25
295
+ blaxel/sandbox/client/types.py,sha256=E1hhDh_zXfsSQ0NCt9-uw90_Mr5iIlsdfnfvxv5HarU,1005
296
+ blaxel/sandbox/client/api/__init__.py,sha256=zTSiG_ujSjAqWPyc435YXaX9XTlpMjiJWBbV-f-YtdA,45
297
+ blaxel/sandbox/client/api/filesystem/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
298
+ blaxel/sandbox/client/api/filesystem/delete_filesystem_path.py,sha256=PVm-a_nacy6QQb6mh_HIDx-JkiFYeUOypHZq0AtE6dA,4782
299
+ blaxel/sandbox/client/api/filesystem/get_filesystem_path.py,sha256=Hp8pM8xvi5zAjO5xujAbKxALUBJHH-JdyvWIEJ8dHo0,5010
300
+ blaxel/sandbox/client/api/filesystem/put_filesystem_path.py,sha256=GIqwjevow7sRw5Po9iraYY1Yl5UXqgv2pjUw9nle97E,4759
301
+ blaxel/sandbox/client/api/network/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
302
+ blaxel/sandbox/client/api/network/delete_network_process_pid_monitor.py,sha256=nhQe7a4PqBhFQ6pZxSPilcvg-tt3jP0tmuX3Po8bd9g,4581
303
+ blaxel/sandbox/client/api/network/get_network_process_pid_ports.py,sha256=2lsDR78DMqJChOHe84JCy2iTHGIEDnzDArm4SMnt3JY,4455
304
+ blaxel/sandbox/client/api/network/post_network_process_pid_monitor.py,sha256=3sUYnFyMwpypQfLBZvIcFB9v8RrhNIMOKGb1uM15pzU,5235
305
+ blaxel/sandbox/client/api/process/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
306
+ blaxel/sandbox/client/api/process/delete_process_identifier.py,sha256=7ihlG9_R7p-sbw_4h93cnOyBGYhiWfFtpsjY6z9P7iQ,4179
307
+ blaxel/sandbox/client/api/process/delete_process_identifier_kill.py,sha256=1x_KMc7uJD_fap8uoTmZkWIDTgLJKmCTGcOP1Mr6X1E,4858
308
+ blaxel/sandbox/client/api/process/get_process.py,sha256=XWf_hNFZLkS14eWjBjir22QwdtV313_llrQGExJ7lZo,3588
309
+ blaxel/sandbox/client/api/process/get_process_identifier.py,sha256=OqmxuKKHDGX6rwS0Mavn6nnL0X_7AasPUdS5RS04URc,4159
310
+ blaxel/sandbox/client/api/process/get_process_identifier_logs.py,sha256=Mj07ddD2CHonZuiNIi4RzxVC9KQEr64MhLE5820Bc9Y,5152
311
+ blaxel/sandbox/client/api/process/get_process_identifier_logs_stream.py,sha256=hvhZWPxAir1EQA0L-5aI6WdRzaCOvnk5jPoBlfdjPZE,5343
312
+ blaxel/sandbox/client/api/process/post_process.py,sha256=cemvWEtrZ24RBx3QHusE9Al_yrgQip9nBSkaQhSGUkI,4527
313
+ blaxel/sandbox/client/models/__init__.py,sha256=wNEW4zTQ9Y0aIsnjfTtMrUHaMBm6mavWuTCzF-hAzms,1508
314
+ blaxel/sandbox/client/models/delete_network_process_pid_monitor_response_200.py,sha256=9cQgKDjG98sMridjXKgeR2oZzFKcQ0G9QIojhwYFosI,1376
315
+ blaxel/sandbox/client/models/directory.py,sha256=ApgBGjZApuhbTD6HKEzOIwk1IurrhpjuyupKlZcBj4c,3597
316
+ blaxel/sandbox/client/models/error_response.py,sha256=lI15zKBoD2X9yHzSiEaYGUn5TPTxWM7j1Tu5crtd23M,1581
317
+ blaxel/sandbox/client/models/file.py,sha256=0CHScaMKrE_Eu3XfMVPAY7GAppQUKwG3VhSr5rp7T1A,2813
318
+ blaxel/sandbox/client/models/file_request.py,sha256=xOZSru-fae-En-_2YBgkHa_6iGbqbJsG3RLqBuajVY0,2227
319
+ blaxel/sandbox/client/models/file_with_content.py,sha256=Fou1vfbdPPOg2l2YTU2Q2M23V7iaFy3BFVKSGQ3jvN8,3131
320
+ blaxel/sandbox/client/models/get_network_process_pid_ports_response_200.py,sha256=x4uv80kK0GVroWO98l5sE84a6uwZ8pnUKTpGg81ipWA,1351
321
+ blaxel/sandbox/client/models/get_process_identifier_logs_response_200.py,sha256=pEs9vxD29oxrojOgeyppXXmFVvem7beWzm5_i4TkgDc,1343
322
+ blaxel/sandbox/client/models/get_process_identifier_logs_stream_response_200.py,sha256=EZndHWB9OhAv9PNC_NCOSEF0vZjDQfJibjCXi3l76pw,1376
323
+ blaxel/sandbox/client/models/port_monitor_request.py,sha256=LK7sjAK1TF1ojgG4vGytaKLVtV6-SNXxfZ3sxew1cRE,1698
324
+ blaxel/sandbox/client/models/post_network_process_pid_monitor_response_200.py,sha256=Y8BvNGKU8SlzTGqhaQZk_WWIrmFpNU0LVcmLFjNvqhA,1366
325
+ blaxel/sandbox/client/models/process_kill_request.py,sha256=TqhuOmVPm_yKZj52YFv3yyu2UA8eVgXEio4sgCVAR-0,1614
326
+ blaxel/sandbox/client/models/process_request.py,sha256=FGWl2SnuHdBY-8t_YatpKwYCUfA3LMHt8RnU0hjPcLc,3598
327
+ blaxel/sandbox/client/models/process_response.py,sha256=WMfxuNTrL5wo5QT7HOR4_CTyf9XztO5cPvmtlHMdNd8,3624
328
+ blaxel/sandbox/client/models/subdirectory.py,sha256=nJxyF6vc3iHK-36uR3oi-yhuBCJfmoLo8-4dwBjJJLU,1537
329
+ blaxel/sandbox/client/models/success_response.py,sha256=JQbCUIdVJy_TJ3mp8IuvCGbKgCm_iZQMMrqn8uZkxCk,1874
330
+ blaxel/tools/__init__.py,sha256=4lzqDt0FNWcO8L0DkFzY1KTHLNtgEux66id4Psq7sXY,11520
264
331
  blaxel/tools/common.py,sha256=JGK052v_fvwWBFYnIArlBnFFViYyFrqdDn3gdVf53EU,1332
265
332
  blaxel/tools/crewai.py,sha256=rPrRGwkXejunJQ6In1IsYAxJPNbr6d9EckXrSIHQods,638
266
333
  blaxel/tools/googleadk.py,sha256=65qJysecgAMujxsyGxuCEVL0fWoR5I489DMiSA3ZaGs,2265
@@ -270,7 +337,7 @@ blaxel/tools/llamaindex.py,sha256=-gQ-C9V_h9a11J4ItsbWjXrCJOg0lRKsb98v9rVsNak,71
270
337
  blaxel/tools/openai.py,sha256=GuFXkj6bXEwldyVr89jEsRAi5ihZUVEVe327QuWiGNs,653
271
338
  blaxel/tools/pydantic.py,sha256=CvnNbAG_J4yBtA-XFI4lQrq3FYKjNd39hu841vZT004,1801
272
339
  blaxel/tools/types.py,sha256=YPCGJ4vZDhqR0X2H_TWtc5chQScsC32nGTQdRKJlO8Y,707
273
- blaxel-0.1.9rc37.dist-info/METADATA,sha256=CwCyqpx3AtQTXCJEFxTt4Ikuz1VSK1WMyIF1q-ye9Rs,11606
274
- blaxel-0.1.9rc37.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
275
- blaxel-0.1.9rc37.dist-info/licenses/LICENSE,sha256=p5PNQvpvyDT_0aYBDgmV1fFI_vAD2aSV0wWG7VTgRis,1069
276
- blaxel-0.1.9rc37.dist-info/RECORD,,
340
+ blaxel-0.1.10.dist-info/METADATA,sha256=V-mqu--en26SEhF2oJiV9XMsP38NOioTTQQmKPL_CCA,11603
341
+ blaxel-0.1.10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
342
+ blaxel-0.1.10.dist-info/licenses/LICENSE,sha256=p5PNQvpvyDT_0aYBDgmV1fFI_vAD2aSV0wWG7VTgRis,1069
343
+ blaxel-0.1.10.dist-info/RECORD,,
@@ -1,129 +0,0 @@
1
- from typing import TYPE_CHECKING, Any, TypeVar, Union
2
-
3
- from attrs import define as _attrs_define
4
- from attrs import field as _attrs_field
5
-
6
- from ..types import UNSET, Unset
7
-
8
- if TYPE_CHECKING:
9
- from ..models.core_event import CoreEvent
10
- from ..models.metadata import Metadata
11
- from ..models.sandbox_spec import SandboxSpec
12
-
13
-
14
- T = TypeVar("T", bound="Sandboxes")
15
-
16
-
17
- @_attrs_define
18
- class Sandboxes:
19
- """Micro VM for running agentic tasks
20
-
21
- Attributes:
22
- events (Union[Unset, list['CoreEvent']]): Core events
23
- metadata (Union[Unset, Metadata]): Metadata
24
- spec (Union[Unset, SandboxSpec]): Sandbox specification
25
- status (Union[Unset, str]): Sandbox status
26
- """
27
-
28
- events: Union[Unset, list["CoreEvent"]] = UNSET
29
- metadata: Union[Unset, "Metadata"] = UNSET
30
- spec: Union[Unset, "SandboxSpec"] = UNSET
31
- status: Union[Unset, str] = UNSET
32
- additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
33
-
34
- def to_dict(self) -> dict[str, Any]:
35
- events: Union[Unset, list[dict[str, Any]]] = UNSET
36
- if not isinstance(self.events, Unset):
37
- events = []
38
- for componentsschemas_core_events_item_data in self.events:
39
- if type(componentsschemas_core_events_item_data) == dict:
40
- componentsschemas_core_events_item = componentsschemas_core_events_item_data
41
- else:
42
- componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
43
- events.append(componentsschemas_core_events_item)
44
-
45
- metadata: Union[Unset, dict[str, Any]] = UNSET
46
- if self.metadata and not isinstance(self.metadata, Unset) and not isinstance(self.metadata, dict):
47
- metadata = self.metadata.to_dict()
48
- elif self.metadata and isinstance(self.metadata, dict):
49
- metadata = self.metadata
50
-
51
- spec: Union[Unset, dict[str, Any]] = UNSET
52
- if self.spec and not isinstance(self.spec, Unset) and not isinstance(self.spec, dict):
53
- spec = self.spec.to_dict()
54
- elif self.spec and isinstance(self.spec, dict):
55
- spec = self.spec
56
-
57
- status = self.status
58
-
59
- field_dict: dict[str, Any] = {}
60
- field_dict.update(self.additional_properties)
61
- field_dict.update({})
62
- if events is not UNSET:
63
- field_dict["events"] = events
64
- if metadata is not UNSET:
65
- field_dict["metadata"] = metadata
66
- if spec is not UNSET:
67
- field_dict["spec"] = spec
68
- if status is not UNSET:
69
- field_dict["status"] = status
70
-
71
- return field_dict
72
-
73
- @classmethod
74
- def from_dict(cls: type[T], src_dict: dict[str, Any]) -> T:
75
- from ..models.core_event import CoreEvent
76
- from ..models.metadata import Metadata
77
- from ..models.sandbox_spec import SandboxSpec
78
-
79
- if not src_dict:
80
- return None
81
- d = src_dict.copy()
82
- events = []
83
- _events = d.pop("events", UNSET)
84
- for componentsschemas_core_events_item_data in _events or []:
85
- componentsschemas_core_events_item = CoreEvent.from_dict(componentsschemas_core_events_item_data)
86
-
87
- events.append(componentsschemas_core_events_item)
88
-
89
- _metadata = d.pop("metadata", UNSET)
90
- metadata: Union[Unset, Metadata]
91
- if isinstance(_metadata, Unset):
92
- metadata = UNSET
93
- else:
94
- metadata = Metadata.from_dict(_metadata)
95
-
96
- _spec = d.pop("spec", UNSET)
97
- spec: Union[Unset, SandboxSpec]
98
- if isinstance(_spec, Unset):
99
- spec = UNSET
100
- else:
101
- spec = SandboxSpec.from_dict(_spec)
102
-
103
- status = d.pop("status", UNSET)
104
-
105
- sandboxes = cls(
106
- events=events,
107
- metadata=metadata,
108
- spec=spec,
109
- status=status,
110
- )
111
-
112
- sandboxes.additional_properties = d
113
- return sandboxes
114
-
115
- @property
116
- def additional_keys(self) -> list[str]:
117
- return list(self.additional_properties.keys())
118
-
119
- def __getitem__(self, key: str) -> Any:
120
- return self.additional_properties[key]
121
-
122
- def __setitem__(self, key: str, value: Any) -> None:
123
- self.additional_properties[key] = value
124
-
125
- def __delitem__(self, key: str) -> None:
126
- del self.additional_properties[key]
127
-
128
- def __contains__(self, key: str) -> bool:
129
- return key in self.additional_properties