windows-sandbox-manager


Namewindows-sandbox-manager JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
SummaryA modern, secure, and scalable Python library for creating and managing Windows Sandbox instances
upload_time2025-07-19 03:11:34
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords isolation sandbox security virtualization windows
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Windows Sandbox Manager

Python library for managing Windows Sandbox instances programmatically. Useful for running untrusted code, testing applications, or executing AI agents in isolated environments.

## Installation

```bash
pip install windows-sandbox-manager
```

## Usage

```python
import asyncio
from windows_sandbox_manager import SandboxManager, SandboxConfig

async def main():
    # Create sandbox manager
    manager = SandboxManager()
    
    # Create sandbox configuration
    config = SandboxConfig(
        name="my-sandbox",
        memory_mb=4096,
        cpu_cores=2,
        networking=True
    )
    
    # Create and start sandbox
    sandbox = await manager.create_sandbox(config)
    
    # Execute commands
    result = await sandbox.execute("python --version")
    print(f"Output: {result.stdout}")
    
    # Cleanup
    await sandbox.shutdown()

asyncio.run(main())
```

### CLI

```bash
wsb create sandbox.yaml
wsb list
wsb exec <sandbox-id> "python script.py"
wsb shutdown <sandbox-id>
```

## Configuration

```yaml
name: "dev-sandbox"
memory_mb: 4096
cpu_cores: 2
networking: true

folders:
  - host: "C:\\Projects\\MyApp"
    guest: "C:\\Users\\WDAGUtilityAccount\\Desktop\\MyApp"
    readonly: false

startup_commands:
  - "python --version"
```

## AI Agent Execution

Windows Sandbox provides a secure environment for running AI agents that need to execute untrusted code or interact with the file system without risking the host machine.

### Example: Running an AI Code Agent

```python
import asyncio
from windows_sandbox_manager import SandboxManager, SandboxConfig, FolderMapping
from pathlib import Path

async def run_ai_agent():
    config = SandboxConfig(
        name="ai-agent-sandbox",
        memory_mb=8192,
        cpu_cores=4,
        networking=True,
        folders=[
            FolderMapping(
                host=Path("C:/agent_workspace"),
                guest=Path("C:/Users/WDAGUtilityAccount/Desktop/workspace"),
                readonly=False
            )
        ],
        startup_commands=[
            "python -m pip install requests openai",
            "python -c \"print('AI Agent environment ready')\""
        ]
    )
    
    async with SandboxManager() as manager:
        sandbox = await manager.create_sandbox(config)
        
        # Execute AI agent code safely
        agent_code = '''
import os
import requests

# AI agent can safely write files, make network requests, etc.
with open("output.txt", "w") as f:
    f.write("AI agent executed safely in sandbox")

# Network access is isolated
response = requests.get("https://api.github.com")
print(f"API Status: {response.status_code}")
'''
        
        # Write agent code to sandbox
        result = await sandbox.execute(f'echo "{agent_code}" > agent.py')
        
        # Run the agent (now uses real PowerShell Direct communication)
        result = await sandbox.execute("python agent.py")
        print(f"Agent output: {result.stdout}")
        print(f"Exit code: {result.returncode}")
        
        # Monitor resource usage
        stats = await sandbox.get_resource_stats()
        print(f"Memory usage: {stats.memory_mb}MB")
        print(f"CPU usage: {stats.cpu_percent}%")
        
        # Check results
        result = await sandbox.execute("type output.txt")
        print(f"Agent created file: {result.stdout}")

asyncio.run(run_ai_agent())
```

### Use Cases for AI Agents

- **Code Generation & Execution**: Let AI agents write and test code without affecting your system
- **File System Operations**: Allow agents to create, modify, and organize files safely
- **Web Scraping**: Run web scraping agents with network isolation
- **Data Processing**: Process untrusted data files in a contained environment
- **Testing & Validation**: Test AI-generated scripts before running on production systems

## Features

- **Real Sandbox Execution**: Execute commands directly in Windows Sandbox VMs using PowerShell Direct
- **Resource Monitoring**: Monitor CPU, memory, and disk usage of sandbox processes in real-time
- **Async API**: Full async/await support for non-blocking sandbox operations
- **Secure Isolation**: Complete isolation from host system for running untrusted code
- **Folder Mapping**: Share folders between host and sandbox with configurable permissions
- **CLI Interface**: Command-line tools for managing sandboxes

## Feature Examples

### Real Sandbox Execution

Execute commands directly in Windows Sandbox using PowerShell Direct communication:

```python
import asyncio
from windows_sandbox_manager import SandboxManager, SandboxConfig

async def execute_commands():
    config = SandboxConfig(name="command-sandbox")
    
    async with SandboxManager() as manager:
        sandbox = await manager.create_sandbox(config)
        
        # Execute single command
        result = await sandbox.execute("dir C:\\")
        print(f"Directory listing: {result.stdout}")
        print(f"Exit code: {result.returncode}")
        
        # Execute multiple commands
        commands = [
            "python --version",
            "pip install requests",
            "python -c \"import requests; print('Requests installed')\"",
        ]
        
        for cmd in commands:
            result = await sandbox.execute(cmd, timeout=120)
            if result.success:
                print(f"✓ {cmd}: {result.stdout.strip()}")
            else:
                print(f"✗ {cmd}: {result.stderr.strip()}")

asyncio.run(execute_commands())
```

### Resource Monitoring

Monitor sandbox resource usage in real-time:

```python
import asyncio
from windows_sandbox_manager import SandboxManager, SandboxConfig

async def monitor_resources():
    config = SandboxConfig(
        name="monitored-sandbox",
        monitoring={"metrics_enabled": True}
    )
    
    async with SandboxManager() as manager:
        sandbox = await manager.create_sandbox(config)
        
        # Start resource-intensive task
        await sandbox.execute("python -c \"import time; [i**2 for i in range(100000) for _ in range(1000)]\"")
        
        # Monitor resources during execution
        for i in range(5):
            stats = await sandbox.get_resource_stats()
            print(f"Memory: {stats.memory_mb}MB | CPU: {stats.cpu_percent}% | Disk: {stats.disk_mb}MB")
            await asyncio.sleep(2)

asyncio.run(monitor_resources())
```

### Async API Operations

Perform multiple sandbox operations concurrently:

```python
import asyncio
from windows_sandbox_manager import SandboxManager, SandboxConfig

async def concurrent_operations():
    config1 = SandboxConfig(name="sandbox-1")
    config2 = SandboxConfig(name="sandbox-2") 
    config3 = SandboxConfig(name="sandbox-3")
    
    async with SandboxManager() as manager:
        # Create multiple sandboxes concurrently
        sandbox1, sandbox2, sandbox3 = await asyncio.gather(
            manager.create_sandbox(config1),
            manager.create_sandbox(config2),
            manager.create_sandbox(config3)
        )
        
        # Execute commands in parallel
        results = await asyncio.gather(
            sandbox1.execute("python -c \"import time; time.sleep(2); print('Task 1 done')\""),
            sandbox2.execute("python -c \"import time; time.sleep(2); print('Task 2 done')\""),
            sandbox3.execute("python -c \"import time; time.sleep(2); print('Task 3 done')\""),
            return_exceptions=True
        )
        
        for i, result in enumerate(results, 1):
            if isinstance(result, Exception):
                print(f"Sandbox {i} failed: {result}")
            else:
                print(f"Sandbox {i}: {result.stdout.strip()}")

asyncio.run(concurrent_operations())
```

### Folder Mapping

Share folders between host and sandbox with different permissions:

```python
import asyncio
from pathlib import Path
from windows_sandbox_manager import SandboxManager, SandboxConfig, FolderMapping

async def folder_mapping_example():
    config = SandboxConfig(
        name="file-sandbox",
        folders=[
            # Read-only source code
            FolderMapping(
                host=Path("C:/MyProject/src"),
                guest=Path("C:/Users/WDAGUtilityAccount/Desktop/src"),
                readonly=True
            ),
            # Read-write workspace
            FolderMapping(
                host=Path("C:/SandboxWorkspace"),
                guest=Path("C:/Users/WDAGUtilityAccount/Desktop/workspace"),
                readonly=False
            ),
            # Read-only tools
            FolderMapping(
                host=Path("C:/Tools"),
                guest=Path("C:/Users/WDAGUtilityAccount/Desktop/tools"),
                readonly=True
            )
        ]
    )
    
    async with SandboxManager() as manager:
        sandbox = await manager.create_sandbox(config)
        
        # List shared folders
        result = await sandbox.execute("dir C:\\Users\\WDAGUtilityAccount\\Desktop")
        print("Shared folders:")
        print(result.stdout)
        
        # Read from read-only folder
        result = await sandbox.execute("type C:\\Users\\WDAGUtilityAccount\\Desktop\\src\\main.py")
        print("Source file content:")
        print(result.stdout)
        
        # Write to read-write workspace
        await sandbox.execute('echo "Output from sandbox" > C:\\Users\\WDAGUtilityAccount\\Desktop\\workspace\\output.txt')
        
        # Verify file was created on host
        result = await sandbox.execute("type C:\\Users\\WDAGUtilityAccount\\Desktop\\workspace\\output.txt")
        print("Created file content:")
        print(result.stdout)

asyncio.run(folder_mapping_example())
```

### CLI Interface

Use command-line tools for sandbox management:

```bash
# Create sandbox from configuration file
wsb create --config sandbox.yaml

# List active sandboxes
wsb list

# Execute command in specific sandbox
wsb exec sandbox-abc123 "python --version"

# Monitor sandbox resources
wsb monitor sandbox-abc123

# Copy files to/from sandbox
wsb copy local_file.txt sandbox-abc123:/path/in/sandbox/
wsb copy sandbox-abc123:/path/in/sandbox/output.txt ./local_output.txt

# Get sandbox logs
wsb logs sandbox-abc123

# Shutdown specific sandbox
wsb shutdown sandbox-abc123

# Cleanup all stopped sandboxes
wsb cleanup
```

Advanced CLI usage with configuration file:

```yaml
# sandbox.yaml
name: "development-sandbox"
memory_mb: 8192
cpu_cores: 4
networking: true

folders:
  - host: "C:\\Projects\\MyApp"
    guest: "C:\\Users\\WDAGUtilityAccount\\Desktop\\MyApp"
    readonly: false
  - host: "C:\\Tools"
    guest: "C:\\Users\\WDAGUtilityAccount\\Desktop\\tools"
    readonly: true

startup_commands:
  - "python -m pip install --upgrade pip"
  - "python -m pip install -r C:\\Users\\WDAGUtilityAccount\\Desktop\\MyApp\\requirements.txt"
  - "cd C:\\Users\\WDAGUtilityAccount\\Desktop\\MyApp"

monitoring:
  metrics_enabled: true
  alert_thresholds:
    memory_mb: 6144
    cpu_percent: 80.0
```

```bash
# Create and start sandbox with configuration
wsb create --config sandbox.yaml

# Execute interactive session
wsb shell sandbox-development --working-dir "C:\\Users\\WDAGUtilityAccount\\Desktop\\MyApp"
```

## Requirements

- Windows 10 Pro/Enterprise/Education (version 1903+)
- Windows Sandbox feature enabled
- Python 3.9+
- PowerShell 5.0+ (for sandbox communication)

## Development

```bash
git clone https://github.com/Amal-David/python-windows-sandbox.git
cd python-windows-sandbox
pip install -e ".[dev]"
pytest
```

## License

MIT
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "windows-sandbox-manager",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "isolation, sandbox, security, virtualization, windows",
    "author": null,
    "author_email": "Amal David <labuka@duck.com>",
    "download_url": "https://files.pythonhosted.org/packages/dd/6a/73d52e4a353a354f0d7ce62ac10ec61bf8e1407d45d25e7a64a22c0db4ee/windows_sandbox_manager-0.3.0.tar.gz",
    "platform": null,
    "description": "# Windows Sandbox Manager\n\nPython library for managing Windows Sandbox instances programmatically. Useful for running untrusted code, testing applications, or executing AI agents in isolated environments.\n\n## Installation\n\n```bash\npip install windows-sandbox-manager\n```\n\n## Usage\n\n```python\nimport asyncio\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig\n\nasync def main():\n    # Create sandbox manager\n    manager = SandboxManager()\n    \n    # Create sandbox configuration\n    config = SandboxConfig(\n        name=\"my-sandbox\",\n        memory_mb=4096,\n        cpu_cores=2,\n        networking=True\n    )\n    \n    # Create and start sandbox\n    sandbox = await manager.create_sandbox(config)\n    \n    # Execute commands\n    result = await sandbox.execute(\"python --version\")\n    print(f\"Output: {result.stdout}\")\n    \n    # Cleanup\n    await sandbox.shutdown()\n\nasyncio.run(main())\n```\n\n### CLI\n\n```bash\nwsb create sandbox.yaml\nwsb list\nwsb exec <sandbox-id> \"python script.py\"\nwsb shutdown <sandbox-id>\n```\n\n## Configuration\n\n```yaml\nname: \"dev-sandbox\"\nmemory_mb: 4096\ncpu_cores: 2\nnetworking: true\n\nfolders:\n  - host: \"C:\\\\Projects\\\\MyApp\"\n    guest: \"C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\MyApp\"\n    readonly: false\n\nstartup_commands:\n  - \"python --version\"\n```\n\n## AI Agent Execution\n\nWindows Sandbox provides a secure environment for running AI agents that need to execute untrusted code or interact with the file system without risking the host machine.\n\n### Example: Running an AI Code Agent\n\n```python\nimport asyncio\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig, FolderMapping\nfrom pathlib import Path\n\nasync def run_ai_agent():\n    config = SandboxConfig(\n        name=\"ai-agent-sandbox\",\n        memory_mb=8192,\n        cpu_cores=4,\n        networking=True,\n        folders=[\n            FolderMapping(\n                host=Path(\"C:/agent_workspace\"),\n                guest=Path(\"C:/Users/WDAGUtilityAccount/Desktop/workspace\"),\n                readonly=False\n            )\n        ],\n        startup_commands=[\n            \"python -m pip install requests openai\",\n            \"python -c \\\"print('AI Agent environment ready')\\\"\"\n        ]\n    )\n    \n    async with SandboxManager() as manager:\n        sandbox = await manager.create_sandbox(config)\n        \n        # Execute AI agent code safely\n        agent_code = '''\nimport os\nimport requests\n\n# AI agent can safely write files, make network requests, etc.\nwith open(\"output.txt\", \"w\") as f:\n    f.write(\"AI agent executed safely in sandbox\")\n\n# Network access is isolated\nresponse = requests.get(\"https://api.github.com\")\nprint(f\"API Status: {response.status_code}\")\n'''\n        \n        # Write agent code to sandbox\n        result = await sandbox.execute(f'echo \"{agent_code}\" > agent.py')\n        \n        # Run the agent (now uses real PowerShell Direct communication)\n        result = await sandbox.execute(\"python agent.py\")\n        print(f\"Agent output: {result.stdout}\")\n        print(f\"Exit code: {result.returncode}\")\n        \n        # Monitor resource usage\n        stats = await sandbox.get_resource_stats()\n        print(f\"Memory usage: {stats.memory_mb}MB\")\n        print(f\"CPU usage: {stats.cpu_percent}%\")\n        \n        # Check results\n        result = await sandbox.execute(\"type output.txt\")\n        print(f\"Agent created file: {result.stdout}\")\n\nasyncio.run(run_ai_agent())\n```\n\n### Use Cases for AI Agents\n\n- **Code Generation & Execution**: Let AI agents write and test code without affecting your system\n- **File System Operations**: Allow agents to create, modify, and organize files safely\n- **Web Scraping**: Run web scraping agents with network isolation\n- **Data Processing**: Process untrusted data files in a contained environment\n- **Testing & Validation**: Test AI-generated scripts before running on production systems\n\n## Features\n\n- **Real Sandbox Execution**: Execute commands directly in Windows Sandbox VMs using PowerShell Direct\n- **Resource Monitoring**: Monitor CPU, memory, and disk usage of sandbox processes in real-time\n- **Async API**: Full async/await support for non-blocking sandbox operations\n- **Secure Isolation**: Complete isolation from host system for running untrusted code\n- **Folder Mapping**: Share folders between host and sandbox with configurable permissions\n- **CLI Interface**: Command-line tools for managing sandboxes\n\n## Feature Examples\n\n### Real Sandbox Execution\n\nExecute commands directly in Windows Sandbox using PowerShell Direct communication:\n\n```python\nimport asyncio\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig\n\nasync def execute_commands():\n    config = SandboxConfig(name=\"command-sandbox\")\n    \n    async with SandboxManager() as manager:\n        sandbox = await manager.create_sandbox(config)\n        \n        # Execute single command\n        result = await sandbox.execute(\"dir C:\\\\\")\n        print(f\"Directory listing: {result.stdout}\")\n        print(f\"Exit code: {result.returncode}\")\n        \n        # Execute multiple commands\n        commands = [\n            \"python --version\",\n            \"pip install requests\",\n            \"python -c \\\"import requests; print('Requests installed')\\\"\",\n        ]\n        \n        for cmd in commands:\n            result = await sandbox.execute(cmd, timeout=120)\n            if result.success:\n                print(f\"\u2713 {cmd}: {result.stdout.strip()}\")\n            else:\n                print(f\"\u2717 {cmd}: {result.stderr.strip()}\")\n\nasyncio.run(execute_commands())\n```\n\n### Resource Monitoring\n\nMonitor sandbox resource usage in real-time:\n\n```python\nimport asyncio\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig\n\nasync def monitor_resources():\n    config = SandboxConfig(\n        name=\"monitored-sandbox\",\n        monitoring={\"metrics_enabled\": True}\n    )\n    \n    async with SandboxManager() as manager:\n        sandbox = await manager.create_sandbox(config)\n        \n        # Start resource-intensive task\n        await sandbox.execute(\"python -c \\\"import time; [i**2 for i in range(100000) for _ in range(1000)]\\\"\")\n        \n        # Monitor resources during execution\n        for i in range(5):\n            stats = await sandbox.get_resource_stats()\n            print(f\"Memory: {stats.memory_mb}MB | CPU: {stats.cpu_percent}% | Disk: {stats.disk_mb}MB\")\n            await asyncio.sleep(2)\n\nasyncio.run(monitor_resources())\n```\n\n### Async API Operations\n\nPerform multiple sandbox operations concurrently:\n\n```python\nimport asyncio\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig\n\nasync def concurrent_operations():\n    config1 = SandboxConfig(name=\"sandbox-1\")\n    config2 = SandboxConfig(name=\"sandbox-2\") \n    config3 = SandboxConfig(name=\"sandbox-3\")\n    \n    async with SandboxManager() as manager:\n        # Create multiple sandboxes concurrently\n        sandbox1, sandbox2, sandbox3 = await asyncio.gather(\n            manager.create_sandbox(config1),\n            manager.create_sandbox(config2),\n            manager.create_sandbox(config3)\n        )\n        \n        # Execute commands in parallel\n        results = await asyncio.gather(\n            sandbox1.execute(\"python -c \\\"import time; time.sleep(2); print('Task 1 done')\\\"\"),\n            sandbox2.execute(\"python -c \\\"import time; time.sleep(2); print('Task 2 done')\\\"\"),\n            sandbox3.execute(\"python -c \\\"import time; time.sleep(2); print('Task 3 done')\\\"\"),\n            return_exceptions=True\n        )\n        \n        for i, result in enumerate(results, 1):\n            if isinstance(result, Exception):\n                print(f\"Sandbox {i} failed: {result}\")\n            else:\n                print(f\"Sandbox {i}: {result.stdout.strip()}\")\n\nasyncio.run(concurrent_operations())\n```\n\n### Folder Mapping\n\nShare folders between host and sandbox with different permissions:\n\n```python\nimport asyncio\nfrom pathlib import Path\nfrom windows_sandbox_manager import SandboxManager, SandboxConfig, FolderMapping\n\nasync def folder_mapping_example():\n    config = SandboxConfig(\n        name=\"file-sandbox\",\n        folders=[\n            # Read-only source code\n            FolderMapping(\n                host=Path(\"C:/MyProject/src\"),\n                guest=Path(\"C:/Users/WDAGUtilityAccount/Desktop/src\"),\n                readonly=True\n            ),\n            # Read-write workspace\n            FolderMapping(\n                host=Path(\"C:/SandboxWorkspace\"),\n                guest=Path(\"C:/Users/WDAGUtilityAccount/Desktop/workspace\"),\n                readonly=False\n            ),\n            # Read-only tools\n            FolderMapping(\n                host=Path(\"C:/Tools\"),\n                guest=Path(\"C:/Users/WDAGUtilityAccount/Desktop/tools\"),\n                readonly=True\n            )\n        ]\n    )\n    \n    async with SandboxManager() as manager:\n        sandbox = await manager.create_sandbox(config)\n        \n        # List shared folders\n        result = await sandbox.execute(\"dir C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\")\n        print(\"Shared folders:\")\n        print(result.stdout)\n        \n        # Read from read-only folder\n        result = await sandbox.execute(\"type C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\src\\\\main.py\")\n        print(\"Source file content:\")\n        print(result.stdout)\n        \n        # Write to read-write workspace\n        await sandbox.execute('echo \"Output from sandbox\" > C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\workspace\\\\output.txt')\n        \n        # Verify file was created on host\n        result = await sandbox.execute(\"type C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\workspace\\\\output.txt\")\n        print(\"Created file content:\")\n        print(result.stdout)\n\nasyncio.run(folder_mapping_example())\n```\n\n### CLI Interface\n\nUse command-line tools for sandbox management:\n\n```bash\n# Create sandbox from configuration file\nwsb create --config sandbox.yaml\n\n# List active sandboxes\nwsb list\n\n# Execute command in specific sandbox\nwsb exec sandbox-abc123 \"python --version\"\n\n# Monitor sandbox resources\nwsb monitor sandbox-abc123\n\n# Copy files to/from sandbox\nwsb copy local_file.txt sandbox-abc123:/path/in/sandbox/\nwsb copy sandbox-abc123:/path/in/sandbox/output.txt ./local_output.txt\n\n# Get sandbox logs\nwsb logs sandbox-abc123\n\n# Shutdown specific sandbox\nwsb shutdown sandbox-abc123\n\n# Cleanup all stopped sandboxes\nwsb cleanup\n```\n\nAdvanced CLI usage with configuration file:\n\n```yaml\n# sandbox.yaml\nname: \"development-sandbox\"\nmemory_mb: 8192\ncpu_cores: 4\nnetworking: true\n\nfolders:\n  - host: \"C:\\\\Projects\\\\MyApp\"\n    guest: \"C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\MyApp\"\n    readonly: false\n  - host: \"C:\\\\Tools\"\n    guest: \"C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\tools\"\n    readonly: true\n\nstartup_commands:\n  - \"python -m pip install --upgrade pip\"\n  - \"python -m pip install -r C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\MyApp\\\\requirements.txt\"\n  - \"cd C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\MyApp\"\n\nmonitoring:\n  metrics_enabled: true\n  alert_thresholds:\n    memory_mb: 6144\n    cpu_percent: 80.0\n```\n\n```bash\n# Create and start sandbox with configuration\nwsb create --config sandbox.yaml\n\n# Execute interactive session\nwsb shell sandbox-development --working-dir \"C:\\\\Users\\\\WDAGUtilityAccount\\\\Desktop\\\\MyApp\"\n```\n\n## Requirements\n\n- Windows 10 Pro/Enterprise/Education (version 1903+)\n- Windows Sandbox feature enabled\n- Python 3.9+\n- PowerShell 5.0+ (for sandbox communication)\n\n## Development\n\n```bash\ngit clone https://github.com/Amal-David/python-windows-sandbox.git\ncd python-windows-sandbox\npip install -e \".[dev]\"\npytest\n```\n\n## License\n\nMIT",
    "bugtrack_url": null,
    "license": null,
    "summary": "A modern, secure, and scalable Python library for creating and managing Windows Sandbox instances",
    "version": "0.3.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/Amal-David/python-windows-sandbox/issues",
        "Changelog": "https://github.com/Amal-David/python-windows-sandbox/blob/main/CHANGELOG.md",
        "Documentation": "https://python-windows-sandbox.readthedocs.io",
        "Homepage": "https://github.com/Amal-David/python-windows-sandbox",
        "Repository": "https://github.com/Amal-David/python-windows-sandbox"
    },
    "split_keywords": [
        "isolation",
        " sandbox",
        " security",
        " virtualization",
        " windows"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "86e61ed4ad78016fd87d4b1440df2344261a273ef3e4f111b38fceb10146838c",
                "md5": "5450ffddd9fbda1eeaf923993c9dacc2",
                "sha256": "1fac48ceb2268fd208b486965b4e8a46a79ecf51fe77f59c26b913d655c7bc87"
            },
            "downloads": -1,
            "filename": "windows_sandbox_manager-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5450ffddd9fbda1eeaf923993c9dacc2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 25627,
            "upload_time": "2025-07-19T03:11:33",
            "upload_time_iso_8601": "2025-07-19T03:11:33.291806Z",
            "url": "https://files.pythonhosted.org/packages/86/e6/1ed4ad78016fd87d4b1440df2344261a273ef3e4f111b38fceb10146838c/windows_sandbox_manager-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dd6a73d52e4a353a354f0d7ce62ac10ec61bf8e1407d45d25e7a64a22c0db4ee",
                "md5": "a1ff8c84a97c1b9096c93c33952f755b",
                "sha256": "690d4374c6a06462556c460961b7030cb1b934a4b2765e3c666efd256dd981cd"
            },
            "downloads": -1,
            "filename": "windows_sandbox_manager-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "a1ff8c84a97c1b9096c93c33952f755b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 27542,
            "upload_time": "2025-07-19T03:11:34",
            "upload_time_iso_8601": "2025-07-19T03:11:34.795056Z",
            "url": "https://files.pythonhosted.org/packages/dd/6a/73d52e4a353a354f0d7ce62ac10ec61bf8e1407d45d25e7a64a22c0db4ee/windows_sandbox_manager-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-19 03:11:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Amal-David",
    "github_project": "python-windows-sandbox",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "windows-sandbox-manager"
}
        
Elapsed time: 0.69154s