sandrpod-cli 0.2.1__tar.gz

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.
@@ -0,0 +1,69 @@
1
+ Metadata-Version: 2.4
2
+ Name: sandrpod-cli
3
+ Version: 0.2.1
4
+ Summary: Command-line client for SandrPod — self-hosted, multi-cloud sandbox infrastructure for AI agents
5
+ License: MIT
6
+ Project-URL: Homepage, https://github.com/sandrpod/sandrpod
7
+ Project-URL: Repository, https://github.com/sandrpod/sandrpod
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
12
+ Requires-Python: >=3.8
13
+ Description-Content-Type: text/markdown
14
+ Requires-Dist: requests>=2.28.0
15
+ Requires-Dist: click>=8.0.0
16
+ Requires-Dist: pyyaml>=6.0
17
+ Provides-Extra: shell
18
+ Requires-Dist: websocket-client>=1.0.0; extra == "shell"
19
+ Dynamic: classifier
20
+ Dynamic: description
21
+ Dynamic: description-content-type
22
+ Dynamic: license
23
+ Dynamic: project-url
24
+ Dynamic: provides-extra
25
+ Dynamic: requires-dist
26
+ Dynamic: requires-python
27
+ Dynamic: summary
28
+
29
+ # sandrpod-cli
30
+
31
+ Command-line client for [SandrPod](https://github.com/sandrpod/sandrpod) — open-source, **self-hosted execution infrastructure (sandboxes) for AI agents**. Run sandboxes on your own substrate (8 clouds incl. Aliyun/Tencent, plain Docker, or a bare machine), drive them over the native REST API, and stay E2B-compatible.
32
+
33
+ ## Install
34
+
35
+ ```bash
36
+ pip install sandrpod-cli
37
+ pip install "sandrpod-cli[shell]" # + interactive PTY shell (websocket-client)
38
+ ```
39
+
40
+ ## Configure
41
+
42
+ ```bash
43
+ export SANDRPOD_API_URL=http://your-server:8080
44
+ export SANDRPOD_API_TOKEN=your-token # only if the server runs with auth
45
+ # or pass per-command: sandrpod-cli --api-url http://your-server:8080 <cmd>
46
+ ```
47
+
48
+ ## Quickstart
49
+
50
+ ```bash
51
+ sandrpod-cli create mybox --provider local # create a sandbox
52
+ sandrpod-cli execute mybox "echo hi; python3 -V" # one-shot exec
53
+ sandrpod-cli run mybox "import numpy; print(1)" # stateful code interpreter (Jupyter-style)
54
+ sandrpod-cli fs write mybox /workspace/a.txt hello # filesystem ops
55
+ sandrpod-cli fs ls mybox
56
+ sandrpod-cli stream mybox "for i in 1 2 3; do echo \$i; sleep 1; done" # real-time output
57
+ sandrpod-cli shell mybox # interactive PTY (needs the [shell] extra)
58
+ sandrpod-cli preview mybox 8000 # proxy a web port inside the sandbox
59
+ sandrpod-cli stats mybox # CPU / memory / disk
60
+ sandrpod-cli delete mybox
61
+ ```
62
+
63
+ **Charts**: `sandrpod-cli run` captures matplotlib figures, saving the rendered PNG plus structured chart data (E2B-style).
64
+
65
+ Full command list (cloud providers, snapshots, tokens, contexts, directory watch, …) is in the [SandrPod repository](https://github.com/sandrpod/sandrpod).
66
+
67
+ ## License
68
+
69
+ MIT
@@ -0,0 +1,41 @@
1
+ # sandrpod-cli
2
+
3
+ Command-line client for [SandrPod](https://github.com/sandrpod/sandrpod) — open-source, **self-hosted execution infrastructure (sandboxes) for AI agents**. Run sandboxes on your own substrate (8 clouds incl. Aliyun/Tencent, plain Docker, or a bare machine), drive them over the native REST API, and stay E2B-compatible.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pip install sandrpod-cli
9
+ pip install "sandrpod-cli[shell]" # + interactive PTY shell (websocket-client)
10
+ ```
11
+
12
+ ## Configure
13
+
14
+ ```bash
15
+ export SANDRPOD_API_URL=http://your-server:8080
16
+ export SANDRPOD_API_TOKEN=your-token # only if the server runs with auth
17
+ # or pass per-command: sandrpod-cli --api-url http://your-server:8080 <cmd>
18
+ ```
19
+
20
+ ## Quickstart
21
+
22
+ ```bash
23
+ sandrpod-cli create mybox --provider local # create a sandbox
24
+ sandrpod-cli execute mybox "echo hi; python3 -V" # one-shot exec
25
+ sandrpod-cli run mybox "import numpy; print(1)" # stateful code interpreter (Jupyter-style)
26
+ sandrpod-cli fs write mybox /workspace/a.txt hello # filesystem ops
27
+ sandrpod-cli fs ls mybox
28
+ sandrpod-cli stream mybox "for i in 1 2 3; do echo \$i; sleep 1; done" # real-time output
29
+ sandrpod-cli shell mybox # interactive PTY (needs the [shell] extra)
30
+ sandrpod-cli preview mybox 8000 # proxy a web port inside the sandbox
31
+ sandrpod-cli stats mybox # CPU / memory / disk
32
+ sandrpod-cli delete mybox
33
+ ```
34
+
35
+ **Charts**: `sandrpod-cli run` captures matplotlib figures, saving the rendered PNG plus structured chart data (E2B-style).
36
+
37
+ Full command list (cloud providers, snapshots, tokens, contexts, directory watch, …) is in the [SandrPod repository](https://github.com/sandrpod/sandrpod).
38
+
39
+ ## License
40
+
41
+ MIT
@@ -0,0 +1,2 @@
1
+ # Copyright 2024 SandrPod
2
+ # CLI Package
@@ -0,0 +1,7 @@
1
+ # Copyright 2024 SandrPod
2
+ # CLI Main Entry Point
3
+
4
+ from .main import cli
5
+
6
+ if __name__ == "__main__":
7
+ cli(obj={})