{"id":19137029,"url":"https://github.com/appcypher/monocore","last_synced_at":"2025-03-02T13:11:51.830Z","repository":{"id":257893093,"uuid":"867192625","full_name":"appcypher/monocore","owner":"appcypher","description":"a self-hosted solution for running ai-generated code in a sandbox locally and remotely","archived":false,"fork":false,"pushed_at":"2025-02-25T21:56:18.000Z","size":5125,"stargazers_count":26,"open_issues_count":7,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-25T22:30:56.016Z","etag":null,"topics":["agents","ai","container","content-addressed","docker","filesystem","fly","heroku","linux","macos","mcp","netlify","orchestration","python","sandbox","serverless","vercel","virtualization","vm"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appcypher.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-03T15:57:38.000Z","updated_at":"2025-02-25T07:56:36.000Z","dependencies_parsed_at":"2024-11-28T19:29:31.773Z","dependency_job_id":"ca7acea1-64c7-4567-9a15-fed43240fa18","html_url":"https://github.com/appcypher/monocore","commit_stats":null,"previous_names":["appcypher/monocore"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appcypher%2Fmonocore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appcypher%2Fmonocore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appcypher%2Fmonocore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appcypher%2Fmonocore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appcypher","download_url":"https://codeload.github.com/appcypher/monocore/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241509652,"owners_count":19974071,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agents","ai","container","content-addressed","docker","filesystem","fly","heroku","linux","macos","mcp","netlify","orchestration","python","sandbox","serverless","vercel","virtualization","vm"],"created_at":"2024-11-09T06:36:38.872Z","updated_at":"2025-03-02T13:11:51.820Z","avatar_url":"https://github.com/appcypher.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/appcypher/monocore\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/appcypher/monocore/main/assets/monocore-thick-line-purple-gradient.svg\" alt=\"monocore logo\" width=\"100\"\u003e\u003c/img\u003e\n  \u003c/a\u003e\n\n  \u003ch1 align=\"center\"\u003emonocore\u003c/h1\u003e\n\n  \u003cp\u003e\n    \u003ca href=\"https://discord.gg/T95Y3XnEAK\"\u003e\n      \u003cimg src=\"https://img.shields.io/static/v1?label=Discord\u0026message=join%20us!\u0026color=mediumslateblue\u0026logo=discord\u0026logoColor=white\" alt=\"Discord\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/appcypher/monocore/actions?query=\"\u003e\n      \u003cimg src=\"https://github.com/appcypher/monocore/actions/workflows/tests_and_checks.yml/badge.svg\" alt=\"Build Status\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://crates.io/crates/monocore\"\u003e\n      \u003cimg src=\"https://img.shields.io/crates/v/monocore?label=crates\u0026logo=rust\" alt=\"Monocore Crate\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://docs.rs/monocore\"\u003e\n      \u003cimg src=\"https://img.shields.io/static/v1?label=Docs\u0026message=docs.rs\u0026color=blue\u0026logo=docs.rs\" alt=\"Monocore Docs\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/appcypher/monocore/blob/main/LICENSE\"\u003e\n      \u003cimg src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg?logo=apache\u0026logoColor=white\" alt=\"License\"\u003e\n    \u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003e [!WARNING]\n\u003e 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.\n\n## 🗺️ Project Roadmap\n\n\u003cdiv align=\"center\"\u003e\n\n**Project Status**\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003ckbd\u003e⬜️ Planning\u003c/kbd\u003e \u003ckbd\u003e🟨 In Progress\u003c/kbd\u003e \u003ckbd\u003e✅ Shipped\u003c/kbd\u003e\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n| Category          | Component              | Status | Description                                              |\n| :---------------- | :--------------------- | :----: | :------------------------------------------------------- |\n| **🎯 Core**       |\n|                   | **Configuration**      |   🟨   | YAML-based sandbox and project configuration             |\n|                   | • Validation           |  ⬜️   | Configuration schema validation and verification         |\n|                   | • Import               |  ⬜️   | External component configuration imports                 |\n|                   | **Networking**         |  ⬜️   | Sandbox network management and isolation                 |\n|                   | • IP Assignment        |  ⬜️   | Subnet (10.0.0.0/8) and IP management for sandbox groups |\n|                   | • Packet Filtering     |  ⬜️   | Network reach control (local/public/any/none)            |\n|                   | **Orchestration**      |  ⬜️   | Sandbox lifecycle and resource management                |\n|                   | • Build Steps          |  ⬜️   | Image build pipeline and artifact management             |\n|                   | • Sandbox provisioning |  ⬜️   | libkrun-based microVM provisioning                       |\n|                   | • Sandbox Groups       |  ⬜️   | Shared network, volume and env management                |\n| **🛠️ CLI Tools**  |\n|                   | **monocore CLI**       |   🟨   | Project and sandbox management interface                 |\n|                   | • `init`               |  ⬜️   | Interactive project initialization                       |\n|                   | • `add`                |  ⬜️   | Add sandboxes, builds, or groups to project              |\n|                   | • `remove`             |  ⬜️   | Remove project components                                |\n|                   | • `list`               |  ⬜️   | List sandboxes, builds, or groups                        |\n|                   | • `log`                |  ⬜️   | View component logs with filtering                       |\n|                   | • `tree`               |  ⬜️   | Display component layer hierarchy                        |\n|                   | • `run`                |  ⬜️   | Execute defined component scripts                        |\n|                   | • `start`              |  ⬜️   | Execute component start scripts                          |\n|                   | • `shell`              |  ⬜️   | Interactive sandbox shell access                         |\n|                   | • `tmp`                |  ⬜️   | Temporary sandbox creation from images                   |\n|                   | • `install`            |  ⬜️   | Global installation of image scripts                     |\n|                   | • `uninstall`          |  ⬜️   | Remove globally installed scripts                        |\n|                   | • `apply`              |  ⬜️   | Apply configuration to running sandboxes                 |\n|                   | • `up`                 |  ⬜️   | Start sandboxes or groups                                |\n|                   | • `down`               |  ⬜️   | Stop sandboxes or groups                                 |\n|                   | • `status`             |  ⬜️   | View sandbox runtime status                              |\n|                   | • `clean`              |  ⬜️   | Clean sandbox and project data                           |\n|                   | • `build`              |  ⬜️   | Build images from configurations                         |\n|                   | • `pull`               |   🟨   | Pull OCI images from registries                          |\n|                   | • `push`               |  ⬜️   | Push images to OCI registries                            |\n|                   | • `self`               |  ⬜️   | Manage monocore installation and updates                 |\n|                   | • `deploy`             |  ⬜️   | Cloud deployment of sandboxes                            |\n|                   | • `serve`              |  ⬜️   | Run sandbox orchestration server                         |\n|                   | **monofs CLI**         |   🟨   | Versioned filesystem management interface                |\n|                   | • `init`               |   ✅   | Initialize versioned filesystem at mount point           |\n|                   | • `tmp`                |  ⬜️   | Create temporary versioned filesystem                    |\n|                   | • `clone`              |  ⬜️   | Clone existing versioned filesystem                      |\n|                   | • `sync`               |  ⬜️   | Synchronize filesystems (backup/raft/crdt)               |\n|                   | • `rev`                |  ⬜️   | View filesystem revision history                         |\n|                   | • `tag`                |  ⬜️   | Create named tags for revisions                          |\n|                   | • `checkout`           |  ⬜️   | Switch to specific revision                              |\n|                   | • `diff`               |  ⬜️   | Compare filesystem revisions                             |\n|                   | • `detach`             |   ✅   | Safely unmount filesystem and stop NFS server            |\n| **🐋 OCI**        |\n|                   | **OverlayFS**          |   ✅   | OverlayFS implementation on macOS                        |\n|                   | • Core                 |   ✅   | Core implementation of the OverlayFS                     |\n|                   | • NFS                  |   ✅   | Network File System server implementation                |\n|                   | • NativeFS             |   ✅   | Native filesystem implementation                         |\n|                   | • virtiofs             |  ⬜️   | libkrun virtiofs implementation                          |\n|                   | Sandboxes Registry     |  ⬜️   | Container sandboxing registry implementation             |\n|                   | Docker Registry        |   ✅   | Integration with Docker registry                         |\n|                   | ghcr Registry          |  ⬜️   | Integration with GitHub Container Registry               |\n|                   | Quay Registry          |  ⬜️   | Integration with Red Hat Quay registry                   |\n| **📊 Web UI**     |\n|                   | Desktop                |  ⬜️   | App dashboard                                            |\n| **🔌 SDK**        |\n|                   | Python SDK             |  ⬜️   | Sandbox orchestration with Python                        |\n|                   | TypeScript SDK         |  ⬜️   | Sandbox orchestration with TypeScript                    |\n| **🌍 REST API**   |\n|                   | Orchestration API      |  ⬜️   | Orchestration API implementation                         |\n| **📂 monofs**     |\n|                   | Chunking               |   ✅   | Content-based chunking for efficient storage             |\n|                   | Versioning             |   ✅   | File and directory versioning support                    |\n|                   | NFS Server             |   ✅   | Network File System server implementation                |\n|                   | Compression            |  ⬜️   | Data compression for storage efficiency                  |\n|                   | Backup Sync            |  ⬜️   | Automated backup synchronization                         |\n|                   | Raft Sync              |  ⬜️   | Distributed consensus using Raft                         |\n|                   | Merkle CRDT Sync       |  ⬜️   | Conflict-free replicated data types with Merkle trees    |\n|                   | E2E Encryption         |  ⬜️   | End-to-end encryption for secure storage                 |\n| **⚡ Serverless** |\n|                   | Legacy Support         |  ⬜️   | Serverless-like behavior for legacy applications         |\n|                   | Handlers               |  ⬜️   | Function handlers and routing                            |\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappcypher%2Fmonocore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappcypher%2Fmonocore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappcypher%2Fmonocore/lists"}