arrakis  by abshkbh

Sandboxing solution for AI agent code execution and computer use

created 1 year ago
552 stars

Top 58.8% on sourcepulse

GitHubView on GitHub
Project Summary

Arrakis provides a self-hosted, customizable sandboxing solution for AI agent code execution and computer use, enabling safe multi-step workflows with backtracking. It targets AI developers and researchers needing secure, isolated environments for testing and running potentially malicious or buggy code. The key benefit is robust isolation and state management for complex agent operations.

How It Works

Arrakis leverages MicroVMs (specifically cloud-hypervisor) for secure, lightweight isolation of each sandbox. It supports snapshot-and-restore functionality, allowing agents to checkpoint and backtrack to previous states. Sandboxes run Ubuntu with pre-configured code execution services and VNC servers, accessible via a REST API, Python SDK, and MCP server, simplifying interaction and GUI access.

Quick Start & Requirements

  • Install: curl -sSL https://raw.githubusercontent.com/abshkbh/arrakis/main/setup/setup.sh | bash followed by running ./arrakis-restserver.
  • Prerequisites: Linux machine with KVM support (/dev/kvm accessible).
  • SDK: pip install py-arrakis
  • Docs: Usage

Highlighted Details

  • Secure MicroVM isolation using cloud-hypervisor.
  • Out-of-the-box snapshot-and-restore for state management.
  • Automatic port forwarding for VNC/GUI access (e.g., Chrome).
  • REST API, Go CLI, and Python SDK (py-arrakis) for programmatic control.
  • MCP server integration for tools like Claude Desktop.

Maintenance & Community

  • Project maintained by abshkbh.
  • Contribution guide forthcoming.
  • Contact: abshkbh@gmail.com

Licensing & Compatibility

  • Licensed under GNU Affero General Public License v3.0 (AGPL-3.0).
  • Commercial licensing available upon inquiry. AGPL-3.0 may impose copyleft restrictions on derivative works.

Limitations & Caveats

  • Currently Linux-only due to KVM dependency.
  • Snapshot restoration requires the original VM to be stopped or destroyed to maintain the same IP.
  • Contributions require signing a Contributor License Agreement (CLA).
Health Check
Last commit

2 months ago

Responsiveness

1+ week

Pull Requests (30d)
0
Issues (30d)
0
Star History
196 stars in the last 90 days

Explore Similar Projects

Starred by Patrick Kidger Patrick Kidger(Core Contributor to JAX ecosystem), Dan Guido Dan Guido(Cofounder of Trail of Bits), and
3 more.

ubicloud by ubicloud

0.1%
5k
Open-source IaaS alternative to AWS
created 2 years ago
updated 20 hours ago
Feedback? Help us improve.