This release is a pre-release and may not be stable for production use.
Novita Agent Sandbox SDK for Python
A Python SDK for Novita Agent Sandbox environments that provides code execution, desktop automation, and cloud computing capabilities..
📖 Documentation • 🔑 Get API Key
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
Installation
pip install novita-sandbox
pip install novita-sandbox[runtime]
pip install novita-sandbox[code-interpreter]
pip install novita-sandbox[desktop]
pip install novita-sandbox[all]
runtime is for users who only need Agent Runtime-related features; all includes every optional dependency.
Quick Start
Authentication
Get your Novita API key from the key management page.
Core Sandbox
Use the high-level Novita client to share one set of credentials across namespaces.
import os
from novita_sandbox import Novita
novita = Novita(api_key=os.getenv("NOVITA_API_KEY", ""))
# Using the official template `base` by default
sandbox = novita.sandbox.create("base")
# 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 is available through the same client.
import os
from novita_sandbox import Novita
novita = Novita(api_key=os.getenv("NOVITA_API_KEY", ""))
sandbox = novita.code_interpreter.create()
# Execute Python code
result = sandbox.run_code('print("Hello, World!")')
print(result.logs)
sandbox.kill()
Desktop Automation
The Desktop sandbox is available through the same client.
import os
from novita_sandbox import Novita
novita = Novita(api_key=os.getenv("NOVITA_API_KEY", ""))
desktop = novita.desktop.create()
# Take a screenshot
screenshot = desktop.screenshot()
# Automate mouse and keyboard
desktop.left_click(100, 200)
desktop.press('Return')
desktop.write('Hello, World!')
desktop.kill()
Documentation
For comprehensive guides, API references, and examples, visit our official documentation.
Development
Install
poetry install --with dev --extras "all"
Test
make test
make test-core
make test-code-interpreter
make test-desktop
Metadata
Release files for novita-sandbox 2.1.0a4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| novita_sandbox-2.1.0a4.tar.gz | 527.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| novita_sandbox-2.1.0a4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / novita_sandbox-2.1.0a4.tar.gz
| Download URL | novita_sandbox-2.1.0a4.tar.gz |
|---|---|
| Size | 527.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
205b397dd782882b7495aa02062569535f5732387631949266227c13c9523a57
|
|
BLAKE2b-256 checksum How to use checksums |
256f29c6632d879e00168f9e8dd9de5f9314957c39da1b4720255c5a266aa2e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.2 CPython/3.12.14 Linux/6.17.0-1022-azure
|
Release files / novita_sandbox-2.1.0a4-py3-none-any.whl
| Download URL | novita_sandbox-2.1.0a4-py3-none-any.whl |
|---|---|
| Size | 658.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f06bc80d0e698a1a543421a855462e7136256de1762247ce411042d3931e8957
|
|
BLAKE2b-256 checksum How to use checksums |
e075b39dc32e716b58d3ba647f4752e181116540546df19edb6a516d97fe58de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.2 CPython/3.12.14 Linux/6.17.0-1022-azure
|