An open API service indexing awesome lists of open source software.

https://github.com/appcypher/monocore

a self-hosted solution for running ai-generated code in a sandbox locally and remotely
https://github.com/appcypher/monocore

agents ai container content-addressed docker filesystem fly heroku linux macos mcp netlify orchestration python sandbox serverless vercel virtualization vm

Last synced: about 2 months ago
JSON representation

a self-hosted solution for running ai-generated code in a sandbox locally and remotely

Awesome Lists containing this project

README

        



monocore logo

monocore



Discord


Build Status


Monocore Crate


Monocore Docs


License


> [!WARNING]
> This project is currently undergoing significant architectural changes and active development. As a result, comprehensive documentation and a detailed README will be provided once the core components stabilize. Stay tuned for updates.

## 🗺️ Project Roadmap

**Project Status**

⬜️ Planning 🟨 In Progress ✅ Shipped

| Category | Component | Status | Description |
| :---------------- | :--------------------- | :----: | :------------------------------------------------------- |
| **🎯 Core** |
| | **Configuration** | 🟨 | YAML-based sandbox and project configuration |
| | • Validation | ⬜️ | Configuration schema validation and verification |
| | • Import | ⬜️ | External component configuration imports |
| | **Networking** | ⬜️ | Sandbox network management and isolation |
| | • IP Assignment | ⬜️ | Subnet (10.0.0.0/8) and IP management for sandbox groups |
| | • Packet Filtering | ⬜️ | Network reach control (local/public/any/none) |
| | **Orchestration** | ⬜️ | Sandbox lifecycle and resource management |
| | • Build Steps | ⬜️ | Image build pipeline and artifact management |
| | • Sandbox provisioning | ⬜️ | libkrun-based microVM provisioning |
| | • Sandbox Groups | ⬜️ | Shared network, volume and env management |
| **🛠️ CLI Tools** |
| | **monocore CLI** | 🟨 | Project and sandbox management interface |
| | • `init` | ⬜️ | Interactive project initialization |
| | • `add` | ⬜️ | Add sandboxes, builds, or groups to project |
| | • `remove` | ⬜️ | Remove project components |
| | • `list` | ⬜️ | List sandboxes, builds, or groups |
| | • `log` | ⬜️ | View component logs with filtering |
| | • `tree` | ⬜️ | Display component layer hierarchy |
| | • `run` | ⬜️ | Execute defined component scripts |
| | • `start` | ⬜️ | Execute component start scripts |
| | • `shell` | ⬜️ | Interactive sandbox shell access |
| | • `tmp` | ⬜️ | Temporary sandbox creation from images |
| | • `install` | ⬜️ | Global installation of image scripts |
| | • `uninstall` | ⬜️ | Remove globally installed scripts |
| | • `apply` | ⬜️ | Apply configuration to running sandboxes |
| | • `up` | ⬜️ | Start sandboxes or groups |
| | • `down` | ⬜️ | Stop sandboxes or groups |
| | • `status` | ⬜️ | View sandbox runtime status |
| | • `clean` | ⬜️ | Clean sandbox and project data |
| | • `build` | ⬜️ | Build images from configurations |
| | • `pull` | 🟨 | Pull OCI images from registries |
| | • `push` | ⬜️ | Push images to OCI registries |
| | • `self` | ⬜️ | Manage monocore installation and updates |
| | • `deploy` | ⬜️ | Cloud deployment of sandboxes |
| | • `serve` | ⬜️ | Run sandbox orchestration server |
| | **monofs CLI** | 🟨 | Versioned filesystem management interface |
| | • `init` | ✅ | Initialize versioned filesystem at mount point |
| | • `tmp` | ⬜️ | Create temporary versioned filesystem |
| | • `clone` | ⬜️ | Clone existing versioned filesystem |
| | • `sync` | ⬜️ | Synchronize filesystems (backup/raft/crdt) |
| | • `rev` | ⬜️ | View filesystem revision history |
| | • `tag` | ⬜️ | Create named tags for revisions |
| | • `checkout` | ⬜️ | Switch to specific revision |
| | • `diff` | ⬜️ | Compare filesystem revisions |
| | • `detach` | ✅ | Safely unmount filesystem and stop NFS server |
| **🐋 OCI** |
| | **OverlayFS** | ✅ | OverlayFS implementation on macOS |
| | • Core | ✅ | Core implementation of the OverlayFS |
| | • NFS | ✅ | Network File System server implementation |
| | • NativeFS | ✅ | Native filesystem implementation |
| | • virtiofs | ⬜️ | libkrun virtiofs implementation |
| | Sandboxes Registry | ⬜️ | Container sandboxing registry implementation |
| | Docker Registry | ✅ | Integration with Docker registry |
| | ghcr Registry | ⬜️ | Integration with GitHub Container Registry |
| | Quay Registry | ⬜️ | Integration with Red Hat Quay registry |
| **📊 Web UI** |
| | Desktop | ⬜️ | App dashboard |
| **🔌 SDK** |
| | Python SDK | ⬜️ | Sandbox orchestration with Python |
| | TypeScript SDK | ⬜️ | Sandbox orchestration with TypeScript |
| **🌍 REST API** |
| | Orchestration API | ⬜️ | Orchestration API implementation |
| **📂 monofs** |
| | Chunking | ✅ | Content-based chunking for efficient storage |
| | Versioning | ✅ | File and directory versioning support |
| | NFS Server | ✅ | Network File System server implementation |
| | Compression | ⬜️ | Data compression for storage efficiency |
| | Backup Sync | ⬜️ | Automated backup synchronization |
| | Raft Sync | ⬜️ | Distributed consensus using Raft |
| | Merkle CRDT Sync | ⬜️ | Conflict-free replicated data types with Merkle trees |
| | E2E Encryption | ⬜️ | End-to-end encryption for secure storage |
| **⚡ Serverless** |
| | Legacy Support | ⬜️ | Serverless-like behavior for legacy applications |
| | Handlers | ⬜️ | Function handlers and routing |