Metadata-Version: 2.4
Name: smolvm
Version: 0.0.1
Summary: Secure runtime for AI agents, and tools -- free and open-source from Celesto AI 🧡
Author: SmolVM Team
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: System :: Emulators
Requires-Python: >=3.10
Requires-Dist: pydantic>=2.0
Requires-Dist: requests-unixsocket>=0.3
Requires-Dist: requests>=2.28
Provides-Extra: dev
Requires-Dist: mypy>=1.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: ruff>=0.1; extra == 'dev'
Description-Content-Type: text/markdown

<div align="center">

# SmolVM

Secure runtime for AI agents, and tools -- free and open-source from Celesto AI 🧡

[Docs](https://docs.celesto.ai) •
[Examples](https://github.com/celestoai/smolvm/tree/main/docs/examples)

</div>


## Install

```bash
# Install Python package
pip install smolvm

# Install pre-requisites and one time setup
sudo ./scripts/system-setup.sh --configure-runtime
```

## Quickstart

```python
from smolvm import VM

vm = VM()
vm.start()
print(f"VM running at {vm.get_ip()}")
result = vm.run("echo 'Command execution is ready'")
print(result.stdout.strip())
vm.stop()
```

Run with a context manager to automatically clean up the microVM after use:

```
from smolvm import VM

with VM() as vm:
    print(f"VM running at {vm.get_ip()}")
    result = vm.run("echo 'Command execution is ready'")
    print(result.stdout.strip())
```


## 📄 License

Apache 2.0 License - see [LICENSE](LICENSE) for details.
