Running isolated environments for executing code for agents
curl -L https://github.com/system32-ai/sandboxed/releases/download/v1.0.8/sandboxed-v1.0.0-darwin-amd64.tar.gz -o sandboxed.tar.gz tar -xzf sandboxed.tar.gz mv sandboxed-v1.0.8-darwin-arm64 sandboxed sudo mv sandboxed /usr/local/bin/ sudo chmod +x /usr/local/bin/sandboxed rm sandboxed.tar.gz sandboxed versionStart the sandboxed server:
sandboxed serverCreate a sandbox, execute code and destroy it:
curl -X POST http://localhost:8080/api/v1/sandbox/create \
-H "Content-Type: application/json" \
-d '{
"language": "python",
"name": "data-processing",
}'
curl -X POST http://localhost:8080/api/v1/execute \
-H "Content-Type: application/json" \
-d '{
"sandbox_id": "data-processing-1698765432",
"code": "import pandas as pd\nimport numpy as np\n\n# Create sample data\ndata = np.random.randn(100, 3)\ndf =
pd.DataFrame(data, columns=[\"A\", \"B\", \"C\"])\nprint(f\"Dataset shape: {df.shape}\")\nprint(f\"Mean
values:\\n{df.mean()}\")",
}'
curl -X POST http://localhost:8080/api/v1/sandbox/destroy \
-H "Content-Type: application/json" \
-d '{
"sandbox_id": "data-processing-1698765432",
"namespace": "development",
"force": false
}'
package main
import (
"log"
"github.com/system32-ai/sandboxed/pkg/sdk"
)
func main() {
sandbox, err := sdk.CreateSandbox("debug-generated-code", sdk.Python)
if err != nil {
log.Fatalf("failed to create sandbox: %v", err)
}
defer sandbox.Destroy()
code := `python -c 'print("Hello, World!")'`
output, err := sandbox.Run(code)
if err != nil {
log.Fatal(err)
}
log.Printf("Output: %s", output.Result)
code = `python --version`
output, err = sandbox.Run(code)
if err != nil {
log.Fatal(err)
}
log.Printf("Output: %s", output.Result)
}