PPIO Sandbox SDK - Python library for PPIO Agent Sandbox
Project description
PPIO Sandbox SDK for Python
Python SDK for PPIO Sandbox environments, providing code execution, desktop automation, and cloud computing capabilities, which is compatible with e2b.
Please read the documentation for more information.
Installation
pip install ppio-sandbox
Features
- 🚀 Code Interpreter: Execute Python, JavaScript, and other languages in isolated environments
- 🖥️ Desktop Automation: Control desktop applications and GUI interactions
- ☁️ Cloud Computing: Scalable sandbox environments for various computing tasks
- 📊 Data Visualization: Built-in charting and visualization capabilities
- 🔧 File System Operations: Complete file system management and monitoring
Quick Start
Authentication
You can get the PPIO API key by refer to this documentation.
Core
The basic package provides a way to interact with the sandbox environment.
from ppio_sandbox.core import Sandbox
import os
# Using the official template `base` by default
sandbox = Sandbox.create(
template="base",
api_key=os.getenv("PPIO_API_KEY", "")
)
# File operations
sandbox.files.write('/tmp/test.txt', 'Hello, World!')
content = sandbox.files.read('/tmp/test.txt')
# Command execution
result = sandbox.commands.run('ls -la /tmp')
print(result.stdout)
sandbox.kill()
Code Interpreter
The Code Interpreter sandbox provides a Jupyter-like environment for executing code using the official code-interpreter-v1 template.
from ppio_sandbox.code_interpreter import Sandbox
import os
sandbox = Sandbox.create(
api_key=os.getenv("PPIO_API_KEY", "")
)
# Execute Python code
result = sandbox.run_code('print("Hello, World!")')
print(result.logs)
sandbox.kill()
Desktop
The Desktop sandbox allows you to control desktop environments programmatically using the official desktop template.
from ppio_sandbox.desktop import Sandbox
import os
desktop = Sandbox.create(
api_key=os.getenv("PPIO_API_KEY", "")
)
# Take a screenshot
screenshot = desktop.screenshot()
# Automate mouse and keyboard
desktop.left_click(100, 200)
desktop.press('Return')
desktop.write('Hello, World!')
desktop.kill()
Development
Install
poetry install --with dev --extras "all"
Test
make test
make test-core
make test-code-interpreter
make test-desktop
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ppio_sandbox-1.1.0a17.tar.gz.
File metadata
- Download URL: ppio_sandbox-1.1.0a17.tar.gz
- Upload date:
- Size: 323.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9cf8f546f47b54b8a885e7d9e87de04b9716191375c83cc0f71ac40f8cc664ec
|
|
| MD5 |
ab911abb6d68fd90da513e4a9db17149
|
|
| BLAKE2b-256 |
96662f148dc7ff73975a0c3ecbe6e84b59142f63c3e6f20e6773030bcf1a4d3f
|
File details
Details for the file ppio_sandbox-1.1.0a17-py3-none-any.whl.
File metadata
- Download URL: ppio_sandbox-1.1.0a17-py3-none-any.whl
- Upload date:
- Size: 361.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.2 CPython/3.12.11 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f43687fd1a3c1ac157e83b70c2a0b1cca02400ba623a8c1d3f35e590ccbd95fd
|
|
| MD5 |
584e668baa672f29add8088deee304dd
|
|
| BLAKE2b-256 |
a599f5c5cba373d953818ead11b733797cafaa73480b0e16e17ca1fb57f14402
|