# 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"
}